Class GCPMachineProviderSpec
- java.lang.Object
-
- io.fabric8.openshift.api.model.machine.v1beta1.GCPMachineProviderSpec
-
- All Implemented Interfaces:
io.fabric8.kubernetes.api.builder.Editable<GCPMachineProviderSpecBuilder>,io.fabric8.kubernetes.api.model.HasMetadata,io.fabric8.kubernetes.api.model.KubernetesResource,io.fabric8.kubernetes.api.model.Namespaced,Serializable
@Generated("io.fabric8.kubernetes.schema.generator.model.ModelGenerator") public class GCPMachineProviderSpec extends Object implements io.fabric8.kubernetes.api.builder.Editable<GCPMachineProviderSpecBuilder>, io.fabric8.kubernetes.api.model.HasMetadata, io.fabric8.kubernetes.api.model.Namespaced
GCPMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an GCP virtual machine. It is used by the GCP machine actuator to create a single Machine. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description GCPMachineProviderSpec()No args constructor for use in serializationGCPMachineProviderSpec(String apiVersion, Boolean canIPForward, String confidentialCompute, io.fabric8.kubernetes.api.model.LocalObjectReference credentialsSecret, Boolean deletionProtection, List<GCPDisk> disks, List<GCPMetadata> gcpMetadata, List<GCPGPUConfig> gpus, String kind, Map<String,String> labels, String machineType, io.fabric8.kubernetes.api.model.ObjectMeta metadata, List<GCPNetworkInterface> networkInterfaces, String onHostMaintenance, Boolean preemptible, String projectID, String region, List<ResourceManagerTag> resourceManagerTags, String restartPolicy, List<GCPServiceAccount> serviceAccounts, GCPShieldedInstanceConfig shieldedInstanceConfig, List<String> tags, List<String> targetPools, io.fabric8.kubernetes.api.model.LocalObjectReference userDataSecret, String zone)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description GCPMachineProviderSpecBuilderedit()Map<String,Object>getAdditionalProperties()StringgetApiVersion()APIVersion defines the versioned schema of this representation of an object.BooleangetCanIPForward()canIPForward Allows this instance to send and receive packets with non-matching destination or source IPs.StringgetConfidentialCompute()confidentialCompute is an optional field defining whether the instance should have confidential compute enabled or not, and the confidential computing technology of choice.io.fabric8.kubernetes.api.model.LocalObjectReferencegetCredentialsSecret()GCPMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an GCP virtual machine.BooleangetDeletionProtection()deletionProtection whether the resource should be protected against deletion.List<GCPDisk>getDisks()disks is a list of disks to be attached to the VM.List<GCPMetadata>getGcpMetadata()Metadata key/value pairs to apply to the VM.List<GCPGPUConfig>getGpus()gpus is a list of GPUs to be attached to the VM.StringgetKind()Kind is a string value representing the REST resource this object represents.Map<String,String>getLabels()labels list of labels to apply to the VM.StringgetMachineType()machineType is the machine type to use for the VM.io.fabric8.kubernetes.api.model.ObjectMetagetMetadata()GCPMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an GCP virtual machine.List<GCPNetworkInterface>getNetworkInterfaces()networkInterfaces is a list of network interfaces to be attached to the VM.StringgetOnHostMaintenance()onHostMaintenance determines the behavior when a maintenance event occurs that might cause the instance to reboot.BooleangetPreemptible()preemptible indicates if created instance is preemptible.StringgetProjectID()projectID is the project in which the GCP machine provider will create the VM.StringgetRegion()region is the region in which the GCP machine provider will create the VM.List<ResourceManagerTag>getResourceManagerTags()resourceManagerTags is an optional list of tags to apply to the GCP resources created for the cluster.StringgetRestartPolicy()restartPolicy determines the behavior when an instance crashes or the underlying infrastructure provider stops the instance as part of a maintenance event (default "Always").List<GCPServiceAccount>getServiceAccounts()serviceAccounts is a list of GCP service accounts to be used by the VM.GCPShieldedInstanceConfiggetShieldedInstanceConfig()GCPMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an GCP virtual machine.List<String>getTags()tags list of network tags to apply to the VM.List<String>getTargetPools()targetPools are used for network TCP/UDP load balancing.io.fabric8.kubernetes.api.model.LocalObjectReferencegetUserDataSecret()GCPMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an GCP virtual machine.StringgetZone()zone is the zone in which the GCP machine provider will create the VM.voidsetAdditionalProperties(Map<String,Object> additionalProperties)voidsetAdditionalProperty(String name, Object value)voidsetApiVersion(String apiVersion)APIVersion defines the versioned schema of this representation of an object.voidsetCanIPForward(Boolean canIPForward)canIPForward Allows this instance to send and receive packets with non-matching destination or source IPs.voidsetConfidentialCompute(String confidentialCompute)confidentialCompute is an optional field defining whether the instance should have confidential compute enabled or not, and the confidential computing technology of choice.voidsetCredentialsSecret(io.fabric8.kubernetes.api.model.LocalObjectReference credentialsSecret)GCPMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an GCP virtual machine.voidsetDeletionProtection(Boolean deletionProtection)deletionProtection whether the resource should be protected against deletion.voidsetDisks(List<GCPDisk> disks)disks is a list of disks to be attached to the VM.voidsetGcpMetadata(List<GCPMetadata> gcpMetadata)Metadata key/value pairs to apply to the VM.voidsetGpus(List<GCPGPUConfig> gpus)gpus is a list of GPUs to be attached to the VM.voidsetKind(String kind)Kind is a string value representing the REST resource this object represents.voidsetLabels(Map<String,String> labels)labels list of labels to apply to the VM.voidsetMachineType(String machineType)machineType is the machine type to use for the VM.voidsetMetadata(io.fabric8.kubernetes.api.model.ObjectMeta metadata)GCPMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an GCP virtual machine.voidsetNetworkInterfaces(List<GCPNetworkInterface> networkInterfaces)networkInterfaces is a list of network interfaces to be attached to the VM.voidsetOnHostMaintenance(String onHostMaintenance)onHostMaintenance determines the behavior when a maintenance event occurs that might cause the instance to reboot.voidsetPreemptible(Boolean preemptible)preemptible indicates if created instance is preemptible.voidsetProjectID(String projectID)projectID is the project in which the GCP machine provider will create the VM.voidsetRegion(String region)region is the region in which the GCP machine provider will create the VM.voidsetResourceManagerTags(List<ResourceManagerTag> resourceManagerTags)resourceManagerTags is an optional list of tags to apply to the GCP resources created for the cluster.voidsetRestartPolicy(String restartPolicy)restartPolicy determines the behavior when an instance crashes or the underlying infrastructure provider stops the instance as part of a maintenance event (default "Always").voidsetServiceAccounts(List<GCPServiceAccount> serviceAccounts)serviceAccounts is a list of GCP service accounts to be used by the VM.voidsetShieldedInstanceConfig(GCPShieldedInstanceConfig shieldedInstanceConfig)GCPMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an GCP virtual machine.voidsetTags(List<String> tags)tags list of network tags to apply to the VM.voidsetTargetPools(List<String> targetPools)targetPools are used for network TCP/UDP load balancing.voidsetUserDataSecret(io.fabric8.kubernetes.api.model.LocalObjectReference userDataSecret)GCPMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an GCP virtual machine.voidsetZone(String zone)zone is the zone in which the GCP machine provider will create the VM.GCPMachineProviderSpecBuildertoBuilder()-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface io.fabric8.kubernetes.api.model.HasMetadata
addFinalizer, addOwnerReference, addOwnerReference, getFinalizers, getFullResourceName, getOwnerReferenceFor, getOwnerReferenceFor, getPlural, getSingular, hasFinalizer, hasOwnerReferenceFor, hasOwnerReferenceFor, initNameAndNamespaceFrom, isFinalizerValid, isMarkedForDeletion, optionalMetadata, removeFinalizer, removeOwnerReference, removeOwnerReference
-
-
-
-
Constructor Detail
-
GCPMachineProviderSpec
public GCPMachineProviderSpec()
No args constructor for use in serialization
-
GCPMachineProviderSpec
public GCPMachineProviderSpec(String apiVersion, Boolean canIPForward, String confidentialCompute, io.fabric8.kubernetes.api.model.LocalObjectReference credentialsSecret, Boolean deletionProtection, List<GCPDisk> disks, List<GCPMetadata> gcpMetadata, List<GCPGPUConfig> gpus, String kind, Map<String,String> labels, String machineType, io.fabric8.kubernetes.api.model.ObjectMeta metadata, List<GCPNetworkInterface> networkInterfaces, String onHostMaintenance, Boolean preemptible, String projectID, String region, List<ResourceManagerTag> resourceManagerTags, String restartPolicy, List<GCPServiceAccount> serviceAccounts, GCPShieldedInstanceConfig shieldedInstanceConfig, List<String> tags, List<String> targetPools, io.fabric8.kubernetes.api.model.LocalObjectReference userDataSecret, String zone)
-
-
Method Detail
-
getApiVersion
public String getApiVersion()
APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources- Specified by:
getApiVersionin interfaceio.fabric8.kubernetes.api.model.HasMetadata
-
setApiVersion
public void setApiVersion(String apiVersion)
APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources- Specified by:
setApiVersionin interfaceio.fabric8.kubernetes.api.model.HasMetadata
-
getCanIPForward
public Boolean getCanIPForward()
canIPForward Allows this instance to send and receive packets with non-matching destination or source IPs. This is required if you plan to use this instance to forward routes.
-
setCanIPForward
public void setCanIPForward(Boolean canIPForward)
canIPForward Allows this instance to send and receive packets with non-matching destination or source IPs. This is required if you plan to use this instance to forward routes.
-
getConfidentialCompute
public String getConfidentialCompute()
confidentialCompute is an optional field defining whether the instance should have confidential compute enabled or not, and the confidential computing technology of choice. Allowed values are omitted, Disabled, Enabled, AMDEncryptedVirtualization, AMDEncryptedVirtualizationNestedPaging, and IntelTrustedDomainExtensions When set to Disabled, the machine will not be configured to be a confidential computing instance. When set to Enabled, the machine will be configured as a confidential computing instance with no preference on the confidential compute policy used. In this mode, the platform chooses a default that is subject to change over time. Currently, the default is to use AMD Secure Encrypted Virtualization. When set to AMDEncryptedVirtualization, the machine will be configured as a confidential computing instance with AMD Secure Encrypted Virtualization (AMD SEV) as the confidential computing technology. When set to AMDEncryptedVirtualizationNestedPaging, the machine will be configured as a confidential computing instance with AMD Secure Encrypted Virtualization Secure Nested Paging (AMD SEV-SNP) as the confidential computing technology. When set to IntelTrustedDomainExtensions, the machine will be configured as a confidential computing instance with Intel Trusted Domain Extensions (Intel TDX) as the confidential computing technology. If any value other than Disabled is set the selected machine type must support that specific confidential computing technology. The machine series supporting confidential computing technologies can be checked at https://cloud.google.com/confidential-computing/confidential-vm/docs/supported-configurations#all-confidential-vm-instances Currently, AMDEncryptedVirtualization is supported in c2d, n2d, and c3d machines. AMDEncryptedVirtualizationNestedPaging is supported in n2d machines. IntelTrustedDomainExtensions is supported in c3 machines. If any value other than Disabled is set, the selected region must support that specific confidential computing technology. The list of regions supporting confidential computing technologies can be checked at https://cloud.google.com/confidential-computing/confidential-vm/docs/supported-configurations#supported-zones If any value other than Disabled is set onHostMaintenance is required to be set to "Terminate". If omitted, the platform chooses a default, which is subject to change over time, currently that default is Disabled.
-
setConfidentialCompute
public void setConfidentialCompute(String confidentialCompute)
confidentialCompute is an optional field defining whether the instance should have confidential compute enabled or not, and the confidential computing technology of choice. Allowed values are omitted, Disabled, Enabled, AMDEncryptedVirtualization, AMDEncryptedVirtualizationNestedPaging, and IntelTrustedDomainExtensions When set to Disabled, the machine will not be configured to be a confidential computing instance. When set to Enabled, the machine will be configured as a confidential computing instance with no preference on the confidential compute policy used. In this mode, the platform chooses a default that is subject to change over time. Currently, the default is to use AMD Secure Encrypted Virtualization. When set to AMDEncryptedVirtualization, the machine will be configured as a confidential computing instance with AMD Secure Encrypted Virtualization (AMD SEV) as the confidential computing technology. When set to AMDEncryptedVirtualizationNestedPaging, the machine will be configured as a confidential computing instance with AMD Secure Encrypted Virtualization Secure Nested Paging (AMD SEV-SNP) as the confidential computing technology. When set to IntelTrustedDomainExtensions, the machine will be configured as a confidential computing instance with Intel Trusted Domain Extensions (Intel TDX) as the confidential computing technology. If any value other than Disabled is set the selected machine type must support that specific confidential computing technology. The machine series supporting confidential computing technologies can be checked at https://cloud.google.com/confidential-computing/confidential-vm/docs/supported-configurations#all-confidential-vm-instances Currently, AMDEncryptedVirtualization is supported in c2d, n2d, and c3d machines. AMDEncryptedVirtualizationNestedPaging is supported in n2d machines. IntelTrustedDomainExtensions is supported in c3 machines. If any value other than Disabled is set, the selected region must support that specific confidential computing technology. The list of regions supporting confidential computing technologies can be checked at https://cloud.google.com/confidential-computing/confidential-vm/docs/supported-configurations#supported-zones If any value other than Disabled is set onHostMaintenance is required to be set to "Terminate". If omitted, the platform chooses a default, which is subject to change over time, currently that default is Disabled.
-
getCredentialsSecret
public io.fabric8.kubernetes.api.model.LocalObjectReference getCredentialsSecret()
GCPMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an GCP virtual machine. It is used by the GCP machine actuator to create a single Machine. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
-
setCredentialsSecret
public void setCredentialsSecret(io.fabric8.kubernetes.api.model.LocalObjectReference credentialsSecret)
GCPMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an GCP virtual machine. It is used by the GCP machine actuator to create a single Machine. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
-
getDeletionProtection
public Boolean getDeletionProtection()
deletionProtection whether the resource should be protected against deletion.
-
setDeletionProtection
public void setDeletionProtection(Boolean deletionProtection)
deletionProtection whether the resource should be protected against deletion.
-
setDisks
public void setDisks(List<GCPDisk> disks)
disks is a list of disks to be attached to the VM.
-
getGcpMetadata
public List<GCPMetadata> getGcpMetadata()
Metadata key/value pairs to apply to the VM.
-
setGcpMetadata
public void setGcpMetadata(List<GCPMetadata> gcpMetadata)
Metadata key/value pairs to apply to the VM.
-
getGpus
public List<GCPGPUConfig> getGpus()
gpus is a list of GPUs to be attached to the VM.
-
setGpus
public void setGpus(List<GCPGPUConfig> gpus)
gpus is a list of GPUs to be attached to the VM.
-
getKind
public String getKind()
Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds- Specified by:
getKindin interfaceio.fabric8.kubernetes.api.model.HasMetadata
-
setKind
public void setKind(String kind)
Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
-
setLabels
public void setLabels(Map<String,String> labels)
labels list of labels to apply to the VM.
-
getMachineType
public String getMachineType()
machineType is the machine type to use for the VM.
-
setMachineType
public void setMachineType(String machineType)
machineType is the machine type to use for the VM.
-
getMetadata
public io.fabric8.kubernetes.api.model.ObjectMeta getMetadata()
GCPMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an GCP virtual machine. It is used by the GCP machine actuator to create a single Machine. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).- Specified by:
getMetadatain interfaceio.fabric8.kubernetes.api.model.HasMetadata
-
setMetadata
public void setMetadata(io.fabric8.kubernetes.api.model.ObjectMeta metadata)
GCPMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an GCP virtual machine. It is used by the GCP machine actuator to create a single Machine. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).- Specified by:
setMetadatain interfaceio.fabric8.kubernetes.api.model.HasMetadata
-
getNetworkInterfaces
public List<GCPNetworkInterface> getNetworkInterfaces()
networkInterfaces is a list of network interfaces to be attached to the VM.
-
setNetworkInterfaces
public void setNetworkInterfaces(List<GCPNetworkInterface> networkInterfaces)
networkInterfaces is a list of network interfaces to be attached to the VM.
-
getOnHostMaintenance
public String getOnHostMaintenance()
onHostMaintenance determines the behavior when a maintenance event occurs that might cause the instance to reboot. This is required to be set to "Terminate" if you want to provision machine with attached GPUs. Otherwise, allowed values are "Migrate" and "Terminate". If omitted, the platform chooses a default, which is subject to change over time, currently that default is "Migrate".
-
setOnHostMaintenance
public void setOnHostMaintenance(String onHostMaintenance)
onHostMaintenance determines the behavior when a maintenance event occurs that might cause the instance to reboot. This is required to be set to "Terminate" if you want to provision machine with attached GPUs. Otherwise, allowed values are "Migrate" and "Terminate". If omitted, the platform chooses a default, which is subject to change over time, currently that default is "Migrate".
-
getPreemptible
public Boolean getPreemptible()
preemptible indicates if created instance is preemptible.
-
setPreemptible
public void setPreemptible(Boolean preemptible)
preemptible indicates if created instance is preemptible.
-
getProjectID
public String getProjectID()
projectID is the project in which the GCP machine provider will create the VM.
-
setProjectID
public void setProjectID(String projectID)
projectID is the project in which the GCP machine provider will create the VM.
-
getRegion
public String getRegion()
region is the region in which the GCP machine provider will create the VM.
-
setRegion
public void setRegion(String region)
region is the region in which the GCP machine provider will create the VM.
-
getResourceManagerTags
public List<ResourceManagerTag> getResourceManagerTags()
resourceManagerTags is an optional list of tags to apply to the GCP resources created for the cluster. See https://cloud.google.com/resource-manager/docs/tags/tags-overview for information on tagging GCP resources. GCP supports a maximum of 50 tags per resource.
-
setResourceManagerTags
public void setResourceManagerTags(List<ResourceManagerTag> resourceManagerTags)
resourceManagerTags is an optional list of tags to apply to the GCP resources created for the cluster. See https://cloud.google.com/resource-manager/docs/tags/tags-overview for information on tagging GCP resources. GCP supports a maximum of 50 tags per resource.
-
getRestartPolicy
public String getRestartPolicy()
restartPolicy determines the behavior when an instance crashes or the underlying infrastructure provider stops the instance as part of a maintenance event (default "Always"). Cannot be "Always" with preemptible instances. Otherwise, allowed values are "Always" and "Never". If omitted, the platform chooses a default, which is subject to change over time, currently that default is "Always". RestartPolicy represents AutomaticRestart in GCP compute api
-
setRestartPolicy
public void setRestartPolicy(String restartPolicy)
restartPolicy determines the behavior when an instance crashes or the underlying infrastructure provider stops the instance as part of a maintenance event (default "Always"). Cannot be "Always" with preemptible instances. Otherwise, allowed values are "Always" and "Never". If omitted, the platform chooses a default, which is subject to change over time, currently that default is "Always". RestartPolicy represents AutomaticRestart in GCP compute api
-
getServiceAccounts
public List<GCPServiceAccount> getServiceAccounts()
serviceAccounts is a list of GCP service accounts to be used by the VM.
-
setServiceAccounts
public void setServiceAccounts(List<GCPServiceAccount> serviceAccounts)
serviceAccounts is a list of GCP service accounts to be used by the VM.
-
getShieldedInstanceConfig
public GCPShieldedInstanceConfig getShieldedInstanceConfig()
GCPMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an GCP virtual machine. It is used by the GCP machine actuator to create a single Machine. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
-
setShieldedInstanceConfig
public void setShieldedInstanceConfig(GCPShieldedInstanceConfig shieldedInstanceConfig)
GCPMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an GCP virtual machine. It is used by the GCP machine actuator to create a single Machine. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
-
getTargetPools
public List<String> getTargetPools()
targetPools are used for network TCP/UDP load balancing. A target pool references member instances, an associated legacy HttpHealthCheck resource, and, optionally, a backup target pool
-
setTargetPools
public void setTargetPools(List<String> targetPools)
targetPools are used for network TCP/UDP load balancing. A target pool references member instances, an associated legacy HttpHealthCheck resource, and, optionally, a backup target pool
-
getUserDataSecret
public io.fabric8.kubernetes.api.model.LocalObjectReference getUserDataSecret()
GCPMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an GCP virtual machine. It is used by the GCP machine actuator to create a single Machine. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
-
setUserDataSecret
public void setUserDataSecret(io.fabric8.kubernetes.api.model.LocalObjectReference userDataSecret)
GCPMachineProviderSpec is the type that will be embedded in a Machine.Spec.ProviderSpec field for an GCP virtual machine. It is used by the GCP machine actuator to create a single Machine. Compatibility level 2: Stable within a major release for a minimum of 9 months or 3 minor releases (whichever is longer).
-
getZone
public String getZone()
zone is the zone in which the GCP machine provider will create the VM.
-
setZone
public void setZone(String zone)
zone is the zone in which the GCP machine provider will create the VM.
-
edit
public GCPMachineProviderSpecBuilder edit()
- Specified by:
editin interfaceio.fabric8.kubernetes.api.builder.Editable<GCPMachineProviderSpecBuilder>
-
toBuilder
public GCPMachineProviderSpecBuilder toBuilder()
-
-