http://docs.openstack.org/developer/kolla/

使用了Docker containers and Ansible playbooks

目前在Fedora/Ubuntu/CentOS上测试过

deployment host 需要Ansible>=1.8.4

deployment target 需要docker>=1.7.0 and docker-py>=1.2.0

curl -sSL https://get.docker.io | bash

git clone https://git.openstack.org/openstack/kolla
cd kolla
sudo pip install -r requirements.txt

如果ansible版本太老可以:

pip install -U ansible

配置kolla的ansible

http://docs.openstack.org/developer/kolla/ansible-deployment.html

inventory 文件必须包含所有安装targets

在deployment host上,拷贝etc/kolla 到 /etc/kolla

kolla_external_address: "openstack.example.com"
kolla_internal_address: "10.10.10.254"

kolla_external_address和kolla_internal_address可以相同,

network_interface: "eth0"

服务绑定接口,

neutron_external_interface: "eth1"

连接neutron的external bridge,

如果机器只有一个接口,可以可以创建一个bridge和veth,把veth的一端作为这里的接口,另一端和eth0接到该bridge上。

docker_pull_policy: "always"

是否从指定的repository拉去image,

diff --git a/ansible/group_vars/all.yml b/ansible/group_vars/all.yml

index 845c7e4..bcd6680 100644

--- a/ansible/group_vars/all.yml

+++ b/ansible/group_vars/all.yml

@@ -18,7 +18,7 @@ node_config_directory: "/etc/kolla"

config_strategy: "COPY_ONCE"

# Valid options are [ centos, fedora, oraclelinux, ubuntu ]

-kolla_base_distro: "centos"

+kolla_base_distro: "ubuntu"

# Valid options are [ binary, source ]

kolla_install_type: "binary"

@@ -107,7 +107,7 @@ ironic_api_port: "6385"

####################

# Openstack options

####################

-openstack_release: "latest"

+openstack_release: "kilo"

openstack_logging_verbose: "True"

openstack_logging_debug: "False"

@@ -142,7 +142,7 @@ enable_rabbitmq: "yes"

# Additional optional OpenStack services are specified here

enable_ceph: "no"

-enable_cinder: "no"

+enable_cinder: "yes"

enable_heat: "yes"

enable_horizon: "yes"

enable_swift: "no"

diff --git a/etc/kolla/globals.yml b/etc/kolla/globals.yml

index 57b9e27..0d68fb0 100644

--- a/etc/kolla/globals.yml

+++ b/etc/kolla/globals.yml

@@ -68,19 +68,19 @@ network_interface: "eth0"

neutron_external_interface: "eth1"

# Valid options are [ openvswitch, linuxbridge ]

-#neutron_plugin_agent: "openvswitch"

+neutron_plugin_agent: "openvswitch"

####################

# OpenStack options

####################

# This option is used to specify the tag to use when pulling the Docker images

-#openstack_release: "latest"

+openstack_release: "kilo"

# Use these options to set the various log levels across all OpenStack projects

-#openstack_logging_verbose: "True"

+openstack_logging_verbose: "True"

#openstack_logging_debug: "False"

# OpenStack services can be enabled or disabled with these options

-#enable_cinder: "yes"

-#enable_heat: "no"

+enable_cinder: "yes"

+enable_heat: "no"

好啦,如果是all-in-one的部署方式,则所有的containers 都会运行在localhost本机。

cd ./kolla/ansible
ansible-playbook -i inventory/all-in-one -e @/etc/kolla/globals.yml -e @/etc/kolla/passwords.yml site.yml

如果想安装某个特定的服务,可以用Ansible tags

cd ./kolla/ansible
ansible-playbook -i inventory/all-in-one -e @/etc/kolla/globals.yml -e @/etc/kolla/passwords.yml site.yml --tags rabbitmq
ansible-playbook -i inventory/all-in-one -e @/etc/kolla/globals.yml -e @/etc/kolla/passwords.yml site.yml --tags rabbitmq,mariadb
https://registry.hub.docker.com/repos/kollaglue

对每个tagged release都有build的image

-  Ceilometer
-  Cinder
-  Glance
-  Haproxy
-  Heat
-  Horizon
-  Keepalived
-  Keystone
-  Mariadb + galera
-  Mongodb
-  Neutron (linuxbridge or neutron)
-  Nova
-  Openvswitch
-  Rabbitmq
源码
Directories
===========
 
-  ansible - Contains Anible playbooks to deploy Kolla in Docker
   containers.
-  demos - Contains a few demos to use with Kolla.
-  dev/heat - Contains an OpenStack-Heat based development environment.
-  dev/vagrant - Contains a vagrant VirtualBox/Libvirt based development
   environment.
-  doc - Contains documentation.
-  etc - Contains a reference etc directory structure which requires
   configuration of a small number of configuration variables to achieve
   a working All-in-One (AIO) deployment.
-  docker - Contains jinja2 templates for the docker build system.
-  tools - Contains tools for interacting with Kolla.
-  specs - Contains the Kolla communities key arguments about
   architectural shifts in the code base.
-  tests - Contains functional testing tools.

ansible进阶小技巧(1)--tags

http://docs.ansible.com/ansible/docker_module.html

http://docs.ansible.com/ansible/docker_image_module.html

ansible role

ansilbe自1.2版本引入的新特性,用于层次性、结构化地组织playbook。roles能够根据层次型结构自动装载变量文件、tasks以及handlers等。要使用roles只需要在playbook中使用include指令即可。简单来讲,roles就是通过分别将变量、文件、任务、模块及处理器放置于单独的目录中,并可以便捷地include它们的一种机制。角色一般用于基于主机构建服务的场景中,但也可以是用于构建守护进程等场景中。

#创建role的步骤

(1) 创建以roles命名的目录;

(2) 在roles目录中分别创建以各角色名称命名的目录,如webservers等;

(3) 在每个角色命名的目录中分别创建files、handlers、meta、tasks、templates和vars目录;用不

到的目录可以创建为空目录,也可以不创建;

(4) 在playbook文件中,调用各角色;

#role内各目录中可用的文件

tasks目录:至少应该包含一个名为main.yml的文件,其定义了此角色的任务列表;此文件可以使用in

clude包含其它的位于此目录中的task文件;

files目录:存放由copy或script等模块调用的文件;

templates目录:template模块会自动在此目录中寻找Jinja2模板文件;

handlers目录:此目录中应当包含一个main.yml文件,用于定义此角色用到的各handler;在handler

中使用include包含的其它的handler文件也应该位于此目录中;

vars目录:应当包含一个main.yml文件,用于定义此角色用到的变量;

meta目录:应当包含一个main.yml文件,用于定义此角色的特殊设定及其依赖关系;

default目录:为当前角色设定默认变量时使用此目录;应当包含一个main.yml文件;

kolla all-in-one 安装的更多相关文章

  1. Kolla多节点环境安装OVN

    安装OVN组件 控制节点 ### 安装ovn-northd # wget https://copr.fedorainfracloud.org/coprs/leifmadsen/ovs-master/r ...

  2. kolla 安装

    下载 kolla-ansible 和 kolla 源码: git clone http://git.trystack.cn/openstack/kolla-ansible -b stable/quee ...

  3. 管理2000+Docker镜像,Kolla是如何做到的

    根据 DockerHub 上的数据,整个 Kolla 项目管理的 镜像有 2000 多个,这么多的镜像,是怎么定义,又是如何构建的呢? 简介 我们一直在说的 Kolla,通常情况下泛指,包括了 Kol ...

  4. 阿里云上安装 OpenStack 是什么体验

    阿里云上跑火车(安装 OpenStack Train 版本),猜猜最终花了多少钱? 前言 前面给大家提供了用虚拟机安装 OpenStack 的镜像,虽然已经很简便了,但还是略显笨重.一来镜像文件比较大 ...

  5. Ubuntu 18.04.1 LTS + kolla-ansible 部署 openstack Rocky all-in-one 环境

    1. kolla 项目介绍 简介 kolla 的使命是为 openstack 云平台提供生产级别的.开箱即用的自动化部署能力. kolla 要实现 openetack 部署分为两步,第一步是制作 do ...

  6. Openstack实践(1)部署使用实例及neutron网络

    版权声明:本文为博主原创文章,欢迎转载,转载请注明作者.原文超链接 ,博主地址:http://www.cnblogs.com/SuperXJ/ 如何快速部署使用openstack,使用kolla吧,o ...

  7. kolla-ansible-----快速部署openstack

    基本环境 操作系统:CentOS Linux release 7.5.1804 (Core) 内核版本:3.10.0-862.el7.x86_64 docker版本:1.13.1 1.禁用宿主机的 L ...

  8. Kolla Ocata版本安装及镜像制作流程

    1.关闭宿主机firewalldsystemctl disable firewalldsystemctl stop firewalld 2.配置selinux为disable,否则创建的实例网络不通临 ...

  9. openstack kolla多节点容器化环境安装

    好久没写随笔了,6月份趁着在公司没有太忙的事儿,把公司的服务器进行了虚拟化,采用的openstack当前的容器化方案kolla. 整体安装完的感受时,小白感觉自己是个大牛!哈哈,开玩笑,由于以前是开发 ...

随机推荐

  1. 云计算之路:2009年Xen一个补丁背后那不为人知的故事

    仔细阅读了http://www.cnblogs.com/cmt/p/3729386.html这篇关于xen的博文,这篇博文写的挺赞的,分析的也很细致,涉及到4年前的一个patch的故事.在讲这个故事之 ...

  2. mysql中给表添加字段

    添加字段: 格式:alter table 表名 add 字段名 字段类型 ; 如:给表stu_info 添加一个字段type,类型为varchar(30) alter table stu_info a ...

  3. delphi xe----操作mongoDB驱动,TMongoWire(Delphi MongoDB Driver)

    所有例子来自:https://github.com/stijnsanders/TMongoWire Delphi MongoDB的驱动 一个Delphi的驱动程序来访问mongoDB的服务器.用jso ...

  4. php 正则表达式四,例子

    PHP常用正则表达式汇总:http://bbs.php100.com/read-htm-tid-83266.html 1.非空匹配: .+ 2.浮点数匹配: ^\d+.\d{2}$ 3.手机号匹配: ...

  5. centos7在vmware上无法上网

    centos7在虚拟机中设置NAT后也无法上网! 首先激活网卡!打开桌面右键在终端中打开:cd /etc/sysconfig/network-scripts/ls 找到以ifcfg开头的,如ifcfg ...

  6. [luogu4234]最小差值生成树

    [luogu4234]最小差值生成树 luogu 从小到大枚举边,并连接,如果已连通就删掉路径上最小边 lct维护 \(ans=min(E_{max}-E_{min})\) #include<b ...

  7. 8.Query Documents-官方文档摘录

    总结 1 先插入数据 db.inventory.insertMany([ { item: "journal", qty: 25, size: { h: 14, w: 21, uom ...

  8. 《CNI specification》翻译

    Overview 本文提出了一个通用的基于插件的Linux容器网络解决方案,容器网络接口,CNI.它脱胎于旨在满足大多数rtk网络设计的rtk Networking Proposal. 首先,我们对如 ...

  9. sql server迁移数据(文件组之间的互相迁移与 文件组内文件的互相迁移)

    转自:https://www.cnblogs.com/lyhabc/p/3504380.html?utm_source=tuicool SQLSERVER将数据移到另一个文件组之后清空文件组并删除文件 ...

  10. python全栈开发从入门到放弃之字典的应用

    1.存值 info_dic={'name':'egon','age':18,'sex':'male'} info_dic['job']='IT' #根据key来存值 print(info_dic) 输 ...