protected Set<Ip> getVmsToDestroy(Network network, List<LoadBalancingRule> rules) { //1) Group rules by the source ip address as NetworkManager always passes the entire network lb config to the element Set<Ip> lbPublicIps = new HashSet<Ip>(); Set<Ip> vmsToDestroy = new HashSet<Ip>(); for (LoadBalancingRule rule : rules) { lbPublicIps.add(rule.getSourceIp()); } for (Ip sourceIp : lbPublicIps) { //2) Check if there are non revoked rules for the source ip address if (_appLbDao.countBySourceIpAndNotRevoked(sourceIp, network.getId()) == 0) { s_logger.debug("Have to destroy internal lb vm for source ip " + sourceIp + " as it has 0 rules in non-Revoke state"); vmsToDestroy.add(sourceIp); } } return vmsToDestroy; }
protected Map<Ip, List<LoadBalancingRule>> groupBySourceIp(List<LoadBalancingRule> rules) { Map<Ip, List<LoadBalancingRule>> groupedRules = new HashMap<Ip, List<LoadBalancingRule>>(); for (LoadBalancingRule rule : rules) { if (rule.getDestinations() != null && !rule.getDestinations().isEmpty()) { Ip sourceIp = rule.getSourceIp(); if (!groupedRules.containsKey(sourceIp)) { groupedRules.put(sourceIp, null); } List<LoadBalancingRule> rulesToApply = groupedRules.get(sourceIp); if (rulesToApply == null) { rulesToApply = new ArrayList<LoadBalancingRule>(); } rulesToApply.add(rule); groupedRules.put(sourceIp, rulesToApply); } else { s_logger.debug("Internal lb rule " + rule + " doesn't have any vms assigned, skipping"); } } return groupedRules; }
String algorithm = rule.getAlgorithm(); String lbUuid = rule.getUuid(); String srcIp = rule.getSourceIp().addr(); int srcPort = rule.getSourcePortStart(); List<LbDestination> destinations = rule.getDestinations();
protected DomainRouterVO findElbVmForLb(LoadBalancingRule lb) {//TODO: use a table to lookup Network ntwk = _networkModel.getNetwork(lb.getNetworkId()); long sourceIpId = _networkModel.getPublicIpAddress(lb.getSourceIp().addr(), ntwk.getDataCenterId()).getId(); ElasticLbVmMapVO map = _elbVmMapDao.findOneByIp(sourceIpId); if (map == null) { return null; } DomainRouterVO elbVm = _routerDao.findById(map.getElbVmId()); return elbVm; }
String algorithm = rule.getAlgorithm(); String lbUuid = rule.getUuid(); String srcIp = rule.getSourceIp().addr(); int srcPort = rule.getSourcePortStart(); List<LbDestination> destinations = rule.getDestinations();
long sourceIpId = _networkModel.getPublicIpAddress(rules.get(0).getSourceIp().addr(), network.getDataCenterId()).getId(); List<LoadBalancerVO> lbs = _lbDao.listByIpAddress(sourceIpId); List<LoadBalancingRule> lbRules = new ArrayList<LoadBalancingRule>();
String algorithm = rule.getAlgorithm(); String uuid = rule.getUuid(); String srcIp = rule.getSourceIp().addr(); int srcPort = rule.getSourcePortStart(); List<LbDestination> destinations = rule.getDestinations(); long sourceIpId = _networkModel.getPublicIpAddress(rule.getSourceIp().addr(), network.getDataCenterId()).getId(); MappingNic nic = getLoadBalancingIpNic(zone, network, sourceIpId, revoked, null); mappingStates.add(nic.getState());
String algorithm = rule.getAlgorithm(); String uuid = rule.getUuid(); String srcIp = rule.getSourceIp().addr(); String srcIpVlan = null; String srcIpGateway = null; String srcIpNetmask = null; Long vlanid = _networkModel.getPublicIpAddress(rule.getSourceIp().addr(), network.getDataCenterId()).getVlanId(); if(vlanid != null ) { VlanVO publicVlan = _vlanDao.findById(vlanid); long ipId = _networkModel.getPublicIpAddress(rule.getSourceIp().addr(), network.getDataCenterId()).getId(); MappingNic nic = getLoadBalancingIpNic(zone, network, ipId, revoked, null); mappingStates.add(nic.getState()); continue; long sourceIpId = _networkModel.getPublicIpAddress(rule.getSourceIp().addr(), network.getDataCenterId()).getId(); getLoadBalancingIpNic(zone, network, sourceIpId, revoke, existedGuestIp);
String algorithm = rule.getAlgorithm(); String elbIp = rule.getSourceIp().addr(); int srcPort = rule.getSourcePortStart(); String uuid = rule.getUuid();
final String uuid = rule.getUuid(); final String srcIp = rule.getSourceIp().addr(); final int srcPort = rule.getSourcePortStart(); final List<LbDestination> destinations = rule.getDestinations();
final String uuid = rule.getUuid(); final String srcIp = rule.getSourceIp().addr(); final int srcPort = rule.getSourcePortStart(); final List<LbDestination> destinations = rule.getDestinations();