Documentation ¶
Overview ¶
Package v1alpha1 contains managed resources for GCP compute services such as GKE. +kubebuilder:object:generate=true +groupName=container.beta.gcp.crossplane.io +versionName=v1alpha1
nolint:gocritic,golint // Deprecation comment format false positives.
Index ¶
- Constants
- Variables
- type AcceleratorConfig
- type AutoUpgradeOptions
- type NodeConfig
- type NodeManagementSpec
- type NodeManagementStatus
- type NodePool
- func (in *NodePool) DeepCopy() *NodePool
- func (in *NodePool) DeepCopyInto(out *NodePool)
- func (in *NodePool) DeepCopyObject() runtime.Object
- func (mg *NodePool) GetCondition(ct xpv1.ConditionType) xpv1.Condition
- func (mg *NodePool) GetDeletionPolicy() xpv1.DeletionPolicy
- func (mg *NodePool) GetProviderConfigReference() *xpv1.Reference
- func (mg *NodePool) GetProviderReference() *xpv1.Reference
- func (mg *NodePool) GetWriteConnectionSecretToReference() *xpv1.SecretReference
- func (mg *NodePool) ResolveReferences(ctx context.Context, c client.Reader) error
- func (mg *NodePool) SetConditions(c ...xpv1.Condition)
- func (mg *NodePool) SetDeletionPolicy(r xpv1.DeletionPolicy)
- func (mg *NodePool) SetProviderConfigReference(r *xpv1.Reference)
- func (mg *NodePool) SetProviderReference(r *xpv1.Reference)
- func (mg *NodePool) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
- type NodePoolAutoscaling
- type NodePoolList
- type NodePoolObservation
- type NodePoolParameters
- type NodePoolSpec
- type NodePoolStatus
- type NodeTaint
- type SandboxConfig
- type ShieldedInstanceConfig
- type WorkloadMetadataConfig
Constants ¶
const ( NodePoolStateUnspecified = "STATUS_UNSPECIFIED" NodePoolStateProvisioning = "PROVISIONING" NodePoolStateRunning = "RUNNING" NodePoolStateRunningError = "RUNNING_WITH_ERROR" NodePoolStateReconciling = "RECONCILING" NodePoolStateStopping = "STOPPING" NodePoolStateError = "ERROR" )
NodePool states.
const ( Group = "container.beta.gcp.crossplane.io" Version = "v1alpha1" )
Package type metadata.
Variables ¶
var ( // SchemeGroupVersion is group version used to register these objects SchemeGroupVersion = schema.GroupVersion{Group: Group, Version: Version} // SchemeBuilder is used to add go types to the GroupVersionKind scheme SchemeBuilder = &scheme.Builder{GroupVersion: SchemeGroupVersion} )
var ( NodePoolKind = reflect.TypeOf(NodePool{}).Name() NodePoolGroupKind = schema.GroupKind{Group: Group, Kind: NodePoolKind}.String() NodePoolKindAPIVersion = NodePoolKind + "." + SchemeGroupVersion.String() NodePoolGroupVersionKind = SchemeGroupVersion.WithKind(NodePoolKind) )
NodePool type metadata.
Functions ¶
This section is empty.
Types ¶
type AcceleratorConfig ¶
type AcceleratorConfig struct { // AcceleratorCount: The number of the accelerator cards exposed to an // instance. AcceleratorCount int64 `json:"acceleratorCount,omitempty"` // AcceleratorType: The accelerator type resource name. List of // supported accelerators // [here](/compute/docs/gpus/#Introduction) AcceleratorType string `json:"acceleratorType,omitempty"` }
AcceleratorConfig represents a Hardware Accelerator request.
func (*AcceleratorConfig) DeepCopy ¶
func (in *AcceleratorConfig) DeepCopy() *AcceleratorConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AcceleratorConfig.
func (*AcceleratorConfig) DeepCopyInto ¶
func (in *AcceleratorConfig) DeepCopyInto(out *AcceleratorConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type AutoUpgradeOptions ¶
type AutoUpgradeOptions struct { // AutoUpgradeStartTime: This field is set when upgrades // are about to commence // with the approximate start time for the upgrades, // in // [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. AutoUpgradeStartTime string `json:"autoUpgradeStartTime,omitempty"` // Description: This field is set when upgrades are about // to commence // with the description of the upgrade. Description string `json:"description,omitempty"` }
AutoUpgradeOptions defines the set of options for the user to control how the Auto Upgrades will proceed.
func (*AutoUpgradeOptions) DeepCopy ¶
func (in *AutoUpgradeOptions) DeepCopy() *AutoUpgradeOptions
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new AutoUpgradeOptions.
func (*AutoUpgradeOptions) DeepCopyInto ¶
func (in *AutoUpgradeOptions) DeepCopyInto(out *AutoUpgradeOptions)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeConfig ¶
type NodeConfig struct { // Accelerators: A list of hardware accelerators to be attached to each // node. // See https://cloud.google.com/compute/docs/gpus for more information // about // support for GPUs. // +immutable Accelerators []*AcceleratorConfig `json:"accelerators,omitempty"` // DiskSizeGb: Size of the disk attached to each node, specified in // GB. // The smallest allowed disk size is 10GB. // // If unspecified, the default disk size is 100GB. // +immutable // +optional DiskSizeGb *int64 `json:"diskSizeGb,omitempty"` // DiskType: Type of the disk attached to each node (e.g. 'pd-standard' // or 'pd-ssd') // // If unspecified, the default disk type is 'pd-standard' // +immutable // +optional DiskType *string `json:"diskType,omitempty"` // ImageType: The image type to use for this node. Note that for a given // image type, // the latest version of it will be used. // +optional ImageType *string `json:"imageType,omitempty"` // Labels: The map of Kubernetes labels (key/value pairs) to be applied // to each node. // These will added in addition to any default label(s) that // Kubernetes may apply to the node. // In case of conflict in label keys, the applied set may differ // depending on // the Kubernetes version -- it's best to assume the behavior is // undefined // and conflicts should be avoided. // For more information, including usage and the valid values, // see: // https://kubernetes.io/docs/concepts/overview/working-with-objects // /labels/ // +immutable // +optional Labels map[string]string `json:"labels,omitempty"` // LocalSsdCount: The number of local SSD disks to be attached to the // node. // // The limit for this value is dependant upon the maximum number // of // disks available on a machine per zone. // See: // https://cloud.google.com/compute/docs/disks/local-ssd#local_ssd_l // imits // for more information. // +immutable // +optional LocalSsdCount *int64 `json:"localSsdCount,omitempty"` // MachineType: The name of a Google Compute Engine // [machine // type](/compute/docs/machine-types) (e.g. // `n1-standard-1`). // // If unspecified, the default machine type is // `n1-standard-1`. // +immutable // +optional MachineType *string `json:"machineType,omitempty"` // Metadata: The metadata key/value pairs assigned to instances in the // cluster. // // Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 // bytes // in length. These are reflected as part of a URL in the metadata // server. // Additionally, to avoid ambiguity, keys must not conflict with any // other // metadata keys for the project or be one of the reserved keys: // "cluster-location" // "cluster-name" // "cluster-uid" // "configure-sh" // "containerd-configure-sh" // "enable-oslogin" // "gci-ensure-gke-docker" // "gci-update-strategy" // "instance-template" // "kube-env" // "startup-script" // "user-data" // "disable-address-manager" // "windows-startup-script-ps1" // "common-psm1" // "k8s-node-setup-psm1" // "install-ssh-psm1" // "user-profile-psm1" // "serial-port-logging-enable" // Values are free-form strings, and only have meaning as interpreted // by // the image running in the instance. The only restriction placed on // them is // that each value's size must be less than or equal to 32 KB. // // The total size of all keys and values must be less than 512 KB. // +immutable // +optional Metadata map[string]string `json:"metadata,omitempty"` // MinCpuPlatform: Minimum CPU platform to be used by this instance. The // instance may be // scheduled on the specified or newer CPU platform. Applicable values // are the // friendly names of CPU platforms, such as // <code>minCpuPlatform: "Intel Haswell"</code> // or // <code>minCpuPlatform: "Intel Sandy Bridge"</code>. For // more // information, read [how to specify min // CPU // platform](https://cloud.google.com/compute/docs/instances/specify- // min-cpu-platform) // +immutable // +optional MinCPUPlatform *string `json:"minCpuPlatform,omitempty"` // OauthScopes: The set of Google API scopes to be made available on all // of the // node VMs under the "default" service account. // // The following scopes are recommended, but not required, and by // default are // not included: // // * `https://www.googleapis.com/auth/compute` is required for // mounting // persistent storage on your nodes. // * `https://www.googleapis.com/auth/devstorage.read_only` is required // for // communicating with **gcr.io** // (the [Google Container Registry](/container-registry/)). // // If unspecified, no scopes are added, unless Cloud Logging or // Cloud // Monitoring are enabled, in which case their required scopes will be // added. // +immutable // +optional OauthScopes []string `json:"oauthScopes,omitempty"` // Preemptible: Whether the nodes are created as preemptible VM // instances. // See: // https://cloud.google.com/compute/docs/instances/preemptible for // more // inforamtion about preemptible VM instances. // +immutable // +optional Preemptible *bool `json:"preemptible,omitempty"` // SandboxConfig: Sandbox configuration for this node. // +immutable // +optional SandboxConfig *SandboxConfig `json:"sandboxConfig,omitempty"` // ServiceAccount: The Google Cloud Platform Service Account to be used // by the node VMs. If // no Service Account is specified, the "default" service account is // used. // +immutable // +optional ServiceAccount *string `json:"serviceAccount,omitempty"` // ShieldedInstanceConfig: Shielded Instance options. // +immutable // +optional ShieldedInstanceConfig *ShieldedInstanceConfig `json:"shieldedInstanceConfig,omitempty"` // Tags: The list of instance tags applied to all nodes. Tags are used // to identify // valid sources or targets for network firewalls and are specified // by // the client during cluster or node pool creation. Each tag within the // list // must comply with RFC1035. // +immutable // +optional Tags []string `json:"tags,omitempty"` // Taints: List of kubernetes taints to be applied to each node. // // For more information, including usage and the valid values, // see: // https://kubernetes.io/docs/concepts/configuration/taint-and-toler // ation/ // +immutable // +optional Taints []*NodeTaint `json:"taints,omitempty"` // WorkloadMetadataConfig: The workload metadata configuration for this // node. // +optional WorkloadMetadataConfig *WorkloadMetadataConfig `json:"workloadMetadataConfig,omitempty"` }
NodeConfig is parameters that describe the nodes in a cluster.
func (*NodeConfig) DeepCopy ¶
func (in *NodeConfig) DeepCopy() *NodeConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeConfig.
func (*NodeConfig) DeepCopyInto ¶
func (in *NodeConfig) DeepCopyInto(out *NodeConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeManagementSpec ¶
type NodeManagementSpec struct { // AutoRepair: Whether the nodes will be automatically repaired. // +optional AutoRepair *bool `json:"autoRepair,omitempty"` // AutoUpgrade: Whether the nodes will be automatically upgraded. // +optional AutoUpgrade *bool `json:"autoUpgrade,omitempty"` }
NodeManagementSpec defines the desired set of node management services turned on for the node pool.
func (*NodeManagementSpec) DeepCopy ¶
func (in *NodeManagementSpec) DeepCopy() *NodeManagementSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeManagementSpec.
func (*NodeManagementSpec) DeepCopyInto ¶
func (in *NodeManagementSpec) DeepCopyInto(out *NodeManagementSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeManagementStatus ¶
type NodeManagementStatus struct { // UpgradeOptions: Specifies the Auto Upgrade knobs for the node pool. UpgradeOptions *AutoUpgradeOptions `json:"upgradeOptions,omitempty"` }
NodeManagementStatus defines the observed set of node management services turned on for the node pool.
func (*NodeManagementStatus) DeepCopy ¶
func (in *NodeManagementStatus) DeepCopy() *NodeManagementStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeManagementStatus.
func (*NodeManagementStatus) DeepCopyInto ¶
func (in *NodeManagementStatus) DeepCopyInto(out *NodeManagementStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodePool ¶
type NodePool struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec NodePoolSpec `json:"spec"` Status NodePoolStatus `json:"status,omitempty"` }
A NodePool is a managed resource that represents a Google Kubernetes Engine node pool. +kubebuilder:subresource:status +kubebuilder:printcolumn:name="READY",type="string",JSONPath=".status.conditions[?(@.type=='Ready')].status" +kubebuilder:printcolumn:name="SYNCED",type="string",JSONPath=".status.conditions[?(@.type=='Synced')].status" +kubebuilder:printcolumn:name="STATE",type="string",JSONPath=".status.atProvider.status" +kubebuilder:printcolumn:name="CLUSTER-REF",type="string",JSONPath=".spec.forProvider.clusterRef.name" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,gcp}
func (*NodePool) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePool.
func (*NodePool) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NodePool) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*NodePool) GetCondition ¶
func (mg *NodePool) GetCondition(ct xpv1.ConditionType) xpv1.Condition
GetCondition of this NodePool.
func (*NodePool) GetDeletionPolicy ¶
func (mg *NodePool) GetDeletionPolicy() xpv1.DeletionPolicy
GetDeletionPolicy of this NodePool.
func (*NodePool) GetProviderConfigReference ¶
GetProviderConfigReference of this NodePool.
func (*NodePool) GetProviderReference ¶
GetProviderReference of this NodePool. Deprecated: Use GetProviderConfigReference.
func (*NodePool) GetWriteConnectionSecretToReference ¶
func (mg *NodePool) GetWriteConnectionSecretToReference() *xpv1.SecretReference
GetWriteConnectionSecretToReference of this NodePool.
func (*NodePool) ResolveReferences ¶
ResolveReferences of this NodePool
func (*NodePool) SetConditions ¶
SetConditions of this NodePool.
func (*NodePool) SetDeletionPolicy ¶
func (mg *NodePool) SetDeletionPolicy(r xpv1.DeletionPolicy)
SetDeletionPolicy of this NodePool.
func (*NodePool) SetProviderConfigReference ¶
SetProviderConfigReference of this NodePool.
func (*NodePool) SetProviderReference ¶
SetProviderReference of this NodePool. Deprecated: Use SetProviderConfigReference.
func (*NodePool) SetWriteConnectionSecretToReference ¶
func (mg *NodePool) SetWriteConnectionSecretToReference(r *xpv1.SecretReference)
SetWriteConnectionSecretToReference of this NodePool.
type NodePoolAutoscaling ¶
type NodePoolAutoscaling struct { // Autoprovisioned: Can this node pool be deleted automatically. // +optional Autoprovisioned *bool `json:"autoprovisioned,omitempty"` // Enabled: Is autoscaling enabled for this node pool. // +optional Enabled *bool `json:"enabled,omitempty"` // MaxNodeCount: Maximum number of nodes in the NodePool. Must be >= // min_node_count. There // has to enough quota to scale up the cluster. // +optional MaxNodeCount *int64 `json:"maxNodeCount,omitempty"` // MinNodeCount: Minimum number of nodes in the NodePool. Must be >= 1 // and <= // max_node_count. // +optional MinNodeCount *int64 `json:"minNodeCount,omitempty"` }
NodePoolAutoscaling contains information required by cluster autoscaler to adjust the size of the node pool to the current cluster usage.
func (*NodePoolAutoscaling) DeepCopy ¶
func (in *NodePoolAutoscaling) DeepCopy() *NodePoolAutoscaling
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolAutoscaling.
func (*NodePoolAutoscaling) DeepCopyInto ¶
func (in *NodePoolAutoscaling) DeepCopyInto(out *NodePoolAutoscaling)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodePoolList ¶
type NodePoolList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []NodePool `json:"items"` }
NodePoolList contains a list of NodePool items
func (*NodePoolList) DeepCopy ¶
func (in *NodePoolList) DeepCopy() *NodePoolList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolList.
func (*NodePoolList) DeepCopyInto ¶
func (in *NodePoolList) DeepCopyInto(out *NodePoolList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*NodePoolList) DeepCopyObject ¶
func (in *NodePoolList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*NodePoolList) GetItems ¶
func (l *NodePoolList) GetItems() []resource.Managed
GetItems of this NodePoolList.
type NodePoolObservation ¶
type NodePoolObservation struct { // Conditions: Which conditions caused the current node pool state. Conditions []*v1beta1.StatusCondition `json:"conditions,omitempty"` // InstanceGroupUrls: The resource URLs of the [managed // instance // groups](/compute/docs/instance-groups/creating-groups-of-mana // ged-instances) // associated with this node pool. InstanceGroupUrls []string `json:"instanceGroupUrls,omitempty"` // PodIpv4CidrSize: The pod CIDR block size per node in // this node pool. PodIpv4CidrSize int64 `json:"podIpv4CidrSize,omitempty"` // Management: NodeManagement configuration for this NodePool. Management *NodeManagementStatus `json:"management,omitempty"` // SelfLink: Server-defined URL for the resource. SelfLink string `json:"selfLink,omitempty"` // Status: The status of the nodes in this pool instance. // // Possible values: // "STATUS_UNSPECIFIED" - Not set. // "PROVISIONING" - The PROVISIONING state indicates the node pool is // being created. // "RUNNING" - The RUNNING state indicates the node pool has been // created // and is fully usable. // "RUNNING_WITH_ERROR" - The RUNNING_WITH_ERROR state indicates the // node pool has been created // and is partially usable. Some error state has occurred and // some // functionality may be impaired. Customer may need to reissue a // request // or trigger a new update. // "RECONCILING" - The RECONCILING state indicates that some work is // actively being done on // the node pool, such as upgrading node software. Details can // be found in the `statusMessage` field. // "STOPPING" - The STOPPING state indicates the node pool is being // deleted. // "ERROR" - The ERROR state indicates the node pool may be unusable. // Details // can be found in the `statusMessage` field. Status string `json:"status,omitempty"` // StatusMessage: Additional information about the current // status of this // node pool instance, if available. StatusMessage string `json:"statusMessage,omitempty"` }
NodePoolObservation is used to show the observed state of the GKE Node Pool resource on GCP.
func (*NodePoolObservation) DeepCopy ¶
func (in *NodePoolObservation) DeepCopy() *NodePoolObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolObservation.
func (*NodePoolObservation) DeepCopyInto ¶
func (in *NodePoolObservation) DeepCopyInto(out *NodePoolObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodePoolParameters ¶
type NodePoolParameters struct { // Cluster: The resource link for the GKE cluster to which the NodePool will // attach. Must be of format // projects/projectID/locations/clusterLocation/clusters/clusterName. Must // be supplied if ClusterRef is not. // +immutable Cluster string `json:"cluster,omitempty"` // ClusterRef sets the Cluster field by resolving the resource link of the // referenced Crossplane Cluster managed resource. // +immutable // +optional ClusterRef *xpv1.Reference `json:"clusterRef,omitempty"` // ClusterSelector selects a reference to resolve the resource link of the // referenced Crossplane Cluster managed resource. // +immutable // +optional ClusterSelector *xpv1.Selector `json:"clusterSelector,omitempty"` // Autoscaling: Autoscaler configuration for this NodePool. Autoscaler // is enabled // only if a valid configuration is present. Autoscaling *NodePoolAutoscaling `json:"autoscaling,omitempty"` // Config: The node configuration of the pool. Config *NodeConfig `json:"config,omitempty"` // InitialNodeCount: The initial node count for the pool. You must // ensure that your // Compute Engine <a href="/compute/docs/resource-quotas">resource // quota</a> // is sufficient for this number of instances. You must also have // available // firewall and routes quota. // +immutable // +optional InitialNodeCount *int64 `json:"initialNodeCount,omitempty"` // Locations: The list of Google Compute Engine // [zones](/compute/docs/zones#available) // in which the NodePool's nodes should be located. // +optional Locations []string `json:"locations,omitempty"` // Management: NodeManagement configuration for this NodePool. Management *NodeManagementSpec `json:"management,omitempty"` // MaxPodsConstraint: The constraint on the maximum number of pods that // can be run // simultaneously on a node in the node pool. // +immutable MaxPodsConstraint *v1beta1.MaxPodsConstraint `json:"maxPodsConstraint,omitempty"` // Version: The version of the Kubernetes of this node. // +optional Version *string `json:"version,omitempty"` }
NodePoolParameters define the desired state of a Google Kubernetes Engine node pool.
func (*NodePoolParameters) DeepCopy ¶
func (in *NodePoolParameters) DeepCopy() *NodePoolParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolParameters.
func (*NodePoolParameters) DeepCopyInto ¶
func (in *NodePoolParameters) DeepCopyInto(out *NodePoolParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodePoolSpec ¶
type NodePoolSpec struct { xpv1.ResourceSpec `json:",inline"` ForProvider NodePoolParameters `json:"forProvider"` }
A NodePoolSpec defines the desired state of a NodePool.
func (*NodePoolSpec) DeepCopy ¶
func (in *NodePoolSpec) DeepCopy() *NodePoolSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolSpec.
func (*NodePoolSpec) DeepCopyInto ¶
func (in *NodePoolSpec) DeepCopyInto(out *NodePoolSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodePoolStatus ¶
type NodePoolStatus struct { xpv1.ResourceStatus `json:",inline"` AtProvider NodePoolObservation `json:"atProvider,omitempty"` }
A NodePoolStatus represents the observed state of a NodePool.
func (*NodePoolStatus) DeepCopy ¶
func (in *NodePoolStatus) DeepCopy() *NodePoolStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodePoolStatus.
func (*NodePoolStatus) DeepCopyInto ¶
func (in *NodePoolStatus) DeepCopyInto(out *NodePoolStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type NodeTaint ¶
type NodeTaint struct { // Effect: Effect for taint. // // Possible values: // "EFFECT_UNSPECIFIED" - Not set // "NO_SCHEDULE" - NoSchedule // "PREFER_NO_SCHEDULE" - PreferNoSchedule // "NO_EXECUTE" - NoExecute Effect string `json:"effect"` // Key: Key for taint. Key string `json:"key"` // Value: Value for taint. Value string `json:"value"` }
NodeTaint is a Kubernetes taint is comprised of three fields: key, value, and effect. Effect can only be one of three types: NoSchedule, PreferNoSchedule or NoExecute.
For more information, including usage and the valid values, see: https://kubernetes.io/docs/concepts/configuration/taint-and-toler ation/
func (*NodeTaint) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new NodeTaint.
func (*NodeTaint) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type SandboxConfig ¶
type SandboxConfig struct { // SandboxType: Type of the sandbox to use for the node (e.g. 'gvisor') SandboxType string `json:"sandboxType"` }
SandboxConfig contains configurations of the sandbox to use for the node.
func (*SandboxConfig) DeepCopy ¶
func (in *SandboxConfig) DeepCopy() *SandboxConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new SandboxConfig.
func (*SandboxConfig) DeepCopyInto ¶
func (in *SandboxConfig) DeepCopyInto(out *SandboxConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ShieldedInstanceConfig ¶
type ShieldedInstanceConfig struct { // EnableIntegrityMonitoring: Defines whether the instance has integrity // monitoring enabled. // // Enables monitoring and attestation of the boot integrity of the // instance. // The attestation is performed against the integrity policy baseline. // This // baseline is initially derived from the implicitly trusted boot image // when // the instance is created. // +optional EnableIntegrityMonitoring *bool `json:"enableIntegrityMonitoring,omitempty"` // EnableSecureBoot: Defines whether the instance has Secure Boot // enabled. // // Secure Boot helps ensure that the system only runs authentic software // by // verifying the digital signature of all boot components, and halting // the // boot process if signature verification fails. // +optional EnableSecureBoot *bool `json:"enableSecureBoot,omitempty"` }
ShieldedInstanceConfig is a set of Shielded Instance options.
func (*ShieldedInstanceConfig) DeepCopy ¶
func (in *ShieldedInstanceConfig) DeepCopy() *ShieldedInstanceConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ShieldedInstanceConfig.
func (*ShieldedInstanceConfig) DeepCopyInto ¶
func (in *ShieldedInstanceConfig) DeepCopyInto(out *ShieldedInstanceConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type WorkloadMetadataConfig ¶
type WorkloadMetadataConfig struct { // NodeMetadata: NodeMetadata is the configuration for how to expose // metadata to the // workloads running on the node. // // Possible values: // "UNSPECIFIED" - Not set. // "SECURE" - Prevent workloads not in hostCluster from accessing // certain VM metadata, // specifically kube-env, which contains Kubelet credentials, and // the // instance identity token. // // Metadata concealment is a temporary security solution available while // the // bootstrapping process for cluster nodes is being redesigned // with // significant security improvements. This feature is scheduled to // be // deprecated in the future and later removed. // "EXPOSE" - Expose all VM metadata to pods. // "GKE_METADATA_SERVER" - Run the GKE Metadata Server on this node. // The GKE Metadata Server exposes // a metadata API to workloads that is compatible with the V1 // Compute // Metadata APIs exposed by the Compute Engine and App Engine // Metadata // Servers. This feature can only be enabled if Workload Identity is // enabled // at the cluster level. NodeMetadata string `json:"nodeMetadata"` }
WorkloadMetadataConfig defines the metadata configuration to expose to workloads on the node pool.
func (*WorkloadMetadataConfig) DeepCopy ¶
func (in *WorkloadMetadataConfig) DeepCopy() *WorkloadMetadataConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new WorkloadMetadataConfig.
func (*WorkloadMetadataConfig) DeepCopyInto ¶
func (in *WorkloadMetadataConfig) DeepCopyInto(out *WorkloadMetadataConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.