openstack詳細安裝配置過程


openstack詳細安裝配置過程

搭建yum源:
1 [root@roompc901 yum.repos.d]# vim /etc/fstab 
2 /var/lib/libvirt/images/iso/CentOS7-1708.iso /local_repo iso9660 defaults 0 0
虛擬機的模板配置:
1 [root@roompc901 ~]# cd /etc/libvirt/qemu/networks/
2 [root@roompc901 networks]# cd autostart/
3 [root@roompc901 autostart]# rm -f *
4 [root@roompc901 autostart]# cd ..
5 [root@roompc901 networks]# virsh 
6 [root@roompc901 networks]# virsh net-define vbr.xml
7 virsh # net-start vbr
8 virsh # net-autostart private1
創建虛擬機模板:
1 [root@roompc901 images]# qemu-img create -f qcow2 demo.img 
2  
3 [root@roompc901 ~]# systemctl restart libvirtd.service 
4  
5 [root@roompc901 networks]# ps  -efww | grep -i qemu  //查看已啟動虛擬機的進程信息
6 [root@centos7 ~]# yum provides ifconfig    //查看yum源中的ifconfig文件位置
yum源的key驗證:
下載RPM-GPG-KEY-CentOS-7 
導入 :
1 [root@roompc901 networks]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 

修改:gpgcheck=1

使用:yum install lftp lrzsz 驗證
1 [root@centos7 ~]# yum list | grep bash   //查看是否安裝tab
2 bash-completion.noarch     
3 [root@centos7 ~]# yum install lftp bridge-utils
4 [root@centos7 ~]# lftp 192.168.1.254
5 lftp 192.168.1.254:~> ls
6 drwxr-xr-x    8 0        0            2048 Sep 05  2017 CentOS7 
刪除網絡配置里的個性化信息
– /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
ONBOOT="yes“
IPV6INIT="no"
TYPE="Ethernet"
BOOTPROTO ="dhcp"
 
– 禁用空路由
– /etc/sysconfig/network
NOZEROCONF="yes"
 
– 重新生成 grub.cfg
[root@centos7 ~]# grub2-mkconfig -o /boot/grub2/grub.cfg
 
安裝分區擴展軟件
 1 [root@localhost ~]# yum install -y cloud-utils-growpart
 2 virt-sysprep -d  虛擬機名稱
 3 [root@roompc901 libvirt]# yum  provides virt-sysprep
 4 [root@roompc901 libvirt]# yum -y install libguestfs-tools-c-1.36.3-6.el7.x86_64
 5 [root@roompc901 libvirt]# virt-sysprep -d centos7.0
 6 [root@roompc901 libvirt]# virsh undefine centos7.0
 7 [root@roompc901 libvirt]# cd /var/lib/libvirt/images/
 8 [root@roompc901 images]# qemu-img create -b demo.img -f qcow2 demo1.img 32G
 9 [root@roompc901 nsd1804]# sed 's/node/node1/' node.xml  >/etc/libvirt/qemu/node1.xml
10 [root@roompc901 nsd1804]# vimdiff node.xml  node.xml.bak 
准備兩台虛擬機:openstack 和nova01
1)創建 2 個虛擬機
要求:
虛擬機1 
  8G 內存
  2塊網卡
     第一塊網卡連接虛擬交換機 vbr
     第二塊網卡連接虛擬交換機 private1
     設置靜態 IP,默認網關 192.168.1.254
 
     2塊硬盤
     其中 / 的 vda1 要求 50G
     vdb  20G
 
2)虛擬機2
  6G 內存
  2塊網卡
     第一塊網卡連接虛擬交換機 vbr
     第二塊網卡連接虛擬交換機 private1
     設置靜態 IP,默認網關 192.168.1.254
     要求與第一台虛擬主機的兩個 IP 都能 ping 通
  硬盤
     / 的 vda1 要求 50G
添加網卡
添加硬盤
cd /var/lib/libvirt/images/
qemu-img create -f qcow2 disk.img 20G
############################################################
 
cd /var/lib/libvirt/images/
qemu-img create -f qcow2 demo.img 8G
 
准備環境 (真機)
禁用 selinux 配置文件 /etc/selinux/config
     SELINUX=disabled
禁用 firewalld
     systemctl stop firewalld
     systemctl (un)mask firewalld
 
1 yum 源的安裝和配置(網絡yum源)
  光盤作為 yum 源 CentOS7-1708.iso (共9591包)
    有 repodata 目錄的才可以作為 yum 源
  自定義 yum 源
    創建一個 repodata 
    createrepo .
    更新
    createrepo --update .
 
2 dns 服務
  yum install bind bind-chroot
  編輯配置文件 named.conf
  listen-on port 53 { 192.168.1.254; };
  allow-query     { any; };
  forwarders { 202.106.196.115; };
  dnssec-enable no;
  dnssec-validation no;
[root@openstack ~]# yum -y install bind-utils
[root@nova01 ~]# yum -y install bind-utils
 
3 時間服務器
  yum install -y chrony 
  server:配置 /etc/chrony.conf
  server ntp1.aliyun.com iburst
  bindacqaddress 0.0.0.0
  allow 0/0
  
  client:配置 /etc/chrony.conf
  server 192.168.1.254 iburst
  
  檢查狀態
  chronyc sources -v
  * 同步成功,+ 備胎 , ? 同步失敗
#######################################################################
初始化虛擬機
1 修改 /etc/selinux/config
  SELINUX=disabled
2 配置網卡配置文件 /etc/sysconfig/network-scripts/ifcfg-eth0
 
3 停止 firewalld NetworkManager
  systemctl stop firewalld
  systemctl stop NetworkManager
4 卸載 
  yum remove -y NetworkManager-* firewalld-* python-firewall
5 重啟機器
6 配置 yum 源
[local_repo]
name=CentOS-$releasever - Base
baseurl="ftp://192.168.1.254/centos7"
enabled=1
gpgcheck=0
 
7 安裝軟件
yum provides 命令
yum install 包名
 
8 驗證數字簽名
下載 RPM-GPG-KEY-CentOS-7
導入 rpm --import RPM-GPG-KEY-CentOS-7
修改 local.repo  gpgcheck=1
使用 yum install lftp lrzsz 驗證
 
9 配置網絡,禁用空路由
  配置文件 /etc/sysconfig/network
  NOZEROCONF="yes"
  網卡配置文件見范例
 
10 添加串口終端
  配置文件 /etc/default/grub
  修改內容看范例
  修改完成之后創建引導文件
  grub2-mkconfig -o /boot/grub2/grub.cfg
 
11 修改 fstab
   blkid
   修改 UUID=xxxxxx 為 /dev/xvda1
 
12 安裝分區擴展軟件
   yum install -y cloud-utils-growpart
   擴展磁盤分區空間(讓 /dev/vda1 變大)
   /usr/bin/growpart /dev/vda 1
   擴展文件系統識別空間(讓 df -h 可使用空間變大)
   /usr/sbin/xfs_growfs /
 
13 關閉虛擬機,清理信息 (真機)
   設置語言為英文 LANG=en_US.UTF-8
   virt-sysprep -d 虛擬機名稱
 
14 刪除虛擬機定義
   virsh undefine centos7.0
 
15 快速創建虛擬機
   例如創建虛擬機 node1
   創建磁盤文件
   cd /var/lib/libvirt/images
   qemu-img create -b node.img -f qcow2 node1.img 32G
   創建虛擬機配置文件 
   sed 's/node/node1/' node.xml >/etc/libvirt/qemu/node1.xml
   virsh define /etc/libvirt/qemu/node1.xml
   啟動虛擬機
   virsh start node1
   連接查看虛擬機
   virsh console node1
 
#-----------------------------------------#
添加網卡
 
添加硬盤
cd /var/lib/libvirt/images/
qemu-img create -f qcow2 disk.img 20G
#-----------------------------------------#
創建 2 個虛擬機
要求:
虛擬機1 
  8G 內存
  2塊網卡
     第一塊網卡連接虛擬交換機 vbr
     第二塊網卡連接虛擬交換機 private1
     設置靜態 IP,默認網關 192.168.1.254
 
     2塊硬盤
     其中 / 的 vda1 要求 50G
     vdb  20G
 
虛擬機2
  6G 內存
  2塊網卡
     第一塊網卡連接虛擬交換機 vbr
     第二塊網卡連接虛擬交換機 private1
     設置靜態 IP,默認網關 192.168.1.254
     要求與第一台虛擬主機的兩個 IP 都能 ping 通
  硬盤
     / 的 vda1 要求 50G
 /etc/sysconfig/network-scripts/ifcfg-eth0
# Generated by dracut initrd
DEVICE="eth0"
ONBOOT="yes"
NM_CONTROLLED="no"
TYPE="Ethernet"
BOOTPROTO="none"
IPADDR="192.168.1.2"
PREFIX="24"
GATEWAY="192.168.1.254"
配置網卡配置文件/etc/sysconfig/network-scripts/ifcfg-eth1
# Generated by dracut initrd
DEVICE="eth1"
ONBOOT="yes"
NM_CONTROLLED="no"
TYPE="Ethernet"
BOOTPROTO="none"
IPADDR="192.168.4.2"
PREFIX="24"
# 環境檢查
sestatus 檢查 selinux 是否關閉了
rpm -qa |grep -P "firewalld|NetworkManager"  是否卸載了 NetworkManager 和 firewalld
chronyc sources -v 檢查時間服務器是否可用
nslookup  檢查 dns 服務器是否可用
yum repolist 檢查包 9591 個
free -m 查看內存是否夠 8G
lsblk 查看是否有 20G 的 vdb 設備
ifconfig 查看是否兩塊網卡,而且都能 ping 通
 
# 配置 openstack yum 源 共 12 個 10731 包
 1 [openstack_extras]
 2 name=openstack extras
 3 baseurl="ftp://192.168.1.254/openstack-ext"
 4 enabled=1
 5 gpgcheck=0
 6  
 7 [rhel-7-server-openstack-10-devtools-rpms]
 8 name=rhel-7-server-openstack-10-devtools-rpms
 9 baseurl=ftp://192.168.1.254/openstack/rhel-7-server-openstack-10-devtools-rpms
10 enabled=1
11 gpgcheck=0
12  
13 [rhel-7-server-openstack-10-optools-rpms]
14 name=rhel-7-server-openstack-10-optools-rpms
15 baseurl=ftp://192.168.1.254/openstack/rhel-7-server-openstack-10-optools-rpms
16 enabled=1
17 gpgcheck=0
18  
19 [rhel-7-server-openstack-10-rpms]
20 name=rhel-7-server-openstack-10-rpms
21 baseurl=ftp://192.168.1.254/openstack/rhel-7-server-openstack-10-rpms
22 enabled=1
23 gpgcheck=0
24  
25 [rhel-7-server-openstack-10-tools-rpms]
26 name=rhel-7-server-openstack-10-tools-rpms
27 baseurl=ftp://192.168.1.254/openstack/rhel-7-server-openstack-10-tools-rpms
28 enabled=1
29 gpgcheck=0
30  
31 [rhel-7-server-rhceph-2-mon-rpms]
32 name=rhel-7-server-rhceph-2-mon-rpms
33 baseurl=ftp://192.168.1.254/openstack/rhel-7-server-rhceph-2-mon-rpms
34 enabled=1
35 gpgcheck=0
36  
37 [rhel-7-server-rhceph-2-osd-rpms]
38 name=rhel-7-server-rhceph-2-osd-rpms
39 baseurl=ftp://192.168.1.254/openstack/rhel-7-server-rhceph-2-osd-rpms
40 enabled=1
41 gpgcheck=0
42  
43 [rhel-7-server-rhceph-2-tools-rpms]
44 name=rhel-7-server-rhceph-2-tools-rpms
45 baseurl=ftp://192.168.1.254/openstack/rhel-7-server-rhceph-2-tools-rpms
46 enabled=1
47 gpgcheck=0
48  
49 [rhel-7-server-rhscon-2-agent-rpms]
50 name=rhel-7-server-rhscon-2-agent-rpms
51 baseurl=ftp://192.168.1.254/openstack/rhel-7-server-rhscon-2-agent-rpms
52 enabled=1
53 gpgcheck=0
54  
55 [rhel-7-server-rhscon-2-installer-rpms]
56 name=rhel-7-server-rhscon-2-installer-rpms
57 baseurl=ftp://192.168.1.254/openstack/rhel-7-server-rhscon-2-installer-rpms
58 enabled=1
59 gpgcheck=0
60  
61 [rhel-7-server-rhscon-2-main-rpms]
62 name=rhel-7-server-rhscon-2-main-rpms
63 baseurl=ftp://192.168.1.254/openstack/rhel-7-server-rhscon-2-main-rpms
64 enabled=1
65 gpgcheck=0

 

Openstack
 
Openstack主要組件
• Horizon
– 用於管理Openstack各種服務的、基於web的管理接口
– 通過圖形界面實現創建用戶、管理網絡、啟勱實例等操作
 
• Keystone
– 為其他服務提供認證和授權的集中身份管理服務
– 也提供了集中的目錄服務
– 支持多種身份認證模式,如果密碼認證、令牌認證、以及AWS(亞馬遜Web服務)登陸
– 為用戶和其他服務提供了SSO認證服務
 
• Neutron
– 一種軟件定義網絡服務
– 用於創建網絡、子網、路由器、管理浮勱IP地址
– 可以實現虛擬交換機、虛擬路由器
– 可用於在項目中創建VPN
 
• Cinder
– 為虛擬機管理存儲卷的服務
– 為運行在Nova中的實例提供永久的塊存儲
– 可以通過快照迚行數據備份
– 經常應用在實例存儲環境中,如果數據庫文件
 
• Nova
– 在節點上用於管理虛擬機的服務
– Nova是一個分布式的服務,能夠不Keystone交互實現
認證,不Glance交互實現鏡像管理
– Nova被設計成在標准硬件上能夠迚行水平擴展
– 啟勱實例時,如果有需要則下載鏡像
 
• Glance
– 扮演虛擬機鏡像注冊的角色
– 允許用戶為直接存儲拷貝服務器鏡像
– 這些鏡像可以用於新建虛擬機的模板
 
1. 配置主機IP地址
2. 配置主機yum客戶端
3. 創建cinder-volumes的卷組
4. 導入rabbitmq的公鑰
5. 安裝依賴的軟件包
6. 創建cinder-volumes的卷組
7. 導入公鑰
8. 安裝依賴的軟件包
 
demo2:
安裝 openstack
1、配置卷組,安裝依賴軟件包
yum install -y lvm2
pvcreate /dev/vdb
vgcreate cinder-volumes  /dev/vdb
vgs
 
yum install -y qemu-kvm \
libvirt-daemon libvirt-client libvirt-daemon-driver-qemu \
python-setuptools
 
2、安裝 packstack
yum -y install openstack-packstack
安裝openstack的應答文件
packstack  --help | grep answer
packstack  --gen-answer-file=answer.ini
3、安裝 openstack
yum install -y openstack-packstack
 
創建安裝 openstack 的應答文件
packstack --gen-answer-file=answer.ini
 
 
編輯應答文件 answer.ini
配置默認密碼
 1 11:  CONFIG_DEFAULT_PASSWORD=Taren1   //設置禁用 swift (對象存儲) 模塊
 2 42:  CONFIG_SWIFT_INSTALL=n  //NTP 服務器地址
 3 75:  CONFIG_NTP_SERVERS=192.168.1.254   /計算節點IP地址
 4 98:  CONFIG_COMPUTE_HOSTS=192.168.1.19    //需要配置vxlan網絡的 IP 地址
 5 102: CONFIG_NETWORK_HOSTS=192.168.1.19    //禁用自動創建 cinder-volumns 卷組
 6 554: CONFIG_CINDER_VOLUMES_CREATE=n    //設置網絡支持協議
 7 840: CONFIG_NEUTRON_ML2_TYPE_DRIVERS=flat,vxlan     //設置組播地址
 8 876: CONFIG_NEUTRON_ML2_VXLAN_GROUP=239.1.1.5     //設置虛擬交換機
 9 910: CONFIG_NEUTRON_OVS_BRIDGE_MAPPINGS=physnet1:br-ex    //設置虛擬交換機所連接的物理網卡
10 921: CONFIG_NEUTRON_OVS_BRIDGE_IFACES=br-ex:eth0   //設置隧道網絡使用的網卡
11 936: CONFIG_NEUTRON_OVS_TUNNEL_IF=eth1   //禁用測試的DEMO
12 1179:CONFIG_PROVISION_DEMO=n
 
3、安裝 openstack
安裝
 1 packstack --answer-file=answer.ini
 2  
 3  **** Installation completed successfully ******
 4  
 5 [root@openstack ~]# ifconfig
 6 br-ex: flags=4163  mtu 1500
 7  
 8 [root@openstack ~]# vim /etc/httpd/conf.d/15-horizon_vhost.conf
 9  
10 WSGIApplicationGroup %{GLOBAL}
11 ServerAlias localhost
12 WSGIDaemonProcess apache group=apache processes=3
13 threads=10 user=apache
14 WSGIProcessGroup apache
15 WSGIApplicationGroup %{GLOBAL}     <--- 這里為添加

 

 
• 重新載入配置文件 apache graceful
 1 [root@openstack ~]# apachectl graceful
 2 [root@openstack ~]# cat keystonerc_admin 
 3 unset OS_SERVICE_TOKEN
 4     export OS_USERNAME=admin
 5     export OS_PASSWORD=5931f32650194f4c
 6     export OS_AUTH_URL=http://192.168.1.2:5000/v2.0
 7     export PS1='[\u@\h \W(keystone_admin)]\$ '
 8 [root@roompc901 ~]# firefox http://192.168.1.2
 9 [root@openstack ~]# openstack
10 (openstack) help
11 (openstack) openstack user
12 (openstack) openstack user set --password "a" u1
13 [root@openstack system]# cd /usr/lib/systemd/system
14 [root@openstack system]# ls  openstack-nova-compute.service 
15 [root@openstack system]# systemctl restart openstack-nova-compute.service
利用已安裝openstack主機在重新安裝
1 [root@nova01 ~] yum install -y qemu-kvm \
2 libvirt-daemon libvirt-client libvirt-daemon-driver-qemu \
3 python-setuptools
4  
5 [root@openstack ~] && [root@nova01 ~]vim /etc/hosts
6 192.168.1.3  nova01
7 192.168.1.2  openstack

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM