Documentation ¶
Index ¶
Constants ¶
View Source
const ( AssetPathSecrets = "tls" AssetPathCAKey = "tls/ca.key" AssetPathCACert = "tls/ca.crt" AssetPathAPIServerKey = "tls/apiserver.key" AssetPathAPIServerCert = "tls/apiserver.crt" AssetPathEtcdClientCA = "tls/etcd-client-ca.crt" AssetPathEtcdClientCert = "tls/etcd-client.crt" AssetPathEtcdClientKey = "tls/etcd-client.key" AssetPathEtcdServerCA = "tls/etcd/server-ca.crt" AssetPathEtcdServerCert = "tls/etcd/server.crt" AssetPathEtcdServerKey = "tls/etcd/server.key" AssetPathEtcdPeerCA = "tls/etcd/peer-ca.crt" AssetPathEtcdPeerCert = "tls/etcd/peer.crt" AssetPathEtcdPeerKey = "tls/etcd/peer.key" AssetPathServiceAccountPrivKey = "tls/service-account.key" AssetPathServiceAccountPubKey = "tls/service-account.pub" AssetPathKubeletKey = "tls/kubelet.key" AssetPathKubeletCert = "tls/kubelet.crt" AssetPathKubeConfig = "auth/kubeconfig" AssetPathManifests = "manifests" AssetPathKubelet = "manifests/kubelet.yaml" AssetPathProxy = "manifests/kube-proxy.yaml" AssetPathKubeFlannel = "manifests/kube-flannel.yaml" AssetPathKubeFlannelCfg = "manifests/kube-flannel-cfg.yaml" AssetPathKubeCalico = "manifests/kube-calico.yaml" AssetPathKubeCalicoCfg = "manifests/kube-calico-cfg.yaml" AssetPathKubeCalcioSA = "manifests/kube-calico-sa.yaml" AssetPathKubeCalcioRole = "manifests/kube-calico-role.yaml" AssetPathKubeCalcioRoleBinding = "manifests/kube-calico-role-binding.yaml" AssetPathAPIServerSecret = "manifests/kube-apiserver-secret.yaml" AssetPathAPIServer = "manifests/kube-apiserver.yaml" AssetPathControllerManager = "manifests/kube-controller-manager.yaml" AssetPathControllerManagerSecret = "manifests/kube-controller-manager-secret.yaml" AssetPathControllerManagerDisruption = "manifests/kube-controller-manager-disruption.yaml" AssetPathScheduler = "manifests/kube-scheduler.yaml" AssetPathSchedulerDisruption = "manifests/kube-scheduler-disruption.yaml" AssetPathKubeDNSDeployment = "manifests/kube-dns-deployment.yaml" AssetPathKubeDNSSvc = "manifests/kube-dns-svc.yaml" AssetPathSystemNamespace = "manifests/kube-system-ns.yaml" AssetPathCheckpointer = "manifests/pod-checkpointer.yaml" AssetPathEtcdOperator = "manifests/etcd-operator.yaml" AssetPathEtcdSvc = "manifests/etcd-service.yaml" AssetPathEtcdClientSecret = "manifests/etcd-client-tls.yaml" AssetPathEtcdPeerSecret = "manifests/etcd-peer-tls.yaml" AssetPathEtcdServerSecret = "manifests/etcd-server-tls.yaml" AssetPathKenc = "manifests/kube-etcd-network-checkpointer.yaml" AssetPathKubeSystemSARoleBinding = "manifests/kube-system-rbac-role-binding.yaml" AssetPathBootstrapManifests = "bootstrap-manifests" AssetPathBootstrapAPIServer = "bootstrap-manifests/bootstrap-apiserver.yaml" AssetPathBootstrapControllerManager = "bootstrap-manifests/bootstrap-controller-manager.yaml" AssetPathBootstrapScheduler = "bootstrap-manifests/bootstrap-scheduler.yaml" AssetPathBootstrapEtcd = "bootstrap-manifests/bootstrap-etcd.yaml" AssetPathBootstrapEtcdService = "etcd/bootstrap-etcd-service.json" AssetPathMigrateEtcdCluster = "etcd/migrate-etcd-cluster.json" )
View Source
const ( // The name of the k8s service that selects self-hosted etcd pods EtcdServiceName = "etcd-service" SecretEtcdPeer = "etcd-peer-tls" SecretEtcdServer = "etcd-server-tls" SecretEtcdClient = "etcd-client-tls" )
Variables ¶
View Source
var (
BootstrapSecretsDir = "/etc/kubernetes/bootstrap-secrets" // Overridden for testing.
)
View Source
var DefaultImages = ImageVersions{
Etcd: "quay.io/coreos/etcd:v3.1.8",
EtcdOperator: "quay.io/coreos/etcd-operator:v0.4.2",
Flannel: "quay.io/coreos/flannel:v0.8.0-amd64",
FlannelCNI: "quay.io/coreos/flannel-cni:0.1.0",
Calico: "quay.io/calico/node:v1.3.0",
CalicoCNI: "quay.io/calico/cni:v1.9.1-4-g23fcd5f",
Hyperkube: "quay.io/coreos/hyperkube:v1.7.1_coreos.0",
Kenc: "quay.io/coreos/kenc:0.0.2",
KubeDNS: "gcr.io/google_containers/k8s-dns-kube-dns-amd64:1.14.4",
KubeDNSMasq: "gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64:1.14.4",
KubeDNSSidecar: "gcr.io/google_containers/k8s-dns-sidecar-amd64:1.14.4",
PodCheckpointer: "quay.io/coreos/pod-checkpointer:4e7a7dab10bc4d895b66c21656291c6e0b017248",
}
DefaultImages are the defualt images bootkube components use.
Functions ¶
This section is empty.
Types ¶
type Asset ¶
func MustCreateAssetFromTemplate ¶ added in v0.4.4
type Assets ¶
type Assets []Asset
func NewDefaultAssets ¶
NewDefaultAssets returns a list of default assets, optionally configured via a user provided AssetConfig. Default assets include TLS assets (certs, keys and secrets), and k8s component manifests.
func (Assets) WriteFiles ¶
type Config ¶
type Config struct { EtcdCACert *x509.Certificate EtcdClientCert *x509.Certificate EtcdClientKey *rsa.PrivateKey EtcdServers []*url.URL EtcdUseTLS bool APIServers []*url.URL CACert *x509.Certificate CAPrivKey *rsa.PrivateKey AltNames *tlsutil.AltNames PodCIDR *net.IPNet ServiceCIDR *net.IPNet APIServiceIP net.IP BootEtcdServiceIP net.IP DNSServiceIP net.IP EtcdServiceIP net.IP EtcdServiceName string SelfHostKubelet bool SelfHostedEtcd bool CalicoNetworkPolicy bool CloudProvider string BootstrapSecretsSubdir string Images ImageVersions }
AssetConfig holds all configuration needed when generating the default set of assets.
type ImageVersions ¶ added in v0.4.3
type ImageVersions struct { Etcd string EtcdOperator string Flannel string FlannelCNI string Calico string CalicoCNI string Hyperkube string Kenc string KubeDNS string KubeDNSMasq string KubeDNSSidecar string PodCheckpointer string }
ImageVersions holds all the images (and their versions) that are rendered into the templates.
Click to show internal directories.
Click to hide internal directories.