2022年职业院校技能大赛云计算赛项私有云平台OpenStack搭建

发布于:2022-08-06 ⋅ 阅读:(611) ⋅ 点赞:(0)

前言:

         视频版:2022全国职业院校技能大赛云计算赛项私有云OpenStack平台搭建-you8771

        本文主要写了OpenStack T版本搭建的流程,从基础环境至Dashboard的搭建过程

节点 IP
yum源 172.16.10.128
controller 172.16.10.131
compute

172.16.10.132

控制节点

安装软件包和配置参数

配置centos与iaas的yum源后安装openstack-iaas的软件包

yum install -y openstack-iaas

配置openrc.sh文件参数

参数参考如下

[root@compute ~]# cat /etc/openstack/openrc.sh 
#--------------------system Config--------------------##
#Controller Server Manager IP. example:x.x.x.x
HOST_IP=172.16.10.131

#Controller HOST Password. example:000000 
HOST_PASS=000000

#Controller Server hostname. example:controller
HOST_NAME=controller

#Compute Node Manager IP. example:x.x.x.x
HOST_IP_NODE=172.16.10.132

#Compute HOST Password. example:000000 
HOST_PASS_NODE=000000

#Compute Node hostname. example:compute
HOST_NAME_NODE=compute

#--------------------Chrony Config-------------------##
#Controller network segment IP.  example:x.x.0.0/16(x.x.x.0/24)
network_segment_IP=172.16.10.0/24

#--------------------Rabbit Config ------------------##
#user for rabbit. example:openstack
RABBIT_USER=openstack

#Password for rabbit user .example:000000
RABBIT_PASS=000000

#--------------------MySQL Config---------------------##
#Password for MySQL root user . exmaple:000000
DB_PASS=000000

#--------------------Keystone Config------------------##
#Password for Keystore admin user. exmaple:000000
DOMAIN_NAME=demo
ADMIN_PASS=000000
DEMO_PASS=000000

#Password for Mysql keystore user. exmaple:000000
KEYSTONE_DBPASS=000000

#--------------------Glance Config--------------------##
#Password for Mysql glance user. exmaple:000000
GLANCE_DBPASS=000000

#Password for Keystore glance user. exmaple:000000
GLANCE_PASS=000000

#--------------------Placement Config----------------------##
#Password for Mysql placement user. exmaple:000000
PLACEMENT_DBPASS=000000

#Password for Keystore placement user. exmaple:000000
PLACEMENT_PASS=000000

#--------------------Nova Config----------------------##
#Password for Mysql nova user. exmaple:000000
NOVA_DBPASS=000000

#Password for Keystore nova user. exmaple:000000
NOVA_PASS=000000

#--------------------Neutron Config-------------------##
#Password for Mysql neutron user. exmaple:000000
NEUTRON_DBPASS=000000

#Password for Keystore neutron user. exmaple:000000
NEUTRON_PASS=000000

#metadata secret for neutron. exmaple:000000
METADATA_SECRET=000000

#External Network Interface. example:eth1
INTERFACE_NAME=eth1

#External Network The Physical Adapter. example:provider
Physical_NAME=provider

#First Vlan ID in VLAN RANGE for VLAN Network. exmaple:101
minvlan=101

#Last Vlan ID in VLAN RANGE for VLAN Network. example:200
maxvlan=200

#--------------------Cinder Config--------------------##
#Password for Mysql cinder user. exmaple:000000
CINDER_DBPASS=000000

#Password for Keystore cinder user. exmaple:000000
CINDER_PASS=000000

#Cinder Block Disk. example:md126p3
BLOCK_DISK=

#--------------------Swift Config---------------------##
#Password for Keystore swift user. exmaple:000000
SWIFT_PASS=000000

#The NODE Object Disk for Swift. example:md126p4.
OBJECT_DISK=

#The NODE IP for Swift Storage Network. example:x.x.x.x.
STORAGE_LOCAL_NET_IP=172.16.10.132

#--------------------Trove Config----------------------##
#Password for Mysql trove user. exmaple:000000
TROVE_DBPASS=000000

#Password for Keystore trove user. exmaple:000000
TROVE_PASS=000000

#--------------------Heat Config----------------------##
#Password for Mysql heat user. exmaple:000000
HEAT_DBPASS=000000

#Password for Keystore heat user. exmaple:000000
HEAT_PASS=000000

#--------------------Ceilometer Config----------------##
#Password for Gnocchi ceilometer user. exmaple:000000
CEILOMETER_DBPASS=000000

#Password for Keystore ceilometer user. exmaple:000000
CEILOMETER_PASS=000000

#--------------------AODH Config----------------##
#Password for Mysql AODH user. exmaple:000000
AODH_DBPASS=000000

#Password for Keystore AODH user. exmaple:000000
AODH_PASS=000000

#--------------------ZUN Config----------------##
#Password for Mysql ZUN user. exmaple:000000
ZUN_DBPASS=000000

#Password for Keystore ZUN user. exmaple:000000
ZUN_PASS=000000

#Password for Keystore KURYR user. exmaple:000000
KURYR_PASS=000000

#--------------------OCTAVIA Config----------------##
#Password for Mysql OCTAVIA user. exmaple:000000
OCTAVIA_DBPASS=000000

#Password for Keystore OCTAVIA user. exmaple:000000
OCTAVIA_PASS=000000

#--------------------Manila Config----------------##
#Password for Mysql Manila user. exmaple:000000
MANILA_DBPASS=000000

#Password for Keystore Manila user. exmaple:000000
MANILA_PASS=000000

#The NODE Object Disk for Manila. example:md126p5.
SHARE_DISK=

#--------------------Cloudkitty Config----------------##
#Password for Mysql Cloudkitty user. exmaple:000000
CLOUDKITTY_DBPASS=000000

#Password for Keystore Cloudkitty user. exmaple:000000
CLOUDKITTY_PASS=000000

#--------------------Barbican Config----------------##
#Password for Mysql Barbican user. exmaple:000000
BARBICAN_DBPASS=000000

#Password for Keystore Barbican user. exmaple:000000
BARBICAN_PASS=000000

由于使用虚拟机,所以OBJECT_DISK、BLOCK_DISK、SHARE_DISK的参数没有填写

controller节点的配置文件填写后,可使用scp命令将openrc.sh文件远程复制到compute节点上。

安装基础组件

iaas-pre-host.sh

脚本完成后,需要重新链接controller节点,在终端使用Ctrl+D即可

该脚本运行完成后可以使用如下命令检查脚本内容是否正确执行

1、检查hostname是否更名成功为controller
[root@controller ~]# hostnamectl 
   Static hostname: controller
         Icon name: computer-vm
           Chassis: vm
        Machine ID: cc2c86fe566741e6a2ff6d399c5d5daa
           Boot ID: dce56fa1b83a47519b41f113dd0debbf
    Virtualization: vmware
  Operating System: CentOS Linux 7 (Core)
       CPE OS Name: cpe:/o:centos:centos:7
            Kernel: Linux 3.10.0-1160.el7.x86_64
      Architecture: x86-64
      CSDN&&bilibili:you8771辅导OpenStack

2、检查hosts文件是否写入成功和正确 (下方10.128 http是我自己加的,没有这个不影响搭建)
[root@controller ~]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
172.16.10.128 http
172.16.10.131 controller
172.16.10.132 compute

3、检查时钟同步服务
[root@controller ~]# chronyc sources
210 Number of sources = 1
MS Name/IP address         Stratum Poll Reach LastRx Last sample               
===============================================================================
^* controller                   10   8   377   64m  -4457ns[  -13us] +/-   22us

执行并检查完该脚本内容后,应该转至compute节点执行该脚本,详细内容请到本章compute节点的安装初始化部分查看

安装数据库、rabbitmq、memcached等服务

iaas-install-mysql.sh

该脚本执行后,应该使用以下命令检查安装是否成功

systemctl status rabbitmq-server
systemctl status mariadb
systemctl status memcached
systemctl status etcd
以上的结果应该都是显示active (running)状态
同时可以使用mysql -uroot -p000000命令,进入数据库查看是否可以正常进入
-----------------------------------------------------------------------------
by you8771

compute节点不需要执行该脚本

安装keystone相关组件

执行下方脚本

iaas-install-keystone.sh

完成后执行下方命令,检查服务是否可以正常运行,

[root@controller ~]# source /etc/keystone/admin-openrc.sh
[root@controller ~]# openstack token issue 
+------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| Field      | Value                                                                                                                                                                                   |
+------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
| expires    | 2022-08-06T11:01:43+0000                                                                                                                                                                |
| id         | gAAAAABi7jwHYyIHQ2oQHWL4SS1Od7j9kp419-kLICs9_Mt-PfAYNQ_gMt518PfJ75qSLZeNLS-udQfsvzW0Ao6PeRh73EOHsS8fYNcuiY9zMiiIRIH9wRbc_m1DKNqdSHBb0t-iAlMn8crHhefgtULGOIpgrfil1RzK0GHHnbCZ-EiXqFOgTZY |
| project_id | 5b828ecf6a51476e9b93098d8375eaa4                                                                                                                                                        |
| user_id    | 2cc6ead9e8d2425cb53dc7ed40you8771b3ace8                                                                                                                                                        |
+------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+

返回有token即代表keystone服务无误

安装glance相关组件

执行下方脚本

iaas-install-glance.sh

完成后可以自行上传一个cirros命令查看该服务是否可以正常使用

glance image-create --name cirros --disk-format qcow2 --container-format bare --file cirros.img
glance image-list

安装placement相关组件

执行下方脚本

iaas-install-placement.sh

检验方法:数据库表有返回就视为安装成功

[root@controller ~]# mysql -uroot -p000000 -e "use placement;show tables;"
+------------------------------+
| Tables_in_placement          |
+------------------------------+
| alembic_version              |
| allocations                  |
| consumers                    |
| inventories                  |
| placement_aggregates         |
| projects                     |
| resource_classes             |
| resource_provider_aggregates |
| resource_provider_traits     |
| resource_providers           |
| traits                       |
| users
| you8771                      |
+------------------------------+

安装nova相关组件

执行下方脚本

iaas-install-nova-controller.sh

脚本执行完成后,可到compute节点执行iaas-install-nova-compute.sh脚本

安装neutron相关组件

执行下方脚本

iaas-install-neutron-controller.sh

安装dashboard组件

 执行下方脚本

iaas-install-dashboard.sh

执行完成后在浏览器打开controller节点ip/dashboard打开页面登录

 

 

计算节点

分别执行以下脚本

iaas-pre-host.sh
iaas-install-nova-compute.sh
iaas-install-neutron-compute.sh

视频教程: 2022全国职业院校技能大赛云计算赛项私有云OpenStack平台搭建-you8771

哪里不清楚可以留言评论问哦

本文含有隐藏内容,请 开通VIP 后查看

网站公告

今日签到

点亮在社区的每一天
去签到