Documentation
¶
Index ¶
- Constants
- func CreateEKSHostedCluster(client *rancher.Client, displayName, cloudCredentialID string, ...) (*management.Cluster, error)
- func ScalingEKSNodePoolsNodes(client *rancher.Client, cluster *management.Cluster, nodePool *NodeGroupConfig) (*management.Cluster, error)
- type ClusterConfig
- type LaunchTemplateConfig
- type NodeGroupConfig
Constants ¶
View Source
const (
// The json/yaml config key for the EKS hosted cluster config
EKSClusterConfigConfigurationFileKey = "eksClusterConfig"
)
Variables ¶
This section is empty.
Functions ¶
func CreateEKSHostedCluster ¶
func CreateEKSHostedCluster(client *rancher.Client, displayName, cloudCredentialID string, eksClusterConfig ClusterConfig, enableClusterAlerting, enableClusterMonitoring, enableNetworkPolicy, windowsPreferedCluster bool, labels map[string]string) (*management.Cluster, error)
CreateEKSHostedCluster is a helper function that creates an EKS hosted cluster
func ScalingEKSNodePoolsNodes ¶
func ScalingEKSNodePoolsNodes(client *rancher.Client, cluster *management.Cluster, nodePool *NodeGroupConfig) (*management.Cluster, error)
ScalingEKSNodePoolsNodes is a helper function that tests scaling of an EKS node pool by adding a new one and then deleting it.
Types ¶
type ClusterConfig ¶
type ClusterConfig struct { EBSCSIDriver *bool `json:"ebsCSIDriver,omitempty" yaml:"ebsCSIDriver,omitempty"` KmsKey *string `json:"kmsKey,omitempty" yaml:"kmsKey,omitempty"` KubernetesVersion *string `json:"kubernetesVersion,omitempty" yaml:"kubernetesVersion,omitempty"` LoggingTypes []string `json:"loggingTypes" yaml:"loggingTypes"` NodeGroupsConfig *[]NodeGroupConfig `json:"nodeGroups,omitempty" yaml:"nodeGroups,omitempty"` PrivateAccess *bool `json:"privateAccess,omitempty" yaml:"privateAccess,omitempty"` PublicAccess *bool `json:"publicAccess,omitempty" yaml:"publicAccess,omitempty"` PublicAccessSources []string `json:"publicAccessSources" yaml:"publicAccessSources"` Region string `json:"region" yaml:"region"` SecretsEncryption *bool `json:"secretsEncryption,omitempty" yaml:"secretsEncryption,omitempty"` SecurityGroups []string `json:"securityGroups" yaml:"securityGroups"` ServiceRole *string `json:"serviceRole,omitempty" yaml:"serviceRole,omitempty"` Subnets []string `json:"subnets" yaml:"subnets"` Tags map[string]string `json:"tags" yaml:"tags"` }
ClusterConfig is the configuration needed to create an EKS host cluster
type LaunchTemplateConfig ¶
type LaunchTemplateConfig struct { ID *string `json:"id,omitempty" yaml:"id,omitempty"` Name *string `json:"name,omitempty" yaml:"name,omitempty"` Version *int64 `json:"version,omitempty" yaml:"version,omitempty"` }
LaunchTemplateConfig is the configuration need for a node group launch template
type NodeGroupConfig ¶
type NodeGroupConfig struct { Arm *bool `json:"arm,omitempty" yaml:"arm,omitempty"` DesiredSize *int64 `json:"desiredSize,omitempty" yaml:"desiredSize,omitempty"` DiskSize *int64 `json:"diskSize,omitempty" yaml:"diskSize,omitempty"` Ec2SshKey *string `json:"ec2SshKey,omitempty" yaml:"ec2SshKey,omitempty"` Gpu *bool `json:"gpu,omitempty" yaml:"gpu,omitempty"` ImageID *string `json:"imageId,omitempty" yaml:"imageId,omitempty"` InstanceType *string `json:"instanceType,omitempty" yaml:"instanceType,omitempty"` Labels map[string]string `json:"labels" yaml:"labels"` LaunchTemplateConfig *LaunchTemplateConfig `json:"launchTemplate,omitempty" yaml:"launchTemplate,omitempty"` MaxSize *int64 `json:"maxSize,omitempty" yaml:"maxSize,omitempty"` MinSize *int64 `json:"minSize,omitempty" yaml:"minSize,omitempty"` NodeRole *string `json:"nodeRole,omitempty" yaml:"nodeRole,omitempty"` NodegroupName *string `json:"nodegroupName,omitempty" yaml:"nodegroupName,omitempty"` RequestSpotInstances *bool `json:"requestSpotInstances,omitempty" yaml:"requestSpotInstances,omitempty"` ResourceTags map[string]string `json:"resourceTags" yaml:"resourceTags"` SpotInstanceTypes []string `json:"spotInstanceTypes" yaml:"spotInstanceTypes"` Subnets []string `json:"subnets" yaml:"subnets"` Tags map[string]string `json:"tags" yaml:"tags"` UserData *string `json:"userData,omitempty" yaml:"userData,omitempty"` Version *string `json:"version,omitempty" yaml:"version,omitempty"` }
NodeGroupConfig is the configuration need to create an EKS node group
Click to show internal directories.
Click to hide internal directories.