openstack私有云平台搭建

1.1 安装 CentOS7 说明

【CentOS7 版本】

        CentOS7 系统选择 2009 版本:CentOS-7-x86_64-DVD-2009.iso

【空白分区划分】

        在 CentOS7 安装过程中,设置分区都需要一个挂载点,这样一来就无法创建三个空白 的磁盘分区作为 cinder 服务、swift 服务和 manila 服务的存储磁盘了。

        所以我们应该在系统安装过程中留下足够的磁盘大小,系统安装完成后,使用命令 parted 划分三个新分区。 

1.2 交换机配置

        以 H3C-S5024-24P 交换机配置为例,为三层交换机配置 vlan。

        新建 vlan 100,为 vlan 100 配置 IP 地址为 192.168.100.1,作为管理网段的网关地址,并将交 换机 1-8 号端口加入到 vlan 100 中。

        新建 vlan 200,为 vlan 200 配置 IP 地址为 192.168.200.1,作为虚拟机业务网段的网关 地址,并将交换机 9-16 号端口配置为 trunk 模式,放行 vlan 200(这里直接放行所有端口)。

         新建 vlan 2,为 vlan 2 配置 IP 地址为 192.168.1.1,作为训练用 PC 终端的网关地址, 并将交换机 17-24 号端口加入到 vlan 2 中。

        配置完交换机之后,需要用网线将服务器等设备与交换机连接起来。将两台服务器的 网口一连接到交换机的 1-8 口上;将两台服务器的网口二连接到交换机的 9-16 口上;学生 的 PC 终端连接到交换机的 17-24 口。

1.3 配置网络、主机名

修改和添加/etc/sysconfig/network-scripts/ifcfg-enp*(具体的网口)文件。

(1)controller 节点

配置网络: enp8s0: 192.168.100.10

DEVICE=enp8s0

TYPE=Ethernet

ONBOOT=yes

NM_CONTROLLED=no

BOOTPROTO=static

IPADDR=192.168.100.10

PREFIX=24

GATEWAY=192.168.100.1

enp9s0:第二块网卡不需要做配置

配置主机名:

# hostnamectl set-hostname controller

按 ctrl+d 退出 重新登陆

(2)compute 节点 配置网络:

enp8s0: 192.168.100.20

DEVICE=enp8s0

TYPE=Ethernet

ONBOOT=yes

NM_CONTROLLED=no

BOOTPROTO=static

IPADDR=192.168.100.20

PREFIX=24 GATEWAY=192.168.100.1

enp9s0:第二块网卡不需要做配置

配置主机名:

# hostnamectl set-hostname compute

按 ctrl+d 退出 重新登陆

1.4 配置 yum 源

#Controller 和 compute 节点

(1)yum 源备份

#mv /etc/yum.repos.d/* /opt/

(2)创建 repo 文件

【controller】

在/etc/yum.repos.d 创建 centos.repo 源文件

[centos]

name=centos

baseurl=file:///opt/centos

gpgcheck=0

enabled=1

[iaas]

name=iaas

baseurl=file:///opt/iaas/iaas-repo

gpgcheck=0

enabled=1

【compute】

在/etc/yum.repos.d 创建 centos.repo 源文件

[centos]

name=centos

baseurl=ftp://192.168.100.10/centos

gpgcheck=0 enabled=1

[iaas]

name=iaas

baseurl=ftp://192.168.100.10/iaas/iaas-repo

gpgcheck=0

enabled=1

(3)挂载 iso 文件

【挂载 CentOS-7-x86_64-DVD-2009.iso】

[root@controller ~]# mount -o loop CentOS-7-x86_64-DVD-2009.iso /mnt/

[root@controller ~]# mkdir /opt/centos

[root@controller ~]# cp -rvf /mnt/* /opt/centos/

[root@controller ~]# umount /mnt/

【挂载 chinaskills_cloud_iaas_v2.0.3.iso】

[root@controller ~]# mount -o loop chinaskills_cloud_iaas_v2.0.3.iso /mnt/

[root@controller ~]# mkdir /opt/iaas/

[root@controller ~]# cp -rvf /mnt/* /opt/

[root@controller ~]# umount /mnt/

(4)搭建 ftp 服务器,开启并设置自启

[root@controller ~]# yum install vsftpd -y

[root@controller ~]# vi /etc/vsftpd/vsftpd.conf

添加 anon_root=/opt/

保存退出

[root@controller ~]# systemctl start vsftpd

[root@controller ~]# systemctl enable vsftpd

(5)配置防火墙和 Selinux

【controller/compute】

编辑 selinux 文件

# vi /etc/selinux/config

SELINUX=permissive

也可以使用临时生效命令,如下:

# setenforce 0

关闭防火墙并设置开机不自启

# systemctl stop firewalld.service

# systemctl disable firewalld.service

# yum remove -y NetworkManager firewalld

# yum -y install iptables-services

# systemctl enable iptables

# systemctl restart iptables

# iptables -F

# iptables -X

# iptables -Z

# service iptables save

(6)清除缓存,验证 yum 源

【controller/compute】

# yum clean all

# yum list

1.5 编辑环境变量

# controller 和 compute 节点

# yum install openstack-iaas -y

编辑文件/etc/openstack/openrc.sh,此文件是安装过程中的各项参数,根据每项参数上一行 的说明及服务器实际情况进行配置。

HOST_IP=192.168.100.10

HOST_PASS=000000

HOST_NAME=controller

HOST_IP_NODE=192.168.100.10

HOST_PASS_NODE=000000

HOST_NAME_NODE=compute

network_segment_IP=192.168.100.0/24

RABBIT_USER=openstack

RABBIT_PASS=000000

DB_PASS=000000

DOMAIN_NAME=demo

ADMIN_PASS=000000

DEMO_PASS=000000

KEYSTONE_DBPASS=000000

GLANCE_DBPASS=000000

GLANCE_PASS=000000

PLACEMENT_DBPASS=000000

PLACEMENT_PASS=000000

NOVA_DBPASS=000000

NOVA_PASS=000000

NEUTRON_DBPASS=000000

NEUTRON_PASS=000000

METADATA_SECRET=000000

INTERFACE_NAME=enp9s0 #填写外部网络网卡名称

Physical_NAME=provider

minvlan=1 maxvlan=1000

CINDER_DBPASS=000000

CINDER_PASS=000000

BLOCK_DISK=sdb1 #第一个分区

SWIFT_PASS=000000

OBJECT_DISK=sdb2 #第二个分区

STORAGE_LOCAL_NET_IP=192.168.100.20 TROVE_DBPASS=000000

TROVE_PASS=000000

HEAT_DBPASS=000000

HEAT_PASS=000000

CEILOMETER_DBPASS=000000

CEILOMETER_PASS=000000

AODH_DBPASS=000000

AODH_PASS=000000

ZUN_DBPASS=000000

ZUN_PASS=000000

KURYR_PASS=000000

OCTAVIA_DBPASS=000000

OCTAVIA_PASS=000000

MANILA_DBPASS=000000

MANILA_PASS=000000

SHARE_DISK=sdb3 #第三个分区 CLOUDKITTY_DBPASS=000000

CLOUDKITTY_PASS=000000

BARBICAN_DBPASS=000000 BARBICAN_PASS=000000

SENLIN_DBPASS=000000

SENLIN_PASS=000000

1.6 通过脚本完成基础配置

controller节点和compute节点执行脚本iaas-pre-host.sh进行安装

[root@controller ~]# iaas-pre-host.sh

安装完成后同时重启

[root@controller ~]# reboot

1.7 通过脚本安装数据库服务

controller节点执行脚本iaas-install-mysql.sh进行安装

[root@controller ~]# iaas-install-mysql.sh

2 安装 openstack 基础服务

2.1 通过脚本安装 keystone 服务

controller节点执行脚本iaas-install-keystone.sh进行安装

[root@controller ~]# iaas-install-keystone.sh

2.2 通过脚本安装 glance 服务

controller节点执行脚本iaas-install-glance.sh进行安装

[root@controller ~]# iaas-install-glance.sh

2.3 通过脚本安装 Placement 服务

controller节点执行脚本iaas-install-placement.sh进行安装

[root@controller ~]# iaas-install-placement.sh

2.4 通过脚本安装 Nova 服务

controller节点执行脚本iaas-install-nova-controller.sh进行安装

[root@controller ~]# iaas-install-nova-controller.sh

compute节点执行脚本iaas-install-nova-compute.sh进行安装

[root@compute ~]# iaas-install-nova-compute.sh

2.5 通过脚本安装 Neutron 服务

controller节点执行脚本iaas-install-neutron-controller.sh进行安装

[root@controller ~]# iaas-install-neutron-controller.sh

compute节点执行脚本iaas-install-neutron-compute.sh进行安装

[root@compute ~]# iaas-install-neutron-compute.sh

2.6 通过脚本安装 Dashboard 服务

controller节点执行脚本iaas-install-dashboard.sh进行安装

[root@controller ~]# iaas-install-dashboard.sh

3 安装 openstack 高级服务

3.1 通过脚本安装 cinder 服务

controller节点执行脚本iaas-install-cinder-controller.sh进行安装

[root@controller ~]# iaas-install-cinder-controller.sh

compute节点执行脚本iaas-install-cinder-compute.sh进行安装

[root@compute ~]# iaas-install-cinder-compute.sh

3.2 通过脚本安装 swift 服务

controller节点执行脚本iaas-install-swift-controller.sh进行安装

[root@controller ~]# iaas-install-swift-controller.sh

compute节点执行脚本iaas-install-swift-compute.sh进行安装

[root@compute ~]# iaas-install-swift-compute.sh

3.3 通过脚本安装 trove 服务

controller节点执行脚本iaas-install-trove.sh进行安装

[root@controller ~]# iaas-install-trove.sh

3.4 通过脚本安装 heat 服务

controller节点执行脚本iaas-install-heat.sh进行安装

[root@controller ~]# iaas-install-heat.sh

3.5 通过脚本安装 ceilometer 服务

controller节点执行脚本iaas-install-ceilometer-controller.sh进行安装

[root@controller ~]# iaas-install-ceilometer-controller.sh

compute节点执行脚本iaas-install-ceilometer-compute.sh进行安装

[root@compute ~]# iaas-install-ceilometer-compute.sh

3.6 通过脚本安装 aodh 服务

controller节点执行脚本iaas-install-aodh.sh进行安装

[root@controller ~]# iaas-install-aodh.sh


3.7 通过脚本安装 zun 服务

controller节点执行脚本iaas-install-zun-controller.sh进行安装

[root@controller ~]# iaas-install-zun-controller.sh

compute节点执行脚本iaas-install-zun-compute.sh进行安装

[root@compute ~]# iaas-install-zun-compute.sh

3.8 通过脚本安装 octavia 服务

controller节点执行脚本iaas-install-octavia.sh进行安装

[root@controller ~]#iaas-install-octavia.sh

3.9 通过脚本安装 manila 服务

controller节点执行脚本iaas-install-manila-controller.sh进行安装

[root@controller ~]# iaas-install-manila-controller.sh

compute节点执行脚本iaas-install-manila-compute.sh进行安装

[root@compute ~]# iaas-install-manila-compute.sh

3.10 通过脚本安装 cloudkitty 服务

controller节点执行脚本iaas-install-cloudkitty.sh进行安装

[root@controller ~]# iaas-install-cloudkitty.sh

3.11 通过脚本安装 barbican 服务

controller节点执行脚本iaas-install-barbican.sh进行安装

[root@controller ~]# iaas-install-barbican.sh

4 添加控制节点资源到云平台

4.1 修改 openrc.sh

把compute节点的IP和主机名改为controller节点的IP和主机名

HOST_IP_NODE=192.168.100.10

HOST_PASS_NODE=000000

HOST_NAME_NODE=compute

4.2 运行 iaas-install-nova-compute.sh

在控制节点运行:

iaas-install-nova-compute.sh

执行过程中需要确认登录controller节点和输入controller节点root用户密码。 


注:[root@localhost ~]# fdisk /dev/sdb

  • 7
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值