openstack安装部署_openstack stein版本安装体验

端午节之前,一时兴起,想参考官方文档搭建一个openstack最新版本Ussuri的实验环境,没想到失败了,遇到很多故障点,排除了这个,那个又来了,让人应接不暇。

openstack的Ussuri是今年5月13日发行,目前到了Maintained状态。最新的还有Victoria,还处于研发阶段。所以最新的就是Ussuri版本。Ussuri对可支持的linux操作系统提出了更高的要求,在CentOS底层操作系统这块,需要匹配CentOS8版本。如下所示:

8c8f70a758cea7a0797057a027ee9917.png

而对于Python模块的支持,也相应升级到了Python3,虽然官方文档里面没有明说,在安装Ussuri各组件的时候能看出来。

afb73bdf9aede63164e3781cb4ab8d9b.png

总而言之,言而总之,抱着尝鲜的态度去搭建openstack Ussuri版本以失败告终,最后老老实实跟着官方文档搭建了另一个版本,即Stein,这次就比较成功。在搭建Stein版本之前,还搭建了五节点的Rocky版本,实验环境能满足各项测试。这次搭建Stein单纯只是把官方文档的搭建步骤再熟悉一下,有了前几次搭建的经验教训,这次搭建过程更为顺利一些,时间比之前缩短了两倍都不止。

网上有很多网友自己搭建openstack各版本的教程分享,动不动就十篇二十篇左右的规模。看得多了,会发现他们都是跟着官方文档依葫芦画瓢,所以最为行之有效的方法还是跟着官方文档走一遍。对于各组件概念的介绍以及细节部分的补充都很详尽。

0c8618f5e66fe098e5f18954b38f0ef8.png

不管openstack的版本如何变化,核心的组件是基本保持不变的,即用于认证的keystone,用于网络服务的neutron,用于镜像服务的glance,用于资源使用情况跟踪的placement,用于计算的nova,用于web前段展示的dashboard,用于存储服务的cinder。

223c23e88c003b9efb8477aed1682866.png

把架构图搞懂了,再跟着官方文档一步步的部署各组件,对于理解openstack的整体架构是一个递进的关系。

和Rocky版本一样,这次的openstack实验过程仍然用到了五个节点,一个控制节点,一个计算节点,一个块存储节点,两个对象存储节点,虚拟机规划基本如下图所示:

ad0b879db0a01d677de1fceed00b08ec.png

其中控制节点和计算节点各分配了8GB内存,块存储节点以及对象存储节点各分配了4GB内存,并额外配比了两块独立的硬盘。每个虚拟机配置了两块网卡,其中192.168.18.x用于外网环境,10.0.0.x用于内网环境。分别对应于openstack网络部分的provider network(外网)和management network(内网)网络接口服务。所有虚拟机操作系统都使用CentOS7.4版本。

官方文档建议如下:

dc44bb0eb71962ad043fb24396946831.png

c5e8804caa135c97dbeee1782d04317e.png

对于任何版本的openstack来说,在安装各组件之前,统一安装的内容如下:

1,时间同步;

2,资源包源的更新;

3,数据库配置;

4,消息队列配置;

5,Etcd配置。

958ca64cfef84a413899aa7301a128bd.png

之后才是开始进行各组件的安装:

20987002ed70bca04b6c93595b23ac1c.png

de38924a76f3e5ae8a8bce0ba047b094.png

计算了一下时间,我从端午节中午1点开始动工,到4点收工,一共耗费3小时时间,时间上算是比较快的了。但相比K8S的一键部署,openstack还是显得要繁琐得多,尤其每安装一个组件,就需要到keystone配置文件里面去进行大批量的设置。

当然,除了目前通用的安装配置方法,openstack也提供了更快速的部署方法,如文档所述:

a85b447660f7c645d67a8afeaf768618.png

这个只有在今后的实验过程中慢慢体会了。

Stein版本搭建完成之后,可以通过几个方面来验证实验是否成功。首先是web前段展示部分,在这里以图形化界面的方式展示openstack云服务器的整体框架:

cb176294078edb8de7d222b5d66126b2.png

计算节点部署完毕之后,可以通过在控制节点执行openstack network agent list来查看和计算节点的联动:

e5d8be7563a189fa29eadb5461cec3ee.png

块存储节点部署完毕之后,可以通过在控制节点上执行openstack volume service list来查看和块存储节点的联动:

1eba312087f417453795f61013afa4d2.png

网络组件和存储服务组件部署完毕之后,可以通过在公网和私网分别启动实例的方式来验证是否成功:

294666473f8810d605c0498ce926bb6e.png

虚拟机重启之后,实例处于shutoff状态,可以通过nova start instance-name的方式来启动实例。

参考官网安装Stein版本的openstack过程中,对于官网没有提到或者提到了并不能正确执行的地方如下:

问题1,安装placement组件的第一步,需要通过pip来安装,但系统默认没有安装pip,会提示操作失败。

6af482e24a00176135a1dce3dc7ae9db.png

解决办法:

1,yum -y install epel-release

2,yum -y install python-pip

问题2,执行systemctl enable openstack-xxx的时候报错。因为在高版本的Stein中,openstack-nova-consoleauth服务已默认不可用。

cb7eb3c501ef11a85f95c20674ffa08c.png

解决办法:

除去openstack-nova-consoleauth之外,其他所有服务单独启动以及设置开机自启动。

问题3,执行命令的时候报错。

52efaded36fe3197f6ae8966fa814572.png

报错如下:

c903d5487e2a48caa8ddf8494b95fd75.png

解决方法:

[root@controller ~]# vim /etc/httpd/conf.d/00-placement-api.conf

添加内容如下:

8663b2f3e11029645633bf3aad928776.png

然后systemctl restart httpd.service即可。

问题4,无法将参数设置为1。

2a821116d2f9187bf8004a65be28e04d.png

这里openstack官方文档没有给出解决方法,通过百度能解决。

解决方法(控制节点和计算节点都要编辑):

编辑/etc/sysctl.conf文档添加内容如下:

net.bridge.bridge-nf-call-ip6tables = 1

net.bridge.bridge-nf-call-iptables = 1

[root@localhost ~]# modprobe br_netfilter

[root@localhost ~]# sysctl -p

net.bridge.bridge-nf-call-ip6tables = 1

net.bridge.bridge-nf-call-iptables = 1

除去这些故障点之外,其他任何故障点都跟修改配置文件相关,只要在修改配置文件的过程中小心仔细,就能成功搭建起openstack的Stein版本。

接下来就是充分利用实验环境好好玩。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值