Documentation
¶
Overview ¶
Package install provides the functionality for installing a Kismatic cluster.
Index ¶
- func GenerateKubeconfig(p *Plan, generatedAssetsDir string) error
- func ValidateNode(node *Node) (bool, []error)
- func ValidatePlan(p *Plan) (bool, []error)
- func WritePlanTemplate(p Plan, w PlanReadWriter) error
- type CertsConfig
- type Cluster
- type ConfigOptions
- type DockerRegistry
- type Executor
- type ExecutorOptions
- type FilePlanner
- type LocalPKI
- func (lp *LocalPKI) CertificateAuthorityExists() (bool, error)
- func (lp *LocalPKI) GenerateClusterCA(p *Plan) (*tls.CA, error)
- func (lp *LocalPKI) GenerateClusterCertificates(p *Plan, ca *tls.CA, users []string) error
- func (lp *LocalPKI) GenerateNodeCertificate(plan *Plan, node Node, ca *tls.CA) error
- func (lp *LocalPKI) GetClusterCA() (*tls.CA, error)
- func (lp *LocalPKI) NodeCertificateExists(node Node) (bool, error)
- type MasterNodeGroup
- type NetworkConfig
- type Node
- type NodeGroup
- type PKI
- type Plan
- type PlanReadWriter
- type Planner
- type PreFlightExecutor
- type SSHConfig
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GenerateKubeconfig ¶
GenerateKubeconfig generate a kubeconfig file for a specific user
func ValidateNode ¶
ValidateNode runs validation against the given node.
func ValidatePlan ¶
ValidatePlan runs validation against the installation plan to ensure that the plan contains valid user input. Returns true, nil if the validation is successful. Otherwise, returns false and a collection of validation errors.
func WritePlanTemplate ¶
func WritePlanTemplate(p Plan, w PlanReadWriter) error
WritePlanTemplate writes an installation plan with pre-filled defaults.
Types ¶
type CertsConfig ¶
type CertsConfig struct {
Expiry string
}
CertsConfig describes the cluster's trust and certificate configuration
type Cluster ¶
type Cluster struct {
Name string
AdminPassword string `yaml:"admin_password"`
AllowPackageInstallation bool `yaml:"allow_package_installation"`
Networking NetworkConfig
Certificates CertsConfig
SSH SSHConfig
}
Cluster describes a Kubernetes cluster
type ConfigOptions ¶
type ConfigOptions struct {
CA string
Server string
Cluster string
User string
Context string
Cert string
Key string
}
ConfigOptions sds
type DockerRegistry ¶
type DockerRegistry struct {
SetupInternal bool `yaml:"setup_internal"`
Address string
Port int
CAPath string `yaml:"CA"`
}
DockerRegistry details for docker registry, either confgiured by the cli or customer provided
type Executor ¶
type Executor interface {
PreFlightExecutor
Install(p *Plan) error
RunSmokeTest(*Plan) error
AddWorker(*Plan, Node) (*Plan, error)
}
The Executor will carry out the installation plan
func NewExecutor ¶
NewExecutor returns an executor for performing installations according to the installation plan.
type ExecutorOptions ¶
type ExecutorOptions struct {
// SkipCAGeneration determines whether the Certificate Authority should
// be generated. If false, an existing CA file must exist.
SkipCAGeneration bool
// GeneratedAssetsDirectory is the location where generated assets
// are to be stored
GeneratedAssetsDirectory string
// RestartServices determines whether the cluster services should be
// restarted during the installation.
RestartServices bool
// OutputFormat sets the format of the executor
OutputFormat string
// Verbose output from the executor
Verbose bool
// RunsDirectory is where information about installation runs is kept
RunsDirectory string
}
ExecutorOptions are used to configure the executor
type FilePlanner ¶
type FilePlanner struct {
File string
}
FilePlanner is a file-based installation planner
func (*FilePlanner) PlanExists ¶
func (fp *FilePlanner) PlanExists() bool
PlanExists return true if the plan exists on the file system
func (*FilePlanner) Read ¶
func (fp *FilePlanner) Read() (*Plan, error)
Read the plan from the file system
func (*FilePlanner) Write ¶
func (fp *FilePlanner) Write(p *Plan) error
Write the plan to the file system
type LocalPKI ¶
type LocalPKI struct {
CACsr string
CAConfigFile string
CASigningProfile string
GeneratedCertsDirectory string
Log io.Writer
}
LocalPKI is a file-based PKI
func (*LocalPKI) CertificateAuthorityExists ¶
CertificateAuthorityExists returns true if the CA for the cluster exists
func (*LocalPKI) GenerateClusterCA ¶
GenerateClusterCA creates a Certificate Authority for the cluster
func (*LocalPKI) GenerateClusterCertificates ¶
GenerateClusterCertificates creates a Certificates for all nodes on the cluster
func (*LocalPKI) GenerateNodeCertificate ¶
GenerateNodeCertificate creates a private key and certificate for the given node
func (*LocalPKI) GetClusterCA ¶
GetClusterCA returns the cluster CA
type MasterNodeGroup ¶
type MasterNodeGroup struct {
ExpectedCount int `yaml:"expected_count"`
LoadBalancedFQDN string `yaml:"load_balanced_fqdn"`
LoadBalancedShortName string `yaml:"load_balanced_short_name"`
Nodes []Node
}
MasterNodeGroup is the collection of master nodes
type NetworkConfig ¶
type NetworkConfig struct {
Type string
PodCIDRBlock string `yaml:"pod_cidr_block"`
ServiceCIDRBlock string `yaml:"service_cidr_block"`
PolicyEnabled bool `yaml:"policy_enabled"`
UpdateHostsFiles bool `yaml:"update_hosts_files"`
}
NetworkConfig describes the cluster's networking configuration
type PKI ¶
type PKI interface {
CertificateAuthorityExists() (bool, error)
NodeCertificateExists(node Node) (bool, error)
GenerateNodeCertificate(plan *Plan, node Node, ca *tls.CA) error
GetClusterCA() (*tls.CA, error)
GenerateClusterCA(p *Plan) (*tls.CA, error)
GenerateClusterCertificates(p *Plan, ca *tls.CA, users []string) error
}
The PKI provides a way for generating certificates for the cluster described by the Plan
type Plan ¶
type Plan struct {
Cluster Cluster
DockerRegistry DockerRegistry `yaml:"docker_registry"`
Etcd NodeGroup
Master MasterNodeGroup
Worker NodeGroup
}
Plan is the installation plan that the user intends to execute
type PlanReadWriter ¶
PlanReadWriter is capable of reading/writing a Plan
type Planner ¶
type Planner interface {
PlanReadWriter
PlanExists() bool
}
Planner is used to plan the installation
type PreFlightExecutor ¶
The PreFlightExecutor will run pre-flight checks against the environment defined in the plan file
func NewPreFlightExecutor ¶
func NewPreFlightExecutor(stdout io.Writer, errOut io.Writer, options ExecutorOptions) (PreFlightExecutor, error)
NewPreFlightExecutor returns an executor for running preflight
Source Files
¶
Directories
¶
| Path | Synopsis |
|---|---|
|
Package explain contains explainers that are used for processing an incoming stream, and explaining the events that are found in it.
|
Package explain contains explainers that are used for processing an incoming stream, and explaining the events that are found in it. |