mitaka版本部署-獨立網(wǎng)絡(luò)節(jié)點

參考文檔:

1. 網(wǎng)絡(luò)結(jié)構(gòu)

# network ip
1 Management network 10.0.0.0/24
2 Provider network 192.168.144.0/22

2. 網(wǎng)絡(luò)配置

節(jié)點 hostname eno1 eno2
控制節(jié)點 controller 192.168.144.101/22 10.0.0.101/24
網(wǎng)絡(luò)節(jié)點 network 192.168.144.102/22 10.0.0.102/24
計算節(jié)點 compute01 192.168.144.103/22 10.0.0.103/24

3. 操作系統(tǒng)和內(nèi)核

[root@compute01 compute]# cat /etc/redhat-release 
CentOS Linux release 7.2.1511 (Core) 
[root@compute01 compute]# uname -r
3.10.0-327.el7.x86_64

4. 每個節(jié)點都要進行的操作

4.1 設(shè)置hostname,設(shè)置/etc/hosts ,關(guān)閉防火墻,關(guān)閉selinux

  • 設(shè)置/etc/hosts
[root@compute01 compute]# cat /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
10.0.0.101 controller
10.0.0.102 network
10.0.0.103 compute01
  • 設(shè)置hostname
[root@localhost ~]# hostnamectl set-hostname controller
[root@localhost ~]# hostname
controller
  • 關(guān)閉selinux
[root@compute01 compute]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config 
[root@compute01 compute]# setenforce 0
[root@compute01 compute]# getenforce 
Permissive
  • 關(guān)閉防火墻
[root@compute01 compute]# systemctl stop firewalld.service
[root@compute01 compute]# systemctl status firewalld.service
鈼firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
   Active: inactive (dead) since Sat 2017-09-02 04:31:34 EDT; 18h ago
 Main PID: 744 (code=exited, status=0/SUCCESS)

Sep 02 01:39:17 localhost.localdomain systemd[1]: Starting firewalld - dynamic firewall daemon...
Sep 02 01:39:20 localhost.localdomain systemd[1]: Started firewalld - dynamic firewall daemon.
Sep 02 04:31:33 compute01 systemd[1]: Stopping firewalld - dynamic firewall daemon...
Sep 02 04:31:34 compute01 systemd[1]: Stopped firewalld - dynamic firewall daemon.
[root@compute01 compute]# systemctl disable firewalld.service
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service.

4.2 配置YUM本地源

  • 刪除官方源
[root@localhost ~]# mv /etc/yum.repos.d/CentOS-* /opt/
  • 添加本地源
[root@compute01 compute]# cat /etc/yum.repos.d/mitaka.repo 
[base]
name=base
baseurl=ftp://192.168.116.21/repos/base/Packages/
enabled=1
gpgcheck=0
[openstack]
name=OpenStack Ocata Repository
baseurl=ftp://192.168.116.21/repos/mitaka/centos-openstack-mitaka/
enabled=1
gpgcheck=0
[extras]
baseurl=ftp://192.168.116.21/repos/ocata/extras-ocata/
enabled=1
gpgcheck=0
name=extras
[update]
baseurl=ftp://192.168.116.21/repos/ocata/updates-ocata/
enabled=1
gpgcheck=0
name=update
  • 檢查本地源是否可用
[root@localhost ~]# yum repolist
Loaded plugins: fastestmirror
base                                                                                                                       | 2.9 kB  00:00:00     
extras                                                                                                                     | 2.9 kB  00:00:00     
openstack                                                                                                                  | 2.9 kB  00:00:00     
update                                                                                                                     | 2.9 kB  00:00:00     
(1/4): extras/primary_db                                                                                                   | 135 kB  00:00:00     
(2/4): openstack/primary_db                                                                                                | 759 kB  00:00:00     
(3/4): update/primary_db                                                                                                   | 3.6 MB  00:00:00     
(4/4): base/primary_db                                                                                                     | 5.6 MB  00:00:01     
Determining fastest mirrors
repo id                                                      repo name                                                                      status
base                                                         base                                                                           9,363
extras                                                       extras                                                                           311
openstack                                                    OpenStack Ocata Repository                                                     1,675
update                                                       update                                                                         1,111
repolist: 12,460

以下步驟可通過腳本執(zhí)行。
腳本說明:
凡是需要在執(zhí)行前進行修改的腳本,可以通過查看腳本,找到

###############
# change here #
###############
cp -f conf/openstack.cnf /etc/my.cnf.d/openstack.cnf 
# script name comment
1 ~/controller/1_pre.sh 包括步驟4.3、4.4、 5。需要人工設(shè)置數(shù)據(jù)庫初始化參數(shù) yes
2 ~/controller/2_keystone.sh 包括步驟6 no
3 ~/controller/3_glance.sh 包括步驟7 no
4 ~/controller/4_nova.sh 包括步驟8.1,最后并沒有啟動服務(wù),是因為我已經(jīng)將neutron的相關(guān)配置提前寫在conf/nova.conf里面 yes
5 ~/controller/5_neutron.sh 包括步驟9.1。在這一步啟動4_nova.sh里面安裝的nova五個服務(wù) no
6 ~/network/neutron.sh 包括步驟9.2 yes
7 ~/compute/main.sh 包括步驟8.2 yes
8 ~/compute/compute_neutron.sh 包括步驟9.3 yes

修改緊跟著的配置文件即可。

# script name comment
1 ~/controller/1_pre.sh 包括步驟4.3、4.4、 5。需要人工設(shè)置數(shù)據(jù)庫初始化參數(shù) yes
2 ~/controller/2_keystone.sh 包括步驟6 no
3 ~/controller/3_glance.sh 包括步驟7 no
4 ~/controller/4_nova.sh 包括步驟8.1,最后并沒有啟動服務(wù),是因為我已經(jīng)將neutron的相關(guān)配置提前寫在conf/nova.conf里面 yes
5 ~/controller/5_neutron.sh 包括步驟9.1。在這一步啟動4_nova.sh里面安裝的nova五個服務(wù) no
6 ~/network/neutron.sh 包括步驟9.2 yes
7 ~/compute/main.sh 包括步驟8.2 yes
8 ~/compute/compute_neutron.sh 包括步驟9.3 yes

4.3 安裝python-openstackclient,openstack-selinux

#yum install python-openstackclient openstack-selinux -y

4.4 配置時間服務(wù)器

#yum install chrony -y
4.4.1 控制節(jié)點作為標準時間

allow 10.0.0.0/24
啟動服務(wù)
systemctl enable chronyd.service
systemctl start chronyd.service

4.4.2 余下節(jié)點參照控制節(jié)點時間

server controller iburst
啟動服務(wù)
systemctl enable chronyd.service
systemctl start chronyd.service

5. 部署控制節(jié)點的基礎(chǔ)服務(wù)

需要安裝mariadb數(shù)據(jù),rabbitmq,memcache三個服務(wù),參照官方文檔。本實例配套配置文件可下載。

6. 部署keystone服務(wù)

7. 部署glance服務(wù)

8. 部署nova服務(wù)

8.1 控制節(jié)點

8.2 計算節(jié)點

9. 部署網(wǎng)絡(luò)服務(wù)

9.1 控制節(jié)點

  • 創(chuàng)建數(shù)據(jù)庫相關(guān)操作
  • 創(chuàng)建keystone用戶和角色
  • 創(chuàng)建實體服務(wù)和endpoint
  • 安裝軟件
yum install openstack-neutron openstack-neutron-ml2 python-neutronclient  -y
  • 修改配置文件

/etc/neutron/neutron.conf
/etc/neutron/plugins/ml2/ml2_conf.ini
/etc/nova/nova.conf 添加neutron 相關(guān)配置

  • 創(chuàng)建配置文件鏈接

ln -s /etc/neutron/plugins/ml2/ml2_conf.ini /etc/neutron/plugin.ini

  • 同步數(shù)據(jù)庫

su -s /bin/sh -c "neutron-db-manage --config-file /etc/neutron/neutron.conf
--config-file /etc/neutron/plugins/ml2/ml2_conf.ini upgrade head" neutron

  • 重啟nova服務(wù)

systemctl restart openstack-nova-api.service

  • 重啟neutron服務(wù)

systemctl enable neutron-server.service
systemctl start neutron-server.service

9.2 網(wǎng)絡(luò)節(jié)點

  • 系統(tǒng)內(nèi)核修改

編輯/etc/sysctl.conf,添加下面三行

net.ipv4.ip_forward=1
net.ipv4.conf.all.rp_filter=0
net.ipv4.conf.default.rp_filter=0
#sysctl -p
  • 安裝軟件包
#yum install openstack-neutron openstack-neutron-ml2 openstack-neutron-openvswitch -y
  • 修改配置文件

/etc/neutron/neutron.conf
/etc/neutron/plugins/ml2/openvswitch_agent.ini
/etc/neutron/l3_agent.ini
/etc/neutron/dhcp_agent.ini
/etc/neutron/metadata_agent.ini

  • 啟動服務(wù)
#systemctl start neutron-openvswitch-agent.service neutron-l3-agent.service \
neutron-dhcp-agent.service neutron-metadata-agent.service
#systemctl enable neutron-openvswitch-agent.service neutron-l3-agent.service \
neutron-dhcp-agent.service neutron-metadata-agent.service
  • 建網(wǎng)橋

刪除eno2的IP

[root@network ~]# cat /etc/sysconfig/network-scripts/ifcfg-eno2
TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=eno2
UUID=aa20f98f-c98c-4348-b464-eff24d1a7677
DEVICE=eno2
ONBOOT=yes
#IPADDR=10.0.0.102
#NETMASK=255.255.255.0

添加br-ex網(wǎng)橋的配置文件

[root@network ~]# cat /etc/sysconfig/network-scripts/ifcfg-br-ex 
DEVICE=br-ex
TYPE=Ethernet
ONBOOT="yes"
BOOTPROTO="none"
#HWADDR=bc:ee:7b:78:7b:a7
IPADDR=10.0.0.102
NETMASK=255.255.255.0
DNS1=114.114.114.114
NM_CONTROLLED=no

新建網(wǎng)橋并且將接口eno2接入網(wǎng)橋br-ex

#ovs-vsctl add-br br-ex
#ovs-vsctl add-port br-ex eno2
#systemctl restart network.service

9.3 計算節(jié)點

  • 配置內(nèi)核

不通過反向路由回溯進行源地址驗證
編輯 /etc/sysctl.conf

#net.ipv4.conf.all.rp_filter=0
#net.ipv4.conf.default.rp_filter=0
#sysctl -p
  • 安裝軟件包
#yum install openstack-neutron openstack-neutron-ml2 openstack-neutron-openvswitch -y
  • 修改配置文件

/etc/neutron/neutron.conf
/etc/neutron/plugins/ml2/openvswitch_agent.ini
/etc/nova/nova.conf 添加neutron相關(guān)配置

  • 啟動服務(wù)
#systemctl enable neutron-openvswitch-agent.service
#systemctl start neutron-openvswitch-agent.service
#systemctl restart openstack-nova-compute.service

10. 部署Dashboard

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容