Documentation
      ¶
    
    
  
    
  
    Index ¶
- Constants
 - Variables
 - func ApplyAuthzResources(ctx context.Context, rkeConfig v3.RancherKubernetesEngineConfig, ...) error
 - func BuildPortChecksFromPortList(host *hosts.Host, portList []string, proto string) []v3.PortCheck
 - func BuildRKEConfigNodePlan(ctx context.Context, myCluster *Cluster, host *hosts.Host, ...) v3.RKEConfigNodePlan
 - func CheckEtcdHostsChanged(kubeCluster, currentCluster *Cluster) error
 - func ConfigureCluster(ctx context.Context, rkeConfig v3.RancherKubernetesEngineConfig, ...) error
 - func GeneratePlan(ctx context.Context, rkeConfig *v3.RancherKubernetesEngineConfig, ...) (v3.RKEPlan, error)
 - func GetCertificateDirPath(configPath, configDir string) string
 - func GetClusterCertsFromKubernetes(ctx context.Context, kubeCluster *Cluster) (map[string]pki.CertificatePKI, error)
 - func GetClusterCertsFromNodes(ctx context.Context, kubeCluster *Cluster) (map[string]pki.CertificatePKI, error)
 - func GetK8sVersion(localConfigPath string, k8sWrapTransport transport.WrapperFunc) (string, error)
 - func GetLocalRKEConfig() *v3.RancherKubernetesEngineConfig
 - func GetLocalRKENodeConfig() *v3.RKEConfigNode
 - func GetServiceOptionData(data map[string]interface{}) map[string]*v3.KubernetesServicesOptions
 - func GetStateFilePath(configPath, configDir string) string
 - func IsLegacyKubeAPI(ctx context.Context, kubeCluster *Cluster) (bool, error)
 - func IsLocalSnapshot(name string) bool
 - func ParseConfig(clusterFile string) (*v3.RancherKubernetesEngineConfig, error)
 - func RebuildKubeconfig(ctx context.Context, kubeCluster *Cluster) error
 - func ReconcileCluster(ctx context.Context, kubeCluster, currentCluster *Cluster, flags ExternalFlags, ...) error
 - func ReconcileEncryptionProviderConfig(ctx context.Context, kubeCluster, currentCluster *Cluster) error
 - func RestartClusterPods(ctx context.Context, kubeCluster *Cluster) error
 - func RotateRKECertificates(ctx context.Context, c *Cluster, flags ExternalFlags, clusterState *FullState) error
 - func SaveFullStateToKubernetes(ctx context.Context, kubeCluster *Cluster, fullState *FullState) error
 - func SetUpAuthentication(ctx context.Context, kubeCluster, currentCluster *Cluster, ...) error
 - func ValidateHostCount(c *Cluster) error
 - type Cluster
 - func (c *Cluster) ApplySystemAddonExecuteJob(addonJob string, addonUpdated bool) error
 - func (c *Cluster) BuildEtcdProcess(host *hosts.Host, etcdHosts []*hosts.Host, prefixPath string, ...) v3.Process
 - func (c *Cluster) BuildKubeAPIProcess(host *hosts.Host, prefixPath string, ...) v3.Process
 - func (c *Cluster) BuildKubeControllerProcess(host *hosts.Host, prefixPath string, ...) v3.Process
 - func (c *Cluster) BuildKubeProxyProcess(host *hosts.Host, prefixPath string, ...) v3.Process
 - func (c *Cluster) BuildKubeletProcess(host *hosts.Host, prefixPath string, ...) v3.Process
 - func (c *Cluster) BuildProxyProcess(host *hosts.Host, prefixPath string) v3.Process
 - func (c *Cluster) BuildSchedulerProcess(host *hosts.Host, prefixPath string, ...) v3.Process
 - func (c *Cluster) BuildSidecarProcess(host *hosts.Host, prefixPath string) v3.Process
 - func (c *Cluster) CheckClusterPorts(ctx context.Context, currentCluster *Cluster) error
 - func (c *Cluster) CleanDeadLogs(ctx context.Context) error
 - func (c *Cluster) CleanupFiles(ctx context.Context) error
 - func (c *Cluster) CleanupNodes(ctx context.Context) error
 - func (c *Cluster) ClusterRemove(ctx context.Context) error
 - func (c *Cluster) DeployControlPlane(ctx context.Context, svcOptionData map[string]*v3.KubernetesServicesOptions) error
 - func (c *Cluster) DeployEncryptionProviderFile(ctx context.Context) error
 - func (c *Cluster) DeployRestoreCerts(ctx context.Context, clusterCerts map[string]pki.CertificatePKI) error
 - func (c *Cluster) DeployWorkerPlane(ctx context.Context, svcOptionData map[string]*v3.KubernetesServicesOptions) error
 - func (c *Cluster) DisableSecretsEncryption(ctx context.Context, currentCluster *Cluster, custom bool) error
 - func (c *Cluster) GetClusterState(ctx context.Context, fullState *FullState) (*Cluster, error)
 - func (c *Cluster) GetHostInfoMap() map[string]types.Info
 - func (c *Cluster) GetKubernetesServicesOptions(osType string, data map[string]*v3.KubernetesServicesOptions) (v3.KubernetesServicesOptions, error)
 - func (c *Cluster) InvertIndexHosts() error
 - func (c *Cluster) IsEncryptionCustomConfig() bool
 - func (c *Cluster) IsEncryptionEnabled() bool
 - func (c *Cluster) IsKubeletGenerateServingCertificateEnabled() bool
 - func (c *Cluster) PrePullK8sImages(ctx context.Context) error
 - func (c *Cluster) PrepareBackup(ctx context.Context, snapshotPath string) error
 - func (c *Cluster) ReconcileDesiredStateEncryptionConfig(ctx context.Context, fullState *FullState) error
 - func (c *Cluster) RemoveEtcdSnapshot(ctx context.Context, snapshotName string) error
 - func (c *Cluster) RemoveOldNodes(ctx context.Context) error
 - func (c *Cluster) RestoreEtcdSnapshot(ctx context.Context, snapshotPath string) error
 - func (c *Cluster) RewriteSecrets(ctx context.Context) error
 - func (c *Cluster) RotateEncryptionKey(ctx context.Context, fullState *FullState) error
 - func (c *Cluster) SetUpHosts(ctx context.Context, flags ExternalFlags) error
 - func (c *Cluster) SetupDialers(ctx context.Context, dailersOptions hosts.DialersOptions) error
 - func (c *Cluster) SnapshotEtcd(ctx context.Context, snapshotName string) error
 - func (c *Cluster) StoreAddonConfigMap(ctx context.Context, addonYaml string, addonName string) (bool, error)
 - func (c *Cluster) SyncLabelsAndTaints(ctx context.Context, currentCluster *Cluster) error
 - func (c *Cluster) TunnelHosts(ctx context.Context, flags ExternalFlags) error
 - func (c *Cluster) UpdateClusterCurrentState(ctx context.Context, fullState *FullState) error
 - func (c *Cluster) ValidateCluster(ctx context.Context) error
 
- type CoreDNSOptions
 - type ExternalFlags
 - type FullState
 - type KubeDNSOptions
 - type MetricsServerOptions
 - type NodelocalOptions
 - type State
 
Constants ¶
      View Source
      
  
    const ( UserAddonResourceName = "rke-user-addon" IngressAddonResourceName = "rke-ingress-controller" UserAddonsIncludeResourceName = "rke-user-includes-addons" IngressAddonJobName = "rke-ingress-controller-deploy-job" MetricsServerAddonJobName = "rke-metrics-addon-deploy-job" MetricsServerAddonResourceName = "rke-metrics-addon" NginxIngressAddonAppName = "ingress-nginx" KubeDNSAddonAppName = "kube-dns" KubeDNSAutoscalerAppName = "kube-dns-autoscaler" CoreDNSAutoscalerAppName = "coredns-autoscaler" KubeAPIAuthAppName = "kube-api-auth" CattleClusterAgentAppName = "cattle-cluster-agent" CoreDNSProvider = "coredns" KubeDNSProvider = "kube-dns" Nodelocal = "nodelocal" )
      View Source
      
  
    const ( AuthnX509Provider = "x509" AuthnWebhookProvider = "webhook" StateConfigMapName = "cluster-state" FullStateConfigMapName = "full-cluster-state" UpdateStateTimeout = 30 GetStateTimeout = 30 SyncWorkers = 10 NoneAuthorizationMode = "none" LocalNodeAddress = "127.0.0.1" LocalNodeHostname = "localhost" LocalNodeUser = "root" CloudProvider = "CloudProvider" ControlPlane = "controlPlane" KubeAppLabel = "k8s-app" AppLabel = "app" NameLabel = "name" WorkerThreads = util.WorkerThreads SystemNamespace = "kube-system" )
      View Source
      
  
    const ( DefaultServiceClusterIPRange = "10.43.0.0/16" DefaultNodePortRange = "30000-32767" DefaultClusterCIDR = "10.42.0.0/16" DefaultClusterDNSService = "10.43.0.10" DefaultClusterDomain = "cluster.local" DefaultClusterName = "local" DefaultClusterSSHKeyPath = "~/.ssh/id_rsa" DefaultSSHPort = "22" DefaultDockerSockPath = "/var/run/docker.sock" DefaultAuthStrategy = "x509" DefaultAuthorizationMode = "rbac" DefaultAuthnWebhookFile = templates.AuthnWebhook DefaultAuthnCacheTimeout = "5s" DefaultNetworkPlugin = "canal" DefaultNetworkCloudProvider = "none" DefaultIngressController = "nginx" DefaultEtcdBackupCreationPeriod = "12h" DefaultEtcdBackupRetentionPeriod = "72h" DefaultEtcdSnapshot = true DefaultMonitoringProvider = "metrics-server" DefaultEtcdBackupConfigIntervalHours = 12 DefaultEtcdBackupConfigRetention = 6 DefaultDNSProvider = "kube-dns" K8sVersionCoreDNS = "1.14.0" DefaultEtcdHeartbeatIntervalName = "heartbeat-interval" DefaultEtcdHeartbeatIntervalValue = "500" DefaultEtcdElectionTimeoutName = "election-timeout" DefaultEtcdElectionTimeoutValue = "5000" DefaultFlannelBackendVxLan = "vxlan" DefaultFlannelBackendVxLanPort = "8472" DefaultFlannelBackendVxLanVNI = "1" DefaultCalicoFlexVolPluginDirectory = "/usr/libexec/kubernetes/kubelet-plugins/volume/exec/nodeagent~uds" DefaultCanalFlexVolPluginDirectory = "/usr/libexec/kubernetes/kubelet-plugins/volume/exec/nodeagent~uds" KubeAPIArgAdmissionControlConfigFile = "admission-control-config-file" DefaultKubeAPIArgAdmissionControlConfigFileValue = "/etc/kubernetes/admission.yaml" EventRateLimitPluginName = "EventRateLimit" KubeAPIArgAuditLogPath = "audit-log-path" KubeAPIArgAuditLogMaxAge = "audit-log-maxage" KubeAPIArgAuditLogMaxBackup = "audit-log-maxbackup" KubeAPIArgAuditLogMaxSize = "audit-log-maxsize" KubeAPIArgAuditLogFormat = "audit-log-format" KubeAPIArgAuditPolicyFile = "audit-policy-file" DefaultKubeAPIArgAuditLogPathValue = "/var/log/kube-audit/audit-log.json" DefaultKubeAPIArgAuditPolicyFileValue = "/etc/kubernetes/audit-policy.yaml" )
      View Source
      
  
    const ( ContainerName = "file-deployer" ServiceName = "file-deploy" ConfigEnv = "FILE_DEPLOY" )
      View Source
      
  
    const ( NetworkPluginResourceName = "rke-network-plugin" PortCheckContainer = "rke-port-checker" EtcdPortListenContainer = "rke-etcd-port-listener" CPPortListenContainer = "rke-cp-port-listener" WorkerPortListenContainer = "rke-worker-port-listener" KubeAPIPort = "6443" EtcdPort1 = "2379" EtcdPort2 = "2380" ScedulerPort = "10251" ControllerPort = "10252" KubeletPort = "10250" KubeProxyPort = "10256" FlannelVxLanPort = 8472 FlannelVxLanNetworkIdentify = 1 ProtocolTCP = "TCP" ProtocolUDP = "UDP" NoNetworkPlugin = "none" FlannelNetworkPlugin = "flannel" FlannelIface = "flannel_iface" FlannelBackendType = "flannel_backend_type" // FlannelBackendPort must be 4789 if using VxLan mode in the cluster with Windows nodes FlannelBackendPort = "flannel_backend_port" // FlannelBackendVxLanNetworkIdentify should be greater than or equal to 4096 if using VxLan mode in the cluster with Windows nodes FlannelBackendVxLanNetworkIdentify = "flannel_backend_vni" CalicoNetworkPlugin = "calico" CalicoNodeLabel = "calico-node" CalicoControllerLabel = "calico-kube-controllers" CalicoCloudProvider = "calico_cloud_provider" CalicoFlexVolPluginDirectory = "calico_flex_volume_plugin_dir" CanalNetworkPlugin = "canal" CanalIface = "canal_iface" CanalFlannelBackendType = "canal_flannel_backend_type" // CanalFlannelBackendPort must be 4789 if using Flannel VxLan mode in the cluster with Windows nodes CanalFlannelBackendPort = "canal_flannel_backend_port" // CanalFlannelBackendVxLanNetworkIdentify should be greater than or equal to 4096 if using Flannel VxLan mode in the cluster with Windows nodes CanalFlannelBackendVxLanNetworkIdentify = "canal_flannel_backend_vni" CanalFlexVolPluginDirectory = "canal_flex_volume_plugin_dir" WeaveNetworkPlugin = "weave" WeaveNetworkAppName = "weave-net" // EtcdEndpoints is the server address for Etcd, used by calico EtcdEndpoints = "EtcdEndpoints" // APIRoot is the kubernetes API address APIRoot = "APIRoot" EtcdClientCert = "EtcdClientCert" EtcdClientKey = "EtcdClientKey" EtcdClientCA = "EtcdClientCA" EtcdClientCertPath = "EtcdClientCertPath" EtcdClientKeyPath = "EtcdClientKeyPath" EtcdClientCAPath = "EtcdClientCAPath" ClientCertPath = "ClientCertPath" ClientKeyPath = "ClientKeyPath" ClientCAPath = "ClientCAPath" KubeCfg = "KubeCfg" ClusterCIDR = "ClusterCIDR" Image = "Image" CNIImage = "CNIImage" NodeImage = "NodeImage" ControllersImage = "ControllersImage" CanalFlannelImg = "CanalFlannelImg" FlexVolImg = "FlexVolImg" WeaveLoopbackImage = "WeaveLoopbackImage" Calicoctl = "Calicoctl" FlannelInterface = "FlannelInterface" FlannelBackend = "FlannelBackend" CanalInterface = "CanalInterface" FlexVolPluginDir = "FlexVolPluginDir" WeavePassword = "WeavePassword" MTU = "MTU" RBACConfig = "RBACConfig" ClusterVersion = "ClusterVersion" NodeSelector = "NodeSelector" )
      View Source
      
  
    const ( ClusterCIDREnv = "RKE_CLUSTER_CIDR" ClusterServiceCIDREnv = "RKE_CLUSTER_SERVICE_CIDR" ClusterDNSServerEnv = "RKE_CLUSTER_DNS_SERVER" ClusterDomainEnv = "RKE_CLUSTER_DOMAIN" NodeAddressEnv = "RKE_NODE_ADDRESS" NodeInternalAddressEnv = "RKE_NODE_INTERNAL_ADDRESS" NodeNameOverrideEnv = "RKE_NODE_NAME_OVERRIDE" NetworkConfigurationEnv = "RKE_NETWORK_CONFIGURATION" EtcdPathPrefix = "/registry" CloudConfigSumEnv = "RKE_CLOUD_CONFIG_CHECKSUM" CloudProviderNameEnv = "RKE_CLOUD_PROVIDER_NAME" DefaultToolsEntrypoint = "/opt/rke-tools/entrypoint.sh" DefaultToolsEntrypointVersion = "0.1.13" LegacyToolsEntrypoint = "/opt/rke/entrypoint.sh" KubeletDockerConfigEnv = "RKE_KUBELET_DOCKER_CONFIG" KubeletDockerConfigFileEnv = "RKE_KUBELET_DOCKER_FILE" KubeletDockerConfigPath = "/var/lib/kubelet/config.json" AWSCloudProviderName = "aws" // MaxEtcdOldEnvVersion The versions are maxed out for minor versions because -rancher1 suffix will cause semver to think its older, example: v1.15.0 > v1.15.0-rancher1 MaxEtcdOldEnvVersion = "v3.2.99" MaxK8s115Version = "v1.15" EncryptionProviderConfigArgument = "encryption-provider-config" )
      View Source
      
  
    const (
	BackupPrepareError = "failed to prepare backup: restoring S3 backups with no cluster level S3 configuration is not supported"
)
    
      View Source
      
  
    const (
	EncryptionProviderFilePath = "/etc/kubernetes/ssl/encryption.yaml"
)
    
      View Source
      
  
const (
	EtcdPlaneNodesReplacedErr = "Etcd plane nodes are replaced. Stopping provisioning. Please restore your cluster from backup."
)
    Variables ¶
      View Source
      
  
    var CalicoNetworkLabels = []string{CalicoNodeLabel, CalicoControllerLabel}
    
      View Source
      
  
    var ControlPlanePortList = []string{ KubeAPIPort, }
      View Source
      
  
    var DNSProviders = []string{KubeDNSProvider, CoreDNSProvider}
    
      View Source
      
  
    var EtcdClientPortList = []string{ EtcdPort1, }
      View Source
      
  
    var EtcdPortList = []string{ EtcdPort1, EtcdPort2, }
      View Source
      
  
var WorkerPortList = []string{ KubeletPort, }
Functions ¶
func ApplyAuthzResources ¶ added in v0.1.2
func ApplyAuthzResources(ctx context.Context, rkeConfig v3.RancherKubernetesEngineConfig, flags ExternalFlags, dailersOptions hosts.DialersOptions) error
func BuildPortChecksFromPortList ¶ added in v0.1.2
func BuildRKEConfigNodePlan ¶ added in v0.1.2
func CheckEtcdHostsChanged ¶
func ConfigureCluster ¶ added in v0.1.2
func ConfigureCluster( ctx context.Context, rkeConfig v3.RancherKubernetesEngineConfig, crtBundle map[string]pki.CertificatePKI, flags ExternalFlags, dailersOptions hosts.DialersOptions, data map[string]interface{}, useKubectl bool) error
func GeneratePlan ¶ added in v0.1.2
func GetCertificateDirPath ¶ added in v0.2.0
func GetClusterCertsFromKubernetes ¶ added in v0.2.0
func GetClusterCertsFromNodes ¶ added in v0.2.0
func GetK8sVersion ¶
func GetK8sVersion(localConfigPath string, k8sWrapTransport transport.WrapperFunc) (string, error)
func GetLocalRKEConfig ¶
func GetLocalRKEConfig() *v3.RancherKubernetesEngineConfig
func GetLocalRKENodeConfig ¶
func GetLocalRKENodeConfig() *v3.RKEConfigNode
func GetServiceOptionData ¶ added in v0.3.0
func GetServiceOptionData(data map[string]interface{}) map[string]*v3.KubernetesServicesOptions
func GetStateFilePath ¶ added in v0.2.0
func IsLegacyKubeAPI ¶ added in v0.2.0
func IsLocalSnapshot ¶ added in v0.2.0
func ParseConfig ¶
func ParseConfig(clusterFile string) (*v3.RancherKubernetesEngineConfig, error)
func RebuildKubeconfig ¶ added in v0.2.0
func ReconcileCluster ¶
func ReconcileCluster(ctx context.Context, kubeCluster, currentCluster *Cluster, flags ExternalFlags, svcOptionData map[string]*v3.KubernetesServicesOptions) error
func ReconcileEncryptionProviderConfig ¶ added in v1.0.0
func RestartClusterPods ¶ added in v0.2.0
func RotateRKECertificates ¶ added in v0.1.18
func SaveFullStateToKubernetes ¶ added in v0.2.0
func SetUpAuthentication ¶
func ValidateHostCount ¶ added in v0.1.2
Types ¶
type Cluster ¶
type Cluster struct {
	AuthnStrategies                  map[string]bool
	ConfigPath                       string
	ConfigDir                        string
	CloudConfigFile                  string
	ControlPlaneHosts                []*hosts.Host
	Certificates                     map[string]pki.CertificatePKI
	CertificateDir                   string
	ClusterDomain                    string
	ClusterCIDR                      string
	ClusterDNSServer                 string
	DinD                             bool
	DockerDialerFactory              hosts.DialerFactory
	EtcdHosts                        []*hosts.Host
	EtcdReadyHosts                   []*hosts.Host
	ForceDeployCerts                 bool
	InactiveHosts                    []*hosts.Host
	K8sWrapTransport                 transport.WrapperFunc
	KubeClient                       *kubernetes.Clientset
	KubernetesServiceIP              net.IP
	LocalKubeConfigPath              string
	LocalConnDialerFactory           hosts.DialerFactory
	PrivateRegistriesMap             map[string]v3.PrivateRegistry
	StateFilePath                    string
	UpdateWorkersOnly                bool
	UseKubectlDeploy                 bool
	v3.RancherKubernetesEngineConfig `yaml:",inline"`
	WorkerHosts                      []*hosts.Host
	EncryptionConfig                 encryptionConfig
}
    func GetStateFromKubernetes ¶ added in v0.2.0
func GetStateFromNodes ¶ added in v0.2.0
func InitClusterObject ¶ added in v0.2.0
func InitClusterObject(ctx context.Context, rkeConfig *v3.RancherKubernetesEngineConfig, flags ExternalFlags, encryptConfig string) (*Cluster, error)
func (*Cluster) ApplySystemAddonExecuteJob ¶ added in v0.1.9
func (*Cluster) BuildEtcdProcess ¶ added in v0.1.2
func (*Cluster) BuildKubeAPIProcess ¶ added in v0.1.2
func (*Cluster) BuildKubeControllerProcess ¶ added in v0.1.2
func (*Cluster) BuildKubeProxyProcess ¶ added in v0.1.2
func (*Cluster) BuildKubeletProcess ¶ added in v0.1.2
func (*Cluster) BuildProxyProcess ¶ added in v0.1.2
func (*Cluster) BuildSchedulerProcess ¶ added in v0.1.2
func (*Cluster) BuildSidecarProcess ¶ added in v0.1.2
func (*Cluster) CheckClusterPorts ¶
func (*Cluster) CleanDeadLogs ¶ added in v0.1.3
func (*Cluster) CleanupFiles ¶ added in v0.2.0
func (*Cluster) CleanupNodes ¶ added in v0.2.0
func (*Cluster) DeployControlPlane ¶
func (*Cluster) DeployEncryptionProviderFile ¶ added in v1.0.0
func (*Cluster) DeployRestoreCerts ¶ added in v0.2.0
func (*Cluster) DeployWorkerPlane ¶
func (*Cluster) DisableSecretsEncryption ¶ added in v1.0.0
func (*Cluster) GetClusterState ¶
func (*Cluster) GetHostInfoMap ¶ added in v0.2.0
func (*Cluster) GetKubernetesServicesOptions ¶ added in v0.1.6
func (c *Cluster) GetKubernetesServicesOptions(osType string, data map[string]*v3.KubernetesServicesOptions) (v3.KubernetesServicesOptions, error)
func (*Cluster) InvertIndexHosts ¶
func (*Cluster) IsEncryptionCustomConfig ¶ added in v1.0.0
func (*Cluster) IsEncryptionEnabled ¶ added in v1.0.0
func (*Cluster) IsKubeletGenerateServingCertificateEnabled ¶ added in v1.0.0
func (*Cluster) PrePullK8sImages ¶ added in v0.1.1
func (*Cluster) PrepareBackup ¶ added in v0.2.0
func (*Cluster) ReconcileDesiredStateEncryptionConfig ¶ added in v1.0.0
func (c *Cluster) ReconcileDesiredStateEncryptionConfig(ctx context.Context, fullState *FullState) error
ReconcileDesiredStateEncryptionConfig We do the rotation outside of the cluster reconcile logic. When we are done, DesiredState needs to be updated to reflect the "new" configuration
func (*Cluster) RemoveEtcdSnapshot ¶ added in v0.2.3
func (*Cluster) RemoveOldNodes ¶ added in v0.2.0
func (*Cluster) RestoreEtcdSnapshot ¶ added in v0.1.7
func (*Cluster) RewriteSecrets ¶ added in v1.0.0
func (*Cluster) RotateEncryptionKey ¶ added in v1.0.0
func (*Cluster) SetUpHosts ¶
func (c *Cluster) SetUpHosts(ctx context.Context, flags ExternalFlags) error
func (*Cluster) SetupDialers ¶ added in v0.2.0
func (*Cluster) SnapshotEtcd ¶ added in v0.1.7
func (*Cluster) StoreAddonConfigMap ¶
func (*Cluster) SyncLabelsAndTaints ¶ added in v0.1.1
func (*Cluster) TunnelHosts ¶
func (c *Cluster) TunnelHosts(ctx context.Context, flags ExternalFlags) error
func (*Cluster) UpdateClusterCurrentState ¶ added in v0.2.0
type CoreDNSOptions ¶ added in v0.2.0
type ExternalFlags ¶ added in v0.2.0
type ExternalFlags struct {
	CertificateDir   string
	ClusterFilePath  string
	DinD             bool
	ConfigDir        string
	CustomCerts      bool
	DisablePortCheck bool
	GenerateCSR      bool
	Local            bool
	UpdateOnly       bool
}
    func GetExternalFlags ¶ added in v0.2.0
func GetExternalFlags(local, updateOnly, disablePortCheck bool, configDir, clusterFilePath string) ExternalFlags
type FullState ¶ added in v0.2.0
type FullState struct {
	DesiredState State `json:"desiredState,omitempty"`
	CurrentState State `json:"currentState,omitempty"`
}
    func ReadStateFile ¶ added in v0.2.0
func RebuildState ¶ added in v0.2.0
type KubeDNSOptions ¶ added in v0.2.0
type KubeDNSOptions struct {
	RBACConfig             string
	KubeDNSImage           string
	DNSMasqImage           string
	KubeDNSAutoScalerImage string
	KubeDNSSidecarImage    string
	ClusterDomain          string
	ClusterDNSServer       string
	ReverseCIDRs           []string
	UpstreamNameservers    []string
	StubDomains            map[string][]string
	NodeSelector           map[string]string
}
    type MetricsServerOptions ¶ added in v0.1.9
type NodelocalOptions ¶ added in v1.0.7
type State ¶ added in v0.2.0
type State struct {
	RancherKubernetesEngineConfig *v3.RancherKubernetesEngineConfig `json:"rkeConfig,omitempty"`
	CertificatesBundle            map[string]pki.CertificatePKI     `json:"certificatesBundle,omitempty"`
	EncryptionConfig              string                            `json:"encryptionConfig,omitempty"`
}
     Click to show internal directories. 
   Click to hide internal directories.