设为首页 收藏本站
查看: 1279|回复: 0

[经验分享] 如何借助OpenStack命令行工具管理虚拟机?

[复制链接]

尚未签到

发表于 2015-10-11 11:06:56 | 显示全部楼层 |阅读模式
OpenStack是一个基于行业的开源云管理平台。人们可以使用OpenStack,轻松构建公共云、私有云或混合云。由于这个平台具有纯粹的开放性,包括Red Hat、Rackspace、IBM和惠普在内的各大IT厂商都看好其前景,积极推动OpenStack的发展。  OpenStack中有两种不同的界面用来管理云资源。一个是通过Horizon(https://github.com/openstack/horizon/),这是基于Web的OpenStack仪表板;另一个就是通过OpenStack命令行接口(CLI)。
  我在本教程中将演示如何从命令行,在OpenStack上创建或终止虚拟机。这个过程是在Havana版本的OpenStack中进行测试的。至于像OpenStack Folsom这些早期的OpenStack版本,你只要将本教程所用的命令行中的“neutron”换成“quantum”即可。
  姑且假设部署的一套OpenStack系统已在某处构建并运行起来。我要使用OpenStack CLI客户程序,在现有的OpenStack系统上管理虚拟机。
  安装OpenStack CLI客户程序
  第一步就是安装必要的OpenStack命令行客户程序:
  在Debian、Ubuntu或Linux Mint上,执行这个命令:


  • $ sudo apt-get install python-pip
  • $ sudo pip install python-novaclient python-keystoneclient python-neutronclient

  在CentOS、Fedora或RHEL上,执行这个命令:


  • $ sudo yum install python-pip
  • $ sudo pip install python-novaclient python-keystoneclient python-neutronclient

  设定环境变量
  为了能够使用OpenStack CLI客户程序,你就要设定必要的环境变量。为此,创建一个名为openrc.sh的脚本,如下所示。


  • $ sudo vi openrc.sh export OS_USERNAME=dan
  • export OS_PASSWORD=my_password
  • export OS_TENANT_NAME=demo
  • export OS_AUTH_URL=http://192.168.10.10:5000/v2.0

  在上述脚本中,OS_USERNAME/OS_PASSWORD是OpenStack用户名及密码。OS_TENANT_NAME是所创建的项目的名称。OS_AUTH_URL是Keystone端点的URL。Keystone是一项OpenStack服务,负责不同的OpenStack组件之间的身份验证。你应该把192.168.10.10换成所部署的系统中运行OpenStack Keystone的那个主机的IP地址。
  现在,运行openrc.sh,设定环境变量,如下所示。


  • $ source openrc.sh

  这时候,你可以准备运行OpenStack命令行客户程序了。确认你在运行时没有遇到任何错误:


  • $ nova list

  它显示内容为空的结果,这意味着一切都正常。
  构建网络
  现在,你可以准备构建一个连接虚拟机的网络了。
  创建一个名为"xmodulo"的新网络。


  • $ neutron net-create xmodulo

DSC0000.jpg

  创建一个名为"xmodulo_subnet"的新子网,并将其添加到刚构建的那个网络。


  • $ neutron subnet-create xmodulo 10.0.0.0/24 --name xmodulo_subnet

DSC0001.jpg

  检查可用网络列表,确认该网络已成功构建。


  • $ neutron net-list

DSC0002.jpg

  在输出结果中,要记下你所构建的网络的"ID"(编号)。之后你创建虚拟机时,要用到这个编号。
  启动虚拟机
  在创建并启动虚拟机之前,你首先要知道几个信息。
  查明你想创建的那个虚拟机的类型。为此,运行下面这个命令。


  • $ nova flavor-list

DSC0003.jpg

  在该示例中,我准备选择最小的虚拟机类型"m1.nano",它有64 MB内存、1个虚拟处理器(vCPU)、无磁盘。记下这个类型名称。
  下一步,为你的虚拟机选择所要使用的虚拟机映像。为了列出所有可用的虚拟机映像,请使用这个命令:


  • $ nova image-list

DSC0004.jpg

  记下你想为虚拟机使用的那个映像的ID。
  下一步,为你的虚拟机选择所要使用的安全组的类型。安全组为你的虚拟机决定了入站访问规则。想了解可用的安全组,请运行该命令:


  • $ nova secgroup-list

  想检查"默认"安全组的访问规则,请使用这个命令:


  • $ nova secgroup-list-rules default

DSC0005.jpg

  在该示例中,我准备为虚拟机选择名为"default"的安全组。该安全组里面正好没有规则。
  最后,我们使用到目前为止所获得的信息,创建一个虚拟机。指定你已了解的虚拟机类型(--flavor)、虚拟机映像的ID(--image)以及网络的ID(net-id=)。把[vm-name]换成你虚拟机的名称,这个名称需要很独特。


  • $ nova boot [vm-name] --flavor m1.nano --image d2b830be-3
  • 7df-4fa9-90b2-91c472d19aaa --security-groups default -ni
  • c net-id=1cbcddcf-3a7d-481f-b6f2-a97c6447c925

DSC0006.jpg

  为了确认虚拟机已成功创建并启动,请运行这个命令:


  • $ nova list

DSC0007.jpg

  停止、暂停和清除虚拟机
  当你停止运行某个虚拟机时,它完全关闭。另一方面,你暂停虚拟机时,它临时被冻结,随时可以从暂停状态重新启动。在这两种情况下,虚拟机映像仍留在OpenStack里面。
  想停止虚拟机,运行这个命令:


  • $ nova stop [vm-name]

  想暂停虚拟机,运行这个命令:


  • $ nova suspend [vm-name]

DSC0008.jpg

  如果你想从OpenStack清除已终停止虚拟机或已暂停虚拟机的映像,请使用这个命令:


  • $ nova delete [vm-name]

DSC0009.jpg

  原文链接:http://xmodulo.com/2014/03/manage-vms-openstack-command-line-tools.html

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-125372-1-1.html 上篇帖子: Hadoop和OpenStack对象存储有何不同? 下篇帖子: 快速安装Openstack指南
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表