openstack 常用命令总结
openstack-service restart #重启openstack服务
openstack endpoint list #查看openstack的端口
openstack catalog list #列出认证服务目录
openstack project list # 查看项目列表
openstack user list # 查看用户列表
openstack role list # 查看角色列表
以下三条命令,把project换作user、role同样的作用 openstack project create --description 'demo project ' demo #创建项目
openstack project set ID --disable/enable/ #设置项目id禁用或开机自启
openstack project delete ID #删除项目
---------------------------------------
openstack service list #查询openstack服务列表
openstack domain list #查询openstack domain列表
openstack host list #查看openstack环境主机列表
openstack port list #查看port信息
openstack compute service list #查询计算节点
openstack server list #查询vm列表
openstack server list --host=计算节点 #查询该计算节点上面的vm
openstack server show $vmName #查看vm的详细信息
openstack network list #查询可用网络信息
openstack flavor list #查询可用的实例规格
openstack flavor create --ram 512 --disk 1 --vcpus 1 m1.tiny #创建flavor规格m1.tiny
openstack image list #查询可用镜像
openstack security group list #查询可用的安全组
openstack security group rule list default #查询default安全组的规则
openstack keypair list #查询可用的秘钥对
openstack volume list #查询可用的卷组
openstack server start NAME #启动vm
openstack server stop NAME #关闭vm
openstack server reboot SERVER #软重启,软重启试图优雅的关机并重启实例
openstack server reboot --hard SERVER #硬重启,硬重启则是直接对实例实施电源的拔插
openstack server delete NAME #删除vm
--------------------------------------------------------------------
调整vm大小规格
$ openstack server resize NAME FLAVOR
$ openstack server resize my-pem-server m1.small
$ openstack server resize --confirm my-pem-server1
################################################################################
### nova的常用命令 ###
nova list #列举当前用户所有虚拟机
nova list --all-t #查询所有虚拟机
nova list --host 计算节点 --all-tenants #查看此节点所有虚机
nova host-list #查询计算节点
nova show ID #列举某个虚机的详细信息
nova delete ID #直接删除某个虚机
nova service-list #获取所有服务列表
nova image-list #获取镜像列表
nova flavor-list #查看当前可以创建的实例类型
nova secgroup-list #查看当前存在的安全组
nova keypair-list #查看当前存在的密钥
nova volume-list #列举所有云硬盘
nova volume-show #显示指定云硬盘的详细信息
nova console-log cirros #查看实例cirros的启动日志信息
nova volume-create #创建云硬盘
nova volume-delete #删除云硬盘
nova volume-snapshot-create #创建云硬盘快照
nova volume-snapshot-delete #删除云硬盘快照
nova live-migration ID node #热迁移
nova migrate ID node #冷迁移
nova migration-list #列出迁移列表
nova get-vnc-console ID novnc #获取虚机的vnc地址
nova reset-state --active ID # 重置虚拟机状态
nova delete <serverName-Or-Id> # 删除一个虚拟机
nova stop <serverName-Or-Id> # 关闭虚拟机
nova reboot <serverName-Or-Id> # 软重启虚拟机
nova reboot --hard <serverName-Or-Id> # 硬重启虚拟机
-------------------------------------------------------------
nova-manage vm list #查看实例位置
nova-manage service list #查询当前启动的Compute服务状态
nova-manage version #查询当前安装软件的版本
nova-manage vm list #列出所有的实例状态,可以看到实例所在的计算节点和实例状态
nova-manage host list #列出当前主机的信息
#########################################################################
### neutron常用命令 ###
neutron agent-list #列举所有的agent
neutron agent-show ID #显示指定agent信息
neutron port-list #查看端口列表
neutron port-show ID #查看该端口详细信息
neutron net-list #列出当前租户所有网络
neutron net-list --all-tenants #列出所有租户所有网络
neutron net-show ID #查看一个网络的详细信息
neutron net-delete ID #删除一个网络
neutron subnet-list #查询子网
neutron security-group-list #查询安全组
neutron security-group-rule-list #查询安全组规则
#########################################################################
### cinder 命令 ###
cinder list #显示存储卷列表
cinder type-list #显示存储卷类型列表
cinder create --name test --image-id IMAGE_ID SIZE_IN_GB #创建基于镜像的块设备
cinder delete ID #删除卷 cinder force-delete ID #强制删除卷 cinder show volume_ID #显示存储卷信息
#########################################################################
###ip netns 命令
ip netns #查看命名空间
ip netsn exec haproxy ip a #查看haproxy的ip
ip netns exec NETNS_NAME ssh USER@SERVER
ip netns exec qdhcp-6021a3b4-8587-4f9c-8064-0103885dfba2 ssh cirros@10.0.0.2
#########################################################################
=====================================================================================
######创建vm命令
1、执行下列命令获取相关参数信息
nova flavor-list #获取到可用的flavor名称
nova image-list #获取到可用的image名称
nova network-list 或neutron net-list #获取到可用的网络id
nova secgroup-list #获取到可用的安全组id
nova keypair-list #获取到可用的秘钥keypair名称
nova service-list #获取到可用的获取coompute的主机名和zone名称
2、执行创建命令创建vm
nova boot --flavor m1.large \ #flavor名字
--image xuy-Snapshot \ #镜像名称
--nic net-id=bd0e166f-ecb4-4650-a715-32e7ca1fbecf \
--security-groups f7f2eef3-bf34-49a2-a2e9-c8f12ec19973 \ #安全组ID
--availability-zone nova:B-OPS-9-3 \ #在指定的区域:主机名启动instance
--key-name octavia_ssh_key \ #KEY名字
test1 #新建虚拟机的名字
openstack server create --flavor m1.large \ #flavor名字
--image xuy-Snapshot \ #镜像名称
--nic net-id=bd0e166f-ecb4-4650-a715-32e7ca1fbecf \
--security-groups f7f2eef3-bf34-49a2-a2e9-c8f12ec19973 \ #安全组ID
--availability-zone nova:B-OPS-9-3 \ #在指定的区域:主机名启动instance
--key-name octavia_ssh_key \ #KEY名字
test2 #新建虚拟机的名字
openstack server create --flavor m1.large --image alinux-0704 --availability-zone nova:compute1\
--nic net-id=ad31b182-0d35-45a9-8eb7-5e741a474a2d --security-group default \
--key-name mykey dzw-ops01
#########################################################################
### 创建flavor命令
1、openstack命令
openstack flavor list #查询现有的flavor
openstack flavor delete 6 #删除id为6的flavor
openstack flavor create --ram 512 --disk 1 --vcpus 1 m1.tiny #创建名为m1.tiny的flavor规格
2、nova命令
nova flavor-list #查询现有的flavor
nova flavor-delete 6 #删除id为6的flavor
nova flavor-create --is-public true time-flavor 6 2048 20 4 #增加flavor
注意,--is-public是指是否是一个公共使用的flavor, 用true, false表示,time-flavor是你创建的flavor的名字,6是前面使用nova flavor-list获得的flavor列表+1,2048是这个flavor的内存,单位为MB,20是磁盘大小,单位是GB,4是虚拟CPU数目。执行完成后再使用nova flavor-list,将看到之前创建的镜像
#########################################################################
###创建image
1、openstack命令
openstack image list #列出您可以访问的镜像
openstack image delete 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
2、glance命令
glance image-list #列出您可以访问的镜像
glance image-create --name cirros \
--disk-format qcow2 \
--container-format bare --progress \
--file /tmp/cirros-0.3.4-x86_64-disk.img
#########################################################################
###创建network
neutron net-list #查询可用的network
openstack network list #查询可用的network
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
创建网络:
openstack network create --share \
--provider-physical-network public \
--provider-network-type flat public
创建子网:
openstack subnet create --network public \
--allocation-pool start=192.168.56.100,end=192.168.56.200 \
--dns-nameserver 192.168.56.2 --gateway 192.168.56.2 \
--subnet-range 192.168.56.0/24 public-subnet
#########################################################################
###创建安全组
1、openstack命令
nova secgroup-list #查看现有的安全组
openstack security group list #查看现有的安全组
openstack security group create SECURITY_GROUP_NAME --description GROUP_DESCRIPTION #创建有指定名称和描述的安全组
openstack security group delete SECURITY_GROUP_NAME #删除指定的安全组
openstack security group rule list SECURITY_GROUP_NAME #列出安全组规则
openstack security group rule delete RULE_ID #删除安全组规则
2、neutron命令
neutron security-group-list #查看现有的安全组
neutron security-group-create test #创建安全组
neutron security-group-delete test #删除安全组
neutron security-group-rule-show ruleID #查看安全组规则
在默认的安全组中,添加ping和SSH规则:
openstack security group rule create SECURITY_GROUP_NAME --protocol tcp --dst-port 22:22 --remote-ip 0.0.0.0/0
openstack security group rule create --protocol icmp SECURITY_GROUP_NAME
#########################################################################
###创建秘钥对
1、你可以生成一个秘钥对或上传一个现有的公钥,如果要生成一个密钥对,运行命令
openstack keypair create KEY_NAME > MY_KEY.pem
chmod 600 MY_KEY.pem
(注:这个命令生成一个你指定名为KEY_NAME的秘钥对,将私钥写入指定的”.pem”文件里,且为Nova数据库注册公钥)
2、如果你已经生成一个密钥对且公钥位于”~/.ssh/id_rsa.pub”里面,那么运行以下命令上传公钥
openstack keypair create --public-key ~/.ssh/id_rsa.pub KEY_NAME
(注:该命令将公钥记录在Nova数据库里且密钥对的名字命名为你指定的“KEY_NAME”)
###创建指定名称和描述的安全组
openstack security group create SECURITY_GROUP_NAME --description GROUP_DESCRIPTION
##删除指定的安全组
openstack security group delete SECURITY_GROUP_NAME
###创建存储卷
cinder create --display-name VOLNAME SIZE(SIZE的单位为GB)
cinder create --display-name mpaas-app-1 300
#########################################################################
openstack port list 或neutron port-list #查看port信息
openstack port show a4c5a026-bd4b-4517-99f0-3e3448ee9259
neutron port-show 1b35527b-a437-414f-b171-8f79a08b941b
neutron port-update 58e69a28-320f-4713-b66f-963697587261 --allowed_address_pairs list=true type=dict ip_address=11.164.144.130 ip_address=11.164.144.131 ip_address=11.164.144.132 ip_address=11.164.144.133
neutron port-update fa0d78fa-6546-4df4-b946-55207796749d --port-security-enabled=True
#######关闭openstack环境的节点防火墙
vi /etc/neutron/plugins/ml2/linuxbridge_agent.ini
systemctl restart neutron-linuxbridge-agent.service
iptables -t raw -F
iptables -t filter -F
iptables -t nat -F
iptables -t managle -F
ebtables -t filter -F