Udostępnij za pośrednictwem


Pule rezerwowe dla usługi Azure Container Instances (wersja zapoznawcza)

Ważne

Pule rezerwowe dla usługi Azure Container Instances są obecnie dostępne w wersji zapoznawczej. Wersje zapoznawcze są udostępniane pod warunkiem udzielenia zgody na dodatkowe warunki użytkowania. Niektóre cechy funkcji mogą ulec zmianie, zanim stanie się ona ogólnie dostępna.

Pule rezerwowe dla usługi Azure Container Instances umożliwiają utworzenie puli wstępnie aprowizowania grup kontenerów, które mogą być używane w odpowiedzi na ruch przychodzący. Grupy kontenerów w puli są w pełni aprowizowane, inicjowane i gotowe do odbierania pracy.

Diagram przepływu pracy tworzenia kontenera przy użyciu tradycyjnej ścieżki a ścieżki puli rezerwowej.

Ograniczenia

Pule rezerwowe dla usługi Azure Container Instances nie są dostępne w witrynie Azure Portal.

Wymagania wstępne

Rejestracja funkcji

Zarejestruj dostawcę zasobów puli rezerwowej i funkcję w wersji zapoznawczej puli rezerwowej z subskrypcją przy użyciu usługi Azure Cloud Shell. Rejestracja może potrwać do 30 minut, aby pomyślnie pokazać je jako zarejestrowane. Możesz ponownie uruchomić poniższe polecenia, aby określić, kiedy funkcja została pomyślnie zarejestrowana.

Register-AzResourceProvider -ProviderNameSpace Microsoft.ContainerInstance
Register-AzResourceProvider -ProviderNamespace Microsoft.StandbyPool
Register-AzProviderFeature -FeatureName StandbyContainerGroupPoolPreview -ProviderNamespace Microsoft.StandbyPool

Uprawnienia kontroli dostępu opartej na rolach

Aby zezwolić pulam rezerwowym na tworzenie grup kontenerów w ramach subskrypcji, przypisz odpowiednie uprawnienia do dostawcy zasobów puli rezerwowej.

  1. W portalu Azure przejdź do swoich subskrypcji.
  2. Wybierz subskrypcję, którą chcesz dostosować.
  3. Wybierz Access Control (Zarządzanie dostępem i tożsamościami).
  4. Wybierz pozycję Dodaj i Dodaj przypisanie roli.
  5. Na karcie Rola wyszukaj pozycję Współautor puli grup kontenerów rezerwowych i wybierz ją.
  6. Przejdź do karty Członkowie .
  7. Wybierz pozycję + Wybierz członków.
  8. Wyszukaj dostawcę zasobów puli rezerwowej i wybierz go.
  9. Przejdź do karty Przeglądanie i przypisywanie .
  10. Zastosuj wprowadzone zmiany.
  11. Powtórz powyższe kroki, łącząc również rolę współautora usługi Azure Container Instances i współautora sieci dostawcy zasobów puli rezerwowej.

Aby uzyskać więcej informacji na temat przypisywania ról, zobacz przypisywanie ról platformy Azure przy użyciu witryny Azure Portal.

Używanie kontenera z puli rezerwowej

Jeśli potrzebujesz nowej grupy kontenerów, możesz natychmiast ściągnąć jedną z puli rezerwowej, która jest aprowizowana i uruchomiona.

Pule rezerwowe udostępniają tylko grupy kontenerów z puli, które są w pełni aprowizowane i gotowe do odbierania pracy. Na przykład gdy wystąpienia w puli są nadal inicjowane, nie są w stanie uruchomienia i nie są przekazywane w przypadku żądania kontenera. Jeśli w puli nie są dostępne żadne wystąpienia, usługa Azure Container Instances będzie domyślnie przywracana do tworzenia nowej grupy kontenerów.

Rozmiar puli rezerwowej

Liczba grup kontenerów w puli rezerwowej jest określana przez ustawienie parametru maxReadyCapacity . Gdy grupa kontenerów zostanie zużyta z puli, pula rezerwowa automatycznie zacznie ponownie wypełniać, upewniając się, że pula rezerwowa utrzymuje ustawioną maksymalną gotową pojemność.

Jedynymi dostępnymi zasadami uzupełniania dla pul rezerwowych w wystąpieniach kontenera platformy Azure jest Always.

Ustawienie opis
maxReadyCapacity Maksymalna liczba grup kontenerów, które mają zostać wdrożone w puli.
wypełnianie zasad Informuje pulę rezerwową o natychmiastowe uzupełnienie grup kontenerów w celu utrzymania maksymalnej liczby parametrów MaxReadyCapacity.

Profil grupy kontenerów

Profil grupy kontenerów informuje pulę rezerwową o sposobie konfigurowania kontenerów w puli. Jeśli wprowadzisz jakiekolwiek zmiany w profilu grupy kontenerów, musisz również zaktualizować pulę rezerw, aby upewnić się, że aktualizacje są stosowane do wystąpień w puli.

{
    "location":"{location}",
    "properties":{
        "containers": [
        {
            "name":"[mycontainergroupprofile]",
            "properties": {
                "command":[],
                "environmentVariables":[],
                "image":"mcr.microsoft.com/azuredocs/aci-helloworld:latest",
                "ports":[
                    {
                        "port":8000
                    }
                ],
                "resources": {
                    "requests": {
                        "cpu":1,
                        "memoryInGB":1.5
                                }
                            }
                        }
                    }
                ],
                "imageRegistryCredentials":[],
                "ipAddress":{
                "ports":[
                    {
                        "protocol":"TCP",
                        "port":8000
                    }
            ],
            "type":"Public"
            },
            "osType":"Linux",
            "sku":"Standard"
            }
        }


Mapy konfiguracji

Mapa konfiguracji to właściwość, którą można skojarzyć z profilem grupy kontenerów i użyć do stosowania konfiguracji kontenera podobnych do zmiennych środowiskowych i woluminów wpisów tajnych. Jednak w przypadku używania zmiennych środowiskowych lub woluminów wpisów tajnych ponowne uruchomienie zasobnika jest wymagane, aby zmiany zaczęły obowiązywać. Korzystając z map konfiguracji, konfiguracje można stosować bez ponownego uruchamiania kontenera. Umożliwia to aktualizacje poza pasmem, dzięki czemu kontenery mogą odczytywać nowe wartości bez ponownego uruchamiania.

Usługi Azure Container Instances można tworzyć z mapami konfiguracji lub bez ich konfiguracji i można je aktualizować w dowolnym momencie po utworzeniu przy użyciu map konfiguracji. Aktualizowanie map konfiguracji w istniejącej działającej grupie kontenerów można wykonać szybko i bez powodowania ponownego uruchomienia kontenera.

Aby uzyskać więcej informacji, zobacz use config maps (Używanie map konfiguracji).

{
    "properties": {
        "containers": [
            {
                "name": "{mycontainergroupprofile}",
                "properties": {
                    "image": "mcr.microsoft.com/azuredocs/aci-helloworld",
                    "ports": [
                        {
                            "port": 80,
                            "protocol": "TCP"
                        }
                    ],
                    "resources": {
                        "requests": {
                            "memoryInGB": 0.5,
                            "cpu": 0.5
                        }
                    },
                    "configMap": {
                        "keyValuePairs": {
                            "key1": "value1",
                            "key2": "value2"
                        }
                    }
                }
            }
        ],
        "osType": "Linux",
        "ipAddress": {
            "type": "Public",
            "ports": [
                {
                    "protocol": "tcp",
                    "port": 80
                }
            ]
        }
    },
    "location": "{location}"
}

Kontenery poufne

Pule rezerwowe dla wystąpień kontenerów platformy Azure obsługują poufne kontenery. Aby użyć kontenerów poufnych , zaktualizuj sku typ do Confidential w profilu grupy kontenerów.

Ważne

Wartości przekazywane przy użyciu map konfiguracji nie są uwzględniane w zasadach zabezpieczeń ani weryfikowane przez środowisko uruchomieniowe przed udostępnieniem instalacji pliku kontenerowi. Wszelkie wartości, które mogą mieć wpływ na dane lub zabezpieczenia aplikacji, nie mogą być zaufane przez aplikację podczas wykonywania i zamiast tego powinny być udostępniane kontenerowi przy użyciu zmiennych środowiskowych.

{
    "location":"{location}",
    "properties":{
        "containers": [
        {
            "name":"{mycontainergroupprofile}",
            "properties": {
                "command":[],
                "environmentVariables":[],
                "image":"mcr.microsoft.com/azuredocs/aci-helloworld:latest",
                "ports":[
                    {
                        "port":8000
                    }
                ],
                "resources": {
                    "requests": {
                        "cpu":1,
                        "memoryInGB":1.5
                                }
                            }
                        }
                    }
                ],
                "imageRegistryCredentials":[],
                "ipAddress":{
                "ports":[
                    {
                        "protocol":"TCP",
                        "port":8000
                    }
            ],
            "type":"Public"
            },
            "osType":"Linux",
            "sku":"Confidential"
            }
        }


Tożsamość zarządzana

Pule rezerwowe dla usługi Azure Container Instances obsługują integrację z tożsamością zarządzaną. Zastosowanie tożsamości zarządzanej jest wykonywane podczas żądania kontenera z puli rezerwowej oraz w tym identity parametrów i ustawień. Tożsamość zarządzana nie jest właściwością obsługiwaną bezpośrednio w profilu grupy kontenerów.

{
   "location": "{location}",
   "properties": {
       "standByPoolProfile":{
               "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.StandbyPool/standbyContainerGroupPools/{standbyPoolName}"
           },
           "containerGroupProfile": {
               "id": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.ContainerInstance/containerGroupProfiles/{mycontainergroupprofile}",
               "revision": {revisionNumber}
           },
          },
          "identity": {
            "type": "UserAssigned",
            "userAssignedIdentities": {
              "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identity}": {}
            },
           "containers": [
               {
                   "name": "{mycontainergroupprofile}",
                   "properties": {
                       "configMap": {
                           "keyValuePairs": {
                               "{newKey}": "{newValue}"
                           }
                       }
                   }
               }
           ]
   }
}

Strefy dostępności

Pule rezerwowe dla usługi Azure Container Instances obsługują tworzenie i żądanie kontenerów w różnych strefach dostępności. Tworzenie puli rezerwowej strefowej jest obecnie dostępne tylko przy użyciu interfejsów API REST puli rezerwowej przy użyciu wersji 2024-08-01-preview i dostępnej tylko w regionie Indie Środkowe.

Tworzenie puli rezerwowej strefowej

PUT https://management.azure.com/subscriptions/{SubscriptionID}/resourceGroups/myResourceGroup/providers/Microsoft.StandbyPool/standbyContainerGroupPools/myStandbyPool?api-version=2024-08-01-preview
 
Request Body
{
    "properties": {
        "elasticityProfile": {
            "maxReadyCapacity": 20,
            "refillPolicy": "always"
        },
        "containerGroupProperties": {
            "containerGroupProfile": {
                "id": "/subscriptions/{SubscriptionID}/resourceGroups/myResourceGroup/providers/Microsoft.ContainerInstance/containerGroupProfiles/mycontainergroupprofile",
                "revision": 1
          },
          "subnetIds": [
            {
              "id": "/subscriptions/{subscriptionId}/resourceGroups/myResourceGroup/providers/Microsoft.Network/virtualNetworks/myVNET/subnets/mySubnet"
            }
          ]
        },
        "zones": [
          "1",
          "2",
          "3"
        ]
      },

    "location": "West Central US"
}

Następne kroki

Utwórz pulę rezerwową dla usługi Azure Container Instances.