U kunt Cloud Consumption Interface-elementen (CCI) toevoegen om de CCI-service te gebruiken in een VMware Aria Automation-sjabloon, zodat uw gebruikers Kubernetes-gebaseerde workloads kunnen aanvragen via de Virtual Machine-service en de Tanzu Kubernetes Grid Service in een supervisornaamruimte.
Als u de CCI-elementen wilt weergeven, vouwt u het gedeelte Cloud Consumption Interface in de resourcebibliotheek in uw cloudsjabloon uit of typt u cci in het veld Cloud Consumption Interface.
Resource voor supervisornaamruimte
|
Maak een nieuwe supervisornaamruimte die een Kubernetes-gebaseerde werkplek biedt met resourcelimieten, gebruikerstoegang en beschikbare supervisorservices, zodat gebruikers VM- en TKG-resources kunnen inrichten op basis van de applicatiebehoeften. |
Supervisorresource
|
Maak een ondersteunde Kubernetes-supervisorresource in een supervisornaamruimte, zoals virtualmachines , virtualmachineservices , tanzukubernetesclusters , persistentvolumeclaims , secrets , enzovoort, afhankelijk van het Kubernetes-manifest dat is doorgegeven aan de supervisorresource die wordt geconfigureerd. |
TKG-resource
|
Maak een ondersteunde Kubernetes-resource in een TKG-cluster. |
Voorbeeld van supervisornaamruimteresource
CCI.Supervisor.Namespace vertegenwoordigt de op Kubernetes gebaseerde supervisorwerkplek waar de door de gebruiker beheerde vSphere IaaS-supervisorresources voor de applicatie worden gemaakt.
In dit voorbeeld wordt een CCI-supervisornaamruimteresource met de naam cciNamespace gedefinieerd om een supervisornaamruimte met de naam demo in te richten.
formatVersion: 1 inputs: {} resources: cciNamespace: type: CCI.Supervisor.Namespace properties: name: demo className: default regionName: dev-us-west
Voorbeeld van supervisorresource
U gebruikt CCI.Supervisor.Resource om het Kubernetes-manifest door te geven voor Kubernetes-objecten die worden ondersteund om te worden uitgevoerd binnen een supervisornaamruimtecontext.
- Als u de supervisorresource binnen een bepaalde supervisornaamruimte wilt inrichten, configureert u de contexteigenschap van de supervisorresource door deze toe te voegen aan de naamruimte-ID van de supervisor met behulp van een bind-expressie voor sjablonen, bijvoorbeeld context: ${resource.cciNamespace.id}.
- Als u de in te richten objecten wilt opgeven, configureert u de manifesteigenschap van de supervisorresource door het Kubernetes-manifest door te geven aan het Kubernetes-object dat u maakt.
formatVersion: 1 inputs: {} resources: cciTKGCluster: type: CCI.Supervisor.Resource properties: context: ${resource.cciNamespace.id} manifest: apiVersion: cluster.x-k8s.io/v1beta1 kind: Cluster metadata: name: ${input.tkg_Name} labels: tkg-cluster-selector: ${input.tkg_Name} spec: clusterNetwork: cni: name: antrea pods: cidrBlocks: - 192.168.156.0/20 services: cidrBlocks: - 10.96.0.0/12 serviceDomain: cluster.local topology: class: tanzukubernetescluster version: v1.24.9---vmware.1-tkg.4 variables: - name: storageClasses value: - tmm-kubernetes-storage-policy - name: defaultStorageClass value: tmm-kubernetes-storage-policy - name: vmClass value: ${input.controlPlaneVmClassName} - name: storageClass value: tmm-kubernetes-storage-policy controlPlane: replicas: ${input.controlPlaneCount} metadata: annotations: run.tanzu.vmware.com/resolve-os-image: os-name=photon workers: machineDeployments: - class: node-pool name: ${input.tkg_Name}-nodepool replicas: ${input.workerCount} metadata: annotations: run.tanzu.vmware.com/resolve-os-image: os-name=photon variables: overrides: - name: vmClass value: ${input.workerVmClassName}
formatVersion: 1 inputs: {} resources: vm: type: CCI.Supervisor.Resource properties: context: ${resource.cciNamespace.id} manifest: apiVersion: vmoperator.vmware.com/v1alpha1 kind: VirtualMachine metadata: finalizers: - virtualmachine.vmoperator.vmware.com generation: 1 labels: vm-selector: vm-2rfx name: vm-2rfx spec: className: best-effort-xsmall imageName: vmi-c3d184be88e1af1cd networkInterfaces: - networkType: nsx-t powerOffMode: hard powerState: poweredOn restartMode: hard storageClass: vsan-default-storage-policy suspendMode: hard wait: conditions: - type: VirtualMachinePrereqReady status: "False" reason: VirtualMachineImageNotReady indicatesFailure: true
Voorbeeld van TKG-resource
- Als u een TKG-resource wilt binden aan een TKG-cluster, wijst u de id van de TKG-clusterresource van de supervisor toe met de contexteigenschap, bijvoorbeeld context: ${resource.cciTKGCluster.id}.
- Als u een naamruimte in een TKG-resource maakt met de naam cciTKGNamespace kunt u bijvoorbeeld een TKG-resource binden aan de naamruimte door de naam van de TKG-resource in te voegen in de contexteigenschap of context: ${resource.cciTKGNamespace.id}.
- Het Kubernetes-manifest dat wordt doorgegeven binnen de resource-eigenschappen, geeft het type van het Kubernetes-object op dat moet worden ingericht.
... tkgSecret: type: CCI.TKG.Resource properties: context: ${resource.cciTKGCluster.id} manifest: apiVersion: v1 kind: Secret metadata: name: nvaie-apikey type: Opaque data: username: KM9hdCCodG9rZW4= password: ${base64_encode(input.password)} ...
Een eigenschap voor wachten toevoegen
- Wachten voor veld: lijst met velden waar elk veld kan worden geconfigureerd met een eigenschapspad en een waarde. De waarde moet overeenkomen voordat de bron als voltooid wordt beschouwd.
- Wachten voor voorwaarde: lijst met voorwaarden die aangeven dat het maken van de resource is gelukt of mislukt.
... wait: fields: - path: status.loadBalancer.ingress[0].ip value: "*" ...