需要的软件:
RHEL7OSP-8.0-20160421-x86_64.iso
openstack

云:形象化的说法
分类:
Iaas:基础架构即服务 提供云主机
Paas:平台即服务 提供中间件,服务组件
Saas:软件即服务

openstack: Iaas的解决方案
主要组件:
Horizon: web管理门户
keystone: 集中的认证管理,实现SSO(单一登陆) 如:微信,QQ授权登录
Neutron: 网络管理
Cinder: 云硬盘
Nova: 云主机控制
Glance: 镜像管理
Swift: 分布式对象存储

安装openstack
一、准备环境
1、克隆三台云主机
vh01.tedu.cn 192.168.4.1 提供ntp和dns服务
vh02.tedu.cn 192.168.4.2 192.168.2.2 openstack服务器
vh03.tedu.cn 192.168.4.3. 192.168.2.3 额外计算节点
[root@room8pc16 cloud]# clone-auto7
2、初始化虚拟机
配置ip地址、防火墙、selinux、主机名
二、在vh01上配置NTP
NTP: 网络时间协议  使用udp123端口
夏季节约时间(夏令时)
1、安装
[root@vh01 ~]# yum-config-manager --add ftp://192.168.4.254/rhel7.2
[root@vh01 ~]# echo 'gpgcheck=0' >> /etc/yum.repos.d/192.168.4.254_rhel7.2.repo
[root@vh01 ~]# yum install -y ntp
2、配置
[root@vh01 ~]# vim /etc/ntp.conf
restrict 192.168.4.0 mask 255.255.255.0 nomodify
替换
ctrl+v向下选中->I->#->Esc   或
:22,25s/^/#/
#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.127.1.0 iburst
fudge 127.127.1.0 stratum 3
3、起动服务并验证
[root@vh01 ~]# systemctl start ntpd
[root@vh01 ~]# systemctl enable ntpd
[root@vh02 ~]# date -s "2018-01-30 20:00:00" 将时间改成与vh01不一样
[root@vh02 ~]# date  查看时间
[root@vh02 ~]# ntpdate 192.168.4.1
三、配置DNS域名解析
DNS:域名服务,将名称和IP地址实解对应解析
客户端名称解析流程:
(1)、本地缓存  windows下查看缓存 ipconfig/displaydns
(2)、本地域名解析文件/etc/hosts
(3)、本地域名服务器 就是在ifcfg-eth0中DNS1=X.X.X.X配置的名称
(4)、如果本地域名服务器没有记录,那么开始联系根域服务器,进行迭代查找
BIND: Berkerley Internet Name Domain
1、安装
[root@vh01 ~]# yum install -y bind
2、修改主配置文件,在所有地址上监听
[root@vh01 ~]# vim /etc/named.conf
listen-on port 53 { any; };
allow-query { any; };
[root@vh01 ~]# named-checkconf /etc/named.conf 检查语法错误
3、加入tedu.cn域的声明
[root@vh01 ~]# vim /etc/named.rfc1912.zones 尾部追加
zone "tedu.cn" IN {
type master;
file "tedu.cn.zone";
allow-update { none; };
};
[root@vh01 ~]# named-checkconf /etc/named.rfc1912.zones
4、为tedu.cn域编写区配置文件
[root@vh01 ~]# vim /var/named/tedu.cn.zone
$TTL 86400
@ IN SOA vh01.tedu.cn. root.tedu.cn. (
20180101
3H
15M
1W
1D )
IN NS vh01.tedu.cn.
$generate 1-9 vh0$ IN A 192.168.4.$
$generate 10-254 vh$ IN A 192.168.4.$
[root@vh01 ~]# named-checkzone tedu.cn /var/named/tedu.cn.zone
[root@vh01 ~]# systemctl start named; systemctl enable named
5、DNS资源记录类型
SOA: 起始授权
NS: 名称服务器
A: 将名称解析为IP地址
MX: 邮件交换器
PTR: 将IP解析为名称
CNAME: 别名记录
[root@room8pc16 ~]# nslookup

set type=mx
163.com
set type=soa
163.com

三、配置yum源
1、将Openstack光盘永久挂载到/var/ftp/osp8目录
2、生成yum配置文件
rhel7和openstack光盘都需要制作成yum源

将vh02配置为openstack服务器
四、配置ip地址 192.168.4.2 192.168.2.2 dns指向192.168.4.1
五、关闭NetworkManager
[root@vh02 ~]# systemctl stop NetworkManager
[root@vh02 ~]# systemctl disable NetworkManager
六、为vh02添加一块40G的额外的磁盘,创建名为cinder-volumes的卷组
[root@vh02 ~]# pvcreate /dev/vdb
[root@vh02 ~]# vgcreate cinder-volumes /dev/vdb
七、导入rabbitmq的公钥,如果有互联网连接,可以跳过此步
将openstack素材目录拷贝到192.168.4.2
[root@vh02 openstack]# rpm --import rabbitmq-signing-key-public.asc
八、安装额外的依赖包,如果使用的是互联网yum源,此步可跳过
[root@vh02 openstack]# yum install -y rpms/*rpm
九、安装openstack的部署工具packstack
[root@vh02 openstack]# yum install -y openstack-packstack
十、生成安装openstack的应答文件
[root@vh02 ~]# packstack --gen-answer-file answer.txt
如果DNS解释故障,应答文件无法生成
十一、修改应答文件
[root@vh02 ~]# vim answer.txt
CONFIG_DEFAULT_PASSWORD=redhat
CONFIG_SWIFT_INSTALL=n
CONFIG_NTP_SERVERS=192.168.4.1
CONFIG_COMPUTE_HOSTS=192.168.4.2
CONFIG_KEYSTONE_ADMIN_PW=redhat
CONFIG_CINDER_VOLUMES_CREATE=n
CONFIG_NEUTRON_ML2_VXLAN_GROUP=239.1.1.2
CONFIG_NEUTRON_ML2_VNI_RANGES=1001:2000
CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS=physnet1:br-ex
CONFIG_NEUTRON_OVS_TUNNEL_IF=eth1
CONFIG_PROVISION_DEMO=n
十二、安装openstack
[root@vh02 ~]# packstack --answer-file answer.txt