玩转OpenStack网络Neutron(1)--热身

本文介绍了如何在OpenStack中使用Neutron进行网络管理,包括通过Horizon创建和管理网络、子网、实例,以及通过命令行操作网络资源。内容涵盖了网络、子网、接口、路由器的基本概念,以及网络地址范围的扩展。
摘要由CSDN通过智能技术生成

欢迎转载,转载请保留原作者信息
欢迎交流学习,共同进步!
作者:颜海峰
个人博客:http://yanheven.github.io
微博:海峰_云计算 http://weibo.com/344736086

OpenStack 网络介绍

随着计算资源从物理机到虚拟机的迁移,相应地,虚拟机的网络也从以前的物理网络迁移到虚拟网络.而在OpenStack这个开源的云计算项目中,负责网络虚拟化的是Neutron(曾用名:Quantum)和Nova-Network, 后者之前是作为Nova的一个服务来看待,而Neutron则是一个完整的子项目,当然,提供的功能也更多,支持更多的网络插件.本系列文章,将主要学习研究Neutron,学习不同插件的配置使用,不同网络类型的使用.由于侧重点为网络的配置使用,所以本文章假定读者已经拥有一个最小的两节点的OpenStack集群(布署可参考官方文档,或者陈沙克的博文:http://www.chenshake.com/install-openstack-openstack-juno-version/).安装如下:

  1. 控制节点:
    keystone, glance, nova, neutron
  2. 计算节点:
    nova-compute, neutron agent

在Neutron里面,有几个基本概念,其实跟物理网络一样.

  1. 网络Network: 一个独立的二层网络,类似物理网络中的一个VLAN
  2. 子网Subnet:一个IP4 或者IP6网段
  3. 接口Port:虚拟网络中的接口, 类比物理网络设备上的网线接口.
  4. 路由器Router: 类比物理网络中的路由器,用于不同三层网络之前通信.

通过 Horizon 创建网络

用有效的用户名密码登陆控制台, 找到”Network”,然后点击此栏目下面的”Networks”处,弹出网络信息页,显示当前项目的网络信息,然后通过点击”Create Network”来创建网络:

create network-2

随后, 填写网络名称, 然后可以直接不填子网信息, 直接下一步, 创建网络即可.

create network-2

通过 Horizon 创建子网

在网络信息页,找到刚才创建的网络,点击进去:

subnet-create-1

填写子网名称, 子网的网络CIDR, 网关不指定, 默认会帮你指定为的我网络的第一个可用IP, 此时是192.168.1.1, 不禁用网关:

subnet-create-2

通过 Horizon 查看网络信息

通过进入网络信息页面,可以看到当前项目的所有网络,点击某个网络进去,可以看到这个网络的信息, 这个网络所包含的子网的信息, 以及这个网络里面创建的接口的信息.

network-info-1

点击某个子网或者某个接口,可以进去查看它的详细信息,比如点击子网”yan-in”

network-info-2

通过 Horizon 创建关联某个网络的实例

在”Compute”栏目,打开里面的”Instances”, 点击”Launch Instance”按钮, 即打开的创建实例(虚拟机)的工作流了

填写主机名,选择配置,镜像等

launch-instance-1

选择主机使用的网络,点击刚才我们创建的网络”yan-test”, 点击后它自动从下的”Available networks”面移动到上面的”Selected Networks”处

launch-instance-2

忽略其他标签的设置,点击”Launch”, 即可创建使用这个网络的实例了.
若干秒后,可以看到成功创建的实例:

launch-instance-3

还可以点击实例名称”yan-test”进入查看实例详情:

launch-instance-4

通过 命令行 创建网络

首先,创建一个网络:

$ neutron net-create yan-net-test01

Created a new network:
+---------------------------+--------------------------------------+
| Field                     | Value                                |
+---------------------------+--------------------------------------+
| admin_state_up            | True                                 |
| id                        | c20a2764-1c1a-4091-ac2a-bb82f7f1d20d |
| name                      | yan-net-test01                       |
| provider:physical_network |                                      |
| shared                    | False                                |
| status                    | ACTIVE                               |
| subnets                   |                                      |
| tenant_id                 | 0d896fe854f64e90915ce599aa1e1c0b     |
+---------------------------+--------------------------------------+

可以通过命令查看刚才创建的网络详细信息:

$ neutron  net-show yan-net-test01
+---------------------------+--------------------------------------+
| Field                     | Value                                |
+---------------------------+--------------------------------------+
| admin_state_up            | True                                 |
| id                        | c20a2764-1c1a-4091-ac2a-bb82f7f1d20d |
| name                      | yan-net-test01                       |
| provider:physical_network |                                      |
| router:external           | False                                |
| shared                    | False                                |
| status                    | ACTIVE                               |
| subnets                   |                                      |
| tenant_id                 | 0d896fe854f64e90915ce599aa1e1c0b     |
+---------------------------+--------------------------------------+

更多命令可以通过help出来查看:

$ neutron help | grep " net-"
  net-create                     Create a network for a given tenant.
  net-delete                     Delete a given network.
  net-external-list              List external networks that belong to a given tenant.
  net-gateway-connect            Add an internal network interface to a router.
  net-gateway-create             Create a network gateway.
  net-gateway-delete             Delete a given network gateway.
  net-gateway-disconnect         Remove a network from a network gateway.
  net-gateway-list               List network gateways for a given tenant.
  net-gateway-show               Show information of a given network gateway.
  net-gateway-update             Update the name for a network gateway.
  net-list                       List networks that belong to a given tenant.
  net-list-on-dhcp-agent         List the networks on a DHCP agent.
  net-show                       Show information of a given network.
  net-update                     Update network's information.

某个具体命令的用法,也可以通过help来查看使用方法,可以查看命令需要哪些参数,以及它的功能. 比如刚才我们用的show命令:

$ neutron help net-show
usage: neutron net-show [-h] [-f {shell,table,value}] [-c COLUMN]
                        [--max-width <integer>] [--prefix PREFIX]
                        [--request-format {json,xml}] [-D] [-F FIELD]
                        NETWORK

Show information of a given network.

positional arguments:
  NETWORK               ID or name of network to look up.

optional arguments:
  -h, --help            show this help message and exit
  --request-format {json,xml}
                        The XML or JSON request format.
  -D, --show-details    Show detailed information.
  -F FIELD, --field FIELD
                        Specify the field(s) to be returned by server. You can
                        repeat this option.

output formatters:
  output formatter options

  -f {shell,table,value}, --format {shell,table,value}
                        the output format, defaults to table
  -c COLUMN, --column COLUMN
                        specify the column(s) to include, can be repeated

table formatter:
  --max-width <integer>
                        Maximum display width, 0 to disable

shell formatter:
  a format a UNIX shell can parse (variable=
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 8
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值