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

[经验分享] openstack私有云布署实践【15 创建租户网络+实例】

[复制链接]

尚未签到

发表于 2017-6-27 11:07:22 | 显示全部楼层 |阅读模式
这里以办公网测试环境为例,

(一)创建租户demo的网络

使用admin用户
source admin-openrc.sh
创建public公网
neutron net-create 1040100 --shared --provider:physical_network public  --provider:network_type flat  --router:external

声明public网段DHCP等信息
neutron subnet-create 1040100 10.40.100.0/24 --name 1040100 \
  --allocation-pool start=10.40.100.10,end=10.40.100.240 \
  --dns-nameserver 114.114.114.114 --gateway 10.40.100.254

使用demo用户
source demo-openrc.sh
创建private网段17216100
neutron net-create 17216100

private网段17216100的DHCP声明
neutron subnet-create 17216100 172.16.100.0/24 --name 17216100 --allocation-pool start=172.16.100.11,end=172.16.100.240  --dns-nameserver 114.114.114.114

用demo用户创建一个名叫100的路由器
neutron router-create 100

路由器添加一个接口接到172.16.100网段
neutron router-interface-add 100 17216100

换回admin用户,分配一个public的IP,并将它接到路由器100上
source admin-openrc.sh
neutron router-gateway-set 100 1040100 --fixed-ip ip_address=10.40.100.9

实践中证明,VM同时启动public 网络+private网络 2张网卡的需求不多,除非你的public网络是公网IP,并且模仿阿里云的公有云主机的双网卡方式的话,这个组合才是有用的。
因此,从我们的架构中可以看到,我们的public网段也是内网的,再启一个private内网网段就显得有些多余,后来实践证明,我们在创虚拟机时,只需要使用到的public网段,即可满足绝大部需求。

以上的配置你预先配置进去,也是不影响,如果你将来虚拟机有双网卡的需求的话,可以使用,但有个前提
VM虚拟机关联2张网卡,默认都会由2个DHCP发下2条默认网关路由,VM上的路由是会混乱的,有2种 方式可以解决,
1、需要在demo网页上把网络-内网的网段17216100有个网关的配置选 项禁用掉。这个17216100网关在DHCP下发时,不会带默认路由给VM
2、虚拟机上手工配置默认路由的优先级,为metric 10,优先级降低。则会去使用Public的默认路由。这样的话,操作比较麻烦
route add default gw 172.16.100.1 metric 10


按以上配法,建议了可用主机分配的IP尾数为13-250  (其中0-12是保留的)



验证:
source admin-openrc.sh

查看两台controller分别存了不同的DHCP和privat网关信息。但后缀有个id值 ,并且PING不通10.40.100.X网关。,这id是不应该出现的,后来查了,是iproute组件的一个bug,需要将iproute-3.10.0-54.el7.x86_64降成iproute-3.10.0-21.el7.x86_64
如果后续的openstack修复了这个BUG的话,那是皆大欢喜的。

[iyunv@controller1 ~]# ip netns
qdhcp-73fa5049-7293-414b-985e-b01a0588152a (id: 1)
qdhcp-4034ed8e-bafe-4695-9eab-29c6c1351216 (id: 0)
[iyunv@controller2 ~]# ip netns
qrouter-1caaf33f-1908-41f7-9415-9962734d6ca4 (id: 0)

降级iproute,所有的节点,同时降级。
Quick solution is to simple downgrade the package:
# wget http://mirror.centos.org/centos/7.1.1503/os/x86_64/Packages/iproute-3.10.0-21.el7.x86_64.rpm

# yum -y downgrade ./iproute-3.10.0-21.el7.x86_64.rpm

[iyunv@controller2 ~]# neutron router-port-list router
+--------------------------------------+------+-------------------+--------------------------------------------------------------------------------------+
| id                                   | name | mac_address       | fixed_ips                                                                            |
+--------------------------------------+------+-------------------+--------------------------------------------------------------------------------------+
| 05823abd-8546-4f81-8629-d03f55873178 |      | fa:16:3e:c1:33:29 | {"subnet_id": "877568a2-c97c-4bc3-8c22-451ddd2e7736", "ip_address": "172.16.1.1"}    |
| d8f3e28a-81ab-47a7-b4a6-4308a433c488 |      | fa:16:3e:d7:30:45 | {"subnet_id": "51d5b8e7-903a-46be-9e42-a3d5805c8df6", "ip_address": "10.40.100.9"} |
+--------------------------------------+------+-------------------+--------------------------------------------------------------------------------------+

ping 10.40.100.9
验证public桥接到demo路由器的网关外网连通性


(二)controller创建ssh key,并通过cloud-init注入VM方式 ,实现从controller免密登录VM的方式 ,这一步可以选择不做。

(三)接下来网络创建完后,配置防火墙

规则还是要放的。当然可以在dashboard网页上放开所有的TCP,UDP协议端口的外网访问

以下是传统使用命令方式放通demo租房防火墙。
source demo-openrc.sh

nova secgroup-add-rule default icmp -1 -1 0.0.0.0/0

nova secgroup-add-rule default tcp 22 22  0.0.0.0/0

创建一个实例前,验证定义的其它功能可用性
source demo-openrc.sh

nova flavor-list

nova image-list

neutron net-list

验证无问题,即可创建实例
通过dashboard网页上创建



  由于我们的Public网段的上联传统交换机,支持一个VLAN接口,配置多个网段,
我们除了创建10.40.100.X,我们还可以再创建其它网段,比如10.40.200.X
10.40.100.X  用于开发网段
10.40.200.X  用于测试网段
  新增网段示例如下
  使用admin用户
source admin-openrc.sh

声明public 1040100网段的第二个DHCP信息
neutron subnet-create 1040100 10.40.200.0/24 --name 1040200 \
  --allocation-pool start=10.40.200.10,end=10.40.200.240 \
  --dns-nameserver 114.114.114.114 --gateway 10.40.200.254

使用demo用户
source demo-openrc.sh
创建private网段17216200
neutron net-create 17216200

private网段17216200的DHCP声明
neutron subnet-create 17216200 172.16.200.0/24 --name 17216200 --allocation-pool start=172.16.200.11,end=172.16.200.240  --dns-nameserver 114.114.114.114

用demo用户创建一个名叫200的路由器
neutron router-create 200

路由器添加一个接口接到172.16.200网段
neutron router-interface-add 200 17216200

换回admin用户,分配一个public的IP,并将它接到路由器200上
source admin-openrc.sh
neutron router-gateway-set 200 1040100 --fixed-ip ip_address=10.40.200.9

运维网声明 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-388554-1-1.html 上篇帖子: OpenStack云桌面系列【1】—開始 下篇帖子: floating IP 原理分析
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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