Documentation
¶
Index ¶
- Constants
- Variables
- func CheckEndpointAccess(ctx context.Context, config aws.Config) error
- func Deregister(ctx context.Context, registration *SSMRegistration, ssmClient SSMClient, ...) error
- func Install(ctx context.Context, opts InstallOptions) error
- func NewSsmDaemon(daemonManager daemon.DaemonManager, cfg *api.NodeConfig, logger *zap.Logger) daemon.Daemon
- func Uninstall(ctx context.Context, opts UninstallOptions) error
- func Upgrade(ctx context.Context, opts InstallOptions) error
- func WaitForAWSConfig(ctx context.Context, nodeConfig *api.NodeConfig, backoff time.Duration) (aws.Config, error)
- type AccessValidator
- type HybridInstanceRegistration
- type InstallOptions
- type PkgSource
- type SSMClient
- type SSMInstallerOption
- type SSMRegistration
- type SSMRegistrationOption
- type Source
- type UninstallOptions
Constants ¶
const ( // SSMRegistrationTimeout is the maximum time to wait for SSM registration to complete SSMRegistrationTimeout = 60 * time.Second // SSMRegistrationBackoff is the time to wait between registration retry attempts SSMRegistrationBackoff = 10 * time.Second )
const DefaultSsmInstallerRegion = "us-west-2"
Initial region ssm installer is downloaded from. When installer runs, it will down the agent from the proper region configured in the nodeConfig during init command
Variables ¶
var (
SsmDaemonName = "amazon-ssm-agent"
)
Functions ¶
func Deregister ¶ added in v1.0.4
func NewSsmDaemon ¶
func NewSsmDaemon(daemonManager daemon.DaemonManager, cfg *api.NodeConfig, logger *zap.Logger) daemon.Daemon
Types ¶
type AccessValidator ¶
type AccessValidator struct {
// contains filtered or unexported fields
}
AccessValidator validates access to the AWS SSM API endpoint.
func NewAccessValidator ¶
func NewAccessValidator(aws aws.Config) AccessValidator
NewAccessValidator returns a new AccessValidator.
func (AccessValidator) Run ¶
func (a AccessValidator) Run(ctx context.Context, informer validation.Informer, _ *api.NodeConfig) error
type InstallOptions ¶ added in v1.0.3
type SSMClient ¶ added in v1.0.4
type SSMClient interface {
DescribeInstanceInformation(ctx context.Context, params *awsSsm.DescribeInstanceInformationInput, optFns ...func(*awsSsm.Options)) (*awsSsm.DescribeInstanceInformationOutput, error)
DeregisterManagedInstance(ctx context.Context, params *awsSsm.DeregisterManagedInstanceInput, optFns ...func(*awsSsm.Options)) (*awsSsm.DeregisterManagedInstanceOutput, error)
}
type SSMInstallerOption ¶ added in v1.0.3
type SSMInstallerOption func(*ssmInstallerSource)
func WithDnsSuffix ¶ added in v1.0.18
func WithDnsSuffix(dnsSuffix string) SSMInstallerOption
WithDnsSuffix allows setting the DNS suffix from manifest data This takes precedence over region-based partition detection
func WithPublicKey ¶ added in v1.0.3
func WithPublicKey(key string) SSMInstallerOption
WithPublicKey allows setting the public key for signature validation
func WithURLBuilder ¶ added in v1.0.3
func WithURLBuilder(builder func() (string, error)) SSMInstallerOption
WithURLBuilder allows overriding the SSM installer download URL.
type SSMRegistration ¶ added in v1.0.4
type SSMRegistration struct {
// contains filtered or unexported fields
}
func NewSSMRegistration ¶ added in v1.0.4
func NewSSMRegistration(opts ...SSMRegistrationOption) *SSMRegistration
func (*SSMRegistration) GetManagedHybridInstanceId ¶ added in v1.0.4
func (r *SSMRegistration) GetManagedHybridInstanceId() (string, error)
func (*SSMRegistration) GetRegion ¶ added in v1.0.4
func (r *SSMRegistration) GetRegion() string
GetRegion returns the region of the managed hybrid instance If the instance is not registered, it returns an empty string errors are ignored and an empty string is returned
func (*SSMRegistration) RegistrationFilePath ¶ added in v1.0.4
func (r *SSMRegistration) RegistrationFilePath() string
RegistrationFilePath returns the path to the SSM registration file If installRoot is not set, it will return the path starting from the disk root
type SSMRegistrationOption ¶ added in v1.0.4
type SSMRegistrationOption func(*SSMRegistration)
func WithInstallRoot ¶ added in v1.0.4
func WithInstallRoot(installRoot string) SSMRegistrationOption
type Source ¶
type Source interface {
GetSSMInstaller(ctx context.Context) (io.ReadCloser, error)
GetSSMInstallerSignature(ctx context.Context) (io.ReadCloser, error)
PublicKey() string
}
Source serves an SSM installer binary for the target platform.
func NewSSMInstaller ¶
func NewSSMInstaller(logger *zap.Logger, region string, opts ...SSMInstallerOption) Source
SSMInstaller provides a Source that retrieves the SSM installer from the official release endpoint.