List of usage examples for com.amazonaws.services.elasticloadbalancing.model Listener Listener
public Listener()
From source file:com.kpbird.aws.Main.java
public void createElasticLoadBalancing() { try {//from w w w . java2 s . co m AmazonElasticLoadBalancingClient aebc = new AmazonElasticLoadBalancingClient(credentials); aebc.setEndpoint(endPoint); aebc.setRegion(region); String instanceid = Util.getInstanceId(InstanceName, credentials, endPoint, region); String azone = Util.getAvailabilityZone(instanceid, credentials, endPoint, region); CreateLoadBalancerRequest cbr = new CreateLoadBalancerRequest(); cbr.setLoadBalancerName(elbName); ArrayList<Listener> arrListener = new ArrayList<Listener>(); arrListener.add(new Listener().withInstancePort(ListenerInstancePort) .withInstanceProtocol(ListenerInstanceProtocol).withLoadBalancerPort(ListenerPort) .withProtocol(ListenerProtocol)); cbr.setListeners(arrListener); ArrayList<String> arrAvailabilityZone = new ArrayList<String>(); arrAvailabilityZone.add(azone); cbr.setAvailabilityZones(arrAvailabilityZone); CreateLoadBalancerResult cbresult = aebc.createLoadBalancer(cbr); log.Info("DNS Name " + cbresult.getDNSName()); // wait for process complete ConfigureHealthCheckRequest chcr = new ConfigureHealthCheckRequest(); chcr.setLoadBalancerName(elbName); HealthCheck healthCK = new HealthCheck(); healthCK.withHealthyThreshold(HealthyThreshold); healthCK.withInterval(HealthInterval); healthCK.withTarget(HealthTarget); healthCK.withTimeout(HealthTimeout); healthCK.withUnhealthyThreshold(HealthUnhealthyThreshold); chcr.setHealthCheck(healthCK); aebc.configureHealthCheck(chcr); // wait for process complete RegisterInstancesWithLoadBalancerRequest riwbr = new RegisterInstancesWithLoadBalancerRequest(); riwbr.setLoadBalancerName(elbName); ArrayList<com.amazonaws.services.elasticloadbalancing.model.Instance> arrInstances = new ArrayList<com.amazonaws.services.elasticloadbalancing.model.Instance>(); com.amazonaws.services.elasticloadbalancing.model.Instance i = new com.amazonaws.services.elasticloadbalancing.model.Instance( instanceid); arrInstances.add(i); riwbr.setInstances(arrInstances); RegisterInstancesWithLoadBalancerResult riwbresult = aebc.registerInstancesWithLoadBalancer(riwbr); } catch (Exception e) { e.printStackTrace(); } }
From source file:com.zotoh.cloudapi.aws.ElasticLoadBalancer.java
License:Open Source License
@Override public String create(String name, String desc, String addrIgnoredByAWS, String[] zones, LbListener[] lis, String[] servers) throws CloudException, InternalException { tstEStrArg("load-balancer-name", name); tstObjArg("listeners", lis); tstObjArg("zones", zones); List<Listener> lst = LT(); Listener ln;/*w w w . j a v a2s .c om*/ LbListener lb; for (int i = 0; i < lis.length; ++i) { ln = new Listener(); lb = lis[i]; ln.setProtocol(strProtocol(lb.getNetworkProtocol())); ln.setInstancePort(lb.getPrivatePort()); ln.setLoadBalancerPort(lb.getPublicPort()); lst.add(ln); } CreateLoadBalancerResult res = _svc.getCloud().getELB().createLoadBalancer(new CreateLoadBalancerRequest() .withLoadBalancerName(name).withListeners(lst).withAvailabilityZones(zones)); return res == null ? null : res.getDNSName(); }
From source file:jp.primecloud.auto.process.aws.AwsLoadBalancerProcess.java
License:Open Source License
public String createLoadBalancer(AwsProcessClient awsProcessClient, Long loadBalancerNo) { AwsLoadBalancer awsLoadBalancer = awsLoadBalancerDao.read(loadBalancerNo); // ??//from ww w. j a va 2s .c o m CreateLoadBalancerRequest request = new CreateLoadBalancerRequest(); request.withLoadBalancerName(awsLoadBalancer.getName()); // ? Listener listener = new Listener(); listener.withProtocol("TCP"); listener.withLoadBalancerPort(65535); listener.withInstancePort(65535); request.withListeners(listener); // ?PVC?? if (BooleanUtils.isNotTrue(awsProcessClient.getPlatformAws().getVpc())) { // AvailabilityZones List<AvailabilityZone> availabilityZones = awsCommonProcess.describeAvailabilityZones(awsProcessClient); for (AvailabilityZone availabilityZone : availabilityZones) { request.withAvailabilityZones(availabilityZone.getZoneName()); } } // VPC?? else { // Subnet List<Subnet> subnets = awsCommonProcess.describeSubnetsByVpcId(awsProcessClient, awsProcessClient.getPlatformAws().getVpcId()); if (StringUtils.isNotEmpty(awsLoadBalancer.getSubnetId())) { for (String subnetId : StringUtils.split(awsLoadBalancer.getSubnetId(), ",")) { subnetId = subnetId.trim(); for (Subnet subnet : subnets) { if (StringUtils.equals(subnetId, subnet.getSubnetId())) { request.withSubnets(subnetId); break; } } } } else { // Subnet??????????AvailabilityZone?Subnet? Map<String, String> subnetIdMap = new LinkedHashMap<String, String>(); for (Subnet subnet : subnets) { if (BooleanUtils.isTrue(subnet.getDefaultForAz())) { subnetIdMap.put(subnet.getAvailabilityZone(), subnet.getSubnetId()); continue; } if (!subnetIdMap.containsKey(subnet.getAvailabilityZone())) { subnetIdMap.put(subnet.getAvailabilityZone(), subnet.getSubnetId()); } } request.withSubnets(subnetIdMap.values()); } // SecurytiGroup List<SecurityGroup> securityGroups = awsCommonProcess.describeSecurityGroupsByVpcId(awsProcessClient, awsProcessClient.getPlatformAws().getVpcId()); for (String groupName : StringUtils.split(awsLoadBalancer.getSecurityGroups(), ",")) { groupName = groupName.trim(); for (SecurityGroup securityGroup : securityGroups) { if (StringUtils.equals(groupName, securityGroup.getGroupName())) { request.withSecurityGroups(securityGroup.getGroupId()); break; } } } // Internal if (BooleanUtils.isTrue(awsLoadBalancer.getInternal())) { request.withScheme("internal"); } } // ??? CreateLoadBalancerResult result = awsProcessClient.getElbClient().createLoadBalancer(request); String dnsName = result.getDNSName(); if (log.isInfoEnabled()) { log.info(MessageUtils.getMessage("IPROCESS-200111", awsLoadBalancer.getName())); } // processLogger.debug(null, null, "AwsElbCreate", new Object[] { awsProcessClient.getPlatform().getPlatformName(), awsLoadBalancer.getName() }); // ?? DeleteLoadBalancerListenersRequest request2 = new DeleteLoadBalancerListenersRequest(); request2.withLoadBalancerName(awsLoadBalancer.getName()); request2.withLoadBalancerPorts(65535); awsProcessClient.getElbClient().deleteLoadBalancerListeners(request2); // ? ModifyLoadBalancerAttributesRequest request3 = new ModifyLoadBalancerAttributesRequest(); request3.withLoadBalancerName(awsLoadBalancer.getName()); request3.withLoadBalancerAttributes(new LoadBalancerAttributes() .withCrossZoneLoadBalancing(new CrossZoneLoadBalancing().withEnabled(true))); awsProcessClient.getElbClient().modifyLoadBalancerAttributes(request3); // processLogger.debug(null, null, "AwsCrossZoneEnabled", new Object[] { awsProcessClient.getPlatform().getPlatformName(), awsLoadBalancer.getName() }); // awsLoadBalancer = awsLoadBalancerDao.read(loadBalancerNo); awsLoadBalancer.setDnsName(dnsName); awsLoadBalancerDao.update(awsLoadBalancer); return dnsName; }
From source file:jp.primecloud.auto.process.aws.AwsLoadBalancerProcess.java
License:Open Source License
public void startListener(AwsProcessClient awsProcessClient, Long loadBalancerNo, Integer loadBalancerPort) { AwsLoadBalancer awsLoadBalancer = awsLoadBalancerDao.read(loadBalancerNo); LoadBalancerListener listener = loadBalancerListenerDao.read(loadBalancerNo, loadBalancerPort); try {/* ww w . j a v a 2 s. c om*/ // ? CreateLoadBalancerListenersRequest request = new CreateLoadBalancerListenersRequest(); request.withLoadBalancerName(awsLoadBalancer.getName()); Listener listener2 = new Listener(); listener2.withProtocol(listener.getProtocol()); listener2.withLoadBalancerPort(listener.getLoadBalancerPort()); listener2.withInstancePort(listener.getServicePort()); if (listener.getSslKeyNo() != null) { AwsSslKey awsSslKey = awsSslKeyDao.read(listener.getSslKeyNo()); listener2.withSSLCertificateId(awsSslKey.getSslcertificateid()); } request.withListeners(listener2); // ?? awsProcessClient.getElbClient().createLoadBalancerListeners(request); if (log.isInfoEnabled()) { log.info(MessageUtils.getMessage("IPROCESS-200121", awsLoadBalancer.getName(), listener.getLoadBalancerPort())); } // processLogger.debug(null, null, "AwsElbListenerCreate", new Object[] { awsProcessClient.getPlatform().getPlatformName(), awsLoadBalancer.getName(), listener.getLoadBalancerPort() }); } catch (RuntimeException e) { // listener = loadBalancerListenerDao.read(loadBalancerNo, loadBalancerPort); listener.setStatus(LoadBalancerListenerStatus.WARNING.toString()); loadBalancerListenerDao.update(listener); throw e; } // listener = loadBalancerListenerDao.read(loadBalancerNo, loadBalancerPort); listener.setStatus(LoadBalancerListenerStatus.RUNNING.toString()); listener.setConfigure(false); loadBalancerListenerDao.update(listener); }
From source file:web.component.impl.aws.AWSELBImpl.java
private Listener getDefaultHttpListener() { return new Listener().withInstancePort(80).withLoadBalancerPort(80).withInstanceProtocol("HTTP") .withProtocol("HTTP"); }
From source file:web.component.impl.aws.AWSELBImpl.java
private Listener getDefaultHttpsListener(String certificateId) { return new Listener().withInstancePort(443).withLoadBalancerPort(443).withInstanceProtocol("HTTPS") .withProtocol("HTTPS").withSSLCertificateId(certificateId); }
From source file:web.component.impl.aws.model.LoadBalancerListenerImpl.java
private static LoadBalancerListener create(Builder builder) { Listener newListener = new Listener().withInstancePort(builder.instancePort) .withInstanceProtocol(builder.instanceProtocol).withLoadBalancerPort(builder.servicePort) .withProtocol(builder.serviceProtocol).withSSLCertificateId(builder.certificateId); return new LoadBalancerListenerImpl(newListener); }
From source file:web.component.impl.aws.model.LoadBalancerListenerImpl.java
private Listener copyElbListener(Listener source) { return new Listener().withInstancePort(source.getInstancePort()) .withInstanceProtocol(source.getInstanceProtocol()) .withLoadBalancerPort(source.getLoadBalancerPort()).withProtocol(source.getProtocol()) .withSSLCertificateId(source.getSSLCertificateId()); }