1. 程式人生 > >先電openstack雲端計算比賽個人記錄

先電openstack雲端計算比賽個人記錄

雲端計算openstack搭建及運維

1.參賽內容簡介

  1. 本人才疏學淺,如有錯誤,還望各位不吝賜教,謝謝
  2. 參賽試題基本都差不多,基本包括以下幾個方面
  • openstack環境搭建
  • openstack運維
  • docker
  • 大資料運維
  • 安卓開發
  1. 樣題下載(注意:樣題答案並不保證正確,還請自行研究)
    百度雲盤
    密碼:q72e
    (映象檔案還請自行網上尋找)

2.環境搭建

預先準備

  1. 安裝作業系統CentOS7,安裝時注意留一部分空白分割槽
  2. 按題要求設定控制節點以及計算節點主機名
# hostnamectl set-hostname controller
  1. 劃分分割槽
#compute節點
[[email protected]] # parted /dev/md126
(parted) mkpart swift 500G 600G //建立swift分割槽,從500G到600G

[[email protected]] # mkfs.xfs /dev/md126p5  //格式化分割槽
  1. 配置網絡卡
  • 題目一般要求兩張網絡卡
控制節點
網絡卡1 :192.168.100.10
網絡卡2 :192.168.200.10

計算節點
網絡卡1 : 192.168.100.20
網絡卡2 :192.168.200.20
  • 方法為開啟網絡卡配置檔案vi /etc/sysconfig/network-scripts/ifcfg-XXX

  • 修改以下引數

ONBOOT=yes

NM_CONTROLLED=no

BOOTPROTO=static

IPADDR=192.168.100.10

PREFIX=24

GATEWAY=192.168.100.1
  1. 配置本地yum源
  • 上傳提供的映象檔案,掛載(只需要在controller節點做)
#掛載CentOS系統iso檔案
[[email protected] ~]# mount -o loop CentOS-7-x86_64-DVD-1511.iso  /mnt/
[[email protected] ~]# mkdir /opt/centos  //建立/opt/centos資料夾
[[email protected] ~]# cp -rvf /mnt/* /opt/centos/    //複製映象內容到建立的資料夾
[[email protected] ~]# umount  /mnt/   //解除安裝iso映象
#掛載提供的iaas基礎iso檔案
[[email protected] ~]# mount -o loop XianDian-IaaS-v2.1.iso  /mnt/
[[email protected] ~]# cp -rvf /mnt/* /opt/
[[email protected] ~]# umount  /mnt/
  • 修改yum源配置
    備份原來的yum源
mv /etc/yum.repos.d/* /root
  • 新建repo檔案並按以下內容輸入
#vi /etc/yum.repo.d/openstack.repo   //建立並開啟openstack.repo檔案
#控制節點的檔案內容
[centos]
name=centos
baseurl=file:///opt/centos
gpgcheck=0
enabled=1
[iaas]
name=iaas
baseurl=file:///opt/iaas-repo
gpgcheck=0
enabled=1

#計算節點的檔案內容
[centos]
name=centos
baseurl=ftp://192.168.100.10/centos
gpgcheck=0
enabled=1
[iaas]
name=iaas
baseurl=ftp://192.168.100.10/iaas-repo
gpgcheck=0
enabled=1

  • 執行以下命令
#yum clean all
#yum update
  1. controller節點安裝ftp
[[email protected] ~]# yum install vsftpd –y
  • 修改配置檔案
    • 任意位置新增anon_root=/opt/,儲存退出
  • 重啟ftp並加入開機自啟
[[email protected] ~]# systemctl start vsftpd
[[email protected] ~]# systemctl enable vsftpd
  1. 關閉防火牆(所有節點執行)
# systemctl stop firewalld
# systemctl disable firewalld
  1. 計算節點更新yum源
# yum clean all
# yum update
  1. 所有節點安裝先電提供的作弊 指令碼包
# yum install iaas-xiandian -y
  1. 編輯配置檔案/etc/xiandian/openrc.sh
  • 這裡貼一個編輯好的例子,一般情況,題目都會對一些引數有要求,請按照題目要求填寫
HOST_IP=192.168.100.10
HOST_NAME=controller
HOST_IP_NODE=192.168.100.20
HOST_NAME_NODE=compute
RABBIT_USER=openstack
RABBIT_PASS=000000
DB_PASS=000000
DOMAIN_NAME=demo(按題目要求寫)
ADMIN_PASS=000000
DEMO_PASS=000000
KEYSTONE_DBPASS=000000
GLANCE_DBPASS=000000
GLANCE_PASS=000000
NOVA_DBPASS=000000
NOVA_PASS=000000
NEUTRON_DBPASS=000000
NEUTRON_PASS=000000
METADATA_SECRET=000000
INTERFACE_NAME=enp9s0(外網網絡卡名)
CINDER_DBPASS=000000
CINDER_PASS=000000
TROVE_DBPASS=000000
TROVE_PASS=000000
BLOCK_DISK=md126p4(空白分割槽名)
SWIFT_PASS=000000
OBJECT_DISK=md126p5(空白分割槽名)
STORAGE_LOCAL_NET_IP=192.168.100.20
HEAT_DBPASS=000000
HEAT_PASS=000000
CEILOMETER_DBPASS=000000
CEILOMETER_PASS=000000
AODH_DBPASS=000000
AODH_PASS=000000
  1. 所有節點執行預部署指令碼
# iaas-pre-host.sh
  1. 修改ntp時間同步配置
  • controller節點
    刪除預設server配置,加入以下配置
server 127.127.1.0
fudge 127.127.1.0 stratum 10
  • controller節點重啟ntp服務並加入開機自啟
[[email protected] ~]# systemctl start ntpd
[[email protected] ~]# systemctl enable ntpd
  • compute節點執行以下命令
[[email protected] ~]# ntpdate controller
[[email protected] ~]# chkconfig ntpdate on
  1. 重啟所有節點伺服器
#reboot

安裝openstack元件

  1. compute節點時間同步controller節點(重要)
#至少執行兩次以下命令,因為第一次有時候偏差較大
[[email protected] ~]# ntpdate controller
  1. controller節點安裝mysql
[[email protected] ~]# iaas-install-mysql.sh
  1. controller節點安裝keystone認證服務
[[email protected] ~]# iaas-install-keystone.sh
  1. controller節點安裝glance映象服務
[[email protected] ~]# iaas-install-glance.sh

5.上傳映象(此步驟也可在Dashboard安裝完以後,web頁面操作)

#載入配置檔案
[[email protected] ~]# source /etc/keystone/admin-openrc.sh
#建立映象
[[email protected] ~]# glance image-create --name "CentOS7.0" --disk-format qcow2 --container-format bare --progress < /opt/images/centos_7-x86_64_xiandian.qcow2
  1. 所有節點安裝Nova計算服務
#controller
[[email protected] ~]# iaas-install-nova-controller.sh

#compute
[[email protected] ~]# iaas-install-nova-compute.sh
  1. 所有節點安裝neutron網路服務
#controller
[[email protected] ~]# iaas-install-neutron-controller.sh

#compute
[[email protected] ~]# iaas-install-neutron-compute.sh
  1. 根據題目要求,選擇指定網路進行安裝
#我們以gre網路為例,其餘只需要執行對應指令碼即可
#controller
[[email protected] ~]# iaas-install-neutron-controller-gre.sh

#compute
[[email protected] ~]# iaas-install-neutron-compute-gre.sh
  1. controller節點安裝Dashboard控制面板服務
[[email protected] ~]# iaas-install-neutron-dashboard.sh
  1. 瀏覽器訪問controller節點ip,登入
  • 建立網路和雲主機,相關引數按題目填寫即可

    (1)管理員 → 網路 → 建立網路(ext-net) → 建立子網(ext-subnet)

    (2)專案 → 網路 → 路由 → 新建路由 → 新增閘道器和內網介面

    (3)專案 → 計算 → 訪問安全 → 管理規則 → 新增規則(ICMP、TCP、UDP)

    (4)專案 → 計算 → 雲主機 → 建立雲主機 → 繫結浮動IP

3.iaas雲平臺運維

此題只需知道相關查詢命令,即可輕鬆過關。

大致流程:

  • 提前上傳本題提供的映象
  • 按題目要求使用映象建立好雲主機
  • 運行雲主機
  • 使用ssh命令列軟體連線雲主機
  • 執行相關查詢

4.Docker容器部署

以下內容命令相關操作大多與前文類似,其餘為視覺化操作,故簡略說明其主要步驟

  1. 使用相關映象按要求配置建立虛擬機器(Registry、Server、Client),並開機
  2. 上傳PaaS映象中的Docker到controller,掛載並放進ftp
  3. 配置所有虛擬機器節點的yum源,使用ftp指向controller
[centos]
name=centos
baseurl=ftp://192.168.100.10/centos
gpgcheck=0
enabled=1

[docker]
name=docker
baseurl=ftp://192.168.100.10/docker
gpgcheck=0
enabled=1
  1. 上傳PaaS映象中的Docker_images和install.sh到Server節點
  2. 執行chmod +x install.sh賦予許可權,執行./install.sh
  3. 完畢以後,使用瀏覽器訪問Server節點ip,即可看到Rancher面板
  4. 設定登入賬號,新增主機
  5. 按題目要求安裝某個Docker軟體即可

5.Docker容器運維

本題為docker常用命令的考察,例如查詢所有容器列表(#docekr ps -a)、查詢映象列表(#docker images)等等,只需要連線到Server雲主機進行相關操作即可

6.大資料+安卓

因缺失檔案,所以沒有進行相關研究。