1. 程式人生 > >openstack架構詳解

openstack架構詳解

服務組 rest opensta volume config -s ins serve 三臺

需要的軟件:
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

openstack架構詳解