前提: 已经安装好cloudstack 并登陆至管理界面 本文使用的版本为4.3版本linux
安装能够看官方文档shell
http://docs.cloudstack.apache.org/projects/cloudstack-installation/en/latest/apache
声明: 本文只是方便你们理解高级网络 并能够单机作实验vim
本文中只使用1台物理机 (centos6.x kvm) (如需多台 须要有支持vlan的交换机)centos
本实验pc机网卡配置以下安全
vim /etc/sysconfig/network-scripts/ifcfg-eth0 eth0 DEVICE="eth0" ONBOOT="yes" BRIDGE=br0 vim /etc/sysconfig/network-scripts/ifcfg-br0 DEVICE=br0 ONBOOT=yes TYPE=Bridge BOOTPROTO=none IPADDR=192.168.2.254 NETMASK=255.255.255.0 GATEWAY=192.168.2.1 DNS1=114.114.114.114 STP=on DELAY=0
网络规划 网络
网络类型 | Ip范围 | Vlan | 备注 |
Pubilc Network (公网ip) |
192.168.2.100-120 | 无 | 网卡标签br0 |
Management Networkssh (管理网络)spa |
192.168.2.200-220 | 无 | 网卡标签br0 |
Guest Network (实例网络、租户网络) |
Ioslate网络或者自定义网络(须要建立) | 无 | 网卡标签br0 |
cloudstack的网络能够这么理解code
简单网络模式
你在一台pc上建立了一台虚拟机 网卡模式用的是桥接 这台虚拟机的ip 和你宿主机就是一个网络里的了 这个能够理解为cloudstack的简单网络,简单网络中的隔离是经过安全组 也就是iptable转发规则来实现 隔离的
高级网络模式
你在一台pc上建立了一台虚拟机 网卡模式选用的桥接,可是你想把这台虚机的网络和你宿主机网络分开,这时候你能够把虚拟机的ip换成别的网段就能够了(即网段隔离)固然也可使用vlan 例如你把虚拟机桥接的网卡加个vlan标签 就算用同个网段也是互相不能访问的 cloudstack就是经过在建立实例的时候 将实例的网卡配置成带vlan标签的 这样就能够实现与物理机 及不一样网络之间的隔离,隔离后 须要各个网络之间通讯 怎么办? 这时候就有了虚拟路由器 一个网口接A网络 一个网口接B网络 来个转发规则 就能够实现了各个网络之间的通讯 。固然高级模式中还有自定义网络。
小知识: linux中网卡配置vlan简单介绍
若网卡名字为ifcfg-eth0
建立一个vlan为100的虚拟网卡 只需新加个 ifcfg-eth0.100 便可
高级网络模式中各类流量能够用网卡vlan分开
本文中 存储 管理 公网 的流量都采用 同网段 不打标签的vlan
建立出来的实例 若是选用isolate网络 建立出的虚机的网卡是打vlan标签的
即没法直接访问到实例ip 能够用公网ip(模拟公网 理解为对外提供服务的便可)作静态nat 映射到须要访问的实例ip
配置步骤以下:(图片仅供参考 你须要根据本身的网络规划来填写)
选择高级模式
改下dns就好 (这个dns是给系统虚机用的)(最近8.8.8.8 很差用)
编辑用到的流量标签
改成br0 (桥接网卡的名字)
添加公网ip段 (vlan 留空很重要)
添加系统预留ip
vlan 段 能够随便写 (要是你交换机支持vlan 那就得根据你交换机支持多少个vlan配置)
选择kvm
添加主机 (本文中主机就一个)
添加主存储
添加辅助存储
而后启动吧
启动过程当中能够去看管理端 和agent端的log
tail -f /var/log/cloudstack/management/catalina.out
tail -f /var/log/cloudstack/agent/agent.log
启动成功后
要建立实例 须要新建个 实例用的网络
添加个网络 (另外个 添加选项是能够添加 自定义的网络 能够理解为给实例添加自定义的网卡)
填个网关就能够 使用此网络 实例的ip 会从这个子网中随机取 这个网络是vlan进行隔离的 vlan号 就是从咱们刚才定义的vlan范围中随机拿的
而后建立实例的时候选择刚刚建立的那个网络 启动 就能够了 实例
而后能够看到实例的ip
这时候是没法直接访问到实例的 实例的网卡有vlan
咱们只能访问到公网IP
因此须要拿个公网IP 作下配置
点开咱们新建的网络
得到一个新的公网ip (注意到没 那个soucre nat ,实例就是经过那个ip上网的)
点开那个公网IP 而后配置防火墙 和 端口转发 (左下角那个就是负责均衡 )
由于我新建的实例是linux 我就开22端口转发 (那个public的端口 是能够自定义的 图方便 就都22了)
防火墙的配置 第一行 能够ping 第二行 开放22端口 (若是你端口映射的时候public 端口不是22 那你得开放那个端口)
好了 如今你能够 ssh 公网ip 就能够登录到实例了
最后; 但愿本文能够帮助你理解cloudstack的高级网络