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.