OpenStack command-line interface cheat sheet
2015-06-06 13:45
387 查看
OpenStack command-line interface cheat sheet
Here is a list of common commands for reference.Identity (keystone)
List all users$ keystone user-list
List Identity service catalog
$ keystone catalog
Images (glance)
List images you can access$ glance image-list
Delete specified image
$ glance image-delete IMAGE
Describe a specific image
$ glance image-show IMAGE
Update image
$ glance image-update IMAGE
Upload kernel image
$ glance image-create --name "cirros-threepart-kernel" \ --disk-format aki --container-format aki --is-public False \ --file ~/images/cirros-0.3.1~pre4-x86_64-vmlinuz
Upload RAM image
$ glance image-create --name "cirros-threepart-ramdisk" \ --disk-format ari --container-format ari --is-public False \ --file ~/images/cirros-0.3.1~pre4-x86_64-initrd
Upload three-part image
$ glance image-create --name "cirros-threepart" --disk-format ami \ --container-format ami --is-public False \ --property kernel_id=$KID-property ramdisk_id=$RID \ --file ~/images/cirros-0.3.1~pre4-x86_64-blank.img
Register raw image
$ glance image-create --name "cirros-qcow2" --disk-format qcow2 \ --container-format bare --is-public False \ --file ~/images/cirros-0.3.1~pre4-x86_64-disk.img
Compute (nova)
List instances, check status of instance$ nova list
List images
$ nova image-list
List flavors
$ nova flavor-list
Boot an instance using flavor and image names (if names are unique)
$ nova boot --image IMAGE --flavor FLAVOR INSTANCE_NAME $ nova boot --image cirros-0.3.1-x86_64-uec --flavor m1.tiny \ MyFirstInstance
Login to instance
# ip netns # ip netns exec NETNS_NAME ssh USER@SERVER # ip netns exec qdhcp-6021a3b4-8587-4f9c-8064-0103885dfba2 \ ssh cirros@10.0.0.2
Note
In CirrOS the password for user cirros is “cubswin:)” without the quotes.
Show details of instance
$ nova show NAME $ nova show MyFirstInstance
View console log of instance
$ nova console-log MyFirstInstance
Set metadata on an instance
$ nova meta volumeTwoImage set newmeta='my meta data'
Create an instance snapshot
$ nova image-create volumeTwoImage snapshotOfVolumeImage $ nova image-show snapshotOfVolumeImage
Pause, suspend, stop, rescue, resize, rebuild, reboot an instance
Pause$ nova pause NAME $ nova pause volumeTwoImage
Unpause
$ nova unpause NAME
Suspend
$ nova suspend NAME
Unsuspend
$ nova resume NAME
Stop
$ nova stop NAME
Start
$ nova start NAME
Rescue
$ nova rescue NAME $ nova rescue NAME --rescue_image_ref RESCUE_IMAGE
Resize
$ nova resize NAME FLAVOR $ nova resize my-pem-server m1.small $ nova resize-confirm my-pem-server1
Rebuild
$ nova rebuild NAME IMAGE $ nova rebuild newtinny cirros-qcow2
Reboot
$ nova reboot NAME $ nova reboot newtinny
Inject user data and files into an instance
$ nova boot --user-data FILE INSTANCE $ nova boot --user-data userdata.txt --image cirros-qcow2 \ --flavor m1.tiny MyUserdataInstance2
To validate that the file was injected, use ssh to connect to the instance, and look in /var/lib/cloud for the file.
Inject a keypair into an instance and access the instance with that keypair
Create keypair
$ nova keypair-add test > test.pem $ chmod 600 test.pem
Start an instance (boot)
$ nova boot --image cirros-0.3.0-x86_64 --flavor m1.small \ --key_name test MyFirstServer
Use ssh to connect to the instance
# ip netns exec qdhcp-98f09f1e-64c4-4301-a897-5067ee6d544f \ ssh -i test.pem cirros@10.0.0.4
Manage security groups
Add rules to default security group allowing ping and SSH between instances in the default security group
$ nova secgroup-add-group-rule default default icmp -1 -1 $ nova secgroup-add-group-rule default default tcp 22 22
Networking (neutron)
Create network$ neutron net-create NAME
Create a subnet
$ neutron subnet-create NETWORK_NAME CIDR $ neutron subnet-create my-network 10.0.0.0/29
外部网络
命令在controller中运行,受限source keystonerc_admin
创建网络neutron net-create ext-net --router:external True \ --provider:physical_network external --provider:network_type flat
创建子网
分配的Floating IP为192.168.8.205~210,网关是192.168.8.254,网段掩码:192.168.8.0/24
neutron subnet-create ext-net --name ext-subnet2 \ --allocation-pool start=192.168.8.205,end=192.168.8.210 \ --disable-dhcp --gateway 192.168.8.254 192.168.8.0/24
租户网络
测试普通租户能够正常建立网络, 先source keystonerc_demo
创建租户网(默认使用DHCP)neutron net-create demo-net
创建租户子网
网段和掩码都可以自定义(需要网关和掩码)
neutron subnet-create demo-net –name demo-subnet \ –gateway 192.168.1.1 192.168.1.0/24
创建路由器连接外网和租户网
创建租户路由器neutron router-create demo-router
路由器绑定租户网
neutron router-interface-add demo-router demo-subnet
路由器绑定外部网
neutron router-gateway-set demo-router ext-net
Block Storage (cinder)
Used to manage volumes and volume snapshots that attach to instances.Create a new volume
$ cinder create SIZE_IN_GB --display-name NAME $ cinder create 1 --display-name MyFirstVolume
Boot an instance and attach to volume
$ nova boot --image cirros-qcow2 --flavor m1.tiny MyVolumeInstance
List volumes, notice status of volume
$ cinder list
Attach volume to instance after instance is active, and volume is available
$ nova volume-attach INSTANCE_ID VOLUME_ID auto $ nova volume-attach MyVolumeInstance /dev/vdb auto
Manage volumes after login into the instance
List storage devices
# fdisk -l
Make filesystem on volume
# mkfs.ext3 /dev/vdb
Create a mountpoint
# mkdir /myspace
Mount the volume at the mountpoint
# mount /dev/vdb /myspace
Create a file on the volume
# touch /myspace/helloworld.txt # ls /myspace
Unmount the volume
# umount /myspace
Object Storage (swift)
Display information for the account, container, or object$ swift stat $ swift stat ACCOUNT $ swift stat CONTAINER $ swift stat OBJECT
List containers
$ swift list
相关文章推荐
- 基于日志的Openstack的故障监控
- Linux 下鼠标对应的文件
- linux-进程监控
- Win7下安装Hadoop
- php-wamp滴定仪网站的根目录
- 用函数fopen_s打开数据文件
- 大型网站技术架构
- 学习docker
- shell变量详解
- OpenCms 9.5.1 新建一个站点
- Centos的安装
- Tomcat学习之Wrapper
- 《Unix环境高级编程第3版》apue.3e在Linux上无法安装的问题
- window nginx 启动无提示错误,却没有listen 80端口
- ecshop、织梦、discuz、wordpress比较
- TopCoder SRM 660 Div2 Problem 500 - PrivateD2party (贪心)
- 21讲项目实战CMS-wordpress主题网站模板制作
- 30讲项目实战:网站面包屑导航+表单功能开发
- 28讲项目实战:网站搜索功能+单页面开发
- 29讲项目实战:404页面制作+网站友情链接调用