Documentation ¶
Overview ¶
Package v1beta1 contains managed resources for AWS Elastic Kubernetes Service such as Cluster. +kubebuilder:object:generate=true +groupName=eks.aws.crossplane.io +versionName=v1beta1
Index ¶
- Constants
- Variables
- type Cluster
- func (in *Cluster) DeepCopy() *Cluster
- func (in *Cluster) DeepCopyInto(out *Cluster)
- func (in *Cluster) DeepCopyObject() runtime.Object
- func (mg *Cluster) GetBindingPhase() runtimev1alpha1.BindingPhase
- func (mg *Cluster) GetClaimReference() *corev1.ObjectReference
- func (mg *Cluster) GetClassReference() *corev1.ObjectReference
- func (mg *Cluster) GetCondition(ct runtimev1alpha1.ConditionType) runtimev1alpha1.Condition
- func (mg *Cluster) GetProviderReference() runtimev1alpha1.Reference
- func (mg *Cluster) GetReclaimPolicy() runtimev1alpha1.ReclaimPolicy
- func (mg *Cluster) GetWriteConnectionSecretToReference() *runtimev1alpha1.SecretReference
- func (mg *Cluster) ResolveReferences(ctx context.Context, c client.Reader) error
- func (mg *Cluster) SetBindingPhase(p runtimev1alpha1.BindingPhase)
- func (mg *Cluster) SetClaimReference(r *corev1.ObjectReference)
- func (mg *Cluster) SetClassReference(r *corev1.ObjectReference)
- func (mg *Cluster) SetConditions(c ...runtimev1alpha1.Condition)
- func (mg *Cluster) SetProviderReference(r runtimev1alpha1.Reference)
- func (mg *Cluster) SetReclaimPolicy(r runtimev1alpha1.ReclaimPolicy)
- func (mg *Cluster) SetWriteConnectionSecretToReference(r *runtimev1alpha1.SecretReference)
- type ClusterList
- type ClusterObservation
- type ClusterParameters
- type ClusterSpec
- type ClusterStatus
- type ClusterStatusType
- type EncryptionConfig
- type Identity
- type LogSetup
- type LogType
- type Logging
- type OIDC
- type Provider
- type VpcConfigRequest
- type VpcConfigResponse
Constants ¶
const ( Group = "eks.aws.crossplane.io" Version = "v1beta1" )
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 ( ClusterKind = reflect.TypeOf(Cluster{}).Name() ClusterGroupKind = schema.GroupKind{Group: Group, Kind: ClusterKind}.String() ClusterKindAPIVersion = ClusterKind + "." + SchemeGroupVersion.String() ClusterGroupVersionKind = SchemeGroupVersion.WithKind(ClusterKind) )
Cluster type metadata.
Functions ¶
This section is empty.
Types ¶
type Cluster ¶
type Cluster struct { metav1.TypeMeta `json:",inline"` metav1.ObjectMeta `json:"metadata,omitempty"` Spec ClusterSpec `json:"spec"` Status ClusterStatus `json:"status,omitempty"` }
A Cluster is a managed resource that represents an AWS Elastic Kubernetes Service cluster. +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="RECLAIM-POLICY",type="string",JSONPath=".spec.reclaimPolicy" +kubebuilder:printcolumn:name="AGE",type="date",JSONPath=".metadata.creationTimestamp" +kubebuilder:subresource:status +kubebuilder:resource:scope=Cluster,categories={crossplane,managed,aws}
func (*Cluster) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Cluster.
func (*Cluster) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*Cluster) DeepCopyObject ¶
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*Cluster) GetBindingPhase ¶
func (mg *Cluster) GetBindingPhase() runtimev1alpha1.BindingPhase
GetBindingPhase of this Cluster.
func (*Cluster) GetClaimReference ¶
func (mg *Cluster) GetClaimReference() *corev1.ObjectReference
GetClaimReference of this Cluster.
func (*Cluster) GetClassReference ¶
func (mg *Cluster) GetClassReference() *corev1.ObjectReference
GetClassReference of this Cluster.
func (*Cluster) GetCondition ¶
func (mg *Cluster) GetCondition(ct runtimev1alpha1.ConditionType) runtimev1alpha1.Condition
GetCondition of this Cluster.
func (*Cluster) GetProviderReference ¶
func (mg *Cluster) GetProviderReference() runtimev1alpha1.Reference
GetProviderReference of this Cluster.
func (*Cluster) GetReclaimPolicy ¶
func (mg *Cluster) GetReclaimPolicy() runtimev1alpha1.ReclaimPolicy
GetReclaimPolicy of this Cluster.
func (*Cluster) GetWriteConnectionSecretToReference ¶
func (mg *Cluster) GetWriteConnectionSecretToReference() *runtimev1alpha1.SecretReference
GetWriteConnectionSecretToReference of this Cluster.
func (*Cluster) ResolveReferences ¶
ResolveReferences of this Cluster
func (*Cluster) SetBindingPhase ¶
func (mg *Cluster) SetBindingPhase(p runtimev1alpha1.BindingPhase)
SetBindingPhase of this Cluster.
func (*Cluster) SetClaimReference ¶
func (mg *Cluster) SetClaimReference(r *corev1.ObjectReference)
SetClaimReference of this Cluster.
func (*Cluster) SetClassReference ¶
func (mg *Cluster) SetClassReference(r *corev1.ObjectReference)
SetClassReference of this Cluster.
func (*Cluster) SetConditions ¶
func (mg *Cluster) SetConditions(c ...runtimev1alpha1.Condition)
SetConditions of this Cluster.
func (*Cluster) SetProviderReference ¶
func (mg *Cluster) SetProviderReference(r runtimev1alpha1.Reference)
SetProviderReference of this Cluster.
func (*Cluster) SetReclaimPolicy ¶
func (mg *Cluster) SetReclaimPolicy(r runtimev1alpha1.ReclaimPolicy)
SetReclaimPolicy of this Cluster.
func (*Cluster) SetWriteConnectionSecretToReference ¶
func (mg *Cluster) SetWriteConnectionSecretToReference(r *runtimev1alpha1.SecretReference)
SetWriteConnectionSecretToReference of this Cluster.
type ClusterList ¶
type ClusterList struct { metav1.TypeMeta `json:",inline"` metav1.ListMeta `json:"metadata,omitempty"` Items []Cluster `json:"items"` }
ClusterList contains a list of Cluster items
func (*ClusterList) DeepCopy ¶
func (in *ClusterList) DeepCopy() *ClusterList
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterList.
func (*ClusterList) DeepCopyInto ¶
func (in *ClusterList) DeepCopyInto(out *ClusterList)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
func (*ClusterList) DeepCopyObject ¶
func (in *ClusterList) DeepCopyObject() runtime.Object
DeepCopyObject is an autogenerated deepcopy function, copying the receiver, creating a new runtime.Object.
func (*ClusterList) GetItems ¶
func (l *ClusterList) GetItems() []resource.Managed
GetItems of this ClusterList.
type ClusterObservation ¶
type ClusterObservation struct { // The Amazon Resource Name (ARN) of the cluster. Arn string `json:"arn,omitempty"` // The Unix epoch timestamp in seconds for when the cluster was created. CreatedAt *metav1.Time `json:"createdAt,omitempty"` // The endpoint for your Kubernetes API server. Endpoint string `json:"endpoint,omitempty"` // The identity provider information for the cluster. Identity Identity `json:"identity,omitempty"` // The platform version of your Amazon EKS cluster. For more information, see // Platform Versions (https://docs.aws.amazon.com/eks/latest/userguide/platform-versions.html) // in the Amazon EKS User Guide . PlatformVersion string `json:"platformVersion,omitempty"` // The VPC configuration used by the cluster control plane. Amazon EKS VPC resources // have specific requirements to work properly with Kubernetes. For more information, // see Cluster VPC Considerations (https://docs.aws.amazon.com/eks/latest/userguide/network_reqs.html) // and Cluster Security Group Considerations (https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html) // in the Amazon EKS User Guide. ResourcesVpcConfig VpcConfigResponse `json:"resourcesVpcConfig,omitempty"` // The current status of the cluster. Status ClusterStatusType `json:"status,omitempty"` }
ClusterObservation is the observed state of a cluster.
func (*ClusterObservation) DeepCopy ¶
func (in *ClusterObservation) DeepCopy() *ClusterObservation
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterObservation.
func (*ClusterObservation) DeepCopyInto ¶
func (in *ClusterObservation) DeepCopyInto(out *ClusterObservation)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterParameters ¶
type ClusterParameters struct { // The encryption configuration for the cluster. // +immutable // +optional EncryptionConfig []EncryptionConfig `json:"encryptionConfig,omitempty"` // Enable or disable exporting the Kubernetes control plane logs for your cluster // to CloudWatch Logs. By default, cluster control plane logs aren't exported // to CloudWatch Logs. For more information, see Amazon EKS Cluster Control // Plane Logs (https://docs.aws.amazon.com/eks/latest/userguide/control-plane-logs.html) // in the Amazon EKS User Guide . // // CloudWatch Logs ingestion, archive storage, and data scanning rates apply // to exported control plane logs. For more information, see Amazon CloudWatch // Pricing (http://aws.amazon.com/cloudwatch/pricing/). // +optional Logging *Logging `json:"logging,omitempty"` // The VPC configuration used by the cluster control plane. Amazon EKS VPC resources // have specific requirements to work properly with Kubernetes. For more information, // see Cluster VPC Considerations (https://docs.aws.amazon.com/eks/latest/userguide/network_reqs.html) // and Cluster Security Group Considerations (https://docs.aws.amazon.com/eks/latest/userguide/sec-group-reqs.html) // in the Amazon EKS User Guide. You must specify at least two subnets. You // can specify up to five security groups, but we recommend that you use a dedicated // security group for your cluster control plane. // // ResourcesVpcConfig is a required field ResourcesVpcConfig VpcConfigRequest `json:"resourcesVpcConfig"` // The Amazon Resource Name (ARN) of the IAM role that provides permissions // for Amazon EKS to make calls to other AWS API operations on your behalf. // For more information, see Amazon EKS Service IAM Role (https://docs.aws.amazon.com/eks/latest/userguide/service_IAM_role.html) // in the Amazon EKS User Guide . // // RoleArn is a required field // +immutable RoleArn string `json:"roleArn,omitempty"` // RoleArnRef is a reference to an IAMRole used to set // the RoleArn. // +immutable // +optional RoleArnRef *runtimev1alpha1.Reference `json:"roleArnRef,omitempty"` // RoleArnSelector selects references to IAMRole used // to set the RoleArn. // +optional RoleArnSelector *runtimev1alpha1.Selector `json:"roleArnSelector,omitempty"` // The metadata to apply to the cluster to assist with categorization and organization. // Each tag consists of a key and an optional value, both of which you define. // +optional Tags map[string]string `json:"tags,omitempty"` // The desired Kubernetes version for your cluster. If you don't specify a value // here, the latest version available in Amazon EKS is used. // Example: 1.15 // +optional Version *string `json:"version,omitempty"` }
ClusterParameters define the desired state of an AWS Elastic Kubernetes Service cluster.
func (*ClusterParameters) DeepCopy ¶
func (in *ClusterParameters) DeepCopy() *ClusterParameters
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterParameters.
func (*ClusterParameters) DeepCopyInto ¶
func (in *ClusterParameters) DeepCopyInto(out *ClusterParameters)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterSpec ¶
type ClusterSpec struct { runtimev1alpha1.ResourceSpec `json:",inline"` ForProvider ClusterParameters `json:"forProvider"` }
A ClusterSpec defines the desired state of an EKS Cluster.
func (*ClusterSpec) DeepCopy ¶
func (in *ClusterSpec) DeepCopy() *ClusterSpec
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterSpec.
func (*ClusterSpec) DeepCopyInto ¶
func (in *ClusterSpec) DeepCopyInto(out *ClusterSpec)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterStatus ¶
type ClusterStatus struct { runtimev1alpha1.ResourceStatus `json:",inline"` AtProvider ClusterObservation `json:"atProvider,omitempty"` }
A ClusterStatus represents the observed state of an EKS Cluster.
func (*ClusterStatus) DeepCopy ¶
func (in *ClusterStatus) DeepCopy() *ClusterStatus
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new ClusterStatus.
func (*ClusterStatus) DeepCopyInto ¶
func (in *ClusterStatus) DeepCopyInto(out *ClusterStatus)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type ClusterStatusType ¶
type ClusterStatusType string
ClusterStatusType is the status of an EKS cluster.
const ( ClusterStatusCreating ClusterStatusType = "CREATING" ClusterStatusActive ClusterStatusType = "ACTIVE" ClusterStatusDeleting ClusterStatusType = "DELETING" ClusterStatusFailed ClusterStatusType = "FAILED" ClusterStatusUpdating ClusterStatusType = "UPDATING" )
Cluster statuses.
type EncryptionConfig ¶
type EncryptionConfig struct { // AWS Key Management Service (AWS KMS) customer master key (CMK). Either the // ARN or the alias can be used. Provider Provider `json:"provider"` // Specifies the resources to be encrypted. The only supported value is "secrets". Resources []string `json:"resources"` }
EncryptionConfig is the encryption configuration for a cluster.
func (*EncryptionConfig) DeepCopy ¶
func (in *EncryptionConfig) DeepCopy() *EncryptionConfig
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new EncryptionConfig.
func (*EncryptionConfig) DeepCopyInto ¶
func (in *EncryptionConfig) DeepCopyInto(out *EncryptionConfig)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Identity ¶
type Identity struct { // The OpenID Connect (https://openid.net/connect/) identity provider information // for the cluster. OIDC OIDC `json:"oidc,omitempty"` }
Identity is the identity information for a cluster.
func (*Identity) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Identity.
func (*Identity) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type LogSetup ¶
type LogSetup struct { // If a log type is enabled, that log type exports its control plane logs to // CloudWatch Logs. If a log type isn't enabled, that log type doesn't export // its control plane logs. Each individual log type can be enabled or disabled // independently. // +optional Enabled *bool `json:"enabled,omitempty"` // The available cluster control plane log types. Types []LogType `json:"types,omitempty"` }
LogSetup specifies the logging types that are enabled.
func (*LogSetup) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new LogSetup.
func (*LogSetup) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Logging ¶
type Logging struct { // The cluster control plane logging configuration for your cluster. ClusterLogging []LogSetup `json:"clusterLogging"` }
Logging in the logging configuration for a cluster.
func (*Logging) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Logging.
func (*Logging) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type OIDC ¶
type OIDC struct { // The issuer URL for the OpenID Connect identity provider. Issuer string `json:"issuer,omitempty"` }
OIDC is the OpenID Connect issuer URL.
func (*OIDC) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new OIDC.
func (*OIDC) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type Provider ¶
type Provider struct { // Amazon Resource Name (ARN) or alias of the customer master key (CMK). The // CMK must be symmetric, created in the same region as the cluster, and if // the CMK was created in a different account, the user must have access to // the CMK. For more information, see Allowing Users in Other Accounts to Use // a CMK (https://docs.aws.amazon.com/kms/latest/developerguide/key-policy-modifying-external-accounts.html) // in the AWS Key Management Service Developer Guide. KeyArn string `json:"keyArn"` }
Provider is an encryption provider.
func (*Provider) DeepCopy ¶
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new Provider.
func (*Provider) DeepCopyInto ¶
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VpcConfigRequest ¶
type VpcConfigRequest struct { // Set this value to true to enable private access for your cluster's Kubernetes // API server endpoint. If you enable private access, Kubernetes API requests // from within your cluster's VPC use the private VPC endpoint. The default // value for this parameter is false, which disables private access for your // Kubernetes API server. For more information, see Amazon EKS Cluster Endpoint // Access Control (https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html) // in the Amazon EKS User Guide. // +optional EndpointPrivateAccess *bool `json:"endpointPrivateAccess,omitempty"` // Set this value to false to disable public access for your cluster's Kubernetes // API server endpoint. If you disable public access, your cluster's Kubernetes // API server can receive only requests from within the cluster VPC. The default // value for this parameter is true, which enables public access for your Kubernetes // API server. For more information, see Amazon EKS Cluster Endpoint Access // Control (https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html) // in the Amazon EKS User Guide. // +optional EndpointPublicAccess *bool `json:"endpointPublicAccess,omitempty"` // The CIDR blocks that are allowed access to your cluster's public Kubernetes // API server endpoint. Communication to the endpoint from addresses outside // of the CIDR blocks that you specify is denied. The default value is 0.0.0.0/0. // If you've disabled private endpoint access and you have worker nodes or AWS // Fargate pods in the cluster, then ensure that you specify the necessary CIDR // blocks. For more information, see Amazon EKS Cluster Endpoint Access Control // (https://docs.aws.amazon.com/eks/latest/userguide/cluster-endpoint.html) // in the Amazon EKS User Guide. // +optional PublicAccessCidrs []string `json:"publicAccessCidrs,omitempty"` // Specify one or more security groups for the cross-account elastic network // interfaces that Amazon EKS creates to use to allow communication between // your worker nodes and the Kubernetes control plane. If you don't specify // a security group, the default security group for your VPC is used. // +optional SecurityGroupIDs []string `json:"securityGroupIds,omitempty"` // SecurityGroupIDRefs are references to SecurityGroups used to set // the SecurityGroupIDs. // +optional SecurityGroupIDRefs []runtimev1alpha1.Reference `json:"securityGroupIdRefs,omitempty"` // SecurityGroupIDSelector selects references to SecurityGroups used // to set the SecurityGroupIDs. // +optional SecurityGroupIDSelector *runtimev1alpha1.Selector `json:"securityGroupIdSelector,omitempty"` // Specify subnets for your Amazon EKS worker nodes. Amazon EKS creates cross-account // elastic network interfaces in these subnets to allow communication between // your worker nodes and the Kubernetes control plane. // +optional SubnetIDs []string `json:"subnetIds,omitempty"` // SubnetIDRefs are references to Subnets used to set // the SubnetIDs. // +optional SubnetIDRefs []runtimev1alpha1.Reference `json:"subnetIdRefs,omitempty"` // SubnetIDSelector selects references to Subnets used // to set the SubnetIDs. // +optional SubnetIDSelector *runtimev1alpha1.Selector `json:"subnetIdSelector,omitempty"` }
VpcConfigRequest specifies the VPC configuration for a cluster.
func (*VpcConfigRequest) DeepCopy ¶
func (in *VpcConfigRequest) DeepCopy() *VpcConfigRequest
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VpcConfigRequest.
func (*VpcConfigRequest) DeepCopyInto ¶
func (in *VpcConfigRequest) DeepCopyInto(out *VpcConfigRequest)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.
type VpcConfigResponse ¶
type VpcConfigResponse struct { // The cluster security group that was created by Amazon EKS for the cluster. // Managed node groups use this security group for control-plane-to-data-plane // communication. ClusterSecurityGroupID string `json:"clusterSecurityGroupId,omitempty"` // The VPC associated with your cluster. VpcID string `json:"vpcId,omitempty"` }
VpcConfigResponse is the observed VPC configuration for a cluster.
func (*VpcConfigResponse) DeepCopy ¶
func (in *VpcConfigResponse) DeepCopy() *VpcConfigResponse
DeepCopy is an autogenerated deepcopy function, copying the receiver, creating a new VpcConfigResponse.
func (*VpcConfigResponse) DeepCopyInto ¶
func (in *VpcConfigResponse) DeepCopyInto(out *VpcConfigResponse)
DeepCopyInto is an autogenerated deepcopy function, copying the receiver, writing into out. in must be non-nil.