Kolla容器化部署OpenStack:单点部署
陈沙克老师发布了一个kolla的Ocata的ISO,这个ISO把所有需要的软件及Docker镜像都集成起来,安装应该非常方便,所以决定试一试。
首先我在一台16g的戴尔服务器上面安装这个iso,配置2块网卡,一块为em1(隧道网络,网段为192.168.0.0/24),一块为em2(作为作为管理和外部网络,网段为172.16.31.0/24)。
注意硬盘至少需要200G(安装完成后实际占用空间为25G以内),否则无法进行安装。
部署步骤
(1)使用iso引导,选择 install centos7.3 and kolla
可以使用tab键,修改ip地址和主机名,默认ip地址为10.99.0.2,主机名为control01
这里需要注意,安装完成后,需要设置好网卡1、网卡2的IP地址,最好固定ip地址!网卡名称分别为em1和em2,IP地址分别为192.168.0.130和172.16.31.130
(2)安装系统后,登录系统(root密码为99cloud),首先要进行如下修改:
1)/etc/hosts 文件需要修改
10.99.0.2 control01 改为 172.16.31.0.130 control01
2)/etc/kolla/globals.yml 文件里面2个IP地址由10.99.0.2替换为172.16.31.130
3)/etc/kolla/globals.yml 文件中 neutron_external_interface: "docker0" 改为neutron_external_interface: "em2"
然后进行部署:
/root/kolla-ansible-4.0.3.dev36/tools/kolla-ansible deploy
部署过程中,如果发现下面类似的错误,则需要进入容器,查看日志进行排错。
下面这个错误原因就是RabbitMQ容器中的服务没有正常启动(问题1造成)而导致nova-compute服务无法启动。
遇到的最后一个问题,就是 neutron_openvswitch_agent 容器无法正常启动,排查的结果是 openvswitch_vswitchd 容器里面的 br-ex 下面的port应该由docker0改为em2(外网网卡)
dashboard访问地址 http://172.16.31.130/
username admin
password 99cloud
后续测试
1)上传镜像cirros
2)创建flavor
3)创建一个vxlan网络
4)创建一个外部网络
5)添加路由router1,可以让内部网络连接到外网
6)启动2个实例,其中给test1添加浮动IP
如果实例无法启动的话进行如下修改(物理机环境不会出现这个情况)
问题描述:
VMware虚拟机作为OpenStack计算节点,如果安装的操作系统是CentOS7.3,则在此计算节点放置的虚拟机无法正常启动,报如下错误:
在创建计算节点时,为了能让 KVM 能创建嵌套的虚机,要把 CPU 的虚拟化功能打开。如下图在 VMWare 中设置以下 CPU 的模式。
用以下命令确认 CPU 支持虚拟化。
nova的配置如下:
/etc/nova/nova.conf
[libvirt]
virt_type = kvm
已经验证,如果计算节点安装的是CentOS7.2或Ubuntu操作系统,则不会报上面的错误。
解决方案:
修改nova的配置:
/etc/nova/nova.conf
[libvirt]
virt_type = qemu
cpu_mode = none
重启 nova-compute即可。
就算CPU支持虚拟化,也得设置 virt_type = qemu ,否则还是报错。
7) 默认安全组添加两条规则,支持外部ping通内部、ssh登陆内部
8)ping测试
虚拟机之间可以互相通信
绑定浮动ip后ping外网ip
作者:废权
链接:https://blog.yjscloud.com/archives/65
声明:如无特别声明本文即为原创文章仅代表个人观点,版权归《废权的博客》所有,欢迎转载,转载请保留原文链接。


共有 0 条评论