美文网首页OpenStack
OpenStack命令行cheat sheet

OpenStack命令行cheat sheet

作者: 廖马儿 | 来源:发表于2017-07-07 23:17 被阅读86次

    Identity(keystone)

    列出users:

    openstack user list   # 从某个版本开始,keystone使用openstack代替
    

    列出身份认证服务目录:

    openstack catalog list
    

    镜像(glance):

    列出能够访问到的镜像:

    openstack image list  
    

    删除镜像:

    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):

    列表实例,检查实例的状态:

    openstack server list
    

    列出镜像:

    openstack image list
    

    创建一个名为m1.tiny的flavors:

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

    列出flavors:

    openstack flavor list
    

    使用flavors和镜像启动实例(如果名称是唯一的):

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

    登录到实例(下面是linux示例):

    # 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
    

    注意:In CirrOS, the password for user cirros is cubswin:). For any other operating system, use SSH keys.

    登录到实例:

    ssh cloud-user@128.107.37.150
    

    显示实例的细节:

    $ openstack server show NAME
    $ openstack server show MyFirstInstance
    

    查看实例的console log:

    $ 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
    

    取消挂起实例:

    $ openstack server resume NAME
    

    停止实例:

    $ openstack server stop NAME
    

    开启实例:

    $ openstack server start NAME
    

    rescue实例:

    $ 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 cirros@10.0.0.4
    

    管理安全组:
    向默认安全组添加规​​则,允许在默认安全组中的实例之间执行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):

    创建一个卷(volume):

    $ 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 volume list
    

    启动实例之后,给实例添加卷:

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

    注意:在Xen管理程序上,可以提供特定的设备名称而不是自动分配。

    $ openstack server add volume --device / dev / vdb MyVolumeInstance 573e024d..1576d323f8
    在OpenStack中使用非Xen虚拟机管理程序时,目前不可能。
    

    登录到实例后管理卷:
    列出存储设备

    # fdisk -l
    

    给卷做文件系统(格式化):

    # mkfs.ext3 /dev/vdb
    

    创建一个挂载点:

    # mkdir /myspace
    

    挂载卷到挂载点上:

    # mount /dev/vdb /myspace
    

    创建一个文件在卷上:

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

    取消挂载:

    # umount /myspace
    

    相关文章

      网友评论

        本文标题:OpenStack命令行cheat sheet

        本文链接:https://www.haomeiwen.com/subject/ypprhxtx.html