你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Azure 中的 Red Hat Enterprise Linux 自带订阅黄金映像

适用于:✔️ Linux VM

Red Hat Enterprise Linux (RHEL) 映像在 Azure 中通过即用即付或自带订阅 (BYOS)(Red Hat 黄金映像)模型提供。 本文概述了 Azure 中的 Red Hat 黄金映像。

注意

RHEL BYOS 黄金映像在 Azure 公用(商业)和 Azure 政府云中提供。 它们在由世纪互联运营的 Microsoft Azure 或 Azure Blackforest 云中不可用。

考虑的要点

  • 此计划中提供的 Red Hat 黄金映像是与 Azure 市场中的 RHEL 即用即付映像类似的生产就绪 RHEL 映像。
  • 这些映像遵循在 Azure 上的 Red Hat Enterprise Linux 映像中所述的当前策略。
  • 标准版支持策略适用于通过这些映像创建的 VM。
  • 从 Red Hat 黄金映像预配的 VM 不会产生与 RHEL 即用即付映像关联的 RHEL 费用。
  • 映像未获授权。 必须使用 Red Hat 订阅管理器注册和订阅 VM,才能直接从 Red Hat 获取更新。
  • 可以使用 Azure 混合权益从即用即付映像切换到 BYOS。 若要从 RHEL BYOS 转换为即用即付,请按照适用于自带订阅 Linux 虚拟机的 Azure 混合权益中的步骤操作

访问 Red Hat 黄金映像的要求和条件

  1. 熟悉 Red Hat Cloud Access 计划条款。 在 Red Hat 订阅管理器处为 Cloud Access 启用 Red Hat 订阅。 需要准备好将为 Cloud Access 注册的 Azure 订阅。

  2. 如果为 Cloud Access 启用的 Red Hat 订阅满足资格要求,则会自动为金牌映像访问启用 Azure 订阅。

映像访问的预计时间

完成 Cloud Access 启用步骤后,Red Hat 会验证你是否符合 Red Hat 黄金映像资格。 如果验证成功,则你会在三小时内收到黄金映像的访问权限。

通过 Azure 门户使用 Red Hat 黄金映像

  1. Azure 订阅收到 Red Hat 黄金映像的访问权限后,你可以在 Azure 门户中找到它们。 转到创建资源>商城

  2. 在页面顶部,你会看到你拥有专用套餐。

    市场专用套餐

  3. 选择紫色链接,或向下滚动到页面底部,以查看你的专用套餐。

  4. UI 中的其余预配与任何其他现有 Red Hat 映像没有什么不同。 选择 RHEL 版本,并按照提示预配 VM。 此过程还允许在最后一步接受映像条款。

注意

到目前为止,这些步骤不会启用 Red Hat 黄金映像来进行编程部署。 这需要其他步骤,如“其他信息”部分中所述。

本文档的其余部分重点介绍用于预配映像和接受其条款的 CLI 方法。 就最终结果(已预配的 RHEL 黄金映像 VM)而言,UI 和 CLI 完全可以互换。

通过 Azure CLI 使用 Red Hat 黄金映像

以下说明会引导你完成使用 Azure CLI 进行 RHEL VM 初始部署的过程。 这些说明假设已安装 Azure CLI

重要

请确保对于以下所有命令,在发布者、讨教、计划和映像引用中全部使用小写字母。

  1. 检查你是否在使用所需订阅。

    az account show -o=json
    
  2. 为 Red Hat 黄金映像 VM 创建资源组。

    az group create --name <name> --location <location>
    
  3. 接受映像条款。

    选项 1:

    az vm image terms accept --publisher redhat --offer rhel-byos --plan <SKU value here> -o=jsonc
    

    示例:

    az vm image terms accept --publisher redhat --offer rhel-byos --plan rhel-lvm87 -o=jsonc
    

    选项 2:

    az vm image terms accept --urn <SKU value here>
    

    示例:

    az vm image terms accept --urn RedHat:rhel-byos:rhel-lvm87:8.7.2023021503
    

    注意

    对于每个 Azure 订阅、每个映像 SKU,需要接受一次这些条款。

  4. (可选)使用以下命令验证 VM 部署:

    az vm create -n <VM name> -g <resource group name> --image <image urn> --validate
    

    例如:

    az vm create -n rhel-byos-vm -g rhel-byos-group --image redhat:rhel-byos:rhel-lvm8:latest --validate
    
  5. 通过运行上一个示例中所示的相同命令来预配 VM,无需 --validate 参数。

    az vm create -n <VM name> -g <resource group name> --image <image urn>
    

    例如:

    az vm create -n rhel-byos-vm -g rhel-byos-group --image redhat:rhel-byos:rhel-lvm8:latest
    
  6. 通过 SSH 连接到 VM,并验证是否具有未获授权的映像。 若要执行此步骤,请运行 sudo yum repolist。 对于 RHEL 8 或 9,请使用 sudo dnf repolist。 输出会要求使用订阅管理器向 Red Hat 注册 VM。

注意

在 RHEL 8 和 9,dnfyum 可互换。 有关详细信息,请参阅 RHEL 8 管理员指南RHEL 9 管理员指南

通过 PowerShell 使用 Red Hat 黄金映像

下面的脚本就是一个示例。 将资源组、位置、VM 名称、登录信息和其他变量替换为你选择的配置。 发布者和计划信息必须为小写。

    $resourceGroup = "testbyos"
    $location = "canadaeast"
    $vmName = "test01"

    # Define user name and blank password
    $securePassword = ConvertTo-SecureString 'TestPassword1!' -AsPlainText -Force
    $cred = New-Object System.Management.Automation.PSCredential("azureuser",$securePassword)
    Get-AzMarketplaceTerms -Publisher redhat -Product rhel-byos -Name rhel-lvm87
    Set-AzMarketplaceTerms -Accept  -Publisher redhat -Product rhel-byos -Name rhel-lvm87

    # Create a resource group
    New-AzResourceGroup -Name $resourceGroup -Location $location

    # Create a subnet configuration
    $subnetConfig = New-AzVirtualNetworkSubnetConfig -Name mySubnet -AddressPrefix 192.168.1.0/24

    # Create a virtual network
    $vnet = New-AzVirtualNetwork -ResourceGroupName $resourceGroup -Location $location -Name MYvNET -AddressPrefix 192.168.0.0/16 -Subnet $subnetConfig

    # Create a public IP address and specify a DNS name
    $pip = New-AzPublicIpAddress -ResourceGroupName $resourceGroup -Location $location -Name "mypublicdns$(Get-Random)" -AllocationMethod Static -IdleTimeoutInMinutes 4

    # Create an inbound network security group rule for port 22
    $nsgRuleSSH = New-AzNetworkSecurityRuleConfig -Name myNetworkSecurityGroupRuleSSH -Protocol Tcp  -Direction Inbound -Priority 1000 -SourceAddressPrefix * -SourcePortRange * -DestinationAddressPrefix * -DestinationPortRange 22 -Access Allow

    # Create a network security group
    $nsg = New-AzNetworkSecurityGroup -ResourceGroupName $resourceGroup -Location $location -Name myNetworkSecurityGroup -SecurityRules $nsgRuleSSH

    # Create a virtual network card and associate with public IP address and NSG
    $nic = New-AzNetworkInterface -Name myNic -ResourceGroupName $resourceGroup -Location $location -SubnetId $vnet.Subnets[0].Id -PublicIpAddressId $pip.Id -NetworkSecurityGroupId $nsg.Id

    # Create a virtual machine configuration
    $vmConfig = New-AzVMConfig -VMName $vmName -VMSize Standard_D3_v2 |
    Set-AzVMOperatingSystem -Linux -ComputerName $vmName -Credential $cred |
    Set-AzVMSourceImage -PublisherName redhat -Offer rhel-byos -Skus rhel-lvm87 -Version latest |
	Add-AzVMNetworkInterface -Id $nic.Id
    Set-AzVMPlan -VM $vmConfig -Publisher redhat -Product rhel-byos -Name "rhel-lvm87"

    # Configure SSH Keys
    $sshPublicKey = Get-Content "$env:USERPROFILE\.ssh\id_rsa.pub"
    Add-AzVMSshPublicKey -VM $vmconfig -KeyData $sshPublicKey -Path "/home/azureuser/.ssh/authorized_keys"

    # Create a virtual machine
    New-AzVM -ResourceGroupName $resourceGroup -Location $location -VM $vmConfig

对 Red Hat Enterprise Linux 自带订阅黄金映像进行加密

可以使用 Azure 磁盘加密保护 Red Hat Enterprise Linux BYOS 黄金映像。 必须先注册订阅,然后才能启用加密。 有关如何注册 RHEL BYOS 黄金映像的详细信息,请参阅如何使用 Red Hat 订阅管理器将系统注册并订阅到 Red Hat 客户门户。 如果有活动 Red Hat 订阅,还可以阅读创建 Red Hat 客户门户激活密钥

Red Hat 自定义映像不支持 Azure 磁盘加密。 适用于 Linux VM 的 Azure 磁盘加密中介绍了其他 Azure 磁盘加密要求和先决条件。

有关应用 Azure 磁盘加密的步骤,请参阅 Linux VM 上的 Azure 磁盘加密方案和相关文章。

其他信息

  • 如果尝试在未针对此套餐启用的订阅上预配 VM,则会收到以下消息:

    "Offer with PublisherId: redhat, OfferId: rhel-byos, PlanId: rhel-lvm87 is private and can not be purchased by subscriptionId: GUID"
    

    在这种情况下,请与 Microsoft 或 Red Hat 联系以启用订阅。

  • 如果从 RHEL BYOS 映像修改快照并尝试将该自定义映像发布到 Azure Compute Gallery(以前称为共享映像库),则必须提供与快照原始源相匹配的计划信息。 例如,命令可能如下所示:

    az vm create -image \
    "/subscriptions/GUID/resourceGroups/GroupName/providers/Microsoft.Compute/galleries/GalleryName/images/ImageName/versions/1.0.0" \
    -g AnotherGroupName --location EastUS2 -n VMName \
    --plan-publisher redhat --plan-product rhel-byos --plan-name rhel-lvm87
    

    请注意最后一行中的计划参数。

    自定义映像不支持 Azure 磁盘加密

  • 如果使用自动化从 RHEL BYOS 映像预配 VM,则必须提供与示例命令中所示内容相似的计划参数。 例如,如果使用 Terraform,则在计划块中提供计划信息。

后续步骤