CentOS7+Openstack-ocata版云平台环境搭建-1.基础环境部署

 

       大家都知道,在创建Openstack的时候,需要先搭建一个部署openstack各个节点的环境,这里我们在VMware中搭建了三台CentOS7版本的linux系统,分别部署控制节点(controller)、计算节点(nova)、块存储节点(cinder)。在搭建环境前,需要针对个人的电脑硬件配置来分配各个节点系统的硬件配置(在此说明下,本人电脑8G内存,预留了50G存储用于此次openstack三个节点环境的搭建)。当然,配置越高,搭建的过程中运行越快。

1. 环境要求

   1.1 控制节点(controller)

         内存:4G

         存储:10G

         网卡(NAT):2个(一个用于局域网内地址分配(static),一个用于连接外网(dhcp))

   1.2 计算节点(nova)

         内存:2G

         存储:20G

         网卡(NAT):2个(作用与1的网卡相同)

   1.3 块存储节点(cinder)

         内存:2G

         存储:20G

         网卡(NAT):2个(作用与1的网卡相同)

 

2. 安装操作系统

    在安装操作系统时,需设置以下部分:

           系统选择(例:Minimal Install)

           虚拟机名称(例:controller、compute1、block1)

           DATE & TIME(例:Asia/Shanghai timezone)

           LANGUAGE SUPPORT(例:English(US))

    安装过程略。

 

3. 网卡配置

    3.1 各节点网卡配置如下

         * 控制节点(controller):

               IP:192.168.18.10

               NETMASK:255.255.255.0

               GATEWAY:192.168.18.1

         * 计算节点(nova):

               IP:192.168.18.20

               NETMASK:255.255.255.0

               GATEWAY:192.168.18.1

         * 块存储节点(cinder):

               IP:192.168.18.40

               NETMASK:255.255.255.0

              GATEWAY:192.168.18.1

    3.2 操作过程(所有的操作均需在跟用户root下完成):

         3.2.1 在目录/etc/sysconfig/network-scripts/下,找到两块网卡配置文件ifcfg-ens33和ifcfg-ens34.  

         3.2.2 编辑网卡ifcfg-ens33,修改部分如下:

 

         3.2.3 编辑网卡ifcfg-ens34,修改部分如下:

 

   

4. 配置名称解析

     4.1 更改各台主机名:

           # hostnamectl set-hostname [主机名]   (例:controller、compute1、block1)

     4.2编辑/etc/hosts文件,使之包含以下内容:

 

5. 验证各个节点之间和各个节点与intenet间的连通性

    5.1 分别从其中一个节点ping其他节点,例:从controller节点ping compute1节点

   5.1 分别从其中一个节点ping百度网址(www.baidu.com)

 

6. 配置网络时间协议

    6.1 在控制节点上执行以下操作

        6.1.1 安装软件包:

                 #yum install chrony

        6.1.2 编辑/etc/chrony.conf文件,根据你本地环境需要使用NTP服务器的主机名或IP替换文件中“server NTP_SERVER iburst”中的NTP_SERVER部分;并且为了让其他节点也能连接到控制节点上的chrony守护程序,在chrony.conf中添加:#allow 192.168.18.0/24,如下:

        6.1.3 启动NTP服务,并将其配置为随系统启动:

                 #systemctl enable chronyd.service

                 #systemctl start chronyd.service

    6.2 在其他节点上做以下操作:

          6.2.1 安装软件包:

                   #yum install chrony

          6.2.2 编辑/etc/chrony.conf文件,并注释除“server”键之外所有内容,修改其为引用控制节点:

                   server controller iburst

          6.2.3 启动NTP服务,并将其配置为随系统启动:

                   #systemctl enable chronyd.service

                   #systemctl start chronyd.service

    6.3 验证NTP的同步

          6.3.1 在控制节点上执行以下命令(由于无NTP服务器,暂设置同步本地):

                   #chronyc sources

         6.3.2 在其他节点上执行以下命令(显示的NTP服务器为控制节点的主机名或IP):

                  #chronyc sources

 

 7. Openstack包安装

     7.1 启用Openstack库

           在CentOS中,“extras”仓库提供用于启用Openstack仓库的RPM包。CentOS

默认启用“extras”仓库,因此你可以直接安装用于启用Openstack仓库的包。

            #yum install centos-release-openstack-ocata

     7.2 完成安装

           7.2.1 在所有节点上运行以下命令升级包文件:

                    #yum upgrade

                    执行完以上命令后,重启主机来使用更新后的新内核。

           7.2.2 安装Openstack客户端:

                    #yum install python-openstackclient

           7.2.3 CentOS默认启用SELinux。安装openstack-selinux包实现对Openstack服务的安全策略进行自动管理:

                   #yum install openstack-selinux

 

8. SQL数据库安装

     更多的Openstack服务使用SQL数据库去存储信息。一般地数据库通常都是运行在控制节点上。本指南中将使用MariaDB数据库。

     8.1 安装软件包:

           # yum install mariadb mariadb-server python2-PyMySQL

     8.2 创建并编辑/etc/my.cnf.d/openstack.cnf,然后完成如下操作:

           在[mysqld]中,设置“bind-address”值为控制节点的管理网络IP地址,以使其他节点可以通过管理网络访问数据库。设置其他关键字来设置一些有用的选项和UTF-8编码:

 

    8.3 启动数据库服务,并将其配置为开机启动:

          # systemctl enable mariadb.service

          # systemctl start mariadb.service

    8.4 通过运行脚本"mysql_secure_installation"来保护数据库服务,并为数据库跟账号root选择一个合适的密码:

          # mysql_secure_installation                //修改密码,移除一些临时用户和数据库

 

 9. 消息队列

     OpenStack使用消息队列来协调服务之间的操作和状态信息。消息队列服务通常在控制器节点上运行。OpenStack支持多个消息队列服务,包括RabbitMQ、Qpid和ZeroMQ。但是,大多数包OpenStack的发行版都支持特定的消息队列服务。本指南实现了RabbitMQ消息队列服务,因为大多数发行版都支持它。如果希望实现不同的消息队列服务,请参阅与之关联的文档。

     9.1 安装包

           # yum install rabbitmq-server

     9.2 启动消息队列服务并将其配置为随系统启动:

           # systemctl enable rabbitmq-server.service

           # systemctl start rabbitmq-server.service

     9.3 添加 openstack 用户:

           # rabbitmqctl add_user openstack RABBIT_PASS

           Creating user "openstack" ...

     9.4 给``openstack``用户配置写和读权限:

           # rabbitmqctl set_permissions openstack ".*" ".*" ".*"

           Setting permissions for user "openstack" in vhost "/" ...

 

 10. 缓存服务(Memcached)

       各类服务的身份认证机制使用Memcached缓存令牌。缓存服务memecached通常运行在控制节点。在生产部署中,我们推荐联合启用防火墙、认证和加密保证它的安全。

       10.1 安装软件包

               # yum install memcached python-memcached

       10.2 编辑/etc/sysconfig/memcached文件,做以下修改:

 

       10.3 启动Memcached服务,并配置它随即启动。

               # systemctl enable memcached.service

               # systemctl start memcached.service

             

              

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

          

 

posted @ 2019-07-18 17:36  hardy_w  阅读(1065)  评论(0)    收藏  举报