Ошибка AWS при получении учетных данных с сервера метаданных профиля экземпляра - PullRequest
0 голосов
/ 07 марта 2019

Может кто-нибудь дать мне представление об этой ошибке? Учетные данные устанавливаются через политику IAM. Это поле включено в группу автоматического масштабирования, и только оно получило следующую ошибку.

Ошибка при получении учетных данных с сервера метаданных профиля экземпляра. Если вы не работаете внутри Amazon EC2, вы должны указать свой идентификатор ключа доступа AWS и секретный ключ доступа в параметрах \ "ключ \" и \ "секрет \" при создании клиента или предоставить экземпляры Aws \ Common \ Credentials \, для которых создан экземпляр. CredentialsInterface объект "

Журналы: КРИТИЧЕСКИЕ Phalconry \ Mvc \ Исключения \ ServerException Extra

    "remoteip": "XX.XX.XX.XX, XX.XX.XX.XX",
    "userid": "1357416",
    "session": "fcke8khsqe4lfo2lj6kdmrd4l7",
    "url": "GET:\/manage-competition\/athlete",
    "request_identifier": "xxxxxx5c80516bc11532.74367732",
    "server": "companydomain.com",
    "client_agent": "Mozilla\/5.0 (Linux; Android 9; SM-G965U) AppleWebKit\/537.36 (KHTML, like Gecko) Chrome\/72.0.3626.121 Mobile Safari\/537.36",
    "instance_ip_address": "xx.xx.xx.xx",
    "process_id": 29528,
    "file": "\/var\/www\/code_deploy\/cfweb\/releases\/20190306195438\/core\/classes\/phalconry\/mvc\/exceptions\/MvcException.php",
    "line": 51,
    "class": "Phalconry\\Mvc\\Exceptions\\MvcException",
    "function": "dispatch"
}```
Context
```{
    "Status Code": 500,
    "Reason": "Internal Server Error",
    "Details": "Array\n(\n    [code] => server_error\n    [description] => Uncaught Server Error\n    [details] => Request could not be processed. Please contact Support.\n)\n",
    "Log": "Error retrieving credentials from the instance profile metadata server. When you are not running inside of Amazon EC2, you must provide your AWS access key ID and secret access key in the \"key\" and \"secret\" options when creating a client or provide an instantiated Aws\\Common\\Credentials\\CredentialsInterface object. (Unable to parse response body into JSON: 4)",
    "Trace": "#0 [internal function]: Phalconry\\Mvc\\MvcApplication::Phalconry\\Mvc\\{closure}(Object(Phalcon\\Events\\Event), Object(Phalcon\\Mvc\\Dispatcher), Object(Aws\\Common\\Exception\\InstanceProfileCredentialsException))\n#1 [internal function]: Phalcon\\Events\\Manager->fireQueue(Array, Object(Phalcon\\Events\\Event))\n#2 [internal function]: Phalcon\\Events\\Manager->fire('dispatch:before...', Object(Phalcon\\Mvc\\Dispatcher), Object(Aws\\Common\\Exception\\InstanceProfileCredentialsException))\n#3 [internal function]: Phalcon\\Mvc\\Dispatcher->_handleException(Object(Aws\\Common\\Exception\\InstanceProfileCredentialsException))\n#4 [internal function]: Phalcon\\Dispatcher->dispatch()\n#5 \/var\/www\/code_deploy\/cfweb\/releases\/20190306195438\/sites\/games\/lib\/phalcon.php(101): Phalcon\\Mvc\\Application->handle()\n#6 \/var\/www\/code_deploy\/cfweb\/releases\/20190306195438\/sites\/games\/index.php(4): require_once('\/var\/www\/code_d...')\n#7 {main}"
}```

Ответы [ 2 ]

0 голосов
/ 07 марта 2019

Метаданные учетных данных профиля экземпляра находятся под

http://169.254.169.254/latest/meta-data/identity-credentials/ec2/security-credentials/ec2-instance

Если это не удается, это может быть проблемой с гипервизором / дроплетом, что ваш сервер был запущенна.Эта конечная точка сообщит вам, когда в последний раз обновлялись учетные данные.

'http://169.254.169.254/latest/meta-data/identity-credentials/ec2/info'

Если другие серверы с одинаковыми AMI и зонами доступности не имеют проблем, я бы зарегистрировал заявку в службу поддержки,прекратить и двигаться дальше.

0 голосов
/ 07 марта 2019

Эти учетные данные поступают из URL-адреса метаданных экземпляра (http://169.254.169.254).

Проблема, с которой вы, вероятно, столкнулись (особенно если вы работаете в ASG), заключается в том, что при создании AMI и последующем его запуске в другом AZ маршрут до URL-адреса метаданных не обновляется. Что вам нужно сделать, это заставить cloud-init запускаться при следующей загрузке.

Простой способ сделать это - очистить каталог метаданных cloud-init:

sudo rm -f /var/lib/cloud/instances/*/sem/config_scripts_user

После выполнения этой команды выключите компьютер и создайте из него AMI. Если вы используете этот AMI для ASG, cloud-init выполнит полный запуск при первой загрузке, что обновит маршруты до URL-адреса метаданных экземпляра, и ваши кредиты IAM должны работать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...