分享

使用openstack,经常使用一些命令,但是又经常忘记,这里整理了一下

nettman 发表于 2014-3-5 01:45:11 [显示全部楼层] 回帖奖励 阅读模式 关闭右栏 11 72327
在openstack中,我们经常使用一些命令,但是这些命令用起来的经常忘记:比如:
如何查看keystone用户?
如何查看服务?
如何查看keystone进程?
如何查看那是否有错误日志?
如何查看image具体信息?
如何创建密钥?
nova keypair-add oskey > oskey.priv?命令的作用是什么?
如何申请floating IP?
如何查看虚拟机配置种类?
完成创建虚拟机流程是什么?
如何查看申请floating IP列表?
如何创建snapshot?
如何查看虚拟机里的volume情况?


加微信w3aboutyun,可拉入技术爱好者群

已有(11)人评论

跳转到指定楼层
nettman 发表于 2014-3-5 01:55:57
查看rabbitmq 队列
  1. rabbitmqctl list_queues
复制代码
查看keystone的用户
  1. keystone user-list
复制代码
查看keystone endpoint
  1. keystone endpoint-list
复制代码
查看keystone的role

  1. keystone role-list
复制代码
查看keystone 服务
  1. keystone service-list
复制代码
查看keystone租户
  1. keystone tenant-list
复制代码
查看租户情况
  1. keystone tenant-get ID
复制代码
查看keystone进程
  1. ps -ef | grep -i keystone-all
复制代码
查看日志是否有错误
  1. grep ERROR /var/log/keystone/keystone.log
复制代码
上传image
  1. glance add name="Ubuntu 12.04 cloudimg amd64" is_public=true container_format=ovf \
  2. disk_format=qcow2 < /root/precise-server-cloudimg-amd64-disk1.img
复制代码
查看image
  1. glance index
复制代码
nova 命令查看image
  1. nova image-list
复制代码
查看image具体信息(ID是通过 glance index 查看获得)
  1. glance show ID
复制代码
查看nova 服务
  1. nova-manage service list
复制代码
创建密钥
  1. nova keypair-add oskey > oskey.priv
  2. chmod 600 oskey.priv
复制代码
申请floating IP
  1. nova floating-ip-create
复制代码
安全组相关命令
  1. nova secgroup-add-rule default tcp 22 22 0.0.0.0/0
  2. nova secgroup-add-rule default icmp -1 -1 0.0.0.0/0
  3. nova secgroup-list
  4. nova secgroup-list-rules default
复制代码
查看虚拟机配置种类
  1. nova flavor-list
复制代码
创建虚拟机(一个test的虚拟机)
  1. nova boot --flavor 2 --key_name oskey --image ea3ffba1-065e-483f-bfe2-c84184ee76be test1
复制代码
完整创建一个虚拟机的流程
  1. nova keypair-add oskey > oskey.priv
  2. chmod 600 oskey.priv
  3. nova flavor-list
  4. nova image-list
  5. nova boot --flavor 2 --key_name oskey --image ea3ffba1-065e-483f-bfe2-c84184ee76be test1
  6. nova secgroup-add-rule default tcp 22 22 0.0.0.0/0
  7. nova secgroup-add-rule default icmp -1 -1 0.0.0.0/0
复制代码
查看申请flating IP 列表
  1. nova floating-ip-list
复制代码
查看虚拟机
  1. nova list
复制代码
添加floating IP给虚拟机(id是虚拟机的ID,通过nova list获得)
  1. nova add-floating-ip  7eb1d4b3-13fa-4e39-be17-3a27eb0db218 10.1.199.33
复制代码
查看虚拟机的floating IP (nova list,就可以查看,需要等待1分钟)
  1. nova list
复制代码
ssh到虚拟机上 (ubuntu的虚拟机,默认的用户名是ubuntu,只能用密钥登陆)
  1. ssh -i oskey.priv ubuntu@192.168.22.2
复制代码
删除flating IP (ID就是虚拟机ID,通过 nova list 获得)
  1. nova remove-floating-ip ID 10.1.199.33
复制代码
删除虚拟机
  1. nova delete ID
复制代码
创建10G的volume
  1. nova volume-create --display_name "test volume" 10
复制代码
查看nova volume情况
  1. nova volume-list
复制代码
把volume添加到虚拟机上
( ID是虚拟机的id,后面的1,是volume的ID)添加完后可以通过 nova volume-list查看结果
  1. nova volume-attach 7eb1d4b3-13fa-4e39-be17-3a27eb0db218 1 /dev/vdc
复制代码
查看虚拟机里的volume情况(登陆虚拟机里)
  1. ubuntu@test1:~$ cat /proc/partitions
  2. major minor  #blocks  name
  3. 253        0   10485760 vda
  4. 253        1   10474380 vda1
  5. 253       16   20971520 vdb
  6. 253       32   10485760 vdc
复制代码
删除volume
  1. nova volume-detach VM_ID Volume_ID
复制代码
创建snapshot ( 完成后可以通过 nova image-list 查看)
  1. nova image-create 7eb1d4b3-13fa-4e39-be17-3a27eb0db218 "snapshot 1"
复制代码
虚拟机重启,停止
  1. nova suspend ac9e6a9f-58c3-47c3-9b4c-485aa421b8a8
  2. nova resume ac9e6a9f-58c3-47c3-9b4c-485aa421b8a8
  3. nova reboot ac9e6a9f-58c3-47c3-9b4c-485aa421b8a8
复制代码
vnc
  1. ova  get-vnc-console myserver20 novnc
复制代码


回复

使用道具 举报

pig2 发表于 2014-3-5 02:02:39
对上面进行补充

虚拟网络命令
  1. brctl
  2. virsh
  3. tgtadm --lld iscsi --op show --mode target 控制节点查看target
  4. tgtadm --op new --lld=iscsi --mode=target --tid=1 --targetname=iqn.2010-10.org.openstack:volume-00000001 建立target
复制代码
nova 挂接实例/分区
  1. sudo nova-rootwrap guestmount --rw -a /home/instances/instance-0000001b/disk -m /dev/sda1 /tmp/tmpfe4fNg
复制代码
配置:nova.conf
  1. ##################filter#############
  2. #scheduler_default_filters=AvailabilityZoneFilter,RamFilter,ComputeFilter,IsolatedHostsFilter
  3. #isolated_hosts=hyops2.elex.com
  4. #isolated_images=ee30929c-a3bb-42a7-a494-9a77ae501c54
复制代码
配置于nova.conf
规定在某个images上创建的实例位于固定计算节点主机

重新初始化nova库:
停止控制和计算节点的nova服务,删除/home/instances目录下的文件
  1. nova-manage network delete 192.168.193.0/24
  2. nova-manage network delete 10.18.4.0/24
  3. mysql -uroot -p
  4. mysql> drop database nova
  5. mysql> create database nova;
  6. mysql> grant all privileges on nova.* to 'nova_user'@'%' identified by 'nova_pw3465';
  7. nova-manage db sync
  8. nohup /usr/bin/python /usr/bin/nova-all >> /var/log/nova.log 2>&1 &
  9. nova-manage network create --label=public --fixed_range_v4=10.18.4.0/24 --num_networks=1 --network_size=256 --gateway=10.18.4.254 --bridge=br_pu --bridge_interface=em1 --multi_host='F'
  10. nova-manage network create --label=private --fixed_range_v4=192.168.193.0/24 --num_networks=1 --network_size=256 --gateway=192.168.193.1 --bridge=br_pr --bridge_interface=em2 --multi_host='F'
复制代码
设置安全策略
  1. nova secgroup-add-rule default tcp 22 22 0.0.0.0/0
  2. nova secgroup-add-rule default icmp -1 -1 0.0.0.0/0
  3. nova secgroup-list
  4. nova secgroup-list-rules default
复制代码
上传镜像
  1. glance add name="CentOS-6.3_Fina_qcow2" is_public=true container_format=bare disk_format=qcow2 < CentOS-6.3_Fina_qcow2.img
  2. glance add name="CentOS-6.3_Fina_raw" is_public=true container_format=bare disk_format=raw < CentOS-6.3_Fina_raw.img
复制代码
回复

使用道具 举报

pig2 发表于 2014-3-5 02:09:40
在补充一些常见错误:
常见错误:

1.报错libvirtError: operation failed: failed to retrieve chardev info in qemu with 'info chardev'而无法启动实例。
解决办法:
vncserver_listen的值在计算节点上时应配置成计算节点的ip

2.ERROR nova.manager [-] Error during ComputeManager.update_available_resource: list index out of range
  libvir: QEMU error : Domain not found: no domain with matching name 'instance-00000002'
  RemoteError: Remote error: InstanceNotFound Instance instance-00000002 could not be found.
解决方法
/usr/lib/python2.6/site-packages/nova-2012.1-py2.6.egg/nova/virt/libvirt/utils.py:95
    此文件的backing_file = [i.split('actual path:')[1].strip()[:-1]替换为backing_file = [i.strip()[:-1]

3.启动nova-network、nova-volume出现timeout错误:
解决办法
   /usr/lib/python2.6/site-packages/eventlet/green/subprocess.py
   第35行换成def wait(self, check_interval=0.01, timeout=None):

4.nova-novncproxy启动报错
ImportError: No module named websockify
解决办法
yum install python-websockify

5.Stderr: 'sudo: sorry, you must have a tty to run sudo\n'
而 CentOS 的 sudo 选项 requiretty 是默认打开的,ssh 需要一个 tty 才能执行,所以远程 sudo 就会出错
解决办法:
关闭(注释掉) requiretty 这行:
# chmod 0440 /etc/sudoers; chmod 0440 /etc/sudoers.d/nova
# vi /etc/sudoers
注释行 #Defaults requiretty
#cat /etc/sudoers.d/nova 或在 /etc/sudoers添加
nova        ALL=(ALL)       NOPASSWD: ALL

6.启动rabbitmq-server出错
ERROR: epmd error for host "hyops4": address (unable to establish tcp connection)
解决办法:
添加hyops4的解析到hosts文件

7.glance数据库已经有了,但是用glance index提示
glance index
Failed to show index. Got error:
You are not authenticated.
解决办法:
注意admin_passwd 和 service_passwd的区别

8.RemoteError: Remote error: NetworkNotFound Network 5 could not be found.
解决办法:
重新创建网络nova-manage network create后出现 要修改数据库数据 删除virtual_interfaces表中网络ID为5的行

9.VNC始终转发的是127.0.0.1的IP,计算节点的nova.conf内的vncserver_proxyclient_address不起作用
解决办法:
在计算节点程序启动目录有另外的nova.conf配置存在,且vncserver_proxyclient_address指向127.0.0.1

回复

使用道具 举报

471505881qq 发表于 2014-3-31 15:39:45
谢谢楼主的分享!
回复

使用道具 举报

471505881qq 发表于 2014-4-1 11:30:56

谢谢楼主的分享!
回复

使用道具 举报

task_about 发表于 2014-10-11 18:31:40
回复

使用道具 举报

zcalyz 发表于 2014-10-12 16:03:34
回复

使用道具 举报

hellosu 发表于 2016-1-28 21:15:02
instance关机之后/var/lib/nova/instances/下面的文件会被删除吗?instance重启之后里面改变的文件还会存在吗?重启之后是否会到其它计算节点上吗?
回复

使用道具 举报

easthome001 发表于 2016-1-28 21:38:17
hellosu 发表于 2016-1-28 21:15
instance关机之后/var/lib/nova/instances/下面的文件会被删除吗?instance重启之后里面改变的文件还会存在 ...

这个不会的。除非迁移
回复

使用道具 举报

12下一页
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条