安裝OpenStack並建置虛擬機 **1.緣由**: 雲端技術實務課程作業需求 **2.系統簡介**: 在ubuntu上安裝openstack並建置虛擬機器 **3.安裝過程**: 依照上課投影片內容 * 讓系統更新 輸入**sudo apt-get update** 輸入**sudo apt-get upgrade -y** * 為系統創建新增一個叫stack的新用戶 輸入**sudo useradd -s /bin/bash -d /opt/stack -m stack** 輸入**echo “stack ALL=(ALL) NOPASSWD: ALL” | sudo tee /etc/sudoers.d/stack** (使stack這個用戶可以有root的權限,並且不用密碼也能運行) * 登入stack用戶 輸入**sudo su - stack** * 安裝git套件 輸入**sudo apt-get install -y git** * 從儲存庫clone devstack到系統裡 輸入**git clone https://git.openstack.org/openstackdev/devstack** * 進到devstack資料夾中 輸入**cd devstack** * 查自己的IP 輸入**ifconfig (or ip addr show)** * 用vim建立一個叫local.conf的文件 輸入**vim local.conf** * 文件要打的內容為以下 [[local|localrc]] #Password for KeyStone, Database, RabbitMQ and Service ADMIN_PASSWORD=StrongAdminSecret DATABASE_PASSWORD= $ADMIN_PASSWORD RABBIT_PASSWORD= $ADMIN_PASSWORD SERVICE_PASSWORD= $ADMIN_PASSWORD #Host IP - get your Server/VM IP address from ip addr command HOST_IP=填入剛剛查到的IP * 安裝openstack 輸入**./stack.sh** * 用**http://"your ip"/dashboard 登入openstack** * source opencr必須在shell中(跳出警告請忽略它) 輸入**source opencr** * 下載virtual image 輸入**wget http://download.cirroscloud.net/0.5.2/cirros-0.5.2-x86_64-disk.img** * 上傳virtual image到Glance 輸入**openstack image create** **-container-format bare** **–disk-format qcow2** **–file cirros-0.5.2-x86_64-disk.img** **-Cirros-0.5.2** * 確認virtual image上傳成功 輸入**openstack image list** 下面步驟參考http://godleon.blogspot.com/2014/10/openstack-ubuntu-1404-6-vm.html * 產生金鑰 輸入**ssh-keygen** ![](https://i.imgur.com/9WTlgrl.png) * 將生成的金鑰家道openstack環境中,並設定為admin-key 輸入**nova keypair-add --pub-key /opt/stack/.ssh/id_rsa.pub admin-key** * 確認公開金鑰已匯入openstack 輸入**nova keypair-list** ![](https://i.imgur.com/5IFDL6n.png) * 這邊使用m1.tiny 輸入**openstack flavor list** ![](https://i.imgur.com/oqwTjno.png) * 這邊使用cirros-0.5.2-x86_64-disk ![](https://i.imgur.com/WUHL3kM.png) 輸入**neutron net-list** ![](https://i.imgur.com/eFsGhCq.png) * 這邊使用shared name 輸入**openstack security group list** ![](https://i.imgur.com/RiDcWIb.png) * 輸入下圖的指令以啟動VM instance ![](https://i.imgur.com/3obZxzd.png) * 完成後,nova scheduler會找到合適compute node來啟動VM instance * 檢查VM instance狀態 輸入**nova list** ![](https://i.imgur.com/2j3xTZ9.png) 輸入**nova get-vnc-console "your instance's name" novnc** ![](https://i.imgur.com/5QZJNUU.png) * 拿到上圖的網址之後,就能透過網頁瀏覽器以noVNC連線到VM instance。 * 登入 輸入**hostname** ![](https://i.imgur.com/QxxVn0K.png) **可以看到hostname為自己的學號** **4.結論** 這次作業除了上課投影片之外還需要額外上網查資料才能實作,更不用說遠距之後實作又更麻煩了。