cloudstack vpc network egress-ingress rules
来源:互联网 发布:mac芒果tv下载视频 编辑:程序博客网 时间:2024/06/06 14:08
1、添加VPC网络的ACL规则项(访问控制列表,作用类似防火墙规则)
(1) 发往management的api命令为CreateNetworkACLCmd
CreateNetworkACLCmd extends BaseAsyncCreateCmd
因此,在management中通过api调度模块执行CreateNetworkACLCmd的create()和execute()方法。
(2) 在create方法执行中会向cloud数据库network_acl_item表插入一条记录。
(3)在execute方法执行过程中,会对VPC赋为该ACL规则的tier,privateGateway应用该规则,即生成SetNetworkACLCommand发送到VPC VR所在的hostId。
(4)在agent上启动unix进程执行router_proxy.sh vpc_acl.sh或vpc_privategw_acl.sh routeIp ruleargs。
图1、VPC ACL rule item add in mgt
2、更新VPC网络的ACL规则项
(1) 发往management的api命令为UpdateNetworkACLItemCmd
UpdateNetworkACLItemCmd extends BaseAsyncCustomIdCmd
因此,在management中通过api调度模块执行UpdateNetworkACLItemCmd的execute()方法。
(2)在execute方法执行过程中,先对数据库中ACL规则项修改进行更新,之后 会对VPC赋为该ACL规则的tier,privateGateway应用该规则。(后同添加VPC网络的ACL规则项的执行路径)
3、删除VPC网络的ACL规则项
(1) 发往management的api命令为DeleteNetworkACLCmd
DeleteNetworkACLCmd extends BaseAsyncCmd
因此,在management中通过api调度模块执行DeleteNetworkACLCmd的execute()方法。
(2)在execute方法执行过程中,先对数据库中ACL规则项修改进行更新,其state设为revoke,之后 会对VPC赋为该ACL规则的tier,privateGateway应用该规则。(后同添加VPC网络的ACL规则项的执行路径)
图2、VPC ACL item del
4、创建VPC public loadbalance规则
(1) 发往management的api命令为createLoadBalancerRuleCmd
createLoadBalancerRuleCmd extends BaseAsyncCreateCmd
因此,在management中通过api调度模块执行createLoadBalancerRuleCmd的create()和execute()方法。
(2) 在create方法执行中会向cloud数据库load_balancing_rules表插入一条记录。
(3)在execute方法执行过程中,仅仅根据数据库中load_balancing_rules表查找到的新记录构建返回结果。
5、为一个或多个VM赋pblic loadbalance规则
(1) 发往management的api命令为AssignToLoadBalancerRuleCmd
AssignToLoadBalancerRuleCmdextends BaseAsyncCmd
因此,在management中通过api调度模块执行AssignToLoadBalancerRuleCmd的execute()方法。
(2) 在execute方法执行过程中,发送LoadBalancerConfigCommand发送到vpc VR所在的hostId配置VPC VR的haproxy。
6、为一个或多个VM删除pblic loadbalance规则
(1) 发往management的api命令为RemoveFromLoadBalancerRuleCmd
RemoveFromLoadBalancerRuleCmd extends BaseAsyncCmd
因此,在management中通过api调度模块执行RemoveFromLoadBalancerRuleCmd的execute()方法。
(2)在execute方法执行过程中,对数据库中load_balancer_vm_map将对应的id的revoke字段设为1, 发送LoadBalancerConfigCommand发送到vpc VR所在的hostId配置VPC VR的haproxy。
7、删除VPC public loadbalance规则
(1) 发往management的api命令为DeleteLoadBalancerRuleCmd
DeleteLoadBalancerRuleCmd extends BaseAsyncCmd
因此,在management中通过api调度模块执行DeleteLoadBalancerRuleCmd的execute()方法。
(2)在execute方法执行过程中,先执行删除Ingress firewall rule(发送SetFirewallRulesCommand到vpc VR所在agent上),在删除loadbalance rule(发送LoadBalancerConfigCommand发送到vpc VR所在的hostId)。
8、与VM作staticNat
(1) 发往management的api命令为EnableStaticNatCmd
EnableStaticNatCmdextends BaseCmd
因此,在management中通过api调度模块执行EnableStaticNatCmd的execute()方法。
(2)在execute方法执行过程中,发送SetStaticNatRulesCommand到vpc VR所在的hostId。
(3) 在agent上启动unix进程执行router_proxy.sh vpc_staticnat.sh routeIp ruleargs (若是guestNetwork,则执行router_proxy.sh firewall_nat.sh routeIp ruleargs)。
9、取消与VM作staticNat
(1) 发往management的api命令为DisableStaticNatCmd
DisableStaticNatCmd extends BaseAsyncCmd
因此,在management中通过api调度模块执行DisableStaticNatCmd的execute()方法。
(2)在execute方法执行过程中,发送SetStaticNatRulesCommand到vpc VR所在的hostId。
(3) 在agent上启动unix进程执行router_proxy.sh vpc_staticnat.sh routeIp ruleargs (若是guestNetwork,则执行router_proxy.sh firewall_nat.sh routeIp ruleargs)。
10、创建VPC port forwarding规则
createPortForwardingRule
与geustnetwork同样的执行路径。
11、删除VPC port forwarding规则
deletePortForwardingRule
与geustnetwork同样的执行路径。
(1) 发往management的api命令为CreateNetworkACLCmd
CreateNetworkACLCmd extends BaseAsyncCreateCmd
因此,在management中通过api调度模块执行CreateNetworkACLCmd的create()和execute()方法。
(2) 在create方法执行中会向cloud数据库network_acl_item表插入一条记录。
(3)在execute方法执行过程中,会对VPC赋为该ACL规则的tier,privateGateway应用该规则,即生成SetNetworkACLCommand发送到VPC VR所在的hostId。
(4)在agent上启动unix进程执行router_proxy.sh vpc_acl.sh或vpc_privategw_acl.sh routeIp ruleargs。
图1、VPC ACL rule item add in mgt
2、更新VPC网络的ACL规则项
(1) 发往management的api命令为UpdateNetworkACLItemCmd
UpdateNetworkACLItemCmd extends BaseAsyncCustomIdCmd
因此,在management中通过api调度模块执行UpdateNetworkACLItemCmd的execute()方法。
(2)在execute方法执行过程中,先对数据库中ACL规则项修改进行更新,之后 会对VPC赋为该ACL规则的tier,privateGateway应用该规则。(后同添加VPC网络的ACL规则项的执行路径)
3、删除VPC网络的ACL规则项
(1) 发往management的api命令为DeleteNetworkACLCmd
DeleteNetworkACLCmd extends BaseAsyncCmd
因此,在management中通过api调度模块执行DeleteNetworkACLCmd的execute()方法。
(2)在execute方法执行过程中,先对数据库中ACL规则项修改进行更新,其state设为revoke,之后 会对VPC赋为该ACL规则的tier,privateGateway应用该规则。(后同添加VPC网络的ACL规则项的执行路径)
图2、VPC ACL item del
4、创建VPC public loadbalance规则
(1) 发往management的api命令为createLoadBalancerRuleCmd
createLoadBalancerRuleCmd extends BaseAsyncCreateCmd
因此,在management中通过api调度模块执行createLoadBalancerRuleCmd的create()和execute()方法。
(2) 在create方法执行中会向cloud数据库load_balancing_rules表插入一条记录。
(3)在execute方法执行过程中,仅仅根据数据库中load_balancing_rules表查找到的新记录构建返回结果。
5、为一个或多个VM赋pblic loadbalance规则
(1) 发往management的api命令为AssignToLoadBalancerRuleCmd
AssignToLoadBalancerRuleCmdextends BaseAsyncCmd
因此,在management中通过api调度模块执行AssignToLoadBalancerRuleCmd的execute()方法。
(2) 在execute方法执行过程中,发送LoadBalancerConfigCommand发送到vpc VR所在的hostId配置VPC VR的haproxy。
6、为一个或多个VM删除pblic loadbalance规则
(1) 发往management的api命令为RemoveFromLoadBalancerRuleCmd
RemoveFromLoadBalancerRuleCmd extends BaseAsyncCmd
因此,在management中通过api调度模块执行RemoveFromLoadBalancerRuleCmd的execute()方法。
(2)在execute方法执行过程中,对数据库中load_balancer_vm_map将对应的id的revoke字段设为1, 发送LoadBalancerConfigCommand发送到vpc VR所在的hostId配置VPC VR的haproxy。
7、删除VPC public loadbalance规则
(1) 发往management的api命令为DeleteLoadBalancerRuleCmd
DeleteLoadBalancerRuleCmd extends BaseAsyncCmd
因此,在management中通过api调度模块执行DeleteLoadBalancerRuleCmd的execute()方法。
(2)在execute方法执行过程中,先执行删除Ingress firewall rule(发送SetFirewallRulesCommand到vpc VR所在agent上),在删除loadbalance rule(发送LoadBalancerConfigCommand发送到vpc VR所在的hostId)。
8、与VM作staticNat
(1) 发往management的api命令为EnableStaticNatCmd
EnableStaticNatCmdextends BaseCmd
因此,在management中通过api调度模块执行EnableStaticNatCmd的execute()方法。
(2)在execute方法执行过程中,发送SetStaticNatRulesCommand到vpc VR所在的hostId。
(3) 在agent上启动unix进程执行router_proxy.sh vpc_staticnat.sh routeIp ruleargs (若是guestNetwork,则执行router_proxy.sh firewall_nat.sh routeIp ruleargs)。
9、取消与VM作staticNat
(1) 发往management的api命令为DisableStaticNatCmd
DisableStaticNatCmd extends BaseAsyncCmd
因此,在management中通过api调度模块执行DisableStaticNatCmd的execute()方法。
(2)在execute方法执行过程中,发送SetStaticNatRulesCommand到vpc VR所在的hostId。
(3) 在agent上启动unix进程执行router_proxy.sh vpc_staticnat.sh routeIp ruleargs (若是guestNetwork,则执行router_proxy.sh firewall_nat.sh routeIp ruleargs)。
10、创建VPC port forwarding规则
createPortForwardingRule
与geustnetwork同样的执行路径。
11、删除VPC port forwarding规则
deletePortForwardingRule
与geustnetwork同样的执行路径。
0 0
- cloudstack vpc network egress-ingress rules
- cloudstack GuestNetwork Ingress-Egress rule
- cloudstack guestnetwork vpc ingress/ergess介绍
- 使用CloudStack的VPC功能
- vpc
- VPC
- Windows Mobile Emulator:Failed to open the VPC Network Driver.
- cloudstack
- CloudStack
- CloudStack
- Cloudstack
- Rules
- Rules
- Rules
- Rules
- Tip: [VPC] host-to-guest networking and file sharing without external network
- wince emulator 连网错误:failed to open the vpc network driver
- Ingress qdisc
- grunt学习笔记四:grunt实例demo
- 几种类间关系:继承、实现、依赖、关联、聚合、组合及UML实现图
- Junit测试用例配置Log4j
- Android.mk多级目录源码的编写
- 使用oc来创建项目和button的使用
- cloudstack vpc network egress-ingress rules
- Android开发历程之六
- grunt学习笔记五:grunt模板
- Shell脚本教程
- 编写Android.mk中的LOCAL_SRC_FILES的终极技巧
- 编译型与解释型、动态语言与静态语言、强类型语言与弱类型语言的区别
- RSA私钥及公钥生成
- iOS button设置背景图片后,设置cornerRadius没效果的问题
- grunt学习笔记六:插件介绍