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

[经验分享] OpenStack实践系列⑥构建虚拟机实例

[复制链接]

尚未签到

发表于 2017-6-26 20:52:38 | 显示全部楼层 |阅读模式
  OpenStack实践系列⑥构建虚拟机实例
  四、创建一台虚拟机
图解网络,并创建一个真实的桥接网络
DSC0000.png

DSC0001.png

  创建一个单一扁平网络(名字:flat),网络类型为flat,网络适共享的(share),网络提供者:physnet1,它是和eth0关联起来的(



/etc/neutron/plugins/ml2/linuxbridge_agent.ini配置文件中配置项中的内容physical_interface_mappings = physnet1:eth0)
[iyunv@node1 ~]# source admin-openrc.sh
[iyunv@node1 ~]# neutron net-create flat --shared --provider:physical_network physnet1 --provider:network_type flat
Created a new network:
+---------------------------+--------------------------------------+
| Field | Value |
+---------------------------+--------------------------------------+
| admin_state_up | True |
| id | 2cd04d33-60a1-4d16-af09-19ad71f56f75 |
| mtu | 0 |
| name | flat |
| port_security_enabled | True |
| provider:network_type | flat |
| provider:physical_network | physnet1 |
| provider:segmentation_id | |
| router:external | False |
| shared | True |
| status | ACTIVE |
| subnets | |
| tenant_id | eb5d7705ed7147e6beb4cd83a9f70a4a |
+---------------------------+--------------------------------------+
  对上一步创建的网络创建一个子网,名字为:subnet-create flat,设置dns和网关



[iyunv@node1 ~]# neutron subnet-create flat 192.168.3.0/24 --name flat-subnet --allocation-pool start=192.168.3.100,end=192.168.3.200 --dns-nameserver 192.168.1.13 --gateway 192.168.3.1
Created a new subnet:
+-------------------+----------------------------------------------------+
| Field | Value |
+-------------------+----------------------------------------------------+
| allocation_pools | {"start": "192.168.3.100", "end": "192.168.3.200"} |
| cidr | 192.168.3.0/24 |
| dns_nameservers | 192.168.1.13 |
| enable_dhcp | True |
| gateway_ip | 192.168.3.1 |
| host_routes | |
| id | c2bc3265-178d-48d9-bef9-0c3544d1b0c3 |
| ip_version | 4 |
| ipv6_address_mode | |
| ipv6_ra_mode | |
| name | flat-subnet |
| network_id | 2cd04d33-60a1-4d16-af09-19ad71f56f75 |
| subnetpool_id | |
| tenant_id | eb5d7705ed7147e6beb4cd83a9f70a4a |
+-------------------+----------------------------------------------------+
  查看创建的网络和子网



[iyunv@node1 ~]# neutron net-list
+--------------------------------------+------+-----------------------------------------------------+
| id | name | subnets |
+--------------------------------------+------+-----------------------------------------------------+
| 2cd04d33-60a1-4d16-af09-19ad71f56f75 | flat | c2bc3265-178d-48d9-bef9-0c3544d1b0c3 192.168.3.0/24 |
+--------------------------------------+------+-----------------------------------------------------+
  注:创建虚拟机之前,由于一个网络下不能存在多个dhcp,所以一定关闭其他的dhcp选项
下面开始正式创建虚拟机,为了可以连上所创建的虚拟机,在这里要创建一对公钥和私钥,并添加到openstack中



[iyunv@node1 ~]# source demo-openrc.sh
[iyunv@node1 ~]# ssh-keygen -q -N ""
Enter file in which to save the key (/root/.ssh/id_rsa):
[iyunv@node1 ~]# ls .ssh/
id_rsa id_rsa.pub
[iyunv@node1 ~]# nova keypair-add --pub-key .ssh/id_rsa.pub mykey
[iyunv@node1 ~]# nova keypair-list
+-------+-------------------------------------------------+
| Name | Fingerprint |
+-------+-------------------------------------------------+
| mykey | 10:b2:ae:16:3c:76:c4:94:41:d6:16:1d:b5:bc:4b:4d |
+-------+-------------------------------------------------+
[iyunv@node1 ~]# ls .ssh/
id_rsa id_rsa.pub
  创建一个安全组,打开icmp和开放22端口



[iyunv@node1 ~]# nova secgroup-add-rule default icmp -1 -1 0.0.0.0/0
+-------------+-----------+---------+-----------+--------------+
| IP Protocol | From Port | To Port | IP Range | Source Group |
+-------------+-----------+---------+-----------+--------------+
| icmp | -1 | -1 | 0.0.0.0/0 | |
+-------------+-----------+---------+-----------+--------------+
[iyunv@node1 ~]# nova secgroup-add-rule default tcp 22 22 0.0.0.0/0
+-------------+-----------+---------+-----------+--------------+
| IP Protocol | From Port | To Port | IP Range | Source Group |
+-------------+-----------+---------+-----------+--------------+
| tcp | 22 | 22 | 0.0.0.0/0 | |
+-------------+-----------+---------+-----------+--------------+
  创建虚拟机之前要进行的确认虚拟机类型flavor(相当于EC2的intance的type)、需要的镜像(EC2的AMI),需要的网络(EC2的VPC),安全组(EC2的sg)
  列出虚拟机可选类型



[iyunv@node1 ~]# nova flavor-list
+----+-----------+-----------+------+-----------+------+-------+-------------+-----------+
| ID | Name | Memory_MB | Disk | Ephemeral | Swap | VCPUs | RXTX_Factor | Is_Public |
+----+-----------+-----------+------+-----------+------+-------+-------------+-----------+
| 1 | m1.tiny | 512 | 1 | 0 | | 1 | 1.0 | True |
| 2 | m1.small | 2048 | 20 | 0 | | 1 | 1.0 | True |
| 3 | m1.medium | 4096 | 40 | 0 | | 2 | 1.0 | True |
| 4 | m1.large | 8192 | 80 | 0 | | 4 | 1.0 | True |
| 5 | m1.xlarge | 16384 | 160 | 0 | | 8 | 1.0 | True |
+----+-----------+-----------+------+-----------+------+-------+-------------+-----------+
  列出可用镜像



[iyunv@node1 ~]# nova image-list
+--------------------------------------+--------+--------+--------+
| ID | Name | Status | Server |
+--------------------------------------+--------+--------+--------+
| 6a806538-4532-4331-b79d-d69ea7bc478c | cirros | ACTIVE | |
+--------------------------------------+--------+--------+--------+
  列出可用网络



[iyunv@node1 ~]# neutron net-list
+--------------------------------------+------+-----------------------------------------------------+
| id | name | subnets |
+--------------------------------------+------+-----------------------------------------------------+
| 2cd04d33-60a1-4d16-af09-19ad71f56f75 | flat | c2bc3265-178d-48d9-bef9-0c3544d1b0c3 192.168.3.0/24 |
+--------------------------------------+------+-----------------------------------------------------+
  列出可用安全组



[iyunv@node1 ~]# nova secgroup-list
+--------------------------------------+---------+------------------------+
| Id | Name | Description |
+--------------------------------------+---------+------------------------+
| cf68eabe-4487-4bd4-8835-4a0ae7295de0 | default | Default security group |
+--------------------------------------+---------+------------------------+
  创建一台虚拟机,类型为m1.tiny,镜像为cirros(之前wget下载的),网络id为neutron net-list出来的,安全组就是默认的,选择刚开的创建的key-pair,虚拟机的名字为hello-instance



[iyunv@node1 ~]# nova boot --flavor m1.tiny --image cirros --nic net-id=2cd04d33-60a1-4d16-af09-19ad71f56f75 --security-group default --key-name mykey hello-instance
+--------------------------------------+-----------------------------------------------+
| Property | Value |
+--------------------------------------+-----------------------------------------------+
| OS-DCF:diskConfig | MANUAL |
| OS-EXT-AZ:availability_zone | |
| OS-EXT-SRV-ATTR:host | - |
| OS-EXT-SRV-ATTR:hypervisor_hostname | - |
| OS-EXT-SRV-ATTR:instance_name | instance-00000001 |
| OS-EXT-STS:power_state | 0 |
| OS-EXT-STS:task_state | scheduling |
| OS-EXT-STS:vm_state | building |
| OS-SRV-USG:launched_at | - |
| OS-SRV-USG:terminated_at | - |
| accessIPv4 | |
| accessIPv6 | |
| adminPass | wsNS4n8iKLoB |
| config_drive | |
| created | 2017-06-05T02:02:40Z |
| flavor | m1.tiny (1) |
| hostId | |
| id | 3a995e89-4d71-4f70-9ae6-de82b65ebb74 |
| image | cirros (6a806538-4532-4331-b79d-d69ea7bc478c) |
| key_name | mykey |
| metadata | {} |
| name | hello-instance |
| os-extended-volumes:volumes_attached | [] |
| progress | 0 |
| security_groups | default |
| status | BUILD |
| tenant_id | eb5d7705ed7147e6beb4cd83a9f70a4a |
| updated | 2017-06-05T02:02:40Z |
| user_id | 4f71615a44c8422cbc034323d0d4c9a7 |
+--------------------------------------+-----------------------------------------------+
  查看虚拟机创建状态,状态为ACTIVE那台虚拟机已经成功创建



[iyunv@node1 ~]# nova list
+--------------------------------------+----------------+--------+------------+-------------+----------+
| ID | Name | Status | Task State | Power State | Networks |
+--------------------------------------+----------------+--------+------------+-------------+----------+
| b6ba588b-494d-4055-ac8e-5c3978ba9150 | hello-instance | BUILD | spawning | NOSTATE | |
+--------------------------------------+----------------+--------+------------+-------------+----------+
[iyunv@node1 ~]# nova list
+--------------------------------------+----------------+--------+------------+-------------+--------------------+
| ID | Name | Status | Task State | Power State | Networks |
+--------------------------------------+----------------+--------+------------+-------------+--------------------+
| b6ba588b-494d-4055-ac8e-5c3978ba9150 | hello-instance | ACTIVE | - | Running | flat=192.168.3.102 |
+--------------------------------------+----------------+--------+------------+-------------+--------------------+
  ssh连接虚拟机并简单测试



[iyunv@node1 ~]# ssh cirros@192.168.3.102
$ ls
$ whoami
cirros
$ ifconfig
eth0 Link encap:Ethernet HWaddr FA:16:3E:40:1A:59
inet addr:192.168.3.102 Bcast:192.168.3.255 Mask:255.255.255.0
inet6 addr: fe80::f816:3eff:fe40:1a59/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2767 errors:0 dropped:0 overruns:0 frame:0
TX packets:244 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:189669 (185.2 KiB) TX bytes:28305 (27.6 KiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
  通过vnc生成URL在web界面上链接虚拟机


  [iyunv@node1 ~]# nova get-vnc-console hello-instance novnc
+-------+------------------------------------------------------------------------------------+
| Type  | Url                                                                                |
+-------+------------------------------------------------------------------------------------+
| novnc | http://192.168.3.199:6080/vnc_auto.html?token=a9483376-e7d1-4f12-8c82-72ee861afd15 |
+-------+------------------------------------------------------------------------------------+
DSC0002.png

运维网声明 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-388382-1-1.html 上篇帖子: openstack 之~keystone之HTTP协议 下篇帖子: [Resolved] OpenStack Mitaka with Docker Integration Issue
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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