Create a VM using a RHEL BYOS image
You can create a virtual machine (VM) instance on Compute Engine by using
images from your Red Hat Cloud Access subscription.
With this option, you pay Red Hat for license subscriptions and pay Trusted Cloud by S3NS
only for infrastructure costs you incur. When you use OS images from your Red Hat
Cloud Access subscription on Trusted Cloud by S3NS, you must request support
directly from Red Hat. To request support, log into your Red Hat Customer Portal
and open a support ticket.
When you create a VM that uses a RHEL OS image,
you can access the Red Hat Knowledgebase by using a single-sign-on (SSO) option
available through the Trusted Cloud console.
Before you begin
Required roles
To get the permissions that
you need to create VMs,
ask your administrator to grant you the
Compute Instance Admin (v1) (roles/compute.instanceAdmin.v1
)
IAM role on the project.
For more information about granting roles, see Manage access to projects, folders, and organizations.
This predefined role contains
the permissions required to create VMs. To see the exact permissions that are
required, expand the Required permissions section:
Required permissions
The following permissions are required to create VMs:
-
compute.instances.create
on the project
-
To use a custom image to create the VM:
compute.images.useReadOnly
on the image
-
To use a snapshot to create the VM:
compute.snapshots.useReadOnly
on the snapshot
-
To use an instance template to create the VM:
compute.instanceTemplates.useReadOnly
on the instance template
-
To assign a legacy network to the VM:
compute.networks.use
on the project
-
To specify a static IP address for the VM:
compute.addresses.use
on the project
-
To assign an external IP address to the VM when using a legacy network:
compute.networks.useExternalIp
on the project
-
To specify a subnet for your VM:
compute.subnetworks.use
on the project or on the chosen subnet
-
To assign an external IP address to the VM when using a VPC network:
compute.subnetworks.useExternalIp
on the project or on the chosen subnet
-
To set VM instance metadata for the VM:
compute.instances.setMetadata
on the project
-
To set tags for the VM:
compute.instances.setTags
on the VM
-
To set labels for the VM:
compute.instances.setLabels
on the VM
-
To set a service account for the VM to use:
compute.instances.setServiceAccount
on the VM
-
To create a new disk for the VM:
compute.disks.create
on the project
-
To attach an existing disk in read-only or read-write mode:
compute.disks.use
on the disk
-
To attach an existing disk in read-only mode:
compute.disks.useReadOnly
on the disk
You might also be able to get
these permissions
with custom roles or
other predefined roles.
Create a VM with a RHEL BYOS image
In summary, to use Red Hat Cloud Access subscription on Trusted Cloud by S3NS, you need
to complete the following steps:
- Give Trusted Cloud by S3NS access to the images in your Red Hat
Cloud Access subscription.
- Use Trusted Cloud console or Google Cloud CLI to create the VM.
Give your Google Group access to your RHEL subscription
To provide your Google Group with access to RHEL BYOS images, complete the
following steps:
- Select an existing or create a Google Group.
- Add all users and service accounts that you want to use these BYOS images,
to the Google Group. See
Add people to your group.
- Log into the Red Hat Customer Portal
and complete the following steps:
- On the navigation menu, select Cloud Access.
- Click Enable a new provider.
- In the Select a Red Hat Certified Cloud and Service Provider menu,
select Google Compute Engine.
- Enter your Google Compute Engine ID. This is the
email address for the Google Group that you created in step one.
- Select the products that you want to enable.
- Click Enable.
It might take 3-4 hours for your Trusted Cloud by S3NS account to be
linked to the Red Hat Customer Portal.
Understanding RHEL BYOS projects
rhel-byos-cloud
is a public Trusted Cloud by S3NS project that contains a list of all
available RHEL BYOS images. You can reference this project to find the correct
image name or family that you will then use to create your own VM instance in
your project. The images are managed by Trusted Cloud by S3NS, but they can
only be used if you have properly enabled your RHEL BYOS subscription.
Create the VM
After you give your Google Group access to your RHEL subscription, your
RHEL BYOS images are available in the public Trusted Cloud by S3NS rhel-byos-cloud
project
on Compute Engine, but you will create your own VM in your own project.
Console
The Trusted Cloud console simplifies this process by automatically presenting the
available RHEL BYOS images from the rhel-byos-cloud
project.
In the Trusted Cloud console, go to the Create an instance page.
Go to Create an instance
Specify a Name for your VM. For more information, see Resource naming convention.
Optional: Change the Zone for this VM. If you select Any,
Google automatically chooses a zone for you based on machine type
and availability.
Select a Machine configuration for your VM.
In the Boot disk section, click Change.
In the Public images tab, complete the following steps:
- In the Operating system drop-down, select one of the following:
- Red Hat Enterprise Linux
- Red Hat Enterprise Linux for SAP
- In the Version Type drop-down, select the image that
you want to use.
- In the License type section, select
Bring your own subscription or license (BYOS/BYOL).
- Specify boot disk type.
- Specify boot disk size.
- Optional: For advanced configuration options, click
Show advanced configuration.
- To confirm your boot disk options, click Select.
Make additional VM customizations, as needed.
To create and start the VM, click Create.
gcloud
Creating a VM with the Google Cloud CLI is a two-step process to make sure
you use the correct image from the rhel-byos-cloud
project.
To find the RHEL BYOS image you want to use. Run the following command to list the available images in the rhel-byos-cloud
project:
gcloud compute images list \
--project=rhel-byos-cloud \
--filter="name ~ rhel-byos"
From the command output, note the name
of the image you want to use. For example, the name might be rhel-9-byos
or rhel-9-2-sap-byos
.
Create the VM with a BYOS image in your own project by referencing the image you found in the previous step by running the gcloud compute instances create
command
with your PROJECT_ID and IMAGE_NAME.
gcloud compute instances create VM_NAME \
--project=PROJECT_ID \
--image=IMAGE_NAME
Replace the following:
VM_NAME
:
name of the
new VM
PROJECT_ID
: your project ID where you want to create the VM
IMAGE_NAME
: the specific image name that
you want to use
What's next
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-08-26 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-26 UTC."],[[["\u003cp\u003eYou can use images from your Red Hat Cloud Access subscription to create virtual machine (VM) instances on Google Cloud's Compute Engine, paying Red Hat for the license and Google Cloud for infrastructure.\u003c/p\u003e\n"],["\u003cp\u003eTo utilize a Red Hat Cloud Access subscription, you must first grant a Google Group access to your RHEL subscription via the Red Hat Customer Portal, then create a VM using either the Google Cloud console or the Google Cloud CLI.\u003c/p\u003e\n"],["\u003cp\u003eCreating a VM with a Red Hat Enterprise Linux (RHEL) image allows you to access the Red Hat Knowledgebase through a single-sign-on (SSO) option in the Google Cloud console.\u003c/p\u003e\n"],["\u003cp\u003eTo create VMs, you'll need specific permissions, including the \u003ccode\u003eCompute Instance Admin (v1)\u003c/code\u003e role, which can be granted by your administrator.\u003c/p\u003e\n"],["\u003cp\u003eThe RHEL BYOS images are available in the \u003ccode\u003erhel-byos-cloud\u003c/code\u003e project on Compute Engine once access has been given in the Red Hat Customer Portal, and this process might take a few hours.\u003c/p\u003e\n"]]],[],null,["# Create a VM using a RHEL BYOS image\n\nLinux\n\n*** ** * ** ***\n\nYou can create a virtual machine (VM) instance on Compute Engine by using\nimages from your [Red Hat Cloud Access subscription](https://www.redhat.com/en/technologies/cloud-computing/cloud-access).\n\nWith this option, you pay Red Hat for license subscriptions and pay Google Cloud\nonly for infrastructure costs you incur. When you use OS images from your Red Hat\nCloud Access subscription on Google Cloud, you must request support\ndirectly from Red Hat. To request support, log into your Red Hat Customer Portal\nand open a support ticket.\n\nWhen you create a VM that uses a RHEL OS image,\nyou can access the Red Hat Knowledgebase by using a single-sign-on (SSO) option\n[available through the Google Cloud console](/compute/docs/images/premium/access-rhel-knowledgebase).\n\nBefore you begin\n----------------\n\n- If you haven't already, set up [authentication](/compute/docs/authentication). Authentication verifies your identity for access to Google Cloud services and APIs. To run code or samples from a local development environment, you can authenticate to Compute Engine by selecting one of the following options:\n\n Select the tab for how you plan to use the samples on this page: \n\n ### Console\n\n\n When you use the Google Cloud console to access Google Cloud services and\n APIs, you don't need to set up authentication.\n\n ### gcloud\n\n 1.\n [Install](/sdk/docs/install) the Google Cloud CLI.\n\n After installation,\n [initialize](/sdk/docs/initializing) the Google Cloud CLI by running the following command:\n\n ```bash\n gcloud init\n ```\n\n\n If you're using an external identity provider (IdP), you must first\n [sign in to the gcloud CLI with your federated identity](/iam/docs/workforce-log-in-gcloud).\n | **Note:** If you installed the gcloud CLI previously, make sure you have the latest version by running `gcloud components update`.\n 2. [Set a default region and zone](/compute/docs/gcloud-compute#set_default_zone_and_region_in_your_local_client).\n\n### Required roles\n\n\nTo get the permissions that\nyou need to create VMs,\n\nask your administrator to grant you the\n\n\n[Compute Instance Admin (v1)](/iam/docs/roles-permissions/compute#compute.instanceAdmin.v1) (`roles/compute.instanceAdmin.v1`)\nIAM role on the project.\n\n\nFor more information about granting roles, see [Manage access to projects, folders, and organizations](/iam/docs/granting-changing-revoking-access).\n\n\nThis predefined role contains\n\nthe permissions required to create VMs. To see the exact permissions that are\nrequired, expand the **Required permissions** section:\n\n\n#### Required permissions\n\nThe following permissions are required to create VMs:\n\n- ` compute.instances.create` on the project\n- To use a custom image to create the VM: ` compute.images.useReadOnly` on the image\n- To use a snapshot to create the VM: ` compute.snapshots.useReadOnly` on the snapshot\n- To use an instance template to create the VM: ` compute.instanceTemplates.useReadOnly` on the instance template\n- To assign a [legacy network](/vpc/docs/legacy) to the VM: ` compute.networks.use` on the project\n- To specify a static IP address for the VM: ` compute.addresses.use` on the project\n- To assign an external IP address to the VM when using a legacy network: ` compute.networks.useExternalIp` on the project\n- To specify a subnet for your VM: ` compute.subnetworks.use` on the project or on the chosen subnet\n- To assign an external IP address to the VM when using a VPC network: ` compute.subnetworks.useExternalIp` on the project or on the chosen subnet\n- To set VM instance metadata for the VM: ` compute.instances.setMetadata` on the project\n- To set tags for the VM: ` compute.instances.setTags` on the VM\n- To set labels for the VM: ` compute.instances.setLabels` on the VM\n- To set a service account for the VM to use: ` compute.instances.setServiceAccount` on the VM\n- To create a new disk for the VM: ` compute.disks.create` on the project\n- To attach an existing disk in read-only or read-write mode: ` compute.disks.use` on the disk\n- To attach an existing disk in read-only mode: ` compute.disks.useReadOnly` on the disk\n\n\nYou might also be able to get\nthese permissions\nwith [custom roles](/iam/docs/creating-custom-roles) or\nother [predefined roles](/iam/docs/roles-overview#predefined).\n\nCreate a VM with a RHEL BYOS image\n----------------------------------\n\nIn summary, to use Red Hat Cloud Access subscription on Google Cloud, you need\nto complete the following steps:\n\n1. [Give Google Cloud access to the images](#enable-access) in your Red Hat Cloud Access subscription.\n2. [Use Google Cloud console or Google Cloud CLI](#create-vm) to create the VM.\n\n### Give your Google Group access to your RHEL subscription\n\nTo provide your Google Group with access to RHEL BYOS images, complete the\nfollowing steps:\n\n1. Select an existing or create a [Google Group](https://support.google.com/groups/answer/2464926).\n2. Add all users and service accounts that you want to use these BYOS images, to the Google Group. See [Add people to your group](https://support.google.com/groups/answer/2465464?ref_topic=2458761).\n3. Log into the [Red Hat Customer Portal](https://access.redhat.com/) and complete the following steps:\n 1. On the navigation menu, select **Cloud Access**.\n 2. Click **Enable a new provider**.\n 3. In the **Select a Red Hat Certified Cloud and Service Provider** menu, select **Google Compute Engine**.\n 4. Enter your **Google Compute Engine ID** . This is the [email address](https://support.google.com/groups/answer/2464926#zippy=%2Csettings-reference) for the Google Group that you created in step one.\n 5. Select the products that you want to enable.\n 6. Click **Enable**.\n\nIt might take 3-4 hours for your Google Cloud account to be\nlinked to the Red Hat Customer Portal.\n\n### Understanding RHEL BYOS projects\n\n`rhel-byos-cloud` is a public Google Cloud project that contains a list of all\navailable RHEL BYOS images. You can reference this project to find the correct\nimage name or family that you will then use to create your own VM instance in\nyour project. The images are managed by Google Cloud, but they can\nonly be used if you have properly enabled your RHEL BYOS subscription.\n\n### Create the VM\n\nAfter you give your Google Group access to your RHEL subscription, your\nRHEL BYOS images are available in the public Google Cloud `rhel-byos-cloud` project\non Compute Engine, but you will create your own VM in your own project. \n\n### Console\n\nThe Google Cloud console simplifies this process by automatically presenting the\navailable RHEL BYOS images from the `rhel-byos-cloud` project.\n\n1. In the Google Cloud console, go to the **Create an instance** page.\n\n [Go to Create an instance](https://console.cloud.google.com/compute/instancesAdd)\n2. Specify a **Name** for your VM. For more information, see [Resource naming convention](/compute/docs/naming-resources#resource-name-format).\n\n3. Optional: Change the **Zone** for this VM. If you select **Any**,\n Google automatically chooses a zone for you based on machine type\n and availability.\n\n4. Select a **Machine configuration** for your VM.\n\n5. In the **Boot disk** section, click **Change**.\n\n6. In the **Public images** tab, complete the following steps:\n\n 1. In the **Operating system** drop-down, select one of the following:\n - **Red Hat Enterprise Linux**\n - **Red Hat Enterprise Linux for SAP**\n 2. In the **Version Type** drop-down, select the image that you want to use.\n 3. In the **License type** section, select **Bring your own subscription or license (BYOS/BYOL)**.\n 4. Specify boot disk type.\n 5. Specify boot disk size.\n 6. Optional: For advanced configuration options, click **Show advanced configuration**.\n 7. To confirm your boot disk options, click **Select**.\n7. Make additional VM customizations, as needed.\n\n8. To create and start the VM, click **Create**.\n\n### gcloud\n\nCreating a VM with the Google Cloud CLI is a two-step process to make sure\nyou use the correct image from the `rhel-byos-cloud` project.\n\n1. To find the RHEL BYOS image you want to use. Run the following command to list the available images in the `rhel-byos-cloud` project:\n\n ```\n gcloud compute images list \\\n --project=rhel-byos-cloud \\\n --filter=\"name ~ rhel-byos\"\n ```\n\n From the command output, note the `name` of the image you want to use. For example, the name might be `rhel-9-byos` or `rhel-9-2-sap-byos`.\n2. Create the VM with a BYOS image in your own project by referencing the image you found in the previous step by running the [`gcloud compute instances create` command](/sdk/gcloud/reference/compute/instances/create)\n with your \u003cvar translate=\"no\"\u003ePROJECT_ID\u003c/var\u003e and \u003cvar translate=\"no\"\u003eIMAGE_NAME\u003c/var\u003e.\n\n ```\n gcloud compute instances create VM_NAME \\\n --project=PROJECT_ID \\\n --image=IMAGE_NAME\n ```\n\n Replace the following:\n - \u003cvar translate=\"no\"\u003eVM_NAME\u003c/var\u003e: [name](/compute/docs/naming-resources#resource-name-format) of the new VM\n - \u003cvar translate=\"no\"\u003ePROJECT_ID\u003c/var\u003e: your project ID where you want to create the VM\n - \u003cvar translate=\"no\"\u003eIMAGE_NAME\u003c/var\u003e: the specific image name that you want to use\n\nWhat's next\n-----------\n\n- [Connect to Linux VMs](/compute/docs/instances/connecting-to-instance).\n- [Connect to Windows VMs](/compute/docs/instances/connecting-to-windows).\n- [Access Red Hat Knowlegebase](/compute/docs/images/premium/access-rhel-knowledgebase)."]]