我正在尝试自动调整我现在的实例,我现在正在运行一个中型实例,并使用小实例自动缩放。我使用命令行工具来配置设置,这是我用来缩放的配置,除了我的常规实例之外,我正在运行至少一个实例,这意味着多一个实例,并且我已经连接到负载均衡器。
S-创建-自动缩放-组名称-启动-配置启动配置-可用性-区域ap-东南-1a-min-尺寸1-最大-5-大小-负载平衡器推动
但是当我检查负载平衡器时,它说“停止服务”的原因是“至少连续健康检查的不健康阈值数失败了”。如何解决这个问题,使用它的公共DNS,我不能从实例获得任何响应,也不能从它获得ssh,因为键值对没有附加到新创建的实例。
problem.How是什么?我能解决这个问题。
请帮助我解决它的小急事,因为我是在这一点上从近两天。
as-describe-launch-configs --show-long --headers
testLC,ami-e8c4bdba,t1.micro,(nil),(nil),(nil),(nil),default,2012-02-03T07:14:54.461Z,true,arn:aws:autoscaling:ap-southeast-1:346266270015:launchConfiguration:175a16db-1f6a-4514-9233-ac7cb34bca90:launchConfigurationName/testLC
as-describe-auto-scaling-groups --show-long --headers
testASG,testLC,ap-southeast-1a,2012-02-03T07:19:10.706Z,prod,EC2,1,5,1,300,0,(nil),(nil),arn:aws:autoscaling:ap-southeast-1:346266270015:autoScalingGroup:c4b584d0-bac4-4507-b972-4fc2b1bc53ac:autoScalingGroupName/testASG,(nil)
as-describe-auto-scaling-instances
i-43796716 testASG ap-southeast-1a InService HEALTHY testLC
elb-describe-lbs --headers --show-long
prod,prod-11719395.ap-southeast-1.elb.amazonaws.com,prod-11719395.ap-southeast-1.elb.amazonaws.com,Z1WI8VXHPB1R38,"{interval=120,target=HTTP:80/user/sign_in/,timeout=30,healthy-threshold=5,unhealthy-threshold=3}",ap-southeast-1a,(nil),(nil),"i-495dda1c, i-43796716","{protocol=HTTP,lb-port=80,instance-protocol=HTTP,instance-port=80,policies=AWSConsolePolicy-1}",(nil),"{policy-name=AWSConsolePolicy-1,expiration-period=180}","{owner-alias=amazon-elb,group-name=amazon-elb-sg}",(nil),2012-02-01T10:36:08.810Z
elb-describe-instance-health loadbalancername --headers --show-long
INSTANCE_ID,i-495dda1c,InService,N/A,N/A
INSTANCE_ID,i-43796716,OutOfService,Instance has failed at least the UnhealthyThreshold number of health checks consecutively.,Instance发布于 2012-02-04 08:27:09
这里有一些需要考虑的因素。首先,解决了最有限的问题-- SSH接入的不足。
由于您以前的启动配置没有指定键区,因此您将没有访问实例的有效凭据。不幸的是,启动实例后无法添加初始键区。
要解决这个问题,除了之前传递的所有参数之外,还必须创建一个新的启动配置,传递--key和--group参数。--key使用要使用的键区的名称,而--group则使用安全组名称(如果不在VPC中)或ID。
在无法访问实例的情况下,控制台日志可以帮助您验证实例是否已成功启动。一个常见的问题是由于缺少卷而导致启动失败(特别是在引导较小的实例类型时,试图挂载仅存在于较大实例类型上的短暂卷)。
需要注意的一点是,如果更改正在运行的实例,则不会更新AMI。必须显式创建新图像。因此,如果尝试使用当前在自定义实例上使用的相同的AMI启动新实例,则很有可能只是启动默认的AMI之一,而不是在其上使用自定义。
使用ec2-describe-images来确定映像的块设备映射-以及卷所基于的快照-这将验证您将安装一个包含自定义的EBS卷。
如果您没有最新的AMI可用于自动标度:
ec2-register -n IMAGE_NAME -s SNAPSHOT_ID 创建AMI--block-device-mapping (-b)参数(例如-b /dev/xvdf=SNAP_ID)来指定这些卷。ec2-describe-images验证是否有正确的块设备映射一旦您有了最新的AMI,就需要创建一个使用这个AMI的新启动配置。如果需要,可以将其他块设备映射传递给命令。使用as-create-launch-config,将新的AMI和以前使用的所有参数传递给它。
最后,必须更新自动标度组。此组与特定的启动配置相关联-新的启动配置将不会被自动检测到,并且在您显式关联之前不会对自动标度组产生任何影响。使用as-update-auto-scaling-group GROUP_NAME --launch-configuration CONFIG_NAME进行此更改。
一旦进行了更改,就可以使用as-execute命令模拟自动标号事件。
记得给你的实例几分钟来启动--如果你的电子束显示实例是不健康的,你可能想增加自动标度组的--grace-period。
https://serverfault.com/questions/356178
复制相似问题