Stand-bypools voor Azure Container Instances (preview)
Belangrijk
Stand-bypools voor Azure Container Instances zijn momenteel beschikbaar als preview-versie. Previews worden voor u beschikbaar gesteld op voorwaarde dat u akkoord gaat met de aanvullende gebruiksvoorwaarden. Sommige aspecten van deze functie worden mogelijk nog gewijzigd voordat de functie algemeen beschikbaar wordt.
Met stand-bypools voor Azure Container Instances kunt u een pool van vooraf ingerichte containergroepen maken die kunnen worden gebruikt als reactie op binnenkomend verkeer. De containergroepen in de pool zijn volledig ingericht, geïnitialiseerd en klaar om werk te ontvangen.
Beperkingen
Stand-bypools voor Azure Container Instances zijn niet beschikbaar in Azure Portal.
Vereisten
Functieregistratie
Registreer de resourceprovider voor de stand-bypool en de preview-functie van de stand-bypool bij uw abonnement met behulp van Azure Cloud Shell. Het kan tot 30 minuten duren voordat de registratie is geregistreerd. U kunt de onderstaande opdrachten opnieuw uitvoeren om te bepalen wanneer de functie is geregistreerd.
Register-AzResourceProvider -ProviderNameSpace Microsoft.ContainerInstance
Register-AzResourceProvider -ProviderNamespace Microsoft.StandbyPool
Register-AzProviderFeature -FeatureName StandbyContainerGroupPoolPreview -ProviderNamespace Microsoft.StandbyPool
Machtigingen voor op rollen gebaseerd toegangsbeheer
Als u wilt toestaan dat stand-bypools containergroepen in uw abonnement maken, wijst u de juiste machtigingen toe aan de resourceprovider van de stand-bypool.
- Navigeer in Azure Portal naar uw abonnementen.
- Selecteer het abonnement dat u machtigingen wilt aanpassen.
- Selecteer Access Control (IAM).
- Selecteer Roltoewijzing toevoegen en toevoegen.
- Zoek op het tabblad Rol naar Inzender voor groep stand-bycontainergroepen en selecteer deze.
- Naar het tabblad Leden gaan.
- Selecteer + Leden selecteren.
- Zoek de resourceprovider voor de stand-bypool en selecteer deze.
- Naar het tabblad Controleren en toewijzen gaan.
- Pas de wijzigingen toe.
- Herhaal de bovenstaande stappen ook door de rol Inzender voor Azure Container Instances en de netwerkbijdrager toe te voegen aan de resourceprovider van de stand-bypool.
Zie Azure-rollen toewijzen met behulp van Azure Portal voor meer informatie over het toewijzen van rollen.
Een container uit de stand-bypool gebruiken
Wanneer u een nieuwe containergroep nodig hebt, kunt u er onmiddellijk een ophalen uit de stand-bypool die is ingericht en wordt uitgevoerd.
Stand-bypools geven alleen containergroepen uit de pool die volledig zijn ingericht en klaar zijn om werk te ontvangen. Wanneer de exemplaren in uw pool bijvoorbeeld nog steeds worden geïnitialiseerd, bevinden ze zich niet in de actieve status en worden ze niet opgegeven wanneer een container wordt aangevraagd. Als er geen exemplaren in de pool beschikbaar zijn, worden azure Container Instances standaard teruggezet naar het maken van een nieuwe containergroep.
Grootte van stand-bypool
Het aantal containergroepen in een stand-bypool wordt bepaald door de maxReadyCapacity
parameter in te stellen. Wanneer een containergroep wordt gebruikt vanuit de pool, begint de stand-bypool automatisch opnieuw te vullen, zodat uw stand-bypool de ingestelde maximale gereedheidscapaciteit behoudt.
Het enige beschikbare navulbeleid voor stand-bypools in Azure Container Instances is Always
.
Instelling | Beschrijving |
---|---|
maxReadyCapacity | Het maximum aantal containergroepen dat u in de pool wilt implementeren. |
refillPolicy | Geeft aan dat de stand-bypool containergroepen onmiddellijk moet aanvullen om de maxReadyCapacity te behouden. |
Profiel van containergroep
Een containergroepprofiel vertelt de stand-bypool hoe de containers in de pool moeten worden geconfigureerd. Als u wijzigingen aanbrengt in het profiel van de containergroep, moet u ook uw stand-bypool bijwerken om ervoor te zorgen dat de updates worden toegepast op de exemplaren in de pool.
{
"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"
}
}
Configuratietoewijzingen
Een configuratietoewijzing is een eigenschap die kan worden gekoppeld aan een containergroepprofiel en kan worden gebruikt om containerconfiguraties toe te passen die vergelijkbaar zijn met omgevingsvariabelen en geheime volumes. Wanneer u echter omgevingsvariabelen of geheime volumes gebruikt, is het opnieuw opstarten van de pod vereist om de wijzigingen van kracht te laten worden. Met behulp van configuratietoewijzingen kunnen de configuraties worden toegepast zonder de container opnieuw op te starten. Hierdoor kunnen out-of-band-updates worden uitgevoerd, zodat containers de nieuwe waarden kunnen lezen zonder opnieuw op te starten.
Azure Container Instances kunnen worden gemaakt met of zonder configuratietoewijzingen en kunnen op elk moment na het maken worden bijgewerkt met behulp van configuratietoewijzingen. Het bijwerken van configuratietoewijzingen in een bestaande actieve containergroep kan snel en zonder dat de container opnieuw wordt opgestart.
Zie config-kaarten gebruiken voor meer informatie.
{
"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}"
}
Vertrouwelijke containers
Stand-bypools voor Azure-containerinstanties ondersteunen vertrouwelijke containers. Als u vertrouwelijke containers wilt gebruiken, werkt u het sku
type Confidential
bij in het profiel van de containergroep.
Belangrijk
Waarden die worden doorgegeven met behulp van configuratietoewijzingen, worden niet opgenomen in het beveiligingsbeleid of gevalideerd door de runtime voordat de bestandskoppeling beschikbaar wordt gesteld aan de container. Waarden die invloed kunnen hebben op gegevens of toepassingsbeveiliging, kunnen niet worden vertrouwd door de toepassing tijdens de uitvoering en moeten in plaats daarvan beschikbaar worden gesteld aan de container met behulp van omgevingsvariabelen.
{
"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"
}
}
Beheerde identiteit
Stand-bypools voor Azure Container Instances ondersteunen integratie met Managed Identity. Het toepassen van een beheerde identiteit wordt uitgevoerd bij het aanvragen van een container vanuit de stand-bypool en met inbegrip van de identity
parameters en instellingen. Beheerde identiteit is geen eigenschap die rechtstreeks in het profiel van de containergroep wordt ondersteund.
{
"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}"
}
}
}
}
]
}
}
Beschikbaarheidszones
Stand-bypools voor Azure Container Instances bieden ondersteuning voor het maken en aanvragen van containers in beschikbaarheidszones. Het maken van een zonegebonden stand-bypool is momenteel alleen beschikbaar met behulp van de REST API's van de stand-bypool met versie 2024-08-01-preview en alleen beschikbaar in de regio India - centraal.
Een zonegebonden stand-bypool maken
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"
}