Share via


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 har uttömts. 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 har uttömts. 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>.

Om användarens huvudnamn för en användare inte är medlem i den angivna gruppen är användarens status inställd på "Ogiltig" och statusmeddelandet säger "Ogiltigt eftersom userPrincipal inte är medlem i AAD-gruppen". Om Azure-grupp-ID:t är ogiltigt har varje användare i nyckeluppsättningen statusen "Ogiltig" och statusmeddelandet säger "AAD-gruppen finns inte". Ogiltiga användare finns kvar i nyckeluppsättningen, men deras nyckel aktiveras inte för SSH-åtkomst.

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.

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, /writeoch /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> \
  --jump-hosts-allowed <List of jump server IP addresses> \
  --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 limit is up to 1 year from creation.
                                                           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> \
  --jump-hosts-allowed <List of jump server IP addresses> \
  --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                                           : The date and time after which the users
                                                           in this key set are removed from
                                                           the BMCs. Format is:
                                                           "YYYY-MM-DDTHH:MM:SS.000Z"
  --jump-hosts-allowed                                   : The list of IP addresses of jump hosts
                                                           with management network access from
                                                           which a login is allowed for the
                                                           users. Supports IPv4 or IPv6 addresses.
  --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>`.