一、创建网络:

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

[root@linux-node1 ~]# source admin-openrc.sh
[root@linux-node1 ~]# neutron net-create flat --shared --provider:physical_network physnet1 --provider:network_type flat
Created a new network:
+---------------------------+--------------------------------------+
| Field | Value |
+---------------------------+--------------------------------------+
| admin_state_up | True |
| availability_zone_hints | |
| availability_zones | |
| created_at | --07T06::06Z |
| description | |
| id | 252e8345--422e-a131-717747c03de8 |
| ipv4_address_scope | |
| ipv6_address_scope | |
| mtu | |
| name | flat |
| port_security_enabled | True |
| project_id | 503b0eab0420454e909a46e476bf1ede |
| provider:network_type | flat |
| provider:physical_network | physnet1 |
| provider:segmentation_id | |
| revision_number | |
| router:external | False |
| shared | True |
| status | ACTIVE |
| subnets | |
| tags | |
| tenant_id | 503b0eab0420454e909a46e476bf1ede |
| updated_at | --07T06::09Z |
+---------------------------+--------------------------------------+

  2、对上一步创建的网络创建一个子网,名字为:subnet-create flat,设置dns和网关

[root@linux-node1 ~]# neutron subnet-create flat 172.22.0.0/ --name flat-subnet --allocation-pool start=172.22.0.240,end=172.22.0.250 --dns-nameserver 172.16.9.60 --gateway 172.22.0.2
Created a new subnet:
+-------------------+--------------------------------------------------+
| Field | Value |
+-------------------+--------------------------------------------------+
| allocation_pools | {"start": "172.22.0.240", "end": "172.22.0.250"} |
| cidr | 172.22.0.0/ |
| created_at | --07T06::53Z |
| description | |
| dns_nameservers | 172.16.9.60 |
| enable_dhcp | True |
| gateway_ip | 172.22.0.2 |
| host_routes | |
| id | afb09c29-ae05-4ea5-820b-39dabbc42c0f |
| ip_version | |
| ipv6_address_mode | |
| ipv6_ra_mode | |
| name | flat-subnet |
| network_id | 252e8345--422e-a131-717747c03de8 |
| project_id | 503b0eab0420454e909a46e476bf1ede |
| revision_number | |
| service_types | |
| subnetpool_id | |
| tenant_id | 503b0eab0420454e909a46e476bf1ede |
| updated_at | --07T06::54Z |
+-------------------+--------------------------------------------------+

  3、查看创建的网络和子网

[root@linux-node1 ~]# neutron net-list
+-------------------------------------+------+-------------------------------------+
| id | name | subnets |
+-------------------------------------+------+-------------------------------------+
| 252e8345--422e-a131-717747c03de | flat | afb09c29-ae05-4ea5-820b- |
| | | 39dabbc42c0f 172.22.0.0/ |
+-------------------------------------+------+-------------------------------------+

  注:创建虚拟机之前,由于一个网络下不能存在多个dhcp,所以一定关闭其他的dhcp选项下面开始正式创建虚拟机,为了可以连上所创建的虚拟机,在这里要创建一对公钥和私钥,并添加到openstack中

二、创建虚拟主机:

  1、创建公钥:  

root@linux-node1 ~]# source demo-openrc.sh
[root@linux-node1 ~]# ssh-keygen -q -N ""
Enter file in which to save the key (/root/.ssh/id_rsa):
[root@linux-node1 ~]# openstack keypair create --public-key ~/.ssh/id_rsa.pub mykey
+-------------+-------------------------------------------------+
| Field | Value |
+-------------+-------------------------------------------------+
| fingerprint | :5c::9a::3c:d6:5f:a7:0d::cb:::c6: |
| name | mykey |
| user_id | d36d93abe45747468fdd46430a83e169 |
+-------------+-------------------------------------------------+
[root@linux-node1 ~]# openstack keypair list
+-------+-------------------------------------------------+
| Name | Fingerprint |
+-------+-------------------------------------------------+
| mykey | :5c::9a::3c:d6:5f:a7:0d::cb:::c6: |
+-------+-------------------------------------------------+

  2、创建一个安全组,打开icmp和开放22端口

[root@linux-node1 ~]# openstack security group rule create --proto icmp default
+-------------------+--------------------------------------+
| Field | Value |
+-------------------+--------------------------------------+
| created_at | --08T05::49Z |
| description | |
| direction | ingress |
| ethertype | IPv4 |
| headers | |
| id | 247ef297-f765-42b7-b2fe-ca4d1d3356c9 |
| port_range_max | None |
| port_range_min | None |
| project_id | b71d521156214c438b7024701e7e06e8 |
| project_id | b71d521156214c438b7024701e7e06e8 |
| protocol | icmp |
| remote_group_id | None |
| remote_ip_prefix | 0.0.0.0/ |
| revision_number | |
| security_group_id | 84596f26-932d-4de9-8dc4-1eb15b6ec0e1 |
| updated_at | --08T05::49Z |
+-------------------+--------------------------------------+
[root@linux-node1 ~]# openstack security group rule create --proto tcp --dst-port default
+-------------------+--------------------------------------+
| Field | Value |
+-------------------+--------------------------------------+
| created_at | --08T05::07Z |
| description | |
| direction | ingress |
| ethertype | IPv4 |
| headers | |
| id | c23a41fd-e37c-4a85-ba3b-4c373a5cec14 |
| port_range_max | |
| port_range_min | |
| project_id | b71d521156214c438b7024701e7e06e8 |
| project_id | b71d521156214c438b7024701e7e06e8 |
| protocol | tcp |
| remote_group_id | None |
| remote_ip_prefix | 0.0.0.0/ |
| revision_number | |
| security_group_id | 84596f26-932d-4de9-8dc4-1eb15b6ec0e1 |
| updated_at | --08T05::07Z |
+-------------------+--------------------------------------+

  3、创建虚拟机之前要进行的确认虚拟机类型flavor(相当于EC2的intance的type)、需要的镜像(EC2的AMI),需要的网络(EC2的VPC),安全组(EC2的sg)  

[root@linux-node1 ~]# source admin-openrc.sh
[root@linux-node1 ~]# openstack flavor create --id --vcpus --ram --disk m1.nano #创建虚拟机类型
+----------------------------+---------+
| Field | Value |
+----------------------------+---------+
| OS-FLV-DISABLED:disabled | False |
| OS-FLV-EXT-DATA:ephemeral | |
| disk | |
| id | |
| name | m1.nano |
| os-flavor-access:is_public | True |
| properties | |
| ram | |
| rxtx_factor | 1.0 |
| swap | |
| vcpus | |
+----------------------------+---------+
[root@linux-node1 ~]# source demo-openrc.sh
[root@linux-node1 ~]# openstack flavor list
+----+---------+-----+------+-----------+-------+-----------+
| ID | Name | RAM | Disk | Ephemeral | VCPUs | Is Public |
+----+---------+-----+------+-----------+-------+-----------+
| | m1.nano | | | | | True |
+----+---------+-----+------+-----------+-------+-----------+ [root@linux-node1 ~]# openstack image list
+--------------------------------------+--------+--------+
| ID | Name | Status |
+--------------------------------------+--------+--------+
| 8f5837b4-bbec-4ef5-96f6-aba989c27206 | cirros | active |
+--------------------------------------+--------+--------+
[root@linux-node1 ~]# openstack network list
+-------------------------------------+------+-------------------------------------+
| ID | Name | Subnets |
+-------------------------------------+------+-------------------------------------+
| 252e8345--422e-a131-717747c03de | flat | afb09c29-ae05-4ea5-820b- |
| | | 39dabbc42c0f |
+-------------------------------------+------+-------------------------------------+
[root@linux-node1 ~]# openstack security group list
+-----------------------+---------+-----------------------+------------------------+
| ID | Name | Description | Project |
+-----------------------+---------+-----------------------+------------------------+
| 84596f26-932d-4de9-8d | default | Default security | b71d521156214c438b7024 |
| c4-1eb15b6ec0e1 | | group | 701e7e06e8 |
+-----------------------+---------+-----------------------+------------------------+

  4、创建一台虚拟机,类型为m1.tiny,镜像为cirros(上文wget的),网络id为neutron net-list出来的,安全组就是默认的,选择刚开的创建的key-pair,虚拟机的名字为test-instance  

[root@linux-node1 ~]# openstack server create --flavor m1.nano --image cirros --nic net-id=252e8345--422e-a131-717747c03de8  --security-group default --key-name mykey test-instance
+--------------------------------------+-----------------------------------------------+
| Field | Value |
+--------------------------------------+-----------------------------------------------+
| OS-DCF:diskConfig | MANUAL |
| OS-EXT-AZ:availability_zone | |
| OS-EXT-STS:power_state | NOSTATE |
| OS-EXT-STS:task_state | scheduling |
| OS-EXT-STS:vm_state | building |
| OS-SRV-USG:launched_at | None |
| OS-SRV-USG:terminated_at | None |
| accessIPv4 | |
| accessIPv6 | |
| addresses | |
| adminPass | GV8aK778PGP7 |
| config_drive | |
| created | --07T14::21Z |
| flavor | m1.nano () |
| hostId | |
| id | e6594567-62d9-452e-8bd9-709a63435ef5 |
| image | cirros (8f5837b4-bbec-4ef5-96f6-aba989c27206) |
| key_name | mykey |
| name | test-instance |
| os-extended-volumes:volumes_attached | [] |
| progress | |
| project_id | b71d521156214c438b7024701e7e06e8 |
| properties | |
| security_groups | [{u'name': u'default'}] |
| status | BUILD |
| updated | --07T14::25Z |
| user_id | d36d93abe45747468fdd46430a83e169 |
+--------------------------------------+-----------------------------------------------+

  5、查看虚拟机:  

[root@linux-node1 ~]# openstack server list
+--------------------------------------+---------------+--------+----------+------------+
| ID | Name | Status | Networks | Image Name |
+--------------------------------------+---------------+--------+----------+------------+
| 4695d193-9fb0-42aa-9aa9-043820388e4a | test-instance | BUILD | | cirros |
+--------------------------------------+---------------+--------+----------+------------+
[root@linux-node1 ~]# openstack server list
+--------------------------------------+---------------+--------+-------------------+------------+
| ID | Name | Status | Networks | Image Name |
+--------------------------------------+---------------+--------+-------------------+------------+
| 4695d193-9fb0-42aa-9aa9-043820388e4a | test-instance | ACTIVE | flat=172.22.0.248 | cirros |
+--------------------------------------+---------------+--------+-------------------+------------+

三、登录验证:

  1、SSH登录:  

[root@linux-node1 ~]# ssh cirros@172.22.0.248
The authenticity of host '172.22.0.248 (172.22.0.248)' can't be established.
RSA key fingerprint is SHA256:wjfS+uGVtyyrGl6ZmLp4nYA+4rcz5IYZU+cGF4DVaxY.
RSA key fingerprint is MD5:2f::4e:a0:a1::::ae:9a:e1:ff:b2::db:1c.
Are you sure you want to continue connecting (yes/no)? yes
cirros@172.22.0.248's password:
$ ifconfig
eth0 Link encap:Ethernet HWaddr FA::3E::4A:E4
inet addr:172.22.0.248 Bcast:172.22.0.255 Mask:255.255.255.0
inet6 addr: fe80::f816:3eff:fe79:4ae4/ Scope:Link
UP BROADCAST RUNNING MULTICAST MTU: Metric:
RX packets: errors: dropped: overruns: frame:
TX packets: errors: dropped: overruns: carrier:
collisions: txqueuelen:
RX bytes: (880.5 KiB) TX bytes: (32.0 KiB) lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::/ Scope:Host
UP LOOPBACK RUNNING MTU: Metric:
RX packets: errors: dropped: overruns: frame:
TX packets: errors: dropped: overruns: carrier:
collisions: txqueuelen:
RX bytes: (0.0 B) TX bytes: (0.0 B) $

  2、VNC登录:

[root@linux-node1 ~]# openstack console url show test-instance
+-------+-----------------------------------------------------------------------------------+
| Field | Value |
+-------+-----------------------------------------------------------------------------------+
| type | novnc |
| url | http://172.22.0.218:6080/vnc_auto.html?token=95a38c93-dbc1-4873-8c49-9778b4d41aed |

  网页登录:

创建完成

openstack安装newton版本创建虚拟机(五)的更多相关文章

  1. openstack安装newton版本keyston部署(一)

    一.部署环境:     两台centos7,  内存2G 控制计算节点: Hostname1:                    ip:172.22.0.218 计算节点及存储节点 Hostnam ...

  2. openstack安装newton版本dashboard+cinder(六)

    一.dashboard 1.安装dashboard及配置 [root@linux-node1 ~]# yum install openstack-dashboard -y #可以装任何地方只要能连接 ...

  3. openstack安装newton版本neutron服务部署(四)

    一.管理节点部署服务: 1.安装neutron: [root@linux-node1 ~]# yum install openstack-neutron openstack-neutron-ml2 o ...

  4. openstack安装newton版本Nova部署(三)

    一.控制节点安装部署Nova Nova 包含API(负责接收相应外部请求,支持OpenStackAPI,EC2API):cert:负责身份认证:schedule:用于云主机调度(虚拟机创建在哪台主机上 ...

  5. openstack安装newton版本Glance部署(二)

    一.部署Glance 1.Glance 安装 [root@linux-node1 ~]#yum install openstack-glance python-glance python-glance ...

  6. OPENSTACK在RHEL7安装;admin创建虚拟机模板供demo使用

    版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/u010026901/article/details/30965601 首先RHEL7安装.导入镜像, ...

  7. OpenStack之queens版本创建负载均衡器时报错问题!

    采用kolla-ansible部署完毕后,创建负载均衡器时会提示如下的报错 解决办法: 修改网络节点的neutron-lbaas-agent容器 进入lbaas容器里 [root@openstack0 ...

  8. win7,docker安装后,创建虚拟机分配不了ip错误 err: exit status 255

    问题 win7装docker真麻烦,不如家里的win10爽.另外明明这是个很简单的操作,但是国内的解决方法有点落后,所以我写了个傻瓜式的. 有兴趣的可以直接看issue https://github. ...

  9. nova创建虚拟机源码分析系列之一 restful api

    开始学习openstack源码,源码文件多,分支不少.按照学习的方法走通一条线是最好的,而网上推荐的最多的就是nova创建虚机的过程.从这一条线入手,能够贯穿openstack核心服务.写博文仅做学习 ...

随机推荐

  1. hdu 6109 数据分割

    /** * 题目描述有点坑,勉强能读懂,大致意思,有多组约束条件.原本每组数据之间是有分界符号的 * 现在分界符号没了,让你找出原来每组数据多少个条件,并且告诉,每组的最后一个条件会使得与前面的 * ...

  2. highcharts 图例全选按钮方法

    $('#uncheckAll').click(function(){ var chart = $('#container').highcharts(); var series = chart.seri ...

  3. 「LOJ#10042」「一本通 2.1 练习 8」收集雪花 (map

    题目描述 不同的雪花往往有不同的形状.在北方的同学想将雪花收集起来,作为礼物送给在南方的同学们.一共有 n 个时刻,给出每个时刻下落雪花的形状,用不同的整数表示不同的形状.在收集的过程中,同学们不希望 ...

  4. 自己实现的vector

    #include <iostream> #include <memory> using std::cout; using std::endl; using std::alloc ...

  5. c# namespace不能和class的name 相同

    比如namespace A, 内部Class A, 那么调用class A的方法只能通过A.A.XXX来访问. 或者说实例化一个class A,  A a = new A(); // compile ...

  6. sql基础内容2

    -- day16课程内容 --CREATE DATABASE day16;USE day16; -- *************一.数据约束********************------ 1.1 ...

  7. Scala Beginner

    开始学习Scala,下面的内容大部分从Scala官网翻译过来,有几个地方翻译的不是很好,表述不清楚的地方大家可以浏览Scala官网,多指教. Scala offical website is http ...

  8. java枚举类型的优势在哪里?--一个实例

    最近在做一个项目,其中涉及到一组操作,命名为: 1. "add"; 2. "logicDel" 3. "physicDel" 4. &quo ...

  9. js操作Iframe非当前最上层窗体

    如果当前窗口不是最上层窗口(比如是在Iframe中),那么就把自己变为最上层窗口.  <script language="javascript" type="tex ...

  10. 《Java多线程编程核心技术》读后感(二)

    方法内的变量为线程安全 package Second; public class HasSelfPrivateNum { public void addI(String username) { try ...