Comment définir autoscaling groupe Health check type avec elasticbeanstalk

j'ai paramétré L'URL 'Application Healthcheck' (aws:elasticbeanstalk:application) pour mon application elasticbeanstalk, et pendant la nuit les deux serveurs ont commencé à échouer cette vérification.

il semble que le groupe d'autoscaling mis en place par elasticbeanstalk a un type de bilan de santé ec2 qui signifie que les serveurs n'ont pas été résiliés et remplacés, laissant 2 serveurs hors service attachés au répartiteur de charge.

Comment puis-je changer la santé du groupe d'autoscaling vérifier le type d'elb en utilisant les paramètres de configuration de elasticbeanstalk? Je ne trouve aucune documenté façon de changer cette valeur, mais il doit être assez exigence commune.

Merci

19
demandé sur user1207727 2014-01-22 15:20:28

2 réponses

Il s'avère que la réponse réside dans l'ajout d'un fichier de configuration pour les .répertoire ebextensions.

la documentation de L'AWS ne semble pas correcte, ou du moins pas à jour.

ici il vous indique que vous pouvez configurer les ressources EB en utilisant un fichier de configuration: http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/environment-resources.html

Mais il ne vous dit pas où mettre ce fichier de configuration. Pour savoir que vous devez suivre un lien de: http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/customize-containers.html

Le premier lien utilement vous indique le nom des différentes ressources que vous pouvez configurer. Dans mon cas, j'avais besoin de "AWSEBAutoScalingGroup". Mais alors il ne vous dit pas ce qu'est l'Identificateur de type de ressource (Type) ou les propriétés disponibles. Il a un lien vers les 'identificateurs de type de ressource' (http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/aws-template-resource-type-ref-aeb.html)mais il n'y a aucune mention d'autoscaling ou de haricot élastique là-bas.

heureusement une bonne âme sur les forums AWS m'a envoyé un lien vers une documentation utile: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-as-group.html

donc finalement j'ai pu créer mon fichier de configuration qui ressemble à ceci:

Resources:
    AWSEBAutoScalingGroup:
        Type: "AWS::AutoScaling::AutoScalingGroup"
        Properties:
            HealthCheckType: ELB
            HealthCheckGracePeriod: 600

cela fonctionne maintenant comme un charme!

24
répondu user1207727 2014-01-27 17:04:20

vous pouvez créer votre propre groupe D'AutoScaling et l'utiliser pour la configuration de lancement.

vous pouvez aussi configurer L'AutoScaling avec le fichier de configuration élastique de la Haricot Magique:

AWS Elastic Beanstalk: Personnalisation de l'Environnement des Ressources

mise à jour:

j'ai réalisé que vous pouvez configurer L'ASG avec le fichier de configuration EB mais il n'y a pas d'option pour changer le type de bilan de santé

regardez configurer l'État de santé d'une Instance guide, il est dit que vous pouvez utiliser Elastic Load Balancer bilan de santé avec la mise à l'échelle automatique.

par défaut, votre groupe de mise à L'échelle automatique détermine l'état de santé de chaque instance en vérifiant périodiquement les résultats des vérifications de l'état des instances EC2 D'Amazon. Si vous avez associé votre groupe de mise à L'échelle automatique avec un équilibrage de charge élastique et que vous avez choisi d'utiliser le bilan de santé de L'équilibrage de charge élastique, la mise à l'échelle automatique va déterminer l'état de santé des instances en vérifiant les résultats des contrôles de l'état des instances EC2 D'Amazon et des contrôles de l'état des instances D'équilibrage de charge élastique.

il y a une option pour choisir ELB comme type de bilan de santé lorsque vous créez un groupe D'AutoScaling:

enter image description here

Ou si vous utilisez CreateAutoScalingGroup appel d'API:

HealthCheckType

Le service que vous voulez la santé chèques de, Amazon EC2 ou balancier de charge élastique. Les valeurs valides sont EC2 ou ELB.

par défaut, L'Auto Scaling health check utilise les résultats D'Amazon EC2 contrôle le statut d'une instance pour déterminer la santé d'une instance. Pour plus d'informations, voir Bilan De Santé.

1
répondu kukido 2014-01-24 18:42:32