Управление образами контейнеров

Путь активации во время развертывания контейнеров Service Fabric обрабатывает загрузку образов контейнеров на виртуальную машину, на которую выполняются контейнеры. После удаления контейнеров из кластера и отмены регистрации их типов приложений происходит цикл очистки, удаляющий образы контейнеров. Очистка образа контейнера работает только в том случае, если образ контейнера жестко закодирован в манифесте службы. Для существующих версий среды выполнения Service Fabric конфигурации, поддерживающие очистку образов контейнеров, приведены ниже.

Настройки

"fabricSettings": [
               {
                   "name": "Hosting",
                   "parameters": [
                      {
                           "name": "PruneContainerImages", 
                           "value": "true"
                      },
                      {
                           "name": "CacheCleanupScanInterval",
                           "value": "3600"
                      }
                   ]
               }
           ]
Настройки Описание
PruneContainerImage Параметр включения или отключения очистки образов контейнеров при отмене регистрации типа приложения.
CacheCleanupScanInterval Настройка, задающая интервал в секундах, с которым выполняется цикл очистки.

Управление образами контейнеров версии 2

Начиная с Service Fabric версии 10.0 есть более новая версия потока удаления образа контейнера. Этот поток очищает образы контейнеров независимо от того, как были определены образы контейнеров — жестко закодированные или параметризованные во время развертывания приложения. Конфигурации PruneContainerImages и ContainerImageDeletionEnabled являются взаимоисключающими, и для обновления кластера предусмотрена проверка, которая гарантирует, что включена одна из них, но не обе одновременно. Конфигурация, поддерживающая эту функцию, выглядит следующим образом:

Настройки

 "fabricSettings": [
                {
                    "name": "Hosting",
                    "parameters": [
                       {
                            "name": "ContainerImageDeletionEnabled", 
                            "value": "true"
                       },
                       {
                            "name": "ContainerImageCleanupInterval",
                            "value": "3600"
                       },
                       {
                            "name": "ContainerImageTTL",
                            "value": "3600"
                       },
                       {
                            "name": "ContainerImageDeletionOnAppInstanceDeletionEnabled",
                            "value": "true"
                       },
                       {
                            "name": "ContainerImagesToSkip",
                            "value": "microsoft/windowsservercore|microsoft/nanoserver"
                       }
                    ]
                }
            ]
Настройки Описание
ContainerImageDeletionEnabled Параметр для включения или отключения возможности удаления образов контейнеров.
ContainerImageCleanupInterval Интервал времени для удаления неиспользуемых образов контейнеров.
ContainerImageTTL Время жизни образов контейнеров после того, как они становятся готовы к удалению (не используются контейнерами на виртуальной машине, и приложение удаляется (если включено контейнерное удаление изображений при удалении экземпляра приложения)).
ContainerImageDeletionOnAppInstanceDeletionEnabled Настройка для включения или отключения удаления просроченных образов контейнеров TTL, которое происходит только после удаления самого приложения.
ContainerImagesToSkip Если задано, среда выполнения контейнера пропускает удаление изображений, соответствующих любому из набора регулярных выражений. | символ разделяет каждое выражение. Пример: "mcr.microsoft.com/.+|docker.io/library/alpine:latest" — в этом примере все соответствует префиксу "mcr.microsoft.com/" и соответствует точно "docker.io/library/alpine:latest". По умолчанию мы не удаляем известные базовые образы Windows microsoft/windowsservercore или microsoft/nanoserver.

Дальнейшие действия

Дополнительные сведения приведены в статье ниже.

  • [Service Fabric и контейнеры][контейнеры-введение-ссылка]