以下是使用AWS自动缩放和应用负载均衡器将请求路由到应用程序不同端点的解决方法的代码示例:
import boto3
client = boto3.client('elbv2', region_name='your_region')
response = client.create_load_balancer(
Name='my-load-balancer',
Subnets=[
'subnet-12345678',
'subnet-23456789'
],
SecurityGroups=[
'sg-12345678'
],
Type='application',
Scheme='internet-facing',
IpAddressType='ipv4'
)
load_balancer_arn = response['LoadBalancers'][0]['LoadBalancerArn']
response = client.create_target_group(
Name='my-target-group',
Protocol='HTTP',
Port=80,
VpcId='vpc-12345678'
)
target_group_arn = response['TargetGroups'][0]['TargetGroupArn']
response = client.register_targets(
TargetGroupArn=target_group_arn,
Targets=[
{
'Id': 'i-12345678',
'Port': 80,
},
{
'Id': 'i-23456789',
'Port': 80,
},
]
)
client = boto3.client('autoscaling', region_name='your_region')
response = client.create_auto_scaling_group(
AutoScalingGroupName='my-auto-scaling-group',
LaunchTemplate={
'LaunchTemplateName': 'my-launch-template',
'Version': '$Latest'
},
MinSize=2,
MaxSize=4,
DesiredCapacity=2,
TargetGroupARNs=[
target_group_arn
],
VPCZoneIdentifier='subnet-12345678,subnet-23456789',
)
通过以上步骤,你已经创建了一个应用负载均衡器,将请求路由到不同的应用程序端点,并使用自动缩放组进行动态扩容和缩容。请根据实际需求修改代码中的参数和配置。