Состояния Экземпляров контейнеров Azure
Экземпляры контейнеров Azure могут отображать несколько независимых значений состояний. В этой статье перечислены все эти значения с указанием, где они встречаются и что означают.
Где отображаются значения состояния
На портале Azure состояния отображаются в нескольких разных расположениях. Все значения состояний можно получить через определение ресурса в формате JSON. Это значение можно найти в разделе "Основные сведения" в колонке "Обзор", показанном на следующем рисунке.
Также состояния есть и в других расположениях на портале Azure. В следующей таблице собраны все такие места, где отображаются значения состояния.
Имя. | Путь JSON | Расположение на портале Azure |
---|---|---|
Состояние группы контейнеров | properties.instanceView.state |
В разделе "Основные компоненты" на вкладке "Обзор" |
Текущее состояние контейнера | properties.containers/initContainers[x].instanceView.currentState.state |
В столбце Состояние таблицы на вкладке "Контейнеры" |
Предыдущее состояние контейнера | properties.containers/initContainers[x].instanceView.previousState.state |
Доступно по ссылке Просмотр JSON в разделе "Основные компоненты" на вкладке "Обзор" |
Состояние подготовки | properties.provisioningState |
Доступно по ссылке Просмотр JSON в разделе "Основные компоненты" на вкладке "Обзор", а также в тексте ответа HTTP |
Группы контейнеров
Это значение обозначает состояние развернутой группы контейнеров во внутренней службе.
Выполнение: группа контейнеров выполняется и продолжает выполняться до тех пор, пока не будет выполнено действие пользователя или остановка, вызванная политикой перезапуска.
Остановлено: группа контейнеров остановлена и не будет выполняться без действия пользователя.
Ожидает. Означает, что группа контейнеров ожидает инициализации (завершения операции init containers или подключения файловых томов Azure, если применимо). Такой контейнер будет постоянно пытаться перейти в состояние Выполняется, пока пользователь не выполнит для него действие остановки или удаления.
Выполнено: группа контейнеров успешно завершена. Может возникать только при использовании политик перезапуска Никогда и При сбое.
Сбой. Означает, что группа контейнеров не смогла выполнить операцию. Может возникать только при использовании политики перезапуска Никогда. Это состояние указывает на сбой инфраструктуры (например, неверные учетные данные общей папки Azure) или сбой пользовательского приложения (например, приложение ссылается на переменную среды, которая не существует).
В следующей таблице указано, какие состояния могут существовать для группы контейнеров в зависимости от политики перезапуска.
Значение | Никогда | При сбое | Всегда |
---|---|---|---|
Выполняется | Да | Да | Да |
Остановлена | Да | Да | Да |
Не завершено | Да | Да | Да |
Выполнено | Да | Да | Нет |
Неудачно | Да | No | No |
Контейнеры
Для каждого контейнера сохраняются два значения состояния — текущее и предыдущее. В портал Azure, показанном на следующем рисунке, отображается только текущее состояние. Все значения состояния могут существовать для любого контейнера, независимо от выбранной для группы контейнеров политики перезапуска.
Примечание.
Значения JSON currentState
и previousState
содержат дополнительные сведения, например код завершения или причину, которые не отображаются более нигде на портале Azure.
Выполняется. Означает, что контейнер выполняется.
Ожидание. Означает, что контейнер ожидает выполнения Такое состояние может существовать, если еще не завершена операция init containers или контейнер приостановил работу из-за цикла аварийных завершений.
Завершено: контейнер завершился, сопровождаемый значением кода выхода.
Подготовка
Это значение обозначает состояние последней операции, которая выполнялась для группы контейнеров. Обычно это операция PUT (create), но возможны также POST (start/restart/stop) или DELETE (delete).
Внимание
Кроме того, пользователям не следует создавать зависимости от промежуточных состояний подготовки. Допустимыми считаются зависимости от состояний Успешно и Сбой.
Помимо представления JSON состояние подготовки также можно найти в тексте ответа http-вызова.
Операции создания, запуска и перезапуска
Внимание
Операции PUT (create) выполняются асинхронно. Возвращаемое в теле ответа на операцию PUT значение не соответствует окончательному состоянию. Чтобы отслеживать состояние развертывания, следует после таких запросов выполнять вызов GET с тем же идентификатором ресурса группы контейнеров или с идентификатором AsyncOperation, который возвращается в заголовках ответа на операцию PUT.
Следующие состояния применяются к событиям PUT (create) и POST (start/restart).
Ожидание. Группа контейнеров ожидает настройки инфраструктуры, например назначение узла, подготовка виртуальной сети или что-либо другое, необходимое перед извлечением образа пользователя.
Создание: завершена настройка инфраструктуры. Теперь группа контейнеров выполняет подготовку и получение требуемых ресурсов (подключает файловые тома Azure, получает IP-адрес для входящего трафика и т. п.).
Успешно: группа контейнеров успешно получила контейнеры в состояние выполнения и получила все необходимые ресурсы.
Неработоспособно. Означает, что группа контейнеров не может работать. В случае непредвиденных состояний, например при отключении узла, автоматически запускается задание по исправлению состояния группы контейнеров путем перемещения.
Исправляется. Означает, что группа контейнеров перемещается для устранения состояния неработоспособности.
Сбой. Означает, что группа контейнеров не смогла достичь состояния подготовки Успешно. Сбой может возникать по многим причинам (недостаточная емкость в указанном регионе, исчерпана пользовательская квота, превышено время ожидания 30 минут и т. п.). Дополнительные сведения об ошибке можно получить в разделе
events
представления JSON.Примечание.
Состояние сбоя не означает, что ресурс удаляется или прекращает попытки выполнения. Состояние группы контейнеров обозначает текущее состояние этой группы. Если вы хотите сделать так, чтобы группа контейнеров прекратила выполнение при достижении состояния подготовки Сбой, ее придется остановить или удалить.
Операции остановки и удаления
Следующие значения могут существовать для событий POST (stop) и DELETE (delete).
Успешно. Означает, что операция остановки или удаления группы контейнеров выполнена успешно.
Сбой: группа контейнеров не удалось достичь состояния подготовки успешно, что означает, что событие остановки и удаления не завершено. Дополнительные сведения об ошибке можно получить в разделе
events
представления JSON.