Documentation
¶
Index ¶
- Variables
- type KarpenterExtraConfig
- type KarpenterGPUNodeProvider
- func (p KarpenterGPUNodeProvider) CreateNode(ctx context.Context, claim *tfv1.GPUNodeClaim) (*types.GPUNodeStatus, error)
- func (p KarpenterGPUNodeProvider) GetGPUNodeInstanceTypeInfo(region string) []types.GPUNodeInstanceInfo
- func (p KarpenterGPUNodeProvider) GetInstancePricing(instanceType string, capacityType tfv1.CapacityTypeEnum, region string) (float64, error)
- func (p KarpenterGPUNodeProvider) GetNodeStatus(ctx context.Context, param *types.NodeIdentityParam) (*types.GPUNodeStatus, error)
- func (p KarpenterGPUNodeProvider) TerminateNode(ctx context.Context, param *types.NodeIdentityParam) error
- func (p KarpenterGPUNodeProvider) TestConnection() error
Constants ¶
This section is empty.
Variables ¶
View Source
var ( KarpenterGroup = "karpenter.sh" KarpenterVersion = "v1" DefaultGPUResourceName = "nvidia.com/gpu" EC2NodeClassGroup = "karpenter.k8s.aws" // AWS capacity type: https://karpenter.sh/docs/concepts/scheduling/#well-known-labels AWSOnDemandType = "on-demand" AWSReservedType = "reserved" AWSSpotType = "spot" // CapacityTypeMapping maps the CapacityTypeEnum to the corresponding Karpenter capacity type CapacityTypeMapping = map[tfv1.CapacityTypeEnum]string{ tfv1.CapacityTypeOnDemand: AWSOnDemandType, tfv1.CapacityTypeSpot: AWSReservedType, tfv1.CapacityTypeReserved: AWSSpotType, } )
Functions ¶
This section is empty.
Types ¶
type KarpenterExtraConfig ¶ added in v1.41.0
type KarpenterExtraConfig struct {
// NodeClaim configuration
NodeClaim struct {
TerminationGracePeriod string `mapstructure:"terminationGracePeriod"`
} `mapstructure:"nodeClaim"`
// Additional Karpenter settings
// GPU resource name, default to "nvidia.com/gpu"
GPUResourceName corev1.ResourceName `mapstructure:"gpuResource"`
}
KarpenterExtraConfig holds Karpenter-specific configuration parsed from ExtraParams
type KarpenterGPUNodeProvider ¶
type KarpenterGPUNodeProvider struct {
// contains filtered or unexported fields
}
func NewKarpenterGPUNodeProvider ¶
func NewKarpenterGPUNodeProvider(ctx context.Context, cfg tfv1.ComputingVendorConfig, client client.Client, nodeManagerConfig *tfv1.NodeManagerConfig) (KarpenterGPUNodeProvider, error)
func (KarpenterGPUNodeProvider) CreateNode ¶
func (p KarpenterGPUNodeProvider) CreateNode(ctx context.Context, claim *tfv1.GPUNodeClaim) (*types.GPUNodeStatus, error)
func (KarpenterGPUNodeProvider) GetGPUNodeInstanceTypeInfo ¶
func (p KarpenterGPUNodeProvider) GetGPUNodeInstanceTypeInfo(region string) []types.GPUNodeInstanceInfo
func (KarpenterGPUNodeProvider) GetInstancePricing ¶
func (p KarpenterGPUNodeProvider) GetInstancePricing(instanceType string, capacityType tfv1.CapacityTypeEnum, region string) (float64, error)
func (KarpenterGPUNodeProvider) GetNodeStatus ¶
func (p KarpenterGPUNodeProvider) GetNodeStatus(ctx context.Context, param *types.NodeIdentityParam) (*types.GPUNodeStatus, error)
func (KarpenterGPUNodeProvider) TerminateNode ¶
func (p KarpenterGPUNodeProvider) TerminateNode(ctx context.Context, param *types.NodeIdentityParam) error
func (KarpenterGPUNodeProvider) TestConnection ¶
func (p KarpenterGPUNodeProvider) TestConnection() error
Click to show internal directories.
Click to hide internal directories.