Hantera nödåtkomst till en bare metal-dator med hjälp av az networkcloud cluster bmckeyset
Varning
Observera att den här processen används i nödsituationer när alla andra felsökningsalternativ via Azure är uttömda. SSH-åtkomst till dessa datorer utan operativsystem är begränsad till användare som hanteras via den här metoden från den angivna listan över hoppvärdar.
Det finns sällsynta situationer där en användare behöver undersöka och lösa problem med en dator utan operativsystem och alla andra sätt att använda Azure är uttömda. Operatorn Nexus tillhandahåller az networkcloud cluster bmckeyset
kommandot så att användarna kan hantera SSH-åtkomst till baskortshanteringsstyrenheten (BMC) på dessa datorer utan operativsystem. När nyckeluppsättningen skapas verifieras användarna mot Microsoft Entra-ID för korrekt auktorisering genom att korsreferera användarens huvudnamn som angetts för en användare mot det angivna Azure-grupp-ID:t --azure-group-id <Entra Group ID>
.
Användare i en nyckeluppsättning verifieras var fjärde timme och även när eventuella ändringar görs i en nyckeluppsättning. Varje användares status anges sedan till "Aktiv" eller "Ogiltig". Ogiltiga användare finns kvar i nyckeluppsättningen, men deras nycklar tas bort från alla värdar och de får inte åtkomst. Orsaker till att en användare är ogiltig är:
- Användarens huvudnamn för användaren är inte medlem i den angivna Entra-gruppen (om det anges)
- Den angivna Entra-gruppen (om den anges) finns inte (i vilket fall alla användare i nyckeluppsättningen är ogiltiga)
- Nyckeluppsättningen har upphört att gälla (i vilket fall alla användare i nyckeluppsättningen är ogiltiga)
Kommentar
Det finns för närvarande en övergångsperiod där det är valfritt att ange användarnamn. I en framtida version blir det obligatoriskt och Microsoft Entra ID-verifiering tillämpas för alla användare. Användarna uppmanas att lägga till användarnamn i sina nyckeluppsättningar innan övergångsperioden löper ut (planerad till juli 2024) för att undvika att nyckeluppsättningar ogiltigförklaras. Observera att om några namn på användarens huvudnamn läggs till i en nyckeluppsättning, även om de inte har lagts till för alla användare, aktiveras Microsoft Entra-ID-verifieringen, vilket resulterar i att hela nyckeluppsättningen ogiltigförklaras om det angivna grupp-ID:t inte är giltigt.
Nyckeluppsättningen och varje enskild användare har också detaljerade statusmeddelanden som kommunicerar annan information:
- Nyckeluppsättningens detailedStatusMessage anger om nyckeluppsättningen har upphört att gälla och annan information om problem som uppstår vid uppdatering av nyckeluppsättningen i klustret.
- Användarens statusMessage anger om användaren är aktiv eller ogiltig och en lista över datorer som ännu inte har uppdaterats till användarens senaste aktiva/ogiltiga tillstånd. I varje fall inkluderas orsaker till problem om de är kända.
När kommandot körs körs det på varje dator utan operativsystem i klustret med en aktiv Kubernetes-nod. Det finns en avstämningsprocess som körs med jämna mellanrum som försöker köra kommandot igen på alla datorer utan operativsystem som inte var tillgängliga vid tidpunkten för det ursprungliga kommandot. Dessutom skickar alla datorer utan operativsystem som återgår till klustret via ett az networkcloud baremetalmachine actionreimage
eller az networkcloud baremetalmachine actionreplace
-kommando (se BareMetal-funktioner) en signal som gör att alla aktiva nyckeluppsättningar skickas till datorn så snart den återgår till klustret. Flera kommandon körs i den order som tas emot.
BMC:erna har stöd för högst 12 användare. Användare definieras per kluster och tillämpas på varje dator utan operativsystem. Försök att lägga till fler än 12 användare resulterar i ett fel. Ta bort en användare innan du lägger till en till när 12 redan finns.
Förutsättningar
- Installera den senaste versionen av lämpliga CLI-tillägg.
- Det lokala klustret måste ha anslutning till Azure.
- Hämta resursgruppens namn.
Cluster
- Processen tillämpar nyckeluppsättningar på alla datorer utan operativsystem som körs.
- De användare som har lagts till måste ingå i en Microsoft Entra-grupp. Mer information finns i Hantera grupper.
- Om du vill begränsa åtkomsten för att hantera nyckeluppsättningar skapar du en anpassad roll. Mer information finns i Anpassade Azure-roller. I det här fallet lägger du till eller exkluderar behörigheter för
Microsoft.NetworkCloud/clusters/bmcKeySets
. Alternativen är/read
,/write
och/delete
.
Kommentar
När BMC-åtkomst skapas, ändras eller tas bort via kommandona som beskrivs i den här artikeln, levererar en bakgrundsprocess dessa ändringar till datorerna. Den här processen pausas under uppgraderingen av operatörsprogramvaran Nexus. Om det är känt att en uppgradering pågår kan du använda --no-wait
alternativet med kommandot för att förhindra att kommandotolken väntar på att processen ska slutföras.
Skapa en BMC-nyckeluppsättning
Kommandot bmckeyset create
skapar SSH-åtkomst till datorn utan operativsystem i ett kluster för en grupp användare.
Kommandosyntaxen är:
az networkcloud cluster bmckeyset create \
--name <BMC Keyset Name> \
--extended-location name=<Extended Location ARM ID> \
type="CustomLocation" \
--location <Azure Region> \
--azure-group-id <Azure AAD Group ID> \
--expiration <Expiration Timestamp> \
--privilege-level <"Administrator" or "ReadOnly"> \
--user-list '[{"description":"<User List Description>","azureUserName":"<User Name>",\
"sshPublicKey":{"keyData":"<SSH Public Key>"}, \
"userPrincipalName":""}]', \
--tags key1=<Key Value> key2=<Key Value> \
--cluster-name <Cluster Name> \
--resource-group <Resource Group Name>
Skapa argument
--azure-group-id [Required] : The object ID of Azure Active Directory
group that all users in the list must
be in for access to be granted. Users
that are not in the group do not have
access.
--bmc-key-set-name --name -n [Required] : The name of the BMC key set.
--cluster-name [Required] : The name of the cluster.
--expiration [Required] : The date and time after which the users
in this key set are removed from
the BMCs. The maximum expiration date is a
year from creation date. Format is
"YYYY-MM-DDTHH:MM:SS.000Z".
--extended-location [Required] : The extended location of the cluster
associated with the resource.
Usage: --extended-location name=XX type=XX
name: Required. The resource ID of the extended location on which the resource is created.
type: Required. The extended location type: "CustomLocation".
--privilege-level [Required] : The access level allowed for the users
in this key set. Allowed values:
"Administrator" or "ReadOnly".
--resource-group -g [Required] : Name of resource group. Optional if
configuring the default group using `az
configure --defaults group=<name>`.
--user-list [Required] : The unique list of permitted users.
Usage: --user-list azure-user-name=XX description=XX key-data=XX
azure-user-name: Required. User name used to login to the server.
description: The free-form description for this user.
key-data: Required. The public ssh key of the user.
userPrincipalName: Optional. The User Principal Name of the User.
Multiple users can be specified by using more than one --user-list argument.
--tags : Space-separated tags: key[=value]
[key[=value] ...]. Use '' to clear
existing tags.
--location -l : Azure Region. Values from: `az account
list-locations`. You can configure the
default location using `az configure
--defaults location=<location>`.
--no-wait : Do not wait for the long-running
operation to finish.
Globala Azure CLI-argument (gäller för alla kommandon)
--debug : Increase logging verbosity to show all
debug logs.
--help -h : Show this help message and exit.
--only-show-errors : Only show errors, suppressing warnings.
--output -o : Output format. Allowed values: json,
jsonc, none, table, tsv, yaml, yamlc.
Default: json.
--query : JMESPath query string. See
http://jmespath.org/ for more
information and examples.
--subscription [Required] : Name or ID of subscription. Optional if
configuring the default subscription
using `az account set -s NAME_OR_ID`.
--verbose : Increase logging verbosity. Use --debug
for full debug logs.
Det här exemplet skapar en ny nyckeluppsättning med två användare som har standardåtkomst från två jump-värdar.
az networkcloud cluster bmckeyset create \
--name "bmcKeySetName" \
--extended-location name="/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.ExtendedLocation/customLocations/clusterExtendedLocationName" \
type="CustomLocation" \
--location "location" \
--azure-group-id "f110271b-XXXX-4163-9b99-214d91660f0e" \
--expiration "2023-12-31T23:59:59.008Z" \
--privilege-level "Standard" \
--user-list '[{"description":"Needs access for troubleshooting as a part of the support team",\
"azureUserName":"userABC","sshPublicKey":{"keyData":"ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1XoyYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"}},\
{"description":"Needs access for troubleshooting as a part of the support team",\
"azureUserName":"userXYZ","sshPublicKey":{"keyData":"ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXTSTRnIDpcf5qytjs1XoyYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"}}]' \
--tags key1="myvalue1" key2="myvalue2" \
--cluster-name "clusterName" \
--resource-group "resourceGroupName"
Mer information om hur du skapar strukturen finns --user-list
i Azure CLI Shorthand.
Ta bort en BMC-nyckeluppsättning
Kommandot bmckeyset delete
tar bort SSH-åtkomst till BMC för en grupp användare. Alla medlemmar i gruppen förlorar SSH-åtkomst till någon av BMC:erna i klustret.
Kommandosyntaxen är:
az networkcloud cluster bmckeyset delete \
--name <BMC Keyset Name> \
--cluster-name <Cluster Name> \
--resource-group <Resource Group Name> \
Ta bort argument
--bmc-key-set-name --name -n [Required] : The name of the BMC key set to be deleted.
--cluster-name [Required] : The name of the cluster.
--resource-group -g [Required] : Name of resource group. Optional if configuring the
default group using `az configure --defaults
group=<name>`.
--no-wait : Do not wait for the long-running operation to finish.
--yes -y : Do not prompt for confirmation.
Det här exemplet tar bort nyckeluppsättningsgruppen "bmcKeysetName" i klustret "clusterName".
az networkcloud cluster bmckeyset delete \
--name "bmcKeySetName" \
--cluster-name "clusterName" \
--resource-group "resourceGroupName" \
Uppdatera en BMC-nyckeluppsättning
Med bmckeyset update
kommandot kan användare göra ändringar i en befintlig nyckeluppsättningsgrupp.
Kommandosyntaxen är:
az networkcloud cluster bmckeyset update \
--name <BMC Keyset Name> \
--privilege-level <"Standard" or "Superuser"> \
--user-list '[{"description":"<User List Description>","azureUserName":"<User Name>",\
"sshPublicKey":{"keyData":"<SSH Public Key>"}, \
"userPrincipalName":""}]', \
--tags key1=<Key Value> key2=<Key Value> \
--cluster-name <Cluster Name> \
--resource-group <Resource Group Name>
Uppdatera argument
--bmc-key-set-name --name -n [Required] : The name of the BMC key set.
--cluster-name [Required] : The name of the cluster.
--expiration [Required] : The date and time after which the users
in this key set are removed from
the BMCs. The maximum expiration date is a
year from creation date. Format is
"YYYY-MM-DDTHH:MM:SS.000Z".
--privilege-level : The access level allowed for the users
in this key set. Allowed values:
"Administrator" or "ReadOnly".
--user-list : The unique list of permitted users.
Usage: --user-list azure-user-name=XX description=XX key-data=XX
azure-user-name: Required. User name used to login to the server.
description: The free-form description for this user.
key-data: Required. The public SSH key of the user.
userPrincipalName: Optional. The User Principal Name of the User.
Multiple users can be specified by using more than one --user-list argument.
--resource-group -g [Required] : Name of resource group. Optional if
configuring the default group using `az
configure --defaults group=<name>`.
--tags : Space-separated tags: key[=value]
[key[=value] ...]. Use '' to clear
existing tags.
--no-wait : Do not wait for the long-running
operation to finish.
Det här exemplet lägger till två nya användare i gruppen "bmcKeySetName" och ändrar förfallotiden för gruppen.
az networkcloud cluster bmckeyset update \
--name "bmcKeySetName" \
--expiration "2023-12-31T23:59:59.008Z" \
--user-list '[{"description":"Needs access for troubleshooting as a part of the support team",\
"azureUserName":"userDEF", \
"sshPublicKey":{"keyData":"ssh-rsa AAtsE3njSONzDYRIZv/WLjVuMfrUSByHp+jfaaOLHTIIB4fJvo6dQUZxE20w2iDHV3tEkmnTo84eba97VMueQD6OzJPEyWZMRpz8UYWOd0IXeRqiFu1lawNblZhwNT/ojNZfpB3af/YDzwQCZgTcTRyNNhL4o/blKUmug0daSsSXISTRnIDpcf5qytjs1XoyYyJMvzLL59mhAyb3p/cD+Y3/s3WhAx+l0XOKpzXnblrv9d3q4c2tWmm/SyFqthaqd0= admin@vm"}, \
"userPrincipalName":"example@contoso.com"}] \
--cluster-name "clusterName" \
--resource-group "resourceGroupName"
Lista BMC-nyckeluppsättningar
Med bmckeyset list
kommandot kan användarna se de befintliga nyckeluppsättningsgrupperna i ett kluster.
Kommandosyntaxen är:
az networkcloud cluster bmckeyset list \
--cluster-name <Cluster Name> \
--resource-group <Resource Group Name>
Listargument
--cluster-name [Required] : The name of the cluster.
--resource-group -g [Required] : Name of resource group. Optional if
configuring the default group using `az
configure --defaults group=<name>`.
Visa information om BMC-nyckeluppsättning
Med bmckeyset show
kommandot kan användarna se information om en befintlig nyckeluppsättningsgrupp i ett kluster.
Kommandosyntaxen är:
az networkcloud cluster bmckeyset show \
--cluster-name <Cluster Name> \
--resource-group <Resource Group Name>
Visa argument
--bmc-key-set-name --name -n [Required] : The name of the BMC key set.
--cluster-name [Required] : The name of the cluster.
--resource-group -g [Required] : Name of resource group. You can
configure the default group using `az
configure --defaults group=<name>`.