20141216

出自 NCUCCWiki
於 2014年12月10日 (三) 06:19 由 F523136 (對話 | 貢獻) 所做的修訂
前往: 導覽搜尋

★OpenStack雲端虛擬主機服務介紹與操作講義:
檔案:20141216.pptx

★練習網址:
https://140.115.17.183/horizon/

★PuTTY下載:
http://the.earth.li/~sgtatham/putty/latest/x86/putty.exe

★API指令:
一、Ubuntu設定、更新並下載套件
1. 增加本機名稱
$ sudo vim /etc/hosts
127.0.0.1 localhost
127.0.1.1 ubuntu14

2. 增加DNS server(此步可省略)
$ sudo vim /etc/resolv.conf
nameserver 140.115.1.31

3. 更新系統
$ sudo apt-get update
$ sudo apt-get upgrade

4. 使用root身分
$ sudo -s

5. 安裝openstack api client端套件
# apt-get install -y python-keystoneclient
# apt-get install -y python-glanceclient
# apt-get install -y python-neutronclient
# apt-get install -y python-novaclient
# apt-get install -y python-cinderclient

二、設定環境變數
1. 改回一般user身分
# exit或按ctrl-D

2. 編輯.openrc檔案 ,設定環境變數
$ vim .openrc
export OS_USERNAME=center65
export OS_PASSWORD=center65
export OS_TENANT_NAME=center65-project
export OS_AUTH_URL=http://140.115.17.183:5000/v2.0

$ source .openrc


三、網路資訊及設定
1. 查看網路、子網路、路由器
$ neutron net-list
$ neutron subnet-list
$ neutron router-list

2. 產生網路、子網路、路由器
$ neutron net-create my-net
$ neutron subnet-create --name my-subnet --dns-nameserver 8.8.8.8 my-net 10.5.5.0/24
$ neutron router-create my-router

3. my-router加入內部網路卡介面
$ neutron router-interface-add my-router my-subnet

4. 查看外網
$ neutron net-external-list

5. my-router設定外網閘道
$ neutron router-gateway-set my-router cloud-net

6. 查看my-router路由器網路卡介面
$ neutron router-port-list my-router

四、建立虛擬機前的準備動作
1. 查看有哪些樣版
$ nova flavor-list

2. 查看有哪些映像檔
$ glance image-list

3. 查看有哪些密鑰對
$ nova keypair-list

4. 產生公鑰(前面有講解過)
$ ssh-keygen

5. 新增密鑰對
$ nova keypair-add --pub-key ~/.ssh/id_rsa.pub my-key

6. 查看安全性群組
$ nova secgroup-list

7. 新增allow-remote安全群組
$ nova secgroup-create allow-remote "Allow SSH/RDP"

8. 允許22與3389port通過防火牆
$ nova secgroup-add-rule allow-remote tcp 22 22 0.0.0.0/0
$ nova secgroup-add-rule allow-remote tcp 3389 3389 0.0.0.0/0

五、建立虛擬機
1. 指令
$ nova boot --flavor m1.small --image ubuntu-14.04-x86_64 \
--security-groups allow-remote \
--key-name my-key \
--nic net-id=$(nova net-list | awk '/ my-net / { print $2 }') \
my-instance

2. 寫成一行
$ nova boot --flavor m1.small --image ubuntu-14.04-x86_64 --security-groups allow-remote --key-name my-key --nic net-id=$(nova net-list | awk '/ my-net / { print $2 }') my-instance

六、取得IP
1. 查看有哪些浮動IP
$ neutron floatingip-list

2. 取得IP
$ neutron floatingip-create cloud-net

3. 將剛才要的浮動IP,與instance聯結
$ nova floating-ip-associate my-instance 140.115.0.30

七、新增儲存空間
1. 查看有哪些儲存空間
$ cinder list
$ cinder quota-show $(keystone token-get | awk '/ tenant_id / { print $4 }')

2. 新增儲存空間
$ cinder create --display-name='vdisk' 1

3. 掛載儲存空間
$ nova volume-attach my-instance xxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxx(識別號)

八、查詢開啟虛擬機console的url
$ nova get-vnc-console my-instance novnc

九、透過sprac主機遠端連線
ssh ubuntu@140.115.0.30

十、其他補充
1. 可以查看更多指令
$ nova help|more

2. 查看有哪些instance
$ nova list

3. instance 停止
$ nova pause my-instance