WilliamLam.com

  • About
    • About
    • Privacy
  • VMware Cloud Foundation
  • VKS
  • Homelab
    • Hardware Options
    • Hardware Reviews
    • Lab Deployment Scripts
    • Nested Virtualization
    • Homelab Podcasts
  • VMware Nostalgia
  • Apple
You are here: Home / Automation / Quickly deploying vSphere IaaS (formerly vSphere with Tanzu) Control Plane Services via YAMLs

Quickly deploying vSphere IaaS (formerly vSphere with Tanzu) Control Plane Services via YAMLs

07.09.2024 by William Lam // 10 Comments

I recently deployed the Local Consumption Interface (LCI) which is a new vSphere IaaS (formerly vSphere with Tanzu) Control Plane Service that was just introduced with the release of vSphere 8.0 Update 3 into my homelab.

Successfully deployed the new vSphere IaaS (formally vSphere w/Tanzu) Local Consumption Interface (LCI) Service https://t.co/1fbTUiNjJd

Needed to refer to docs to figure out how to actually access the LCI UI, its under Resources within vSphere Namespace! #vSphere80U3 pic.twitter.com/Wu9afjzVx6

— William Lam (@lamw.bsky.social | @*protected email*) (@lamw) July 7, 2024

While going through the manual vSphere UI deployment, I noticed there were only handful of vSphere IaaS services that are shipped out of the box including the VM Service (VM Operator), Velero vSphere Operator and Tanzu Kubernetes Grid (TKG) Service.


The workflow to register a new vSphere IaaS service is not difficult, but it does take multiple steps from downloading the deployment YAML file, uploading the file to vCenter Server and then confirm the deployment before the deployment of the service begins and this would have to be done for each vSphere IaaS service you wish to deploy!

There has to be a better and more streamline way, especially for those that do not like to click to many times in the UI 😅

There are a over dozen plus vSphere IaaS control plane services that can be deployed today and after browsing the vSphere IaaS Service Github repository, I figured we should be able to quickly automate the deployment of all or subset of vSphere IaaS services ...

To accomplish this task, we will leverage the vSphere IaaS (vSphere Automation REST API) Supervisor Services API and to demonstrate the use of this API, I have created a simple PowerCLI script called deploy_vsphere_iaas_service_definitions.ps1

Since the vSphere IaaS deployment YAML is using a Carvel-based specification, we just need to use the carvel_spec as described in the API documentation and then provide a base64 encoding of the deployment YAML and then send deployment request to vCenter Server!

Step 1 - Download the deploy_vsphere_iaas_service_definitions.ps1 script and adjust the specific vSphere IaaS deployment YAMLs that you wish to deploy and save your changes.

Step 2 - Use the Connect-CisServer cmdlet to connect to your vCenter Server to be able to perform operations using the vSphere Automation REST API using PowerCLI

Connect-CisServer -Server vcsa.primp-industries.local -User administrator[at]vsphere.local -Password VMware1!

Step 3 - Run the script as shown in the example below:

./deploy_vsphere_iaas_service_definitions.ps1


As you can see from the output above, the script will iterate through the list of vSphere IaaS deployment YAML URLs, encode the YAML and use the vSphere API to automatically register it with your vCenter Server. It literally takes a few seconds to register all vSphere IaaS services within the Github repository where as deploying one can take a few minutes including the need to manually download the deployment YAML 🙂

More from my site

  • Useful NVMe Tiering reporting using vSphere 8.0 Update 3 APIs
  • NVMe Tiering in vSphere 8.0 Update 3 is a Homelab game changer!
  • Easily audit ESXi boot options programmatically in vSphere 8.0 Update 3
  • Improved vSAN capacity usage reporting APIs in vSphere 8.0 Update 3
  • Exploring the new vSAN Data Protection API in vSphere 8.0 Update 3

Categories // Automation, Kubernetes, VMware Tanzu, vSphere 8.0 Tags // vSphere 8.0 Update 3, vSphere IaaS, vSphere Kubernetes Service

Comments

  1. *protectedJohn says

    07/09/2024 at 1:39 pm

    VMware with Tanzu has been renamed to IaaS Control Plane, so it‘s „formerly known as Tanzu“.

    'Formerly' refers to something in the past or previous times.

    'Formally' describes something that is official or proper.

    Reply
    • William Lam says

      07/09/2024 at 2:39 pm

      Fixed. I'm blaming auto-correct 😛

      Reply
  2. *protectedOzer Salman says

    07/10/2024 at 6:17 am

    There should be 10 times easier method to add Root CAs and proxy configuration to somewhere in UI for guest clusters.

    Reply
  3. *protectedDaniel says

    07/10/2024 at 7:32 am

    What is the benefit of doing this over using the Tanzu CLI?

    Reply
    • William Lam says

      07/10/2024 at 10:44 am

      Tanzu CLI is for deploying workloads, this is all about registering the services, such that you CAN deploy 🙂

      Reply
      • *protectedDaniel says

        07/10/2024 at 12:33 pm

        So installing into the supervisor cluster, not the workload clusters?

        Reply
        • William Lam says

          07/10/2024 at 4:49 pm

          That's correct, these are Supervisor or vSphere Iaas Control Plane Services ... once you've enabled these services, you can then install them onto a specific Supervisor based on your needs and then ultimately deploy these as end user consumable services, just like you might find in the public cloud

          Reply
          • *protectedLeaha says

            10/24/2024 at 12:08 am

            Have you got a plan for any guides on setting up the IaaS? I'm finding the documentation is terrible from VMware, and seeing it up with NSX or haproxy is beyond impossible

  4. *protectedCG says

    10/19/2024 at 9:41 pm

    What's the end user experience for the LCI? How configurable is this end user experience?

    Reply
  5. *protectedpablo says

    11/08/2024 at 6:55 am

    I receive the following error, with this step:

    Get-CisService: 11/8/2024 11:45:48 AM Get-CisService One or more errors occurred. (One or more errors occurred. (The reader's MaxDepth of 64 has been exceeded. Path 'result.output.STRUCTURE['com.vmware.vapi.metadata.metamodel.component_data'].info.STRUCTURE['com.vmware.vapi.metadata.metamodel.component_info'].packages[26].STRUCTURE.map-entry.value.STRUCTURE['com.vmware.vapi.metadata.metamodel.package_info'].services[0].STRUCTURE.map-entry.value.STRUCTURE['com.vmware.vapi.metadata.metamodel.service_info'].structures[6].STRUCTURE.map-entry.value.STRUCTURE['com.vmware.vapi.metadata.metamodel.structure_info'].fields[5].STRUCTURE['com.vmware.vapi.metadata.metamodel.field_info'].type.STRUCTURE['com.vmware.vapi.metadata.metamodel.type'].generic_instantiation.OPTIONAL.STRUCTURE['com.vmware.vapi.metadata.metamodel.generic_instantiation'].element_type.OPTIONAL.STRUCTURE['com.vmware.vapi.metadata.metamodel.type'].generic_instantiation.OPTIONAL.STRUCTURE['com.vmware.vapi.metadata.metamodel.generic_instantiation'].map_value_type.OPTIONAL.STRUCTURE['com.vmware.vapi.metadata.metamodel.type'].generic_instantiation.OPTIONAL.STRUCTURE['com.vmware.vapi.metadata.metamodel.generic_instantiation'].map_value_type.OPTIONAL.STRUCTURE['com.vmware.vapi.metadata.metamodel.type'].generic_instantiation.OPTIONAL.STRUCTURE['com.vmware.vapi.metadata.metamodel.generic_instantiation'].element_type', line 1, position 2247485.))
    Get-CisService: 11/8/2024 11:45:48 AM Get-CisService CisService with name 'com.vmware.vcenter.namespace_management.supervisor_services' was not found using the specified filter(s).

    Reply

Thanks for the comment!Cancel reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Search

Thank Author

Author

William is Distinguished Platform Engineering Architect in the VMware Cloud Foundation (VCF) Division at Broadcom. His primary focus is helping customers and partners build, run and operate a modern Private Cloud using the VMware Cloud Foundation (VCF) platform.

Connect

  • Bluesky
  • Email
  • GitHub
  • LinkedIn
  • Mastodon
  • Reddit
  • RSS
  • Twitter
  • Vimeo

Recent

  • Crowdsourced Lab Hardware for ESXi 9.0 Dashboard 06/17/2025
  • Automating the vSAN Data Migration Pre-check using vSAN API 06/04/2025
  • VCF 9.0 Hardware Considerations 05/30/2025
  • VMware Flings is now available in Free Downloads of Broadcom Support Portal (BSP) 05/19/2025
  • VMUG Connect 2025 - Minimal VMware Cloud Foundation (VCF) 5.x in a Box  05/15/2025

Advertisment

Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy

Copyright WilliamLam.com © 2025

 

Loading Comments...