Экземпляры в пользовательских слоях всегда получают статус start_failed.

Журналы opsworks для экземпляров не создаются, поэтому у меня нет тонны отладочной информации, но я постараюсь быть как можно более описательной. Любые подсказки или идеи высоко ценятся.

У меня есть куча пользовательских слоев, некоторые из которых являются сервисными слоями, некоторые — mongodb, а один — клиентским memcached-слоем.

Я попытался запустить по одному экземпляру на каждом уровне как на экземплярах RHEL7, так и на экземплярах Amazon Linux (2016.03) (обе последние версии с последней версией агента opsworks 3436) и шеф-поваре 11.10.

Когда слои mongodb имеют экземпляры, которые не пересекаются со слоями службы, они каждый раз выходят из строя со статусом start_failed в обеих операционных системах в 100% случаев.

Когда я создаю экземпляры, которые совместно используются как уровнем mongodb, так и уровнем обслуживания, экземпляр переходит на этап настройки, а затем каждый раз проходит остальную часть процесса (за исключением некоторого кода шеф-повара с моей стороны).

Из EC2 экземпляр запускается и находится в сети, и все проверки состояния работают. Я просмотрел системные журналы экземпляра с панели управления ec2 и не обнаружил никаких ошибок на системном уровне. Я не могу подключиться к экземпляру по ssh для дальнейшего изучения, так как пользователи IAM никогда не загружаются.

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

Я думаю, что это может быть проблема, связанная с агентом, но на данный момент это не более чем интуиция?

Кто-нибудь еще имел подобную проблему или может даже просто указать мне в правильном направлении?

Обновить

Я понял, как подключиться к экземпляру по ssh. У него был частный IP-адрес, но не общедоступный, поэтому мне пришлось делать это с другого экземпляра opsworks. Во всяком случае, я нашел следующую ошибку в /var/log/aws/opsworks/user-data.log:

/tmp/opsworks-agent-installer/opsworks-agent/lib/bootstrap/utils.rb:111:in `block (2 levels) in execute': Failed to execute "yum --assumeyes update" pid 9536 exit 1: Loaded plugins: amazon-id, rhui-lb, search-disabled-repos (RuntimeError)


Could not contact any CDS load balancers: rhui2-cds01.us-east-1.aws.ce.redhat.com, rhui2-cds02.us-east-1.aws.ce.redhat.com.
Could not contact CDS load balancer rhui2-cds01.us-east-1.aws.ce.redhat.com, trying others.
    from /tmp/opsworks-agent-installer/opsworks-agent/lib/bootstrap/utils.rb:99:in `loop'
    from /tmp/opsworks-agent-installer/opsworks-agent/lib/bootstrap/utils.rb:99:in `block in execute'
    from /tmp/opsworks-agent-installer/opsworks-agent/lib/bootstrap/utils.rb:98:in `chdir'
    from /tmp/opsworks-agent-installer/opsworks-agent/lib/bootstrap/utils.rb:98:in `execute'
    from /tmp/opsworks-agent-installer/opsworks-agent/lib/bootstrap/utils.rb:14:in `yum'
    from /tmp/opsworks-agent-installer/opsworks-agent/lib/bootstrap/instance_agent_installer.rb:57:in `install_system_updates'
    from /tmp/opsworks-agent-installer/opsworks-agent/lib/bootstrap/instance_agent_installer.rb:25:in `block in run'
    from /tmp/opsworks-agent-installer/opsworks-agent/lib/bootstrap/log.rb:96:in `measure'
    from /tmp/opsworks-agent-installer/opsworks-agent/lib/bootstrap/instance_agent_installer.rb:25:in `run'
    from /tmp/opsworks-agent-installer/opsworks-agent/lib/bootstrap/instance_agent_installer.rb:10:in `run'
    from /tmp/opsworks-agent-installer/opsworks-agent/bin/opsworks-agent-installer.rb:8:in `<main>'

person Ed Sullivan    schedule 02.05.2016    source источник
comment
убедитесь, что при добавлении экземпляра вы выбираете закрытый ключ для добавления, чтобы вы могли использовать пользователя ec2 для входа в систему вместо пользователей IAM в соответствии с разрешениями.   -  person Paul Dunlop    schedule 03.05.2016
comment
Это поможет дальнейшей отладке. Мне не нужен root ssh, однако я могу временно включить его для дальнейшей отладки.   -  person Ed Sullivan    schedule 03.05.2016
comment
Вопрос обновлен с ошибкой из журналов агента aws-opsworks   -  person Ed Sullivan    schedule 04.05.2016


Ответы (1)


Опция общедоступного IP-адреса пользовательских слоев базы данных была отключена. Для связи с OpsWorks из VPC для установки кулинарных книг, а затем для установки пакета требуется либо общедоступный IP-адрес, либо использование специального экземпляра NAT.

Публичные IP-адреса можно включить в разделе Opsworks -> Layers -> Network.

Кроме того, здесь находится документация по инстансам AWS NAT.

person Ed Sullivan    schedule 16.05.2016