Documentation ¶
Index ¶
- Constants
- func BuildImageID(publicGalleryURL, communityImageName, imageVersion string) string
- func ParseCommunityImageIDInfo(imageID string) (string, string, string, error)
- type AzureLinux
- func (u AzureLinux) CustomScriptsNodeBootstrapping(kubeletConfig *bootstrap.KubeletConfiguration, taints []v1.Taint, ...) customscriptsbootstrap.Bootstrapper
- func (u AzureLinux) DefaultImages() []DefaultImageOutput
- func (u AzureLinux) Name() string
- func (u AzureLinux) ScriptlessCustomData(kubeletConfig *bootstrap.KubeletConfiguration, taints []v1.Taint, ...) bootstrap.Bootstrapper
- type CommunityGalleryImageVersionsAPI
- type DefaultImageOutput
- type ImageFamily
- type Provider
- type Resolver
- type Ubuntu2204
- func (u Ubuntu2204) CustomScriptsNodeBootstrapping(kubeletConfig *bootstrap.KubeletConfiguration, taints []v1.Taint, ...) customscriptsbootstrap.Bootstrapper
- func (u Ubuntu2204) DefaultImages() []DefaultImageOutput
- func (u Ubuntu2204) Name() string
- func (u Ubuntu2204) ScriptlessCustomData(kubeletConfig *bootstrap.KubeletConfiguration, taints []v1.Taint, ...) bootstrap.Bootstrapper
Constants ¶
const ( AzureLinuxGen2CommunityImage = "V2gen2" AzureLinuxGen1CommunityImage = "V2" AzureLinuxGen2ArmCommunityImage = "V2gen2arm64" )
const ( AKSUbuntuPublicGalleryURL = "AKSUbuntu-38d80f77-467a-481f-a8d4-09b6d4220bd2" AKSAzureLinuxPublicGalleryURL = "AKSAzureLinux-f7c7cda5-1c9a-4bdc-a222-9614c968580b" )
const ( Ubuntu2204Gen2CommunityImage = "2204gen2containerd" Ubuntu2204Gen1CommunityImage = "2204containerd" Ubuntu2204Gen2ArmCommunityImage = "2204gen2arm64containerd" )
Variables ¶
This section is empty.
Functions ¶
func BuildImageID ¶
Types ¶
type AzureLinux ¶
type AzureLinux struct {
Options *parameters.StaticParameters
}
func (AzureLinux) CustomScriptsNodeBootstrapping ¶ added in v0.7.0
func (u AzureLinux) CustomScriptsNodeBootstrapping(kubeletConfig *bootstrap.KubeletConfiguration, taints []v1.Taint, startupTaints []v1.Taint, labels map[string]string, instanceType *cloudprovider.InstanceType, imageDistro string, storageProfile string) customscriptsbootstrap.Bootstrapper
UserData returns the default userdata script for the image Family
func (AzureLinux) DefaultImages ¶
func (u AzureLinux) DefaultImages() []DefaultImageOutput
func (AzureLinux) Name ¶
func (u AzureLinux) Name() string
func (AzureLinux) ScriptlessCustomData ¶ added in v0.7.0
func (u AzureLinux) ScriptlessCustomData(kubeletConfig *bootstrap.KubeletConfiguration, taints []v1.Taint, labels map[string]string, caBundle *string, _ *cloudprovider.InstanceType) bootstrap.Bootstrapper
UserData returns the default userdata script for the image Family
type CommunityGalleryImageVersionsAPI ¶
type CommunityGalleryImageVersionsAPI interface {
NewListPager(location string, publicGalleryName string, galleryImageName string, options *armcomputev5.CommunityGalleryImageVersionsClientListOptions) *runtime.Pager[armcomputev5.CommunityGalleryImageVersionsClientListResponse]
}
CommunityGalleryImageVersionsAPI is used for listing community gallery image versions.
type DefaultImageOutput ¶
type DefaultImageOutput struct { CommunityImage string PublicGalleryURL string Requirements scheduling.Requirements Distro string }
DefaultImageOutput is the Stub of an Image we return from an ImageFamily De
type ImageFamily ¶
type ImageFamily interface { ScriptlessCustomData( kubeletConfig *bootstrap.KubeletConfiguration, taints []corev1.Taint, labels map[string]string, caBundle *string, instanceType *cloudprovider.InstanceType, ) bootstrap.Bootstrapper CustomScriptsNodeBootstrapping( kubeletConfig *bootstrap.KubeletConfiguration, taints []corev1.Taint, startupTaints []corev1.Taint, labels map[string]string, instanceType *cloudprovider.InstanceType, imageDistro string, storageProfile string, ) customscriptsbootstrap.Bootstrapper Name() string // DefaultImages returns a list of default CommunityImage definitions for this ImageFamily. // Our Image Selection logic relies on the ordering of the default images to be ordered from most preferred to least, then we will select the latest image version available for that CommunityImage definition. // Our Release pipeline ensures all images are released together within 24 hours of each other for community image gallery, so selecting based on image feature priorities, then by date, and not vice-versa is acceptable. DefaultImages() []DefaultImageOutput }
ImageFamily can be implemented to override the default logic for generating dynamic launch template parameters
type Provider ¶
type Provider struct {
// contains filtered or unexported fields
}
func NewProvider ¶
func NewProvider(kubernetesInterface kubernetes.Interface, kubernetesVersionCache *cache.Cache, versionsClient CommunityGalleryImageVersionsAPI, location string) *Provider
func (*Provider) Get ¶
func (p *Provider) Get(ctx context.Context, nodeClass *v1alpha2.AKSNodeClass, instanceType *cloudprovider.InstanceType, imageFamily ImageFamily) (string, string, error)
Get returns Distro and Image ID for the given instance type. Images may vary due to architecture, accelerator, etc
type Resolver ¶
type Resolver struct {
// contains filtered or unexported fields
}
Resolver is able to fill-in dynamic launch template parameters
func (Resolver) Resolve ¶
func (r Resolver) Resolve(ctx context.Context, nodeClass *v1alpha2.AKSNodeClass, nodeClaim *karpv1.NodeClaim, instanceType *cloudprovider.InstanceType, staticParameters *template.StaticParameters) (*template.Parameters, error)
Resolve fills in dynamic launch template parameters
type Ubuntu2204 ¶
type Ubuntu2204 struct {
Options *parameters.StaticParameters
}
func (Ubuntu2204) CustomScriptsNodeBootstrapping ¶ added in v0.7.0
func (u Ubuntu2204) CustomScriptsNodeBootstrapping(kubeletConfig *bootstrap.KubeletConfiguration, taints []v1.Taint, startupTaints []v1.Taint, labels map[string]string, instanceType *cloudprovider.InstanceType, imageDistro string, storageProfile string) customscriptsbootstrap.Bootstrapper
UserData returns the default userdata script for the image Family
func (Ubuntu2204) DefaultImages ¶
func (u Ubuntu2204) DefaultImages() []DefaultImageOutput
func (Ubuntu2204) Name ¶
func (u Ubuntu2204) Name() string
func (Ubuntu2204) ScriptlessCustomData ¶ added in v0.7.0
func (u Ubuntu2204) ScriptlessCustomData(kubeletConfig *bootstrap.KubeletConfiguration, taints []v1.Taint, labels map[string]string, caBundle *string, _ *cloudprovider.InstanceType) bootstrap.Bootstrapper
UserData returns the default userdata script for the image Family