CloudStack+KVM環境搭建(步驟很詳細,說明ClockStack是用來管理虛擬機的)


文章目錄
環境准備
配置本地域名解析
關閉selinux
安裝ntp服務
安裝管理端
安裝Mysql數據庫
安裝服務端RPM:
初始化CloudStack數據庫:
初始化cloudstack管理服務器
安裝系統虛擬機
安裝Agent端
創建Zone(資源域)
本文以4.11.1.0版本為例,使用的hypervisor類型為KVM,操作系統為RedHat7/CentOS7,官方安裝文檔參考:http://docs.cloudstack.apache.org/projects/cloudstack-installation/en/4.11/qig.html

環境准備
一套基本的CloudStack環境,包括一台CloudStack管理端(cloudstack-management),一個mysql數據庫,若干台支持KVM虛擬化的計算節點(cloudstack-agent)以及一台用來做為二級存儲的nfs服務器:


在實際生產中,mysql數據庫和管理端都可能配備多台作為高可用,計算節點一般也是配置較高的物理服務器,但在實驗環境,我們可以采用最小化安裝模式,把mysql,nfs和管理端安裝在同一台虛擬機上,使用一台支持KVM虛擬化的虛擬機用來作為計算節點,關於如何創建支持KVM虛擬化的虛擬機,可以參考文章:《KVM嵌套虛擬化 – 在虛擬機中創建虛擬機》。
本文使用兩台虛擬機來搭建我們的環境,nfs,mysql和管理端都裝在同一台虛擬機上,cloudstack-agent安裝在一台開啟了虛擬化支持的虛擬機上,部署架構如下:


我們甚至可以把cloudstack-agent也安裝在管理端所在的虛擬機上,讓這台虛擬機作為計算節點使用,這樣整套環境我們只需要一台虛擬機就可以部署完成。但我們不缺這幾台機器,所以在這里我們還是創建了單獨的虛擬機來作為計算節點。

我們需要在這兩台虛擬機上做以下配置:

配置本地域名解析
在文件/etc/hosts最后加上本機的IP及對應的主機名,如:192.168.122.10 MyHost01

關閉selinux
修改配置文件/etc/selinux/config,將SELINUX=enforcing改為SELINUX=disabled或SELINUX=permissive
執行命令:setenforce 0
安裝ntp服務
yum -y install ntp
systemctl start ntpd
systemctl enable ntpd
1
2
3
完了以后我們就可以把CloudStack的安裝下載下來准備安裝,本文基於CloudStack 4.11.1.0 版本,rpm包可以在以下下載鏈接獲取:http://download.cloudstack.org/centos/7/4.11/?C=M;O=A ,下載三個主要的包即可:

cloudstack-management-4.11.1.0-1.el7.centos.x86_64.rpm
cloudstack-common-4.11.1.0-1.el7.centos.x86_64.rpm
cloudstack-agent-4.11.1.0-1.el7.centos.x86_64.rpm

安裝管理端
我們首先把管理端搭建起來,計算節點可以在管理端搭建起來后一台一台添加進去,按照管理端我們需要按照以下步驟:

安裝Mysql數據庫
RedHat 7.2中默認的yum源沒有MySql,當有個叫mariadb的數據庫,mariadb是mysql數據庫的一個分支,我們直接安裝默認yum源里的mariadb就好:

yum install mariadb*
systemctl start mariadb.service
systemctl enable mariadb.service
1
2
3
設置Mysql root密碼:使用命令 mysql_secure_installation 按照提示設置root密碼,第一次使用時root密碼為空,直接按回車即可

安裝服務端RPM:
yum localinstall cloudstack-management-4.11.1.0-1.el7.centos.x86_64.rpm cloudstack-common-4.11.1.0-1.el7.centos.x86_64.rpm
1
初始化CloudStack數據庫:
cloudstack-setup-databases cloud:cloud@localhost --deploy-as=root:root
1
參數解析:
cloud:cloud@localhost :其中cloud:cloud是cloudstack在mysql數據庫中創建的賬戶和密碼,localhost是mysql數據庫的地址,因為我們裝在本機上,所以是localhost,如果mysql數據庫在另外一台機器上,則需改為該機器的IP或域名
–deploy-as=root:root :這個參數的值root:root填的是數據庫的root用戶名和密碼

執行這個命令會在MySql數據庫上創建一個cloud的用戶,並使用這個用戶創建一個cloud數據庫。出現以下信息則表明cluodstack的數據庫初始化成功:


初始化cloudstack管理服務器
使用以下命令初始化並啟動cloudstack的管理服務器:

cloudstack-setup-management
1
出現以下界面表明管理服務器啟動成功:


打開瀏覽器,在地址欄輸入[host_ipaddress]:8080/client可以看到CloudStack的UI界面:

使用默認賬戶admin/password登錄,第一次登錄時會進入引導界面:

我們可以選擇跳過直接進入CloudStack的主界面,此時由於我們還未添加資源,CloudStack主界面空空如也:


安裝系統虛擬機
我們還需要把系統虛擬機下載下來並安裝到二級存儲上去,這樣當我們在啟用資源域的時候系統虛擬機才能成功被創建。
系統虛擬機的下載鏈接:http://cloudstack.apt-get.eu/systemvm/4.11/systemvmtemplate-4.11.1-kvm.qcow2.bz2

上文提到的NFS服務器就是作為二級存儲使用的,所以我們還需要在本機上搭建一個NFS服務器后才能把系統虛擬機模板傳上去。不過不用擔心,NFS服務器的搭建非常簡單,不會的同學可以參考這篇文章:RedHat7/Centos7 搭建NFS服務器

假設掛載到NFS的目錄為/mnt/secondary,那么我們可以使用以下命令將系統虛擬機模板上傳到NFS上:

bunzip2 systemvmtemplate-4.11.1-kvm.qcow2.bz2
/usr/share/cloudstack-common/scripts/storage/secondary/cloud-install-sys-tmplt -m /mnt/secondary -f systemvmtemplate-4.11.1-kvm.qcow2 -h kvm -F
1
2
出現類似以下信息則表明系統虛擬機模板已經成功上傳到NFS上:


安裝Agent端
Agent端(即我們的計算節點)在安裝cloudstack-agent,還需要安裝libvirt和qemu,cloudstack對KVM虛擬化層的操作實際上都是libvirt和qemu來完成的,執行以下命令完成我們Agent端的安裝:

yum install libvirt* qemu*
yum localinstall cloudstack-agent-4.11.1.0-1.el7.centos.x86_64.rpm cloudstack-common-4.11.1.0-1.el7.centos.x86_64.rpm
systemctl start cloudstack-agent
systemctl enable cloudstack-agent
1
2
3
4
需要注意的是,Agent端所在的機器也需要經過一開始時配置本地域名解析,安裝ntp,關閉selinux的配置哦。
完成以上步驟后稍后我們就可以把這個Agent作為計算節點加入到CloudStack的資源域中。

創建Zone(資源域)
關於Zone是什么,可以在這個鏈接了解一下:https://mp.csdn.net/mdeditor/76368387
在完成了以上步驟以后,我們終於可以來添加我們的第一個Zone了。點擊Infrastructure -> Zones->Add Zone,彈出以下頁面:


有Basic和Advanced兩種Zone可以選擇,我們選Advanced,然后點Next,進入以下界面:

Name隨便填一個,DNS可以根據具體的情況填寫,關鍵是下面的Hypervisior在這里我們要選KVM,最下面兩個復選框也需要勾選,如下圖所示:

完事以后點擊Next進入下面的頁面,這個是為計算節點的不同網絡流量配置不同的網卡,因為我們的計算節點只有一張默認網卡,所以我們可以直接點擊Next跳過,讓所有網絡流量都走默認網卡即可:


在下面這個頁面我們需要為CloudStack配置一個可用的IP范圍,用於公共流量(Public traffic),公共流量用於和外網進行通信,我們的IP范圍需要至少有2個IP用於公共流量:

點擊下一步,進入到Pod的配置頁面,Name可以隨便取一個,下面的網段信息用於配置CloudStack的管理流量(Management traffic),即用於CloudStack各個組件間進行通信,配置一個CloudStack服務端和Agent端都可以訪問的可用的IP范圍即可:


點擊下一步,配置一個系統保留VLAN范圍,隨便填100到200即可:


點擊下一步,給我們的第一個Cluster取個名字,隨便取:


點擊下一步,添加我們的第一個計算節點,這個Host Name要填我們上面那台作為計算節點的Agent的IP地址,Username和Password填Linux操作系統的用戶名和密碼:


點擊下一步,添加一個二級存儲,Provider選nfs,Name隨便取,Server要填前面我們搭的那個NFS服務器,Path要填我們NFS服務器的共享目錄:


點擊下一步,終於完了,點Launce Zone等待一段時間,等創建完成即可:


如果中間有配置錯誤的地方會提示我們修改,最終出現以下頁面表明Zone以及成功創建,點擊Yes啟用資源域:


此時的Infrastructure界面可以看到我們創建的資源都顯示在這個界面上:

---------------------
作者:巴拉拉小星星
來源:CSDN
原文:https://blog.csdn.net/u012124304/article/details/80960504
版權聲明:本文為博主原創文章,轉載請附上博文鏈接!

 


免責聲明!

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



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