天天看點

OpenStack 指令行速查表(轉載)

原文位址 docs.openstack.org

這是可供參考的常用指令清單

認證 (keystone)¶

列出所有的使用者

列出認證服務目錄

鏡像(glance)¶

列出您可以通路的鏡像

删除指定的鏡像

$ openstack image delete IMAGE
           

描述一個指定的鏡像

$ openstack image show IMAGE
           

更新鏡像

$ openstack image set IMAGE
           

上傳核心鏡像

$ openstack image create "cirros-threepart-kernel" \
  --disk-format aki --container-format aki --public \
  --file ~/images/cirros-0.3.5-x86_64-kernel
           

上傳 RAM 鏡像

$ openstack image create "cirros-threepart-ramdisk" \
  --disk-format ari --container-format ari --public \
  --file ~/images/cirros-0.3.5-x86_64-initramfs
           

上傳第三方鏡像

$ openstack image create "cirros-threepart" --disk-format ami \
  --container-format ami --public \
  --property kernel_id=$KID-property ramdisk_id=$RID \
  --file ~/images/cirros-0.3.5-x86_64-rootfs.img
           

注冊 raw 鏡像

$ openstack image create "cirros-raw" --disk-format raw \
  --container-format bare --public \
  --file ~/images/cirros-0.3.5-x86_64-disk.img
           

計算 (nova)¶

列出執行個體,核實執行個體狀态

列出鏡像

Create a flavor named m1.tiny

$ openstack flavor create --ram 512 --disk 1 --vcpus 1 m1.tiny
           

列出規格類型

用類型和鏡像名稱 (如果名稱唯一) 來啟動雲主機

$ openstack server create --image IMAGE --flavor FLAVOR INSTANCE_NAME
$ openstack server create --image cirros-0.3.5-x86_64-uec --flavor m1.tiny \
  MyFirstInstance
           

Log in to the instance (from Linux)

注解

The ip command is available only on Linux. Using ip netns provides your environment a copy of the network stack with its own routes, firewall rules, and network devices for better troubleshooting.

# ip netns
# ip netns exec NETNS_NAME ssh USER@SERVER
# ip netns exec qdhcp-6021a3b4-8587-4f9c-8064-0103885dfba2 \
  ssh [email protected]
           

In CirrOS, the password for user

cirros

is

cubswin:)

. For any other operating system, use SSH keys.

Log in to the instance with a public IP address (from Mac)

$ ssh [email protected]
           

顯示執行個體詳細資訊

$ openstack server show NAME
$ openstack server show MyFirstInstance
           

檢視雲主機的控制台日志

$ openstack console log show MyFirstInstance
           

設定雲主機的中繼資料

$ nova meta volumeTwoImage set newmeta='my meta data'
           

建立一個執行個體快照

$ openstack image create volumeTwoImage snapshotOfVolumeImage
$ openstack image show snapshotOfVolumeImage
           

執行個體的暫停、挂起、停止、救援、調整規格、重建、重新開機 ¶

暫停

$ openstack server pause NAME
$ openstack server pause volumeTwoImage
           

取消挂起

$ openstack server unpause NAME
           

挂起

$ openstack server suspend NAME
           

Unsuspend

$ openstack server resume NAME
           

關機

$ openstack server stop NAME
           

開始

$ openstack server start NAME
           

恢複

$ openstack server rescue NAME
$ openstack server rescue NAME --rescue_image_ref RESCUE_IMAGE
           

調整大小

$ openstack server resize NAME FLAVOR
$ openstack server resize my-pem-server m1.small
$ openstack server resize --confirm my-pem-server1
           

重建

$ openstack server rebuild NAME IMAGE
$ openstack server rebuild newtinny cirros-qcow2
           

重新開機

$ openstack server reboot NAME
$ openstack server reboot newtinny
           

将使用者資料和檔案注入到執行個體

$ openstack server create --user-data FILE INSTANCE
$ openstack server create --user-data userdata.txt --image cirros-qcow2 \
  --flavor m1.tiny MyUserdataInstance2
           

使用 ssh 連接配接到執行個體,檢視

/var/lib/cloud

驗證檔案是否成功注入

給執行個體注入一個密鑰對并通過密鑰對來通路執行個體

建立秘鑰對

$ openstack keypair create test > test.pem
$ chmod 600 test.pem
           

啟動執行個體

$ openstack server create --image cirros-0.3.5-x86_64 --flavor m1.small \
  --key-name test MyFirstServer
           

使用 ssh 連接配接到執行個體

# ip netns exec qdhcp-98f09f1e-64c4-4301-a897-5067ee6d544f \
  ssh -i test.pem [email protected]
           

管理安全組

在預設的安全組中,添加 ping 和 SSH 規則

$ openstack security group rule create default \
    --remote-group default --protocol icmp
$ openstack security group rule create default \
    --remote-group default --dst-port 22
           

網絡 (neutron)¶

建立網絡

$ openstack network create NETWORK_NAME
           

建立子網

$ openstack subnet create --subnet-pool SUBNET --network NETWORK SUBNET_NAME
$ openstack subnet create --subnet-pool 10.0.0.0/29 --network net1 subnet1
           

塊存儲 (cinder)¶

用于管理連接配接到執行個體的卷和卷快照。

建立一個新卷

$ openstack volume create --size SIZE_IN_GB NAME
$ openstack volume create --size 1 MyFirstVolume
           

啟動執行個體并将它連結到卷上

$ openstack server create --image cirros-qcow2 --flavor m1.tiny MyVolumeInstance
           

列出所有卷,注意卷狀态

當執行個體為正常狀态且卷為可用狀态時,将卷連接配接到執行個體。

$ openstack server add volume INSTANCE_ID VOLUME_ID
$ openstack server add volume MyVolumeInstance 573e024d-5235-49ce-8332-be1576d323f8
           

在 Xen Hypervisor 可以指定具體的裝置名,而不使用自動配置設定的名稱,例如:

$ openstack server add volume --device /dev/vdb MyVolumeInstance 573e024d..1576d323f8
This is not currently possible when using non-Xen hypervisors with OpenStack.
           

登陸進執行個體之後管理卷組

列出存儲器

在卷上建立檔案系統

建立一個挂載點

在挂載點挂載卷

# mount /dev/vdb /myspace
           

在卷上建立一個檔案

# touch /myspace/helloworld.txt
# ls /myspace
           

解除安裝卷

對象存儲 (Swift)¶

展示賬戶,容器以及對象的資訊

$ swift stat
$ swift stat ACCOUNT
$ swift stat CONTAINER
$ swift stat OBJECT
           

列出容器

$ swift list