東海大學資工系

CloudStack™
Installation on Ubuntu

康志強 G02357004
2013/11/8
CloudStack Installation on Ubuntu
一、前言.......................................................................................
CloudStack Installation on Ubuntu
一、前言
CloudStack 是一套用 Java 撰寫的軟體,專門用來管理雲端上虛擬機器,將運算資
源抽象化成一整個資源庫提供了公有、私有以及混和式的雲端平台服務(IAAS)...
CloudStack Installation on Ubuntu

二、架設架構
CloudStack 的安裝包含兩個部分:管理伺服器及雲端基礎架構,當您架設及管理
一個 CloudStack 雲端時,您需要提供如主機、儲存裝置及 IP 位址...
CloudStack Installation on Ubuntu

一個 management sever (ubuntu-12.04.3 + CloudStack-4.0 )
一個 Hypervisor(XenServer 6.0.2)

...
CloudStack Installation on Ubuntu
三、安裝環境
CPU

Intel Core i3 M350 2.27GHz

RAM

4 GB * 2

HD

128 SSD

Network

100M/1000M ...
CloudStack Installation on Ubuntu

四、CloudStack Installation on Ubuntu 步驟
1. 配置安裝源
(1) 設定安裝源

$ sudo gedit /etc/apt/source...
CloudStack Installation on Ubuntu
(3) 將 public key 加到 trusted keys
$ wget -O - http://cloudstack.apt-get.eu/release.asc|su...
CloudStack Installation on Ubuntu

2. 安裝 Management Server
(1) 安裝 NTP 來同步雲端伺服器的時間

$ sudo apt-get install openntpd
(2) 安裝 ...
CloudStack Installation on Ubuntu
CloudStack 默認以 cloud 用戶啟動,但默認會通過 sudo 以 root 身份管理相關文
件與目錄。(上一步安裝時已經做完)

(4) 配置 sudo 用戶組免...
CloudStack Installation on Ubuntu

(6) 下載 vhd-util
此步驟為安裝超級監督者主機的 XenServer 安裝

$ sudo wget http://download.cloud.com.s3.a...
CloudStack Installation on Ubuntu

11
CloudStack Installation on Ubuntu


修改 MySQL 配置文件參數

$ sudo vi /etc/mysql/my.cnf
在[mysqld]模塊中加入以下參數
innodb_rollback_on_ti...
CloudStack Installation on Ubuntu



初始化資料庫 cloud

$ sudo cloud-setup-databases cloud:cloudstack@localhost --deployas=roo...
CloudStack Installation on Ubuntu

$ sudo vi /etc/exports
添加如下信息
/export *(rw,async,no_root_squash,no_subtree_check)
(,,之間...
CloudStack Installation on Ubuntu


刷新配置

$ sudo exportfs -a


掛載測試 NFS 共享

$ sudo mkdir /mnt/primary
$ sudo mount -t nf...
CloudStack Installation on Ubuntu


掛載成功,然後輸入

$ sudo vi /etc/fstab
加入
192.168.132.134:/export/primary /mnt/primary nfs r...
CloudStack Installation on Ubuntu
(10)

安裝 kvm 模板

sudo /usr/lib/cloud/common/scripts/storage/secondary/cloud-install-sys-...
CloudStack Installation on Ubuntu

18
CloudStack Installation on Ubuntu

3. 安裝配置 KVM 虛擬化 Host 主機
(1) 安裝配置 agent

$ sudo apt-get install cloud-agent
(2) 安裝配置 lib...
CloudStack Installation on Ubuntu



然後輸入

$ sudo vi /etc/init/libvirt-bin.conf
修改以下參數
env libvirtd_opts= " -d -l "


還有...
CloudStack Installation on Ubuntu


設定 Apparmor (Ubuntu)


檢查您的機器是否有 AppArmor,沒有的話請跳過,對於 Ubuntu
AppArmor 是預設啟動的,您可以用以下來驗...
CloudStack Installation on Ubuntu
3. 16509 (libvirt)
4. 5900 - 6100 (VNC consoles)
5. 49152 - 49216 (libvirt live migratio...
CloudStack Installation on Ubuntu

(7) 輸入 http://{IP}:8080/client/就可以看到 CloudStack 的登錄界面了。



輸入預設帳號密碼 admin/password
使用 ...
CloudStack Installation on Ubuntu

$ sudo apt-get install openssh-server



安裝完成後,再重新啟動 tomcat

$ sudo /etc/init.d/cloud-...
CloudStack Installation on Ubuntu

五、本文的引用網址:

1. http://www.cnblogs.com/skyme/p/3135458.html
2. http://jimmy1p4204.pixnet...
CloudStack Installation on Ubuntu

26
Upcoming SlideShare
Loading in …5
×

CloudStack Installation on Ubuntu

1,989
-1

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
1,989
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
72
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

CloudStack Installation on Ubuntu

  1. 1. 東海大學資工系 CloudStack™ Installation on Ubuntu 康志強 G02357004 2013/11/8
  2. 2. CloudStack Installation on Ubuntu 一、前言......................................................................................................................................... 2 二、架設架構................................................................................................................................. 3 三、安裝環境................................................................................................................................. 5 四、CloudStack Installation on Ubuntu 步驟 ........................................................................... 6 1. 配置安裝源..................................................................................................................... 6 2. 安裝 Management Server ........................................................................................... 8 3. 安裝配置 KVM 虛擬化 Host 主機.............................................................................. 19 五、本文的引用網址: ................................................................................................................. 25 1
  3. 3. CloudStack Installation on Ubuntu 一、前言 CloudStack 是一套用 Java 撰寫的軟體,專門用來管理雲端上虛擬機器,將運算資 源抽象化成一整個資源庫提供了公有、私有以及混和式的雲端平台服務(IAAS)。支援管理 大部分主流的 hypervisors,如 KVM、XenServer、VMware、Oracle VM、Xen 等。 CloudStack 具備了管理網路、儲存裝置和計算資源的能力,使用者可以運用 CloudStack 部屬、管理、設定雲端環境。 CloudStack 是個使用 GPL 授權的免費開放原始碼專案,前身是 Cloud.com,後來被 Citrix 收購。2011 年 7 月,Citrix 收購 Cloud.com,將 CloudStack 100%開源並交給 Apache 軟件基金會管理。 同時,CloudStack 已經有了許多商用客戶,包括 GoDaddy、英國電信、日本電報電 話公司、塔塔集團、韓國電信等。 因此,CloudStack 本身其實就是一個商業化過後的產品,然後在面對 OpenStack 等 開源系統的巨大競爭壓力的情況下選擇了同樣的開源。 CloudStack 具有商業軟件所擁有的完善的用戶權限管理,可以讓用戶構建一個安全的多 租戶雲計算環境。同時兼容 Amazon AWS API 接口,可用來管理 AWS 的資源。 2
  4. 4. CloudStack Installation on Ubuntu 二、架設架構 CloudStack 的安裝包含兩個部分:管理伺服器及雲端基礎架構,當您架設及管理 一個 CloudStack 雲端時,您需要提供如主機、儲存裝置及 IP 位址等資源給管理伺服器, 而管理伺服器幫您管理這些資源。 產品的最少安裝包含一個執行 CloudStack 管理伺服器的機器及雲端基礎架構的機 器(這個例子是只包含一個執行超級監督者程式的主機),在最小的架構中,一個機器可以 同時執行管理伺服器及超級監督者主機(使用 KVM hypervisor )。 3
  5. 5. CloudStack Installation on Ubuntu 一個 management sever (ubuntu-12.04.3 + CloudStack-4.0 ) 一個 Hypervisor(XenServer 6.0.2) 4
  6. 6. CloudStack Installation on Ubuntu 三、安裝環境 CPU Intel Core i3 M350 2.27GHz RAM 4 GB * 2 HD 128 SSD Network 100M/1000M bps Ethernet OS Windows7_64-bit VM Platform VMware® Workstation10.0.0 build-1295980 VM Guest OS ubuntu-12.04.3-desktop-amd64 VMRAM 1.6GB VM HD 20GB 5
  7. 7. CloudStack Installation on Ubuntu 四、CloudStack Installation on Ubuntu 步驟 1. 配置安裝源 (1) 設定安裝源 $ sudo gedit /etc/apt/sources.list deb http://mirrors.sohu.com/ubuntu/ precise main restricted universe multiverse deb http://mirrors.sohu.com/ubuntu/ precise-security main restricted universe multiverse deb http://mirrors.sohu.com/ubuntu/ precise-updates main restricted universe multiverse deb http://mirrors.sohu.com/ubuntu/ precise-proposed main restricted universe multiverse deb http://mirrors.sohu.com/ubuntu/ precise-backports main restricted universe multiverse deb-src http://mirrors.sohu.com/ubuntu/ precise main restricted universe multiverse deb-src http://mirrors.sohu.com/ubuntu/ precise-security main restricted universe multiverse deb-src http://mirrors.sohu.com/ubuntu/ precise-updates main restricted universe multiverse deb-src http://mirrors.sohu.com/ubuntu/ precise-proposed main restricted universe multiverse deb-src http://mirrors.sohu.com/ubuntu/ precise-backports main restricted universe multiverse 或參考官網安裝 http://cloudstack.apache.org/downloads.html (2) 配置 CloudStack 官方源 $ sudo vi /etc/apt/sources.list.d/cloudstack.list 加入下面內容 deb http://cloudstack.apt-get.eu/ubuntu precise 4.0 6
  8. 8. CloudStack Installation on Ubuntu (3) 將 public key 加到 trusted keys $ wget -O - http://cloudstack.apt-get.eu/release.asc|sudo apt-key add - (4) 更新 local apt cache $sudo apt-get update DEB package repository 設定完成 7
  9. 9. CloudStack Installation on Ubuntu 2. 安裝 Management Server (1) 安裝 NTP 來同步雲端伺服器的時間 $ sudo apt-get install openntpd (2) 安裝 CloudStack Management Server $ sudo apt-get install cloud-client (3) 將用戶 cloud 加入到 sudo 用戶組 8
  10. 10. CloudStack Installation on Ubuntu CloudStack 默認以 cloud 用戶啟動,但默認會通過 sudo 以 root 身份管理相關文 件與目錄。(上一步安裝時已經做完) (4) 配置 sudo 用戶組免密碼切換 $ sudo vi /etc/sudoers 修改:%sudo ALL=(ALL:ALL) NOPASSWD:ALL (5) 初始化 root 用戶密碼:cloudstack CloudStack 默認需要 root 權限遠程 SSH 連接到 Agent $ sudo -i $passwd 9
  11. 11. CloudStack Installation on Ubuntu (6) 下載 vhd-util 此步驟為安裝超級監督者主機的 XenServer 安裝 $ sudo wget http://download.cloud.com.s3.amazonaws.com/tools/vhd-util (7) 複製 vhd-util(for Ubuntu) $ sudo mv vhd-util /usr/lib/cloud/common/scripts/vm/hypervisor/xenserver/ (8) 安裝資料庫伺服器(mysql) CloudStack 管理伺服器使用 MySQL 資料庫伺服器來儲存資料,當您安裝管理伺 服器到一個節點,您可以在本地直接安裝 MySQL 伺服器,對於安裝多管理伺服 器節點,我們假設 MySQL 資料庫也在不同節點執行 CloudStack 已經測試過 MySQL 5.1 及 5.5,這些版本皆包含在 RHEL/CentOS 及 Ubuntu 中。 $ sudo apt-get install mysql-server  在彈出的界面中輸入密碼:cloudstack 10
  12. 12. CloudStack Installation on Ubuntu 11
  13. 13. CloudStack Installation on Ubuntu  修改 MySQL 配置文件參數 $ sudo vi /etc/mysql/my.cnf 在[mysqld]模塊中加入以下參數 innodb_rollback_on_timeout=1 innodb_lock_wait_timeout=600 max_connections=350 log-bin=mysql-bin binlog-format = 'ROW'  重啟 MySQL $ sudo service mysql restart 12
  14. 14. CloudStack Installation on Ubuntu  初始化資料庫 cloud $ sudo cloud-setup-databases cloud:cloudstack@localhost --deployas=root:cloudstack -e file -m cloudstack -k cloudstack 說明: cloud-setup-databases cloud:<資料庫中 cloud 這個使用者的密碼 >@localhost --deploy-as=root:<Ubuntu 中 root 的密碼> 步驟(5)有設定 Ubunturoot 的密碼。 步驟(8)有設定 MySQL root 的密碼。 (9) 安裝 NFS CloudStack 需要一個地方來存放 Primary 和 Secondary Storage,官方推薦使用 NFS 共享。 $ sudo apt-get install nfs-common nfs-kernel-server  創建目錄 $ sudo mkdir -p /export/primary $ sudo mkdir -p /export/secondary  編輯 NFS 配置文件 13
  15. 15. CloudStack Installation on Ubuntu $ sudo vi /etc/exports 添加如下信息 /export *(rw,async,no_root_squash,no_subtree_check) (,,之間不能有空白) 14
  16. 16. CloudStack Installation on Ubuntu  刷新配置 $ sudo exportfs -a  掛載測試 NFS 共享 $ sudo mkdir /mnt/primary $ sudo mount -t nfs 192.168.132.134:/export/primary /mnt/primary $ sudo mkdir /mnt/secondary $ sudo mount -t nfs 192.168.132.134:/export/secondary /mnt/secondary  執行 df -h 查看 15
  17. 17. CloudStack Installation on Ubuntu  掛載成功,然後輸入 $ sudo vi /etc/fstab 加入 192.168.132.134:/export/primary /mnt/primary nfs rw,tcp,intr 0 1 192.168.132.134:/export/secondary /mnt/secondary nfs rw,tcp,intr 0 1 16
  18. 18. CloudStack Installation on Ubuntu (10) 安裝 kvm 模板 sudo /usr/lib/cloud/common/scripts/storage/secondary/cloud-install-sys-tmplt -m /mnt/secondary -u http://download.cloud.com/templates/acton/actonsystemvm-02062012.qcow2.bz2 -h kvm -F 等待…很久。 安裝成功後顯示: Successfully installed system VM template to /mnt/secondary/template/tmpl/ 1 / 3 / 17
  19. 19. CloudStack Installation on Ubuntu 18
  20. 20. CloudStack Installation on Ubuntu 3. 安裝配置 KVM 虛擬化 Host 主機 (1) 安裝配置 agent $ sudo apt-get install cloud-agent (2) 安裝配置 libvirt 為了具備 live migration 的能力,libvirt 必須傾聽不安全的 TCP 連線,我們也必須 關閉 libvirt 的多重 DNS 廣播,這些設定均在/etc/libvirt/libvirtd.conf 檔案中。 $ sudo vi /etc/libvirt/libvirtd.conf  修改以下配置 listen_tls = 0 listen_tcp = 1 tcp_port = " 16509 " auth_tcp = " none " mdns_adv = 0  然後使用如下命令查看配置 $ cat /etc/libvirt/libvirtd.conf | grep -v '#' | grep -v "^$" 得到的內容如下 19
  21. 21. CloudStack Installation on Ubuntu  然後輸入 $ sudo vi /etc/init/libvirt-bin.conf 修改以下參數 env libvirtd_opts= " -d -l "  還有 $ sudo vi /etc/libvirt/qemu.conf 修改以下參數 vnc_listen = " 0.0.0.0 "  重啟服務 $ sudo service libvirt-bin restart (3) 設定 Security Policies CloudStack 可以被安全機制阻擋,像是 AppArmor(Ubuntu)及 SELinux(RHEL 及 CentOS),停用安全機制以便 Agent 可以正常運作。 20
  22. 22. CloudStack Installation on Ubuntu  設定 Apparmor (Ubuntu)  檢查您的機器是否有 AppArmor,沒有的話請跳過,對於 Ubuntu AppArmor 是預設啟動的,您可以用以下來驗證: $ dpkg --list 'apparmor'  為 libvirt 停用 AppArmor profiles $ ln -s /etc/apparmor.d/usr.sbin.libvirtd /etc/apparmor.d/disable/ $ ln -s /etc/apparmor.d/usr.lib.libvirt.virt-aa-helper /etc/apparmor.d/disable/ $ apparmor_parser -R /etc/apparmor.d/usr.sbin.libvirtd $ apparmor_parser -R /etc/apparmor.d/usr.lib.libvirt.virt-aa-helper (4) 設定防火牆 超級監督者需要能與其他監督者通信,以及管理伺服器必須能接觸超級監督者請 開啟 TCP 通訊埠: 1. 22 (SSH) 2. 1798 21
  23. 23. CloudStack Installation on Ubuntu 3. 16509 (libvirt) 4. 5900 - 6100 (VNC consoles) 5. 49152 - 49216 (libvirt live migration) Ubuntu 預設防火牆為 UFW(Uncomplicated FireWall),執行以下指令來開啟通訊 埠 sudo ufw allow proto tcp from any to any port 22 sudo ufw allow proto tcp from any to any port 80 sudo ufw allow proto tcp from any to any port 1798 sudo ufw allow proto tcp from any to any port 16509 sudo ufw allow proto tcp from any to any port 5900 : 6100 sudo ufw allow proto tcp from any to any port 49152 : 49216 (5) 啟動用戶界面 $ sudo /etc/init.d/tomcat6 stop $ sudo update-rc.d -f tomcat6 remove (6) 啟動 cloud-management $ cd ~ $sudo /etc/init.d/cloud-management restart 通過下面的命令可以看到 8080 為 listen 狀態。 $ netstat -an | grep 8080 22
  24. 24. CloudStack Installation on Ubuntu (7) 輸入 http://{IP}:8080/client/就可以看到 CloudStack 的登錄界面了。  輸入預設帳號密碼 admin/password 使用 admin 和 password 登陸提示用戶名密碼錯誤,查看 log file /var/log/cloud/management/management-server.log  經過檢查原來是 ssh 沒有安裝,輸入 23
  25. 25. CloudStack Installation on Ubuntu $ sudo apt-get install openssh-server  安裝完成後,再重新啟動 tomcat $ sudo /etc/init.d/cloud-management restart  重啟後如果還不能登入,check log 錯誤訊息為 ERROR [cloud.servlet.CloudStartupServlet] (main:null) Exception starting management server com.cloud.utils.exception.CloudRuntimeException: Failed to inject generated public key into systemvm iso sudo: no tty present and no askpass program specifiedSorry, try again.sudo: no tty present and no askpass program specifiedSorry, try again.sudo: no tty present and no askpass program specifiedSorry, try again.sudo: 3 incorrect password attemptsmkdir …  再執行下面指令 $ cloud-setup-management 應該就可以成功登入了 24
  26. 26. CloudStack Installation on Ubuntu 五、本文的引用網址: 1. http://www.cnblogs.com/skyme/p/3135458.html 2. http://jimmy1p4204.pixnet.net/blog/post/47762506 3. http://heylinux.com/archives/2093.html 4. http://mail-archives.apache.org/mod_mbox/cloudstack-userscn/201305.mbox/%3C1591592029.139555.1367490890710.JavaMail.root@zmbx1.s ysu.edu.cn%3E 5. http://cloudstack.apache.org/docs/zh-TW/Apache_CloudStack/4.1.0/htmlsingle/Developers_Guide/index.html#deployment-architecture-overview 6. cloudstack4.0.1 安装遇到的问题和解决方法 http://www.cloudstack-china.org/2013/10/2063.html 25
  27. 27. CloudStack Installation on Ubuntu 26

×