Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Sie können benutzerdefinierte Zustandsprüfungen verwenden, um die bestehenden Zustandsprüfungsoptionen von Amazon EC2 Auto Scaling zu ergänzen. Durch die Kombination von benutzerdefinierten Zustandsprüfungen mit den anderen Zustandsprüfungsarten können Sie ein umfassendes System zur Gesundheitsüberwachung erstellen, das auf die Bedürfnisse Ihrer Anwendung zugeschnitten ist.
Erstellen Sie zunächst benutzerdefinierte Tests, um zu überprüfen, ob die Instances in Ihrer Auto Scaling Scaling-Gruppe ordnungsgemäß funktionieren und eingehenden Datenverkehr verarbeiten können. Wenn die von Ihnen konfigurierte Zustandsprüfung feststellt, dass eine Instance nicht reagiert, markieren Sie diese bestimmte Instance alsUnhealthy
, sodass Amazon EC2 Auto Scaling sie sofort ersetzt.
Sie können den Integritätsstatus einer Instance direkt an Amazon EC2 Auto Scaling senden, indem Sie das AWS CLI oder ein SDK verwenden. Die folgenden Beispiele zeigen Ihnen, wie Sie mit dem AWS CLI den Integritätsstatus einer Instance konfigurieren und anschließend den Integritätsstatus der Instance überprüfen können.
Verwenden Sie den folgenden set-instance-health
.Unhealthy
aws autoscaling set-instance-health --instance-id
i-1234567890abcdef0
--health-statusUnhealthy
Standardmäßig wird bei diesem Befehl die Wartefrist für die Zustandsprüfung eingehalten. Sie können jedoch dieses Verhalten außer Kraft setzen und die Übergangsfrist nicht einhalten, indem Sie die Option --no-should-respect-grace-period
einbeziehen.
Verwenden Sie den folgenden describe-auto-scaling-groupsUnhealthy
.
aws autoscaling describe-auto-scaling-groups --auto-scaling-group-names
my-asg
Im Folgenden finden Sie eine Beispielantwort, die Ihnen zeigt, dass der Integritätsstatus der Instance lautet Unhealthy
und dass die Instance beendet wird.
{
"AutoScalingGroups": [
{
....
"Instances": [
{
"ProtectedFromScaleIn": false,
"AvailabilityZone": "us-west-2a",
"LaunchTemplate": {
"LaunchTemplateName": "my-launch-template",
"Version": "1",
"LaunchTemplateId": "lt-1234567890abcdef0"
},
"InstanceId": "i-1234567890abcdef0",
"InstanceType": "t2.micro",
"HealthStatus": "Unhealthy",
"LifecycleState": "Terminating"
},
...
]
}
]
}