OpenStack(k-11版)离线部署
环境准备
各个节点配置信息
节点 | ip | GATEWAY | DNS1 | 内存 | 硬盘 |
---|---|---|---|---|---|
Controller | 192.168.150.10 | 192.168.150.2 | 192.168.150.2 | 6G | 100G |
Computer | 192.168.150.11 | 192.168.150.2 | 192.168.150.2 | 2G | 20G |
NTP | 192.168.150.12 | 192.168.150.2 | 192.168.150.2 | 1G | 20G |
配置所有节点关闭防火墙selinux以及关掉NetworkManager服务
代码语言:txt复制#关掉NetworkManager服务
systemctl stop NetworkManager
systemctl disable NetworkManager
#关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
#关闭selinux
sed -ri '/^SE/s/enforcing/disabled/' /etc/selinux/config
配置所有节点的host文件
代码语言:txt复制127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.150.10 controller
192.168.150.11 computer
192.168.150.12 ntp
配置时间节点
配置chrony服务,其它节点的chrony服务不用配置
代码语言:txt复制[root@ntp iso]# vim /etc/chrony.conf
#找到这几行注释掉
#server 0.rhel.pool.ntp.org iburst
#server 1.rhel.pool.ntp.org iburst
#server 2.rhel.pool.ntp.org iburst
#server 3.rhel.pool.ntp.org iburst
#自己写一个新的
server 127.0.0.1 iburst
#允许同步时间的网段设置成本网段
allow 192.168.150.0/24
#找不到上一级服务器,自己找自己查时间
local stratum 10
将时间节点配置成软件仓库,挂在自带光盘配置好yum源,安装httpd
代码语言:txt复制yum install -y httpd
上传所需镜像文件到/iso目录
代码语言:txt复制[root@ntp iso]# ls -lh
总用量 7.1G
-rw-r--r-- 1 root root 3.7G 11月 4 18:31 rhel7.1-dvd.iso
-rw-r--r-- 1 root root 515M 10月 27 19:11 RHEL7-OSP6.iso
配置开机自动挂载到httpd主目录
代码语言:txt复制#创建挂载目录
[root@ntp iso]# mkdir /var/www/html/rhel{-dvd,6-osp}
#编辑开机挂载文件
[root@ntp iso]# vim /etc/fstab
...
/iso/rhel7.1-dvd.iso /var/www/html/rhel-dvd iso9660 defaults,loop 0 0
/iso/RHEL7-OSP6.iso /var/www/html/rhel6-osp iso9660 defaults,loop 0 0
#挂载所有镜像
[root@ntp iso]# mount -a
配置Openstack和rhel7-dvd的软件仓库
root@ntp /# vim /etc/yum.repos.d/rhel7.repo
代码语言:txt复制[rhel7]
name = rhel7
baseurl = http://ntp/rhel-dvd/
enabled = 1
gpgcheck = 0
[OSP-install]
name = rhel7
baseurl = http://ntp/rhel6-osp/RH7-RHOS-6.0-Installer/
enabled = 1
gpgcheck = 0
[OSP-6]
name = rhel7
baseurl = http://ntp/rhel6-osp/RH7-RHOS-6.0/
enabled = 1
gpgcheck = 0
[OSP-RHSCL]
name = rhel7
baseurl = http://ntp/rhel6-osp/RHEL-7-RHSCL-1.2/
enabled = 1
gpgcheck = 0
[OSP-Errata]
name = rhel7
baseurl = http://ntp/rhel6-osp/RHEL7-Errata/
enabled = 1
gpgcheck = 0
配置控制节点
注意
- 在安装的虚拟机的时候不要把控制节点的硬盘全部用完,留给cinder服务的
为什么要把桥配置在控制节点上?
- 因为在控制节点中也配置了网络节点,严格来说应该把桥配置在网络节点
在controller节点安装openstack部署工具
代码语言:txt复制yum install openstack-packstack
生成应答文件
代码语言:txt复制#放哪里叫什么都可以自定义
packstack --gen-answer-file=/root/ans.txt
配置应答文件
代码语言:txt复制[root@controller /]#vim /root/ans.txt
#时间服务器ip
CONFIG_NTP_SERVERS=192.168.1.12
#控制节点IP
CONFIG_CONTROLLER_HOST=192.168.150.10
#计算节点IP(建立多计算节点,此处控制节点复用,建议还是单点使用,不然创建的时候跑到控制节点上去了)
CONFIG_COMPUTE_HOSTS=192.168.150.10,192.168.1.11
#网络节点(目前由控制节点担当此角色)
IPCONFIG_NETWORK_HOSTS==192.168.1.10
#WEB界面管理员口令
CONFIG_KEYSTONE_ADMIN_PW=redhat
#开启https访问web界面
CONFIG_HORIZON_SSL=y
#不需要演示环境
CONFIG_PROVISION_DEMO=n
使用应答文件安装Openstack
代码语言:txt复制packstack --answer-file=/root/ans.txt
安装好了以后,最后提示successfully,就可以访问云平台了
代码语言:txt复制https://192.168.150.10/dashboard
配置桥接网卡(必须在安装完成之后)
代码语言:txt复制[root@controller ~]# cd /etc/sysconfig/network-scripts/
[root@controller ~]# cp ifcfg-eno16777736 ifcfg-br-ex
[root@controller network-scripts]# vim ifcfg-br-ex
#类型设置为OVSBridge,严格区分大小写
TYPE=OVSBridge
BOOTPROTO=none
#网卡名称叫br-ex
NAME=br-ex
DEVICE=br-ex
ONBOOT=yes
IPADDR=192.168.150.10
PREFIX=24
GATEWAY=192.168.150.2
DNS1=192.168.150.2
DEVICETYPE=ovs
配置原来的主网卡桥接到br-ex上
代码语言:txt复制[root@controller ~]# cd /etc/sysconfig/network-scripts/
[root@controller network-scripts]# vim ifcfg-eno16777736
#类型是OVSPort,注意区分大小写
TYPE=OVSPort
DEVICETYPE=ovs
OVS_BRIDGE=br-ex
BOOTPROTO=none
NAME=eno16777736
DEVICE=eno16777736
ONBOOT=yes
重启网卡
代码语言:txt复制[root@controller network-scripts]# service network restart
查看网卡配置
代码语言:txt复制[root@controller network-scripts]# ifconfig br-ex
br-ex: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.150.10 netmask 255.255.255.0 broadcast 192.168.150.255
inet6 fe80::505e:b1ff:fedb:6d45 prefixlen 64 scopeid 0x20<link>
ether 00:0c:29:7f:8f:8f txqueuelen 0 (Ethernet)
RX packets 34 bytes 2546 (2.4 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 42 bytes 6515 (6.3 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
OpenStack(RDO源)在线部署
环境准备
- 各个节点配置信息
系统 | 节点 | ip | GATEWAY | DNS1 | 内存 | 硬盘 |
---|---|---|---|---|---|---|
rhel7.7 | Controller | 192.168.150.10 | 192.168.150.2 | 192.168.150.2 | 6G | 100G |
Centos7.7 | Computer | 192.168.150.11 | 192.168.150.2 | 192.168.150.2 | 2G | 50G |
Centos7.7 | NTP | 192.168.150.12 | 192.168.150.2 | 192.168.150.2 | 1G | 20G |
- 配置所有节点关闭防火墙selinux以及关掉NetworkManager服务
#关掉NetworkManager服务
systemctl stop NetworkManager
systemctl disable NetworkManager
#关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
#关闭selinux
setenforce 0
sed -ri '/^SE/s/enforcing/disabled/' /etc/selinux/config
- 配置所有节点的host文件
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.150.10 controller
192.168.150.11 computer
192.168.150.12 ntp
配置yum源
- 控制节点安装RDO源
#下载网易的yum源
[root@controller ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo
#替换$releaserver成7
[root@controller ~]# sed -i 's#$releasever#7#g' /etc/yum.repos.d/CentOS-Base.repo
#下载RDO的OpenStack源
[root@controller ~]# yum install -y https://www.rdoproject.org/repos/rdo-release.rpm
#把所有yum源的软件包检查去掉
[root@controller ~]# sed -i '/gpgcheck=1/s#1#0#g' /etc/yum.repos.d/*
#更新所有软件包
[root@controller ~]# yum update -y
#安装Openstack部署工具
[root@controller ~]# yum install -y openstack-packstack
- 配置计算节点的yum源
#下载网易的yum源
[root@computer /]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo
#替换$releaserver成7
[root@computer /]# sed -i 's#$releasever#7#g' /etc/yum.repos.d/CentOS-Base.repo
#把所有yum源的软件包检查去掉
[root@controller ~]# sed -i '/gpgcheck=1/s#1#0#g' /etc/yum.repos.d/*
#更新所有软件包
[root@controller ~]# yum update -y
- 配置时间节点的yum源
#下载网易的yum源
[root@ntp /]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.163.com/.help/CentOS7-Base-163.repo
配置时间节点
- 编辑配置文件
[root@ntp /]# vim /etc/chrony.conf
#找到这几行注释掉
#server 0.rhel.pool.ntp.org iburst
#server 1.rhel.pool.ntp.org iburst
#server 2.rhel.pool.ntp.org iburst
#server 3.rhel.pool.ntp.org iburst
#自己写一个新的
server 127.0.0.1 iburst
#允许同步时间的网段设置成本网段
allow 192.168.150.0/24
#找不到上一级服务器,自己找自己查时间
local stratum 10
- 重启服务
[root@ntp yum.repos.d]# systemctl restart chronyd.service
配置控制节点
开始部署
- 生成应答文件
[root@controller ~]# packstack --gen-answer-file=/root/ans.conf
- 配置控制节点应答文件
[root@controller /]#vim /root/ans.txt
#时间服务器ip
CONFIG_NTP_SERVERS=192.168.1.12
#控制节点IP
CONFIG_CONTROLLER_HOST=192.168.150.10
#建立两个计算节点
CONFIG_COMPUTE_HOSTS=192.168.150.10,192.168.1.11
#网络节点
CONFIG_NETWORK_HOSTS=192.168.1.10
#WEB界面管理员口令
CONFIG_KEYSTONE_ADMIN_PW=123456
#开启https访问web界面
CONFIG_HORIZON_SSL=y
#不需要演示环境
CONFIG_PROVISION_DEMO=n
#网络驱动类型
CONFIG_NEUTRON_ML2_TYPE_DRIVERS=flat,vlan,vxlan,gre,local
#选择使用vxlan
CONFIG_NEUTRON_ML2_TENANT_NETWORK_TYPES=vxlan
#二层代理选择使用openvswitch
CONFIG_NEUTRON_L2_AGENT=openvswitch
#二层驱动选openvswitch
CONFIG_NEUTRON_ML2_MECHANISM_DRIVERS=openvswitch
- 部署openstack
[root@controller /]# packstack --answer-file=/root/ans.conf
- 出现Successfully表示部署成功
配置网卡
- 网络节点(这里控制节点包括了网络节点)配置桥接网卡
[root@controller network-scripts]# vim ifcfg-br-ex
TYPE=OVSBridge
BOOTPROTO=none
NAME=br-ex
DEVICE=br-ex
ONBOOT=yes
IPADDR=192.168.150.10
PREFIX=24
GATEWAY=192.168.150.2
DNS1=192.168.150.2
DEVICETYPE=ovs
- 把ens33桥接到br-ex上
[root@controller network-scripts]# vim ifcfg-ens33
NAME="ens33"
DEVICE="ens33"
TYPE=OVSPort
DEVICETYPE=ovs
OVS_BRIDGE=br-ex
BOOTPROTO=none
ONBOOT=yes
- 重启服务
[root@controller network-scripts]# systemctl restart network