HAProxy/Keepalived vrrp настроенный в AWS EC2 с EIP (Основной EC2)

Это обычно находится под Вашим $ {catalina.base} местоположение каталога. Проверьте свой $ {catalina.base}/conf/logging.properties файл, чтобы видеть, что кот местоположения "думает", что он пишет в.

2
задан 18 June 2014 в 17:42
3 ответа

The notify_fault script is invoked when keepalived enters the fault state.

You want to configure your script using

notify_master /etc/keepalived/vrrp.sh
1
ответ дан 3 December 2019 в 12:52

Пожалуйста, вставьте ваши файлы backup.conf и slave.conf?

Также, вы должны проверить эти две статьи:

http://www.trk7.com/blog/keepalived-instance-not-entering-failed-state/ или http://comments.gmane.org/gmane.linux.keepalived.devel/4102 ?

...
0
ответ дан 3 December 2019 в 12:52

Сначала, чтобы определить, выполняется или не выполняется сценарий, я бы добавил следующую строку непосредственно под #! / Bin / bash .

echo "----------vrrp.sh running ------" >> /var/log/messages 

или что-то еще хотите ... Просто для того, чтобы зарегистрировать тот факт, что приложение зафиксировало переход "состояния" от резервного к главному или что-то еще, и фактически выполнило сценарий, как задумано.

Вы можете поместить его в конец сценария как ну, дело в том, чтобы просто убедиться, что скрипт был вызван.

Протестируйте его снова, а затем cat / var / log / messages и найдите свое эхо ... вы должны его увидеть , если вы этого не сделаете, тогда это может быть любое количество вещей, разрешений, запущенная учетная запись пользователя, обеспечение исполняемого файла сценария и так далее ... вероятно, на основе вашего первоначального комментария, я подозреваю, что он выполняет свои просто не делает то, что вы ожидаете.

Итак, если вы видите свое эхо, как я ожидаю, тогда я бы посмотрел на конфигурацию вашей среды, что вы могли бы сделать, просто для тестирования, это экспортировать свой JAVA_HOME вместе с с вашими переменными EC2 в скрипте ... добавьте их после только что добавленной строки эха. Очевидно, это просто для целей тестирования, и как только вы подтвердите, что все работает должным образом, вам следует удалить это из сценария и соответствующим образом настроить среду. Мое последнее предложение - изменить вашу команду ...Вы можете разъединить и связать EIP с помощью одной команды.

Итак, теперь ваш сценарий будет выглядеть примерно так:

#!/bin/bash
#vrrp.sh

echo "----------vrrp.sh running ------" >> /var/log/messages

cd /usr/local/ec2/ec2-api-tools-1.7.5.1/bin/

export JAVA_HOME="/usr/lib/jvm/jre-1.8.0-openjdk-1.8.0.65-0.b17.el6_7.x86_64/"

export EC2_BASE="/usr/local/ec2/ec2-api-tools-1.7.5.1/"
export EC2_URL=https://ec2.us-east-1.amazonaws.com
export AWS_ACCESS_KEY=AKIA3ROU5M3FQIQH4BNL
export AWS_SECRET_KEY=InBiqtOCfaJhCb3u3jE6gpmkW5shgjP8N++/7Huv

#Those are obviously not my access/secret keys, just providing an example

./ec2-associate-address -a eipalloc-s234523 -i i-023ksdfj --allow-reassociation

Заключительное примечание:

Убедитесь, что учетная запись пользователя IAM, с которой вы выполняете аутентификацию, имеет необходимого пользователя IAM политика учетной записи прилагается ... ниже приведен пример политики, вам нужно будет перейти к политикам, чтобы создать ее, а затем после создания просто добрался до пользователей и конкретной учетной записи пользователя IAM, с которой вы выполняете аутентификацию, и прикрепите политику, которую вы только что создали если вы не используете учетную запись ПОЛНЫЙ ДОСТУП, в этом случае я бы не рекомендовал этого. и настроить учетную запись пользователя IAM с политикой, описанной ниже:

arn: aws: iam :: 107890181863: policy / MOVE-EIP или что-то еще.

{
"Version": "2015-1-1",
"Statement": [
    {
        "Action": [
            "ec2:AssociateAddress",
            "ec2:DescribeAddresses",
            "ec2:AllocateAddress",
            "ec2:DisassociateAddress"
        ],
        "Effect": "Allow",
        "Resource": "*"
    }
  ]
}
0
ответ дан 3 December 2019 в 12:52

Теги

Похожие вопросы