一、部署软件环境
操作系统
centos7.7.1908
内核版本:
3.10.0-1062.el7.x86_64
节点信息以及网卡的配置
controller 4C 8G 双网卡 主机模式(ens33 192.168.10.200/24) NAT模式(ens34 10.0.0.200)
compute 2C 4G 双网卡 主机模式(ens33 192.168.10.201/24) NAT模式(ens34 10.0.0.201)
cinder 1C1G 双网卡 主机模式(ens33 192.168.10.202/24) NAT模式(ens34 10.0.0.202)
说明:此次部署搭建采用vmware虚拟三台centos7.7系统手动搭建社区openstack Queens环境
二、OpenStack概述
OpenStack项目是一个开源云计算平台,支持所有类型的云环境。该项目旨在实现简单,大规模的可扩展性和丰富的功能。
OpenStack通过各种补充服务提供基础架构即服务(IaaS)解决方案。每项服务都提供了一个应用程序编程接口(API),以促进这种集成。
本文涵盖了使用适用于具有足够Linux经验的OpenStack新用户的功能性示例体系结构,逐步部署主要OpenStack服务。只用于学习OpenStack最小化环境。
三、OpenStack架构总览
1.概念性架构
下图显示了OpenStack服务之间的关系:2.逻辑体系结构
下图显示了OpenStack云中最常见但不是唯一可能的体系结构:对于设计,部署和配置OpenStack,学习者必须了解逻辑体系结构。
如概念架构所示,OpenStack由几个独立的部分组成,称为OpenStack服务。所有服务都通过keystone服务进行身份验证。各个服务通过公共API相互交互,除非需要特权管理员命令。
在内部,OpenStack服务由多个进程组成。所有服务都至少有一个API进程,它监听API请求,预处理它们并将它们传递给服务的其他部分。除身份服务外,实际工作由不同的流程完成。
对于一个服务的进程之间的通信,使用AMQP消息代理。该服务的状态存储在数据库中。部署和配置OpenStack云时,您可以选择多种消息代理和数据库解决方案,例如RabbitMQ,MySQL,MariaDB和SQLite。用户可以通过Horizon Dashboard实现的基于Web的用户界面,通过命令行客户端以及通过浏览器插件或curl等工具发布API请求来访问OpenStack。对于应用程序,有几个SDK可用。最终,所有这些访问方法都会对各种OpenStack服务发出REST API调用
四、系统初始化(所有节点执行)
1、关闭防火墙
systemctl stop firewalld && systemctl enable firewalld
2、关闭seLinux
sed -i 's/SELinux=enforcing/SELinux=disabled/g' /etc/sysconfig/seLinux
3、关闭网卡守护进程
systemctl stop NetworkManager && systemctl stop NetworkManager
4、添加主机名的映射
192.168.10.200 controller 192.168.10.201 compute 192.168.10.202 cinder
5、配置阿里云yum源
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backupwget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repokfjnerjkbgnjkfdbgjfidg
6、定义定时器配置时间同步(线上环境建议使用时间同步服务,此为测试)
crontab –e*/10 * * * * /usr/sbin/ntpdate time1.aliyun.com && hwclock –w
注意:日常运维中经常遇见时钟飘逸问题,导致集群服务脑裂
五、OpenStack组件服务部署
说明:无特殊说明,以下操作在所有节点上执行
1、下载安装openstack软件仓库(queens版本)
yum install centos-release-openstack-queens –y
2.安装openstack client端
yum install python-openstackclient –y
3.安装openstack-seLinux(如已关闭seLinux,可省略)
yum install openstack-seLinux –y
精彩评论