架构部署:
网络拓扑:
一、基础配置
操作系统:CentOS7.4
测试建议配置:
VM0:
Name: controller0
vCPU:1
Memory :2G
Disk:80G 建议100G
Networks: net0:10.20.0.10
VM1:
Name : network0
vCPU:1
Memory :512M 建议2G
Disk:30G 建议50G
Network:net0:10.20.0.20
net1:172.16.0.10
net2:192.168.4.20
VM2:
Name: compute0
vCPU:2
Memory :2G
Disk:30G 建议50G
Networks:net0:10.20.0.30
net2:192.168.4.30
二、修改主机名
# vi /etc/hostname
#修改完后重启
# reboot
第一台:controller0
第二台:network0
第三台:compute0
三、主机地址映射
#vi /etc/hosts
#在末尾添加如下所有主机的ip地址与主机名的映射关系:
10.20.0.10 controller0
10.20.0.20 network0
10.20.0.30 compute0
#利用ssh将文件传输到其他主机
#scp /etc/hosts root@10.20.0.20:/etc
#scp /etc/hosts root@10.20.0.30:/etc
四、禁用selinux
#vi /etc/selinux/config
#将SELINUX=enforcing改为SELINUX=disabled
#然后将修改后的文件传输到其他主机
#scp -r /etc/selinux/config root@10.20.0.20:/etc/selinux
#scp -r /etc/selinux/config root@10.20.0.30:/etc/selinux
五、本地yum源配置一(三台主机同时操作)
#挂载的是centos7.4的镜像光盘
# mkdir /media/cdrom
# mount /dev/cdrom /media/cdrom
# cd /etc/yum.repos.d
# ls
# mkdir bak
# mv * bak
# touch CentOS-Local.repo
# vi CentOS-Local.repo
#添加如下内容:
[CentOS-base-yum]
name=CentOS base yum Repository
baseurl=file:///media/cdrom
gpgcheck=0
enabled=1
# yum clean all
# yum makecache
六、NTP服务安装(仅在controller0主机用root用户进行操作)
1、NTP-Server安装
#查看NTP-Server是否有安装,有内容即为安装
# rpm -qa|grep ntp
#安装ntp服务组件
# yum install ntp -y
2、NTP-Server配置,在10.20.0.1/24网段内的服务器可以通过这台NTP Server进行时间同步
#controller0做NTP服务器,修改NTP配置文件
# vi /etc/ntp.conf
找到#restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap行
在其后面,添加:
restrict 10.20.0.0 mask 255.255.255.0 nomodify notrap
再找到下面几行:
server 0.centos.pool.ntp.org iburst
server 1.centos.pool.ntp.org iburst
server 2.centos.pool.ntp.org iburst
server 3.centos.pool.ntp.org iburst
在每行前添加#注释,然后在后面添加:
server 127.127.1.0
fudge 127.127.1.0 stratum 1
3、重新启动ntp服务,并设置为开机自启
# service ntpd restart
# systemctl enable ntpd.service
4、关闭防火墙(注:此步骤三台主机都要设置)
# systemctl stop firewalld.service
# systemctl disable firewalld.service
七、安装NTP客户端(在network0和compute0主机上用root用户操作)
# rpm -qa|grep ntp
# yum install ntp -y
# vi /etc/ntp.conf
找到下面几行
server 0.centos.pool.ntp.org iburst
server 1.centos.pool.ntp.org iburst
server 2.centos.pool.ntp.org iburst
server 3.centos.pool.ntp.org iburst
在其前面加#注释掉,然后在后面添加:
server 10.20.0.10
server 127.127.1.0
fudge 127.127.1.0 stratum 2
# service ntpd restart
# chkconfig ntpd on
#检查同步,从上源获得时间初值
# ntpdate -u 10.20.0.10
# service ntpd restart
#查询网络中的NTP服务器,同时显示客户端和每个服务器的关系
# ntpq -p
八、本地yum源配置二(仅在controller0主机进行,base,epel源制作,root用户)
1、挂载镜像光盘(挂载的是centos7.4的镜像光盘)
# mkdir /media/cdrom
# mount /dev/cdrom /media/cdrom
2、把/media/cdrom/Packages目录下内容拷贝至/data/centos目录下
# mkdir -p /data/centos
# cp -r /media/cdrom/Packages/* /data/centos
3、本地base、extra源制作
#前提条件:安装createrepo工具
# rpm -qa|grep createrepo
# yum -y install createrepo
#生成本地源
# createrepo -p -d -o /data/centos /data/centos
createrepo基本语法: createrepo [option] <directory>
常用参数详解:
-p –pretty:以整洁的格式输出xml文件
-d –database:该选项指定使用SQLite来存储生成的元数据,默认项
-o –outputdir<url>:指定元数据的输出位置
#将icehouse版本包、epel包和extras-7包上传到新建的/wget-yum(需创建)目录下
# yum install -y unzip zip
# cd /wget-yum/
#如果上传的不是压缩包,忽略相应的步骤
# unzip epel.zip
# unzip openstack-icehouse.zip
# unzip extras-7.zip
#将各个的包移动到/data目录下,并创建元数据
# mv /wget-yum/openstack-icehouse/ /data/
# createrepo -p -d -o /data/openstack-icehouse/ /data/openstack-icehouse/
# mv /wget-yum/epel/ /data/
# createrepo -p -d -o /data/epel/ /data/epel/
# mv /wget-yum/extras-7/ /data/
# createrepo -p -d -o /data/extras-7/ /data/extras-7/
4、安装ftp服务
# yum install net-tools -y
#查看ftp默认的21端口是否被占用
# netstat -ntl
#查看是否有ftp、sftp、vsftp等相关服务进程在运行
# ps -ef|grep ftp
#如果ftp服务未安装,则进行安装
# yum install vsftpd -y
#修改ftp服务配置文件
# vi /etc/vsftpd/vsftpd.conf
#修改配置文件vsftpd.conf,在末尾添加一行:
anon_root=/data/
# service vsftpd restart
# chkconfig vsftpd on
通过浏览器验证ftp服务
5、修改yum仓库指向文件
# vi /etc/yum.repos.d/local.repo
#添加以下内容
[CentOS-base-yum]
name=CentOS base yum Repository
baseurl=file:///data/centos/
gpgcheck=0
enabled=1
[CentOS-epel-yum]
name=CentOS epel yum Repository
baseurl=file:///data/epel/
gpgcheck=0
enabled=1
[openstack-icehouse]
name=OpenStack icehouse Repository
baseurl=file:///data/openstack-icehouse/
gpgcheck=0
enabled=1
[CentOS-extras-7-yum]
name=CentOS extras yum Repository
baseurl=file:///data/extras-7/
gpgcheck=0
enabled=1
#确保/etc/yum.repos.d目录下只有local.repo文件,其他的repo文件全都删除或者移动到bak里
# cd /etc/yum.repos.d/
# mv CentOS-Local.repo bak/
# yum clean all
# yum makecache
九、创建网络源(在network0、compute0主机root用户进行)
# vi /etc/yum.repos.d/local.repo
#添加如下内容
[CentOS-base-yum]
name=CentOS base yum Repository
baseurl=ftp://10.20.0.10/centos/
gpgcheck=0
enabled=1
[CentOS-epel-yum]
name=CentOS epel yum Repository
baseurl=ftp://10.20.0.10/epel/
gpgcheck=0
enabled=1
[openstack-icehouse]
name=OpenStack icehouse Repository
baseurl=ftp://10.20.0.10/openstack-icehouse/
gpgcheck=0
enabled=1
[CentOS-extras-7-yum]
name=CentOS extras yum Repository
baseurl=ftp://10.20.0.10/extras-7/
gpgcheck=0
enabled=1
#确保/etc/yum.repos.d目录下只有local.repo文件,其他的repo文件全都删除或者移动到bak里
# cd /etc/yum.repos.d/
# mv CentOS-Local.repo bak/
# yum clean all
# yum makecache
#验证yum源连通情况
# yum list
部署所需包:https://pan.baidu.com/s/1u_VRQHwvAl2fN1v76Gc50w
提取码:egur
CenOS7.4系统:https://pan.baidu.com/s/1ABam9D8Cm8WCOJuB8cbkew
提取码:xxzi