private static String getRouterSshControlIp(final NetworkElementCommand cmd) { final String routerIp = cmd.getAccessDetail(NetworkElementCommand.ROUTER_IP); final String routerGuestIp = cmd.getAccessDetail(NetworkElementCommand.ROUTER_GUEST_IP); final String zoneNetworkType = cmd.getAccessDetail(NetworkElementCommand.ZONE_NETWORK_TYPE); if (routerGuestIp != null && zoneNetworkType != null && NetworkType.valueOf(zoneNetworkType) == NetworkType.Basic) { if (s_logger.isDebugEnabled()) { s_logger.debug("In Basic zone mode, use router's guest IP for SSH control. guest IP : " + routerGuestIp); } return routerGuestIp; } if (s_logger.isDebugEnabled()) { s_logger.debug("Use router's private IP for SSH control. IP : " + routerIp); } return routerIp; }
@Override public List<ConfigItem> generateConfig(final NetworkElementCommand cmd) { final SetMonitorServiceCommand command = (SetMonitorServiceCommand) cmd; final MonitorService monitorService = new MonitorService(command.getConfiguration(), cmd.getAccessDetail(NetworkElementCommand.ROUTER_MONITORING_ENABLE)); return generateConfigItems(monitorService); }
final SetNetworkACLCommand command = (SetNetworkACLCommand) cmd; final String privateGw = cmd.getAccessDetail(NetworkElementCommand.VPC_PRIVATE_GATEWAY);
@Override public List<ConfigItem> generateConfig(final NetworkElementCommand cmd) { final LoadBalancerConfigCommand command = (LoadBalancerConfigCommand) cmd; final LoadBalancerConfigurator cfgtr = new HAProxyConfigurator(); final String[] configuration = cfgtr.generateConfiguration(command); String routerIp = command.getNic().getIp(); if (command.getVpcId() == null) { routerIp = cmd.getAccessDetail(NetworkElementCommand.ROUTER_IP); } final String tmpCfgFilePath = "/etc/haproxy/"; final String tmpCfgFileName = "haproxy.cfg.new." + String.valueOf(System.currentTimeMillis()); final String[][] allRules = cfgtr.generateFwRules(command); final String[] addRules = allRules[LoadBalancerConfigurator.ADD]; final String[] removeRules = allRules[LoadBalancerConfigurator.REMOVE]; final String[] statRules = allRules[LoadBalancerConfigurator.STATS]; final LoadBalancerRule loadBalancerRule = new LoadBalancerRule(configuration, tmpCfgFilePath, tmpCfgFileName, addRules, removeRules, statRules, routerIp); final List<LoadBalancerRule> rules = new LinkedList<LoadBalancerRule>(); rules.add(loadBalancerRule); final LoadBalancerRules configRules = new LoadBalancerRules(rules); return generateConfigItems(configRules); }
public Answer executeRequest(final NetworkElementCommand cmd) { boolean aggregated = false; String routerName = cmd.getAccessDetail(NetworkElementCommand.ROUTER_NAME); Lock lock; if (_vrLockMap.containsKey(routerName)) {
@Override public ExecutionResult prepareCommand(NetworkElementCommand cmd) { // Update IP used to access router cmd.setRouterAccessIp(cmd .getAccessDetail(NetworkElementCommand.ROUTER_IP)); assert cmd.getRouterAccessIp() != null; if (cmd instanceof IpAssocVpcCommand) { return prepareNetworkElementCommand((IpAssocVpcCommand) cmd); } else if (cmd instanceof IpAssocCommand) { return prepareNetworkElementCommand((IpAssocCommand) cmd); } else if (cmd instanceof SetupGuestNetworkCommand) { return prepareNetworkElementCommand((SetupGuestNetworkCommand) cmd); } else if (cmd instanceof SetSourceNatCommand) { return prepareNetworkElementCommand((SetSourceNatCommand) cmd); } return new ExecutionResult(true, null); }
@Override public ExecutionResult prepareCommand(final NetworkElementCommand cmd) { //Update IP used to access router cmd.setRouterAccessIp(cmd.getAccessDetail(NetworkElementCommand.ROUTER_IP)); assert cmd.getRouterAccessIp() != null; if (cmd instanceof IpAssocVpcCommand) { return prepareNetworkElementCommand((IpAssocVpcCommand)cmd); } else if (cmd instanceof IpAssocCommand) { return prepareNetworkElementCommand((IpAssocCommand)cmd); } else if (cmd instanceof SetupGuestNetworkCommand) { return prepareNetworkElementCommand((SetupGuestNetworkCommand)cmd); } else if (cmd instanceof SetSourceNatCommand) { return prepareNetworkElementCommand((SetSourceNatCommand)cmd); } return new ExecutionResult(true, null); }
@Override public ExecutionResult prepareCommand(final NetworkElementCommand cmd) { // Update IP used to access router cmd.setRouterAccessIp(cmd.getAccessDetail(NetworkElementCommand.ROUTER_IP)); assert cmd.getRouterAccessIp() != null; if (cmd instanceof IpAssocVpcCommand) { return prepareNetworkElementCommand((IpAssocVpcCommand)cmd); } else if (cmd instanceof IpAssocCommand) { return prepareNetworkElementCommand((IpAssocCommand)cmd); } else if (cmd instanceof SetupGuestNetworkCommand) { return prepareNetworkElementCommand((SetupGuestNetworkCommand)cmd); } else if (cmd instanceof SetSourceNatCommand) { return prepareNetworkElementCommand((SetSourceNatCommand)cmd); } else if (cmd instanceof SetNetworkACLCommand) { return prepareNetworkElementCommand((SetNetworkACLCommand)cmd); } return new ExecutionResult(true, null); }