OpenStack基本安装步骤

1,安装CentOS7系统

创建两个空白的磁盘分区作为 cinder 服务和 swift 服务的存储磁盘了
[root@compute ~]# parted /dev/md126
(parted) mkpart swift 702G 803G //创建 swift 分区,从 702G 到 803G
[root@compute ~]# mkfs.xfs /dev/md126p5

2,配置网络、主机名

修改和添加/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: 192.168.200.10
DEVICE=enp9s0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=static
IPADDR=192.168.200.10
PREFIX=24

配置主机名:

 hostnamectl set-hostname controller

按 ctrl+d 退出 重新登陆 或 bash刷新
(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: 192.168.200.20
DEVICE=enp9s0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=static
IPADDR=192.168.200.20
PREFIX=24

配置主机名:

hostnamectl set-hostname compute

按 ctrl+d 退出 重新登陆 或 bash刷新

3 配置 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-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-repo
gpgcheck=0
enabled=1

(3)挂载 iso 文件
【挂载 CentOS-7-x86_64-DVD-1511.iso】

[root@controller ~]# mount -o loop CentOS-7-x86_64-DVD-1511.iso /mnt/
[root@controller ~]# mkdir /opt/centos
[root@controller ~]# cp -rvf /mnt/* /opt/centos/
[root@controller ~]# umount /mnt/

【挂载 XianDian-IaaS-v2.0-1228.iso】

[root@controller ~]# mount -o loop XianDian-IaaS-v2.0-1228.iso /mnt/
[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)关闭防火墙并设置开机不自启
【controller/compute】

systemctl stop firewalld
systemctl disable firewalld

(6)清除缓存,验证 yum 源
【controller/compute】

# yum clean all
# yum list

4 编辑环境变量

controller 和 compute 节点

# yum install iaas-xiandian -y

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

HOST_IP=192.168.100.10
HOST_NAME=controller
HOST_IP_NODE=192.168.100.20
HOST_NAME_NODE=compute
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
NOVA_DBPASS=000000
NOVA_PASS=000000
NEUTRON_DBPASS=000000
NEUTRON_PASS=000000
METADATA_SECRET=000000
INTERFACE_NAME=enp9s0(外网网卡名)
CINDER_DBPASS=000000
CINDER_PASS=000000
TROVE_DBPASS=000000
TROVE_PASS=000000
BLOCK_DISK=md126p4(空白分区名)
SWIFT_PASS=000000
OBJECT_DISK=md126p5(空白分区名)
STORAGE_LOCAL_NET_IP=192.168.100.20
HEAT_DBPASS=000000
HEAT_PASS=000000
CEILOMETER_DBPASS=000000
CEILOMETER_PASS=000000
AODH_DBPASS=000000
AODH_PASS=000000

5 通过脚本安装服务

基础配置操作命令已经编写成shell脚本,通过脚本进行一键安装

# Controller节点和Compute节点
执行脚本iaas-pre-host.sh进行安装
# 安装完成后同时重启
[root@controller ~]# reboot

1,通过脚本安装服务,安装 Mysql 数据库服务

基础服务的操作命令已经编写成shell脚本,通过脚本进行一键安装。如下:

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

2,安装 Keystone 认证服务

认证服务的操作命令已经编写成shell脚本,通过脚本进行一键安装。如下:
# Controller节点
执行脚本iaas-install-keystone.sh进行安装。

3,安装 Glance 镜像服务

镜像服务的操作命令已经编写成shell脚本,通过脚本进行一键安装。如下:

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

4,上传镜像

首先下载(Wget)提供的系统镜像到本地,本次以上传CentOS6.5x86_64镜像为例。
可以安装Wget,从Ftp服务器上下载镜像到本地。

# source admin-openrc.sh
# glance image-create --name "CentOS7.0" --disk-format qcow2 --container-format bare --progress <
/opt/images/centos_7-x86_64_xiandian.qcow2

5,安装 Nova 计算服务

计算服务的操作命令已经编写成shell脚本,通过脚本进行一键安装。如下:

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

6,安装 Neutron 网络服务

网络服务的操作命令已经编写成shell脚本,通过脚本进行一键安装。如下:

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

通过脚本创建 neutron 网络

网络服务的操作命令已经编写成shell脚本,通过脚本进行一键安装。如下:
创建 flat 网络

#Controller节点
执行脚本iaas-install-neutron-controller-flat.sh进行安装
#Compute节点
执行脚本iaas-install-neutron-compute-flat.sh进行安装

创建 gre 网络

#Controller节点
执行脚本iaas-install-neutron-controller-gre.sh进行安装
#Compute节点
执行脚本iaas-install-neutron-compute-gre.sh进行安装

创建 vlan 网络

#Controller节点
执行脚本iaas-install-neutron-controller-vlan.sh进行安装
#Compute节点
执行脚本iaas-install-neutron-compute-vlan.sh进行安装

7,安装 Dashboard 服务

dashboard的操作命令已经编写成shell脚本,通过脚本进行一键安装。如下:

#Controller
执行脚本iaas-install-dashboard.sh进行安装

8,访问浏览器和创建云主机

打开浏览器访问 Dashboard

http://controller(或本机内网 ip)/dashboard

注:检查防火墙规则,确保允许 http 服务相关端口通行,或者关闭防火墙。
创建云主机(gre/vlan)
(1)管理员 → 网络 → 创建网络(内外网) → 创建子网(外网填服务器的外网网段)
(2)项目 → 网络 → 路由 → 新建路由 → 添加网关和内网接口
(3)项目 → 计算 → 访问安全 → 管理规则 → 添加规则(ICMP、TCP、UDP)
(4)项目 → 计算 → 云主机 → 创建云主机 → 绑定浮动 IP

PS:有了上面这些步骤就可以完成基本平台需求了,后面的操作根据需要在安装。

9,安装 Cinder 块存储服务

块存储服务的操作命令已经编写成shell脚本,通过脚本进行一键安装。如下:

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

10,安装 Swift 对象存储服务

对象存储服务的操作命令已经编写成shell脚本,通过脚本进行一键安装。如下:

#Controller
执行脚本iaas-install-swift-controller.sh进行安装
#Compute节点
执行脚本iaas-install-swift-compute.sh进行安装
执行过程中需要确认登录controller节点和输入controller节点root用户密码。

11,安装 Trove 服务

编配服务的操作命令已经编写成shell脚本,通过脚本进行一键安装。如下:

#Controller节点
执行脚本iaas-install-trove.sh进行安装
需注意安装Trove服务之前需要配置好网络(flat或gre),创建好子网,并确认系统已经
安装swift和cinder两个服务,否则安装会失败。

12,安装 Heat 编配服务

编配服务的操作命令已经编写成shell脚本,通过脚本进行一键安装。如下:

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

13,安装 Ceilometer 监控服务

ceilometer监控服务的操作命令已经编写成shell脚本,通过脚本进行一键安装。如下:

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

14,安装 Alarm 监控服务

Alarm监控服务的操作命令已经编写成shell脚本,通过脚本进行一键安装。如下:

#Controller节点
执行脚本iaas-install-alarm.sh进行安装

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

修改 openrc.sh

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

运行 iaas-install-nova-compute.sh

在控制节点运行iaas-install-nova-compute.sh

16,系统卸载

系统提供一键卸载脚本,节点运行 iaas-uninstall-all.sh 脚本,脚本卸载当前节点的所
有云平台数据,如果卸载节点为 controller 节点则会清除所有的数据(此时云平台也
被清空),如果卸载节点为 compute 节点则会删除 compute 节点的数据。
ps:可能会因删不干净有残留,建议给服务器重装系统

你可能感兴趣的:(云计算)