OpenStack搭建(三)组件安装

这一部分开始就是OpenStack真正意义上的正文部分了

1. 硬盘分区

在前文中,我们创建虚拟机使用了两个硬盘,一个100G一个50G,这里我们将要对这个50G硬盘进行分区,为后面运行组件安装的脚本做准备。

fdisk /dev/sdb
分出2个20G和1个5G

2. 安装ntp进行时间同步

controller节点配置:

yum -y install ntp #安装ntp服务
vi /etc/ntp.conf #进入编辑ntp的配置文件
添加以下内容(删除默认的server规则)
server 127.127.1.0
fudge 127.127.1.0 stratum 10

进行保存之后重启ntp服务并设为开机自启动

systemctl restart ntpd
systemctl enable ntpd

compute节点设置:

yum -y install ntpdate #安装ntpdate服务
systemctl enable ntpdate #设为开机自启动
ntpdate controller #同步时间

3. 预部署脚本的安装和配置

所有节点先安装先电版本的脚本包(因为iaas的ISO文件里用的是这个版本的脚本包)

yum install iaas-xiandian -y

安装之后对脚本配置文件进行修改

vi /etc/xiandian/openrc.sh  #进入脚本的配置文件

默认配置文件:

##--------------------system Config--------------------##
##Controller Server Manager IP. example:x.x.x.x
#HOST_IP=

##Controller HOST Password. example:000000 
#HOST_PASS=

##Controller Server hostname. example:controller
#HOST_NAME=

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

##Compute HOST Password. example:000000 
#HOST_PASS_NODE=

##Compute Node hostname. example:compute
#HOST_NAME_NODE=

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

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

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

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

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

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

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

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

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

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

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

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

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

##Tunnel Network Interface. example:x.x.x.x
#INTERFACE_IP=

##External Network Interface. example:eth1
#INTERFACE_NAME=

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

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

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

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

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

##Cinder Block Disk. example:md126p3
#BLOCK_DISK=

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

##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=

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

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

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

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

##Password for Mysql Kuryr user. exmaple:000000
#KURYR_DBPASS=

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

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

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

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

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

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

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

对配置文件以下内容进行一些修改

指针放在最上边最左边,按Ctrl+V然后按Shift+G最后按x键,可以一键删除第一列的“#”

HOST_IP=10.10.10.100 #controller节点IP
HOST_NAME=controller
HOST_IP_NODE=10.10.10.200 #compute节点IP
HOST_PASS_NODE=000000
HOST_NAME_NODE=compute
network_segment_IP=all #网段
RABBIT_USER=openstack
DOMAIN_NAME=demo #按照搭建要求写,我这里写demo
METADATA_SECRET=000000
INTERFACE_IP=10.10.10.100 #外网IP(compute节点就写为10.10.10.200)
INTERFACE_NAME=ens33 #外网网卡名
Physical_NAME=provider
minvlan=101
maxvlan=200
BLOCK_DISK=sdb1 #空白分区名
OBJECT_DISK=sdb2 #空白分区名
STORAGE_LOCAL_NET_IP=10.10.10.200 #compute节点IP

其他所有PASS都填000000
vi的命令模式下输入  :%s/PASS=/PASS=000000 #将PASS=替换为PASS=000000

最终配置结果:

#--------------------system Config--------------------##
#Controller Server Manager IP. example:x.x.x.x
HOST_IP=10.10.10.100

#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=10.10.10.200

#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=all

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

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

#--------------------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

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

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

#--------------------Neturon 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

#Tunnel Network Interface. example:x.x.x.x
INTERFACE_IP=10.10.10.100 #compute节点这里为10.10.10.200

#External Network Interface. example:eth1
INTERFACE_NAME=ens33

#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=sdb1

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

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

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

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

#Password for Keystore heat user. exmaple:000000
HEAT_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 Mysql Kuryr user. exmaple:000000
KURYR_DBPASS=000000

#Password for Keystore Kuryr user. exmaple:000000
KURYR_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

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

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

修改完成之后,执行预部署脚本(温馨提示:执行这个包括后面所有脚本之前一定一定一定要设置快照或者备份!!!不要问我为什么,问就是血的教训)

iaas-pre-host.sh

执行完成这个脚本之后,需要用reboot命令重启一次。

4. 安装openstack组件

4.1 controller节点安装MySQL数据库

iaas-install-mysql.sh

4.2 controller节点安装keystone认证服务

iaas-install-keystone.sh

4.3 controller节点安装glance镜像服务

iaas-install-glance.sh

4.4 所有节点安装Nova计算服务

iaas-install-neutron-controller.sh #controller节点
iaas-install-neutron-compute.sh #compute节点

注:如果你和我一样使用的是CentOS7.9版本运行完出现依赖问题或者报错,多半是libxslt 依赖冲突(我们自带的这个依赖版本太高需要降级)
需要恢复到执行这个脚本之前的快照然后运行下面命令
# 查看可用版本
yum list libxslt --showduplicates
# 降级到 1.1.28-5.el7
sudo yum downgrade libxslt-1.1.28-5.el7

还有就是需要手动安装
sudo yum install openstack-nova-api openstack-nova-conductor openstack-nova-scheduler

运行完这些再重新运行上面的iaas-neutron脚本

4.5 controller节点安装Dashboard控制面板服务

iaas-install-dashboard.sh

4.6 浏览器访问controller节点IP进行登录

浏览器输入: controller节点IP/dashboard #比如我的就是10.10.10.100/dashboard

4.7 全部节点安装Swift对象存储服务

iaas-install-swift-controller.sh #controller节点
iaas-install-swift-compute.sh #compute节点

4.8 全部节点安装Cinder存储服务

iaas-install-cinder-controller.sh #controller节点
iaas-install-cinder-compute.sh #compute节点

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇