kolla-ansible-----快速部署openstack
基本环境
操作系统:CentOS Linux release 7.5.1804 (Core)
内核版本:3.10.0-862.el7.x86_64
docker版本:1.13.1
1、禁用宿主机的 Libvirt 服务
大多数操作系统会默认启动 Libvirt,但使用 Kolla 来部署 OpenStack 的话,Libvirt 应该在容器中运行并管理虚拟机。
所以宿主机的 Libvirt 需要被关闭,以免造成冲突。
systemctl stop libvirtd.service
systemctl disable libvirtd.service
部署kolla
1、安装依赖
yum install epel-release python-pip
yum install -y python-devel libffi-devel openssl-devel gcc
pip install -U pip
2、配置国内pip源
不然这个速度很慢
mkdir ~/.pip cat << EOF > ~/.pip/pip.conf
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple/
[install]
trusted-host=pypi.tuna.tsinghua.edu.cn
EOF
3、安装stable版kolla
下载源码
git clone https://git.openstack.org/openstack/kolla -b stable/rocky 安装依赖
pip install -r kolla/requirements.txt -r kolla/test-requirements.txt 源码安装
pip install kolla/
4、安装tox,生成配置文件
pip install -U tox
cd kolla/
tox -e genconfig
cp -rv etc/kolla /etc/
编辑 kolla-build.conf:控制 Kolla Image Build 的细则。
vim /etc/kolla/kolla-build.conf
[DEFAULT]
base = centos
install_type = source
namespace = kolla
push = false
# The Docker Images tag (string value)
tag = 6.0.0
5、docker安装
yum install docker -y 配置docker mountflags
在[Service]中添加MountFlags=shared
# vim /usr/lib/systemd/system/docker.service
[Service]
MountFlags=shared systemctl daemon-reload
systemctl restart docker
MountFlags=shared为neutron的要求,必须配置为share,否则后面部署的时候neutron可能会有问题。
编译镜像
简单的来理解 Kolla 组件的话,它就是一个自动化构建部署 OpenStack 服务所需要的镜像的工具。其内含组织了大量的 Dockerfile,供构建镜像时使用。
kolla-build
也可以添加参数项 -p default 对应 kolla-build.conf 的 [profiles] Sections,default 类型表示仅构建核心项目的镜像。

如果个别镜像编译失败可以重新执行以上操作,因为docker的容器缓存,重新编译会很快。
NOTE:但有些情况下,可能会把错误的配置参数 Cache 住,此时建议执行 Cleanup 操作之后再重跑:
# 从系统中移除部署的容器
tools/cleanup-containers
# 移除由于残余网络变化引发 docker 启动的 neutron-agents 主机
tools/cleanup-host
# 从 Cache 中移除所有的 docker image
tools/cleanup-images
也可以查看一下可编译的镜像
kolla-build --list-images
安装kolla-ansible
1、安装ansible
ansible的版本要大于2.0
pip install ansible
2、安装kolla-ansible
git clone https://github.com/openstack/kolla-ansible -b stable/rocky
cd kolla-ansible
pip install -r requirements.txt -r test-requirements.txt -e .
配置一下
cp etc/kolla/globals.yml /etc/kolla/
cp etc/kolla/passwords.yml /etc/kolla/
kolla-genpwd
cp ansible/inventory/* /root/
3、修改文件
编辑 globals.yml文件
kolla_install_type: "source"
openstack_release:需要与镜像的 Tag 一致,否则部署时找不到镜像。
network_interface:指定管理网接口
neutron_external_interface:指定外部网接口
kolla_internal_vip_address:指定 HAProxy 虚拟 IP,单点部署可以弃用 HAProxy enable_haproxy: "no"。
enable_horizon: "yes"
4、修改 Hypervisor Type
因为操作环境是 VMware 的虚拟机,所以存在嵌套虚拟化不支持 KVM 的问题,如果你希望启动 OpenStack 实例,那就需要启用 QEMU(Default KVM)。
mkdir -p /etc/kolla/config/nova
cat << EOF > /etc/kolla/config/nova/nova-compute.conf
[libvirt]
virt_type=qemu
cpu_mode = none
EOF
检查配置
kolla-ansible prechecks
开始部署
kolla-ansible deploy
报错
在用Dockerfile制作镜像的时候总是出现如下错误
HTTPSConnectionPool(host='files.pythonhosted.org', port=443): Read timed out.
原因分析:
在下载python库的时候,由于国内网络原因,python包的下载速度非常慢,查看pip 文档,只要在 pip的时候控制超时即可, 具体参数为 --default-timeout=100, 后面的时间可以自己指定。
可以在kolla-build中指定一下:
[root@centos kolla]# pwd
/root/kolla
[root@centos kolla]# more tox.ini | grep pip
install_command = pip --default-timeout=1000 install {opts} {packages}
kolla-ansible-----快速部署openstack的更多相关文章
- RDO快速部署OpenStack
RDO快速部署OpenStack 1.RDO是什么 RDO是红帽Red Hat Enterprise Linux OpenStack Platform的社区版,类似RHEL和Fedora,RHEV和o ...
- kolla 多节点部署 openstack
kolla 介绍 简介 kolla 的使命是为 openstack 云平台提供生产级别的.开箱即用的交付能力.kolla 的基本思想是一切皆容器,将所有服务基于 Docker 运行,并且保证一个容器只 ...
- kolla单节点部署openstack
virtualbox环境: 双网卡:enp0s3(桥接) 192.168.102.194 enp0s8(桥接) 无ip 块存储 50G 关闭防火墙,selinux. 配置yum源:wget ...
- 高可用Kubernetes集群-16. ansible快速部署
说明 本文档指导采用二进制包的方式快速部署高可用kubernetes集群. 脚本托管:k8s-ansible(持续更新) 参考:高可用kubernetes集群 组件版本 组件 版本 备注 centos ...
- ansible快速部署cassandra3集群
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- Ansible 快速部署 Zabbix 4
阅读本文章需要具有Ansible.Zabbix基础.本次教程基于如下环境: CentOS 7.x Zabbix 4.0 Ansible 2.5 服务器初始化 关闭防火墙.selinux,添加epel常 ...
- packstack快速部署openstack
环境准备 建议16GB RAM sed -i '/^SELINUX/s/enforcing/disabled/' /etc/selinux/config systemctl stop firewall ...
- 使用 Ansible 快速部署 HBase 集群
背景 出于数据安全的考虑,自研了一个低成本的时序数据存储系统,用于存储历史行情数据. 系统借鉴了 InfluxDB 的列存与压缩策略,并基于 HBase 实现了海量存储能力. 由于运维同事缺乏 Had ...
- 使用Ansible部署openstack平台
使用Ansible部署openstack平台 本周没啥博客水了,就放个云计算的作业上来吧(偷个懒) 案例描述 1.了解高可用OpenStack平台架构 2.了解Ansible部署工具的使用 3.使用A ...
- OpenStack(四)——使用Kolla部署OpenStack多节点云
(1).实验环境 主机名 IP地址 角色 内存 网卡 CPU 磁盘 OpenStack-con 192.168.128.110 controller(控制) 8G 桥接网卡ens32和ens33 4核 ...
随机推荐
- 树莓派的rc.local档(设置开机)
为了树莓派执行命令或程序时启动.需要被添加到顺序rc.local档.这是为那些谁执行后,直接要权力树莓派没有配置.或者不希望每次都手动启动该程序很实用. 的方法是使用cron和crontab. EDI ...
- Matlab使用鼠标标注图像位置并返回坐标(标注图像ROI)
代码 function ROI=LabelBox(filename) Mat=imread(filename); imshow(Mat); mouse=imrect; pos=getPosition( ...
- QT之二级菜单(二级菜单的箭头可以使用QSS设置图片)
QT之二级菜单 QT之二级菜单 开场白 效果图 上代码 可参考文章 下代码 结尾 开场白 今天我们一起来了解下,在我们QT中,二级菜单是如何实现的,在上篇我们学习了QT之系统托盘,QT之自定义菜单, ...
- TCP的三次握手和四次挥手【经典】
参考:http://blog.csdn.net/cmm0401/article/details/77865479
- 全栈工程师之路(二)—— JavaScript(网页前端脚本语言)
javascript 是可以运行在网页前端的脚本语言,可以基于 html 之上实现更丰富的交互(网页内容的交互显示).异步回调.多线程.定时器.动画等. hello_world.html <ht ...
- WPF中桌面屏保的制作(主要代码)
原文:WPF中桌面屏保的制作(主要代码) 制作要点:(1) 使用System.Windows.Threading.DispatcherTimer;(2) 将Window属性设置为: this ...
- 使用WPF创建画图箭头
原文:使用WPF创建画图箭头 今天要给leader line画个箭头,所以就google一下,找到下面的文章,写的不错,可以实现我的需求,所以就摘录下来. 我把源代码中的arraw.cs加入到我的工程 ...
- RPC的发展历史(本质就是双方定义好协议,传递参数后远程调用)
服务器通讯原理就是一台socket服务器A,另一台socket客户端B,现在如果要通讯的话直接以流方式写入或读出. 这样能实现通讯,但有个问题.如何知道更多信息?比如需要发送流大小,编码,Ip等. 这 ...
- cocos2d 滚动背景 举 无限
void Bird::update(float time){ auto bg=this->getChildByTag(200); auto bg1=this->getChildByTag( ...
- 微信红包功能(含示例demo)
开通支付权限 登录微信公众平台管理后台,找到“微信支付”一栏,进行开通会跳转到“微信支付商户平台”,根据提示提交相关证明,完成支付权限的开通开通之后,“微信支付”一栏会显示相关信息,在“开发-接口权限 ...