Skip to main content
Redhat Developers  Logo
  • AI

    Get started with AI

    • Red Hat AI
      Accelerate the development and deployment of enterprise AI solutions.
    • AI learning hub
      Explore learning materials and tools, organized by task.
    • AI interactive demos
      Click through scenarios with Red Hat AI, including training LLMs and more.
    • AI/ML learning paths
      Expand your OpenShift AI knowledge using these learning resources.
    • AI quickstarts
      Focused AI use cases designed for fast deployment on Red Hat AI platforms.
    • No-cost AI training
      Foundational Red Hat AI training.

    Featured resources

    • OpenShift AI learning
    • Open source AI for developers
    • AI product application development
    • Open source-powered AI/ML for hybrid cloud
    • AI and Node.js cheat sheet

    Red Hat AI Factory with NVIDIA

    • Red Hat AI Factory with NVIDIA is a co-engineered, enterprise-grade AI solution for building, deploying, and managing AI at scale across hybrid cloud environments.
    • Explore the solution
  • Learn

    Self-guided

    • Documentation
      Find answers, get step-by-step guidance, and learn how to use Red Hat products.
    • Learning paths
      Explore curated walkthroughs for common development tasks.
    • Guided learning
      Receive custom learning paths powered by our AI assistant.
    • See all learning

    Hands-on

    • Developer Sandbox
      Spin up Red Hat's products and technologies without setup or configuration.
    • Interactive labs
      Learn by doing in these hands-on, browser-based experiences.
    • Interactive demos
      Click through product features in these guided tours.

    Browse by topic

    • AI/ML
    • Automation
    • Java
    • Kubernetes
    • Linux
    • See all topics

    Training & certifications

    • Courses and exams
    • Certifications
    • Skills assessments
    • Red Hat Academy
    • Learning subscription
    • Explore training
  • Build

    Get started

    • Red Hat build of Podman Desktop
      A downloadable, local development hub to experiment with our products and builds.
    • Developer Sandbox
      Spin up Red Hat's products and technologies without setup or configuration.

    Download products

    • Access product downloads to start building and testing right away.
    • Red Hat Enterprise Linux
    • Red Hat AI
    • Red Hat OpenShift
    • Red Hat Ansible Automation Platform
    • See all products

    Featured

    • Red Hat build of OpenJDK
    • Red Hat JBoss Enterprise Application Platform
    • Red Hat OpenShift Dev Spaces
    • Red Hat Developer Toolset

    References

    • E-books
    • Documentation
    • Cheat sheets
    • Architecture center
  • Community

    Get involved

    • Events
    • Live AI events
    • Red Hat Summit
    • Red Hat Accelerators
    • Community discussions

    Follow along

    • Articles & blogs
    • Developer newsletter
    • Videos
    • Github

    Get help

    • Customer service
    • Customer support
    • Regional contacts
    • Find a partner

    Join the Red Hat Developer program

    • Download Red Hat products and project builds, access support documentation, learning content, and more.
    • Explore the benefits

How to use Red Hat Satellite to deploy virtual machines in Microsoft Azure

June 12, 2026
Øivind Ekeberg
Related topics:
Automation and managementHybrid cloudLinuxVirtualization
Related products:
Red Hat Enterprise Linux

    This blog post will guide you through how to configure Red Hat Satellite for deploying virtual machines (VMs) to Microsoft Azure. We will also use the image builder service for Red Hat Enterprise Linux to push a custom virtual machine image to the same platform.

    Many organizations must adapt to running workloads both in their own data centers and in the cloud, using hyperscalers like Microsoft Azure and IBM Cloud. This blog post shows how Red Hat Satellite eliminates the need to introduce unfamiliar tooling that might fragment management and responsibility. In short, use the same tools to manage both on-premises and cloud workloads in a centralized way with existing governance, policies, and personnel.

    Prerequisites

    • A Microsoft Azure resource group for deploying VMs must be in place
    • Microsoft Azure credentials for the resource pool, including a service principal assigned to a role with the following details: cloud, client ID, client secret, subscription ID, tenant ID, and Azure region
    • A Red Hat Satellite 6.x instance (the Azure connector was introduced in version 6.7)
    • Access to console.redhat.com to build a custom image

    I created this demonstration in a basic test environment where Satellite connects to the internet, and the virtual machines created in Microsoft Azure also use a public IP address to keep the configuration simple.

    For a production setup, connectivity between the on-premises data center and Microsoft Azure would use Azure ExpressRoute or a similar VPN connection to avoid exposing virtual machines directly to the internet. For larger deployments of virtual machines in Microsoft Azure, consider extending the on-premises Satellite instance with a Satellite Capsule closer to the workloads.

    Create a custom virtual machine image for Microsoft Azure

    To create a virtual machine disk image file for Microsoft Azure, you can either use the integrated image builder in Red Hat Enterprise Linux or our cloud-based image builder service. To keep it simple, I’m using our cloud-based image builder.

    Log in to the Red Hat Hybrid Cloud Console and navigate to Red Hat Enterprise Linux -> Inventory -> Image Builder. Create a new blueprint, name it, select repositories, and customize it as needed.

    In the Base settings, select Microsoft Azure and enter the required credentials. Then select Authorize Image Builder and approve the pop-up to allow image builder to connect to Azure (Figure 1). Save the blueprint; do not create an image yet.

    Azure configuration fields for tenant GUID, subscription ID, resource group, and the authorize button in RHEL Image Builder.
    Figure 1: Entering Microsoft Azure credentials and authorizing the connection in the RHEL image builder wizard.

    Log in to the Azure portal and add the Red Hat Image Builder service principal with Contributor role to the resource group assigned for images (Figure 2). This permission allows image builder to upload images.

    Azure Access control page showing the Red Hat Image Builder service principal assigned the Contributor role.
    Figure 2: Verifying that the Red Hat Image Builder service principal is assigned the Contributor role within the Azure resource group Access control (IAM) settings.

    Once Azure permissions are set for Red Hat Image Builder, return to the cloud-based image builder and generate the image from your blueprint. While the image builds and uploads to the cloud, move to the next step.

    Review screen in image builder showing configuration details for a Red Hat Enterprise Linux 10 image on Microsoft Azure.
    Figure 3: Reviewing the final configuration details for the Red Hat Enterprise Linux 10 image before saving the blueprint.

    Configure Microsoft Azure as a compute resource in Satellite

    In Satellite, navigate to Infrastructure -> Compute Resources -> Create Compute Resource, and select Azure Resource Manager from the list of providers (Figure 4).

    Red Hat Satellite console with the Compute Resources page open and the Create Compute Resource button highlighted.
    Figure 4: Locating the menu items and the button to add a new environment within the Red Hat Satellite dashboard.

    Enter your Microsoft Azure subscription details, select a region, and test the connection to establish a direct connection from Satellite to Microsoft Azure.

    Configuration form in Red Hat Satellite with fields for Azure credentials, region selection, and a Test Connection button.
    Figure 5: Configuring the Azure Resource Manager provider details and verifying the connection in Red Hat Satellite.

    Configure the custom image in Satellite

    Before the next step, create a location (Locations -> New Location) and a host group (Host Groups -> Create Host Group) for Microsoft Azure in Satellite.

    Check that the image builder process in the Red Hat Cloud Console has completed. Once it finishes, verify that the image uploaded successfully by checking the resource group in Microsoft Azure. The image file will have a prefix of composer-api-<guid>. Copy the file name.

    Names are autogenerated, and you cannot rename them in Microsoft Azure. If you want specific names on image files, use the local image builder in Red Hat Enterprise Linux and upload the renamed image to Microsoft Azure manually.

    Azure resource group details showing an autogenerated image file named with a composer-api prefix and a unique GUID.
    Figure 6: Locating and verifying the autogenerated image file name within the Microsoft Azure resource group inventory.

    After copying the file name, return to Satellite and the newly created compute resource. Select the Images tab, select Create Image, and point your image definition to the file in Microsoft Azure. Remember to add the custom:// prefix to specify that you are using a custom image rather than a marketplace image.

    Images tab in Red Hat Satellite showing the custom URI prefix highlighted in the UUID column for an Azure virtual machine image.
    Figure 7: Specifying the custom image path and custom:// prefix under the Satellite Images tab.

    Create a compute profile

    Move to the next tab, Compute Profile, and define your profile. Select your resource group in Microsoft Azure and fill in the other fields as needed. The VM Size field shows all available virtual machine profiles in Microsoft Azure.

    Red Hat Satellite compute profile form with dropdowns selected for a small profile and a standard Azure virtual machine size.
    Figure 8: Configuring the compute profile fields and selecting an Azure virtual machine size in Red Hat Satellite.

    Deploy the virtual machine directly in Microsoft Azure

    We are now ready to deploy a virtual machine based on the custom image. In Satellite, navigate to Hosts -> Create Host. Select Location, Host Group, and Content View, then select Submit.

    Create Host form in the Red Hat Satellite console with dropdown choices for Azure location and a small compute profile highlighted.
    Figure 9: Setting the location and compute profile in the Red Hat Satellite wizard to deploy a virtual machine using the custom Azure image.

    Once the virtual machine deploys, Satellite refreshes to show the new instance.

    Navigate back to the Microsoft Azure compute resource to observe the state of the new virtual machine and the option to power it off. If you want to delete the virtual machine, power it off, select the down arrow on the button, and select Delete. This action removes the resources in Microsoft Azure.

    Virtual Machines tab in Red Hat Satellite with the Actions drop-down menu open, highlighting the Delete option for a VM.
    Figure 10: Accessing the Actions menu to power off and delete an active Azure virtual machine in Red Hat Satellite.

    Best practices for deleting virtual machines

    Delete machines through Satellite rather than directly in the Microsoft Azure resource group, which can be cumbersome. A virtual machine in Microsoft Azure includes multiple files and objects. Using the Satellite interface ensures all related resources are cleaned up properly.

    This basic demonstration shows how easily you can add Microsoft Azure as a compute resource in Red Hat Satellite to centralize the management of Red Hat Enterprise Linux instances, regardless of where they run.

    Related Posts

    • How to encrypt RHEL images for Azure confidential VMs

    • Disconnected experiences for Red Hat Lightspeed are now available in Red Hat Satellite 6.18

    • Leverage Red Hat Satellite for Red Hat Lightspeed reporting and automation

    • Satellite webhook and Insights automation for efficient RHEL operations

    • How to set up OpenShift confidential clusters on Azure

    • Upgrade from RHEL 9 to RHEL 10 with Red Hat Satellite 6.17

    Recent Posts

    • Model-as-a-Service: How to run your own private AI API

    • How to use Red Hat Satellite to deploy virtual machines in Microsoft Azure

    • Add automated AI evaluations to your CI/CD pipeline

    • Configure input guardrails for an OpenShift AI voice agent

    • Intelligent inference scheduling with llm-d on Red Hat AI

    What’s up next?

    Learning Path VMware_to_OS_featured_image

    Migrate virtual applications to Red Hat OpenShift Virtualization

    A guide to the process of migrating your virtual appliances from VMware to...
    Red Hat Developers logo LinkedIn YouTube Twitter Facebook

    Platforms

    • Red Hat AI
    • Red Hat Enterprise Linux
    • Red Hat OpenShift
    • Red Hat Ansible Automation Platform
    • See all products

    Build

    • Developer Sandbox
    • Developer tools
    • Interactive tutorials
    • API catalog

    Quicklinks

    • Learning resources
    • E-books
    • Cheat sheets
    • Blog
    • Events
    • Newsletter

    Communicate

    • About us
    • Contact sales
    • Find a partner
    • Report a website issue
    • Site status dashboard
    • Report a security problem

    RED HAT DEVELOPER

    Build here. Go anywhere.

    We serve the builders. The problem solvers who create careers with code.

    Join us if you’re a developer, software engineer, web designer, front-end designer, UX designer, computer scientist, architect, tester, product manager, project manager or team lead.

    Sign me up

    Red Hat legal and privacy links

    • About Red Hat
    • Jobs
    • Events
    • Locations
    • Contact Red Hat
    • Red Hat Blog
    • Inclusion at Red Hat
    • Cool Stuff Store
    • Red Hat Summit
    © 2026 Red Hat

    Red Hat legal and privacy links

    • Privacy statement
    • Terms of use
    • All policies and guidelines
    • Digital accessibility

    Chat Support

    Please log in with your Red Hat account to access chat support.