1
0
mirror of https://github.com/rancher/rke.git synced 2025-06-01 19:56:28 +00:00

Use default images from types

This commit is contained in:
moelsayed 2018-02-26 18:27:32 +02:00
parent c941eab5ee
commit eddb9ec56b
3 changed files with 40 additions and 58 deletions

View File

@ -6,6 +6,7 @@ import (
ref "github.com/docker/distribution/reference" ref "github.com/docker/distribution/reference"
"github.com/rancher/rke/log" "github.com/rancher/rke/log"
"github.com/rancher/rke/services" "github.com/rancher/rke/services"
"github.com/rancher/types/apis/management.cattle.io/v3"
) )
const ( const (
@ -15,6 +16,8 @@ const (
DefaultClusterDomain = "cluster.local" DefaultClusterDomain = "cluster.local"
DefaultClusterSSHKeyPath = "~/.ssh/id_rsa" DefaultClusterSSHKeyPath = "~/.ssh/id_rsa"
DefaultK8sVersion = "v1.8.7-rancher1-1"
DefaultSSHPort = "22" DefaultSSHPort = "22"
DefaultDockerSockPath = "/var/run/docker.sock" DefaultDockerSockPath = "/var/run/docker.sock"
@ -24,37 +27,7 @@ const (
DefaultNetworkPlugin = "flannel" DefaultNetworkPlugin = "flannel"
DefaultNetworkCloudProvider = "none" DefaultNetworkCloudProvider = "none"
DefaultInfraContainerImage = "rancher/pause-amd64:3.0" DefaultIngressController = "nginx"
DefaultAplineImage = "alpine:latest"
DefaultNginxProxyImage = "rancher/rke-nginx-proxy:v0.1.1"
DefaultCertDownloaderImage = "rancher/rke-cert-deployer:v0.1.1"
DefaultKubernetesServicesSidecarImage = "rancher/rke-service-sidekick:v0.1.0"
DefaultIngressController = "nginx"
DefaultIngressImage = "rancher/nginx-ingress-controller:0.10.2"
DefaultIngressBackendImage = "rancher/nginx-ingress-controller-defaultbackend:1.4"
DefaultEtcdImage = "rancher/etcd:v3.0.17"
DefaultK8sImage = "rancher/k8s:v1.8.7-rancher1-1"
DefaultFlannelImage = "rancher/coreos-flannel:v0.9.1"
DefaultFlannelCNIImage = "rancher/coreos-flannel-cni:v0.2.0"
DefaultCalicoNodeImage = "rancher/calico-node:v3.0.2"
DefaultCalicoCNIImage = "rancher/calico-cni:v2.0.0"
DefaultCalicoctlImage = "rancher/calico-ctl:v2.0.0"
DefaultWeaveImage = "weaveworks/weave-kube:2.1.2"
DefaultWeaveCNIImage = "weaveworks/weave-npc:2.1.2"
DefaultCanalNodeImage = "rancher/calico-node:v2.6.2"
DefaultCanalCNIImage = "rancher/calico-cni:v1.11.0"
DefaultCanalFlannelImage = "rancher/coreos-flannel:v0.9.1"
DefaultKubeDNSImage = "rancher/k8s-dns-kube-dns-amd64:1.14.5"
DefaultDNSmasqImage = "rancher/k8s-dns-dnsmasq-nanny-amd64:1.14.5"
DefaultKubeDNSSidecarImage = "rancher/k8s-dns-sidecar-amd64:1.14.5"
DefaultKubeDNSAutoScalerImage = "rancher/cluster-proportional-autoscaler-amd64:1.0.0"
) )
func setDefaultIfEmptyMapValue(configMap map[string]string, key string, value string) { func setDefaultIfEmptyMapValue(configMap map[string]string, key string, value string) {
@ -142,32 +115,37 @@ func (c *Cluster) setClusterServicesDefaults() {
} }
func (c *Cluster) setClusterImageDefaults() { func (c *Cluster) setClusterImageDefaults() {
imageDefaults, ok := v3.K8sVersionToRKESystemImages[c.Version]
if !ok {
imageDefaults = v3.K8sVersionToRKESystemImages[DefaultK8sVersion]
}
systemImagesDefaultsMap := map[*string]string{ systemImagesDefaultsMap := map[*string]string{
&c.SystemImages.Alpine: DefaultAplineImage, &c.SystemImages.Alpine: imageDefaults.Alpine,
&c.SystemImages.NginxProxy: DefaultNginxProxyImage, &c.SystemImages.NginxProxy: imageDefaults.NginxProxy,
&c.SystemImages.CertDownloader: DefaultCertDownloaderImage, &c.SystemImages.CertDownloader: imageDefaults.CertDownloader,
&c.SystemImages.KubeDNS: DefaultKubeDNSImage, &c.SystemImages.KubeDNS: imageDefaults.KubeDNS,
&c.SystemImages.KubeDNSSidecar: DefaultKubeDNSSidecarImage, &c.SystemImages.KubeDNSSidecar: imageDefaults.KubeDNSSidecar,
&c.SystemImages.DNSmasq: DefaultDNSmasqImage, &c.SystemImages.DNSmasq: imageDefaults.DNSmasq,
&c.SystemImages.KubeDNSAutoscaler: DefaultKubeDNSAutoScalerImage, &c.SystemImages.KubeDNSAutoscaler: imageDefaults.KubeDNSAutoscaler,
&c.SystemImages.KubernetesServicesSidecar: DefaultKubernetesServicesSidecarImage, &c.SystemImages.KubernetesServicesSidecar: imageDefaults.KubernetesServicesSidecar,
&c.SystemImages.Etcd: DefaultEtcdImage, &c.SystemImages.Etcd: imageDefaults.Etcd,
&c.SystemImages.Kubernetes: DefaultK8sImage, &c.SystemImages.Kubernetes: imageDefaults.Kubernetes,
&c.SystemImages.PodInfraContainer: DefaultInfraContainerImage, &c.SystemImages.PodInfraContainer: imageDefaults.PodInfraContainer,
&c.SystemImages.Flannel: DefaultFlannelImage, &c.SystemImages.Flannel: imageDefaults.Flannel,
&c.SystemImages.FlannelCNI: DefaultFlannelCNIImage, &c.SystemImages.FlannelCNI: imageDefaults.FlannelCNI,
&c.SystemImages.CalicoNode: DefaultCalicoNodeImage, &c.SystemImages.CalicoNode: imageDefaults.CalicoNode,
&c.SystemImages.CalicoCNI: DefaultCalicoCNIImage, &c.SystemImages.CalicoCNI: imageDefaults.CalicoCNI,
&c.SystemImages.CalicoCtl: DefaultCalicoctlImage, &c.SystemImages.CalicoCtl: imageDefaults.CalicoCtl,
&c.SystemImages.CanalNode: DefaultCanalNodeImage, &c.SystemImages.CanalNode: imageDefaults.CanalNode,
&c.SystemImages.CanalCNI: DefaultCanalCNIImage, &c.SystemImages.CanalCNI: imageDefaults.CanalCNI,
&c.SystemImages.CanalFlannel: DefaultCanalFlannelImage, &c.SystemImages.CanalFlannel: imageDefaults.CanalFlannel,
&c.SystemImages.WeaveNode: DefaultWeaveImage, &c.SystemImages.WeaveNode: imageDefaults.WeaveNode,
&c.SystemImages.WeaveCNI: DefaultWeaveCNIImage, &c.SystemImages.WeaveCNI: imageDefaults.WeaveCNI,
&c.SystemImages.Ingress: DefaultIngressImage, &c.SystemImages.Ingress: imageDefaults.Ingress,
&c.SystemImages.IngressBackend: DefaultIngressBackendImage, &c.SystemImages.IngressBackend: imageDefaults.IngressBackend,
} }
for k, v := range systemImagesDefaultsMap { for k, v := range systemImagesDefaultsMap {
setDefaultIfEmpty(k, v) setDefaultIfEmpty(k, v)
} }

View File

@ -7,10 +7,12 @@ import (
func GetLocalRKEConfig() *v3.RancherKubernetesEngineConfig { func GetLocalRKEConfig() *v3.RancherKubernetesEngineConfig {
rkeLocalNode := GetLocalRKENodeConfig() rkeLocalNode := GetLocalRKENodeConfig()
imageDefaults := v3.K8sVersionToRKESystemImages[DefaultK8sVersion]
rkeServices := v3.RKEConfigServices{ rkeServices := v3.RKEConfigServices{
Kubelet: v3.KubeletService{ Kubelet: v3.KubeletService{
BaseService: v3.BaseService{ BaseService: v3.BaseService{
Image: DefaultK8sImage, Image: imageDefaults.Kubernetes,
ExtraArgs: map[string]string{"fail-swap-on": "false"}, ExtraArgs: map[string]string{"fail-swap-on": "false"},
}, },
}, },

View File

@ -245,13 +245,15 @@ func getServiceConfig(reader *bufio.Reader) (*v3.RKEConfigServices, error) {
servicesConfig.Kubelet = v3.KubeletService{} servicesConfig.Kubelet = v3.KubeletService{}
servicesConfig.Kubeproxy = v3.KubeproxyService{} servicesConfig.Kubeproxy = v3.KubeproxyService{}
etcdImage, err := getConfig(reader, "Etcd Docker Image", cluster.DefaultEtcdImage) imageDefaults := v3.K8sVersionToRKESystemImages[cluster.DefaultK8sVersion]
etcdImage, err := getConfig(reader, "Etcd Docker Image", imageDefaults.Etcd)
if err != nil { if err != nil {
return nil, err return nil, err
} }
servicesConfig.Etcd.Image = etcdImage servicesConfig.Etcd.Image = etcdImage
kubeImage, err := getConfig(reader, "Kubernetes Docker image", cluster.DefaultK8sImage) kubeImage, err := getConfig(reader, "Kubernetes Docker image", imageDefaults.Kubernetes)
if err != nil { if err != nil {
return nil, err return nil, err
} }
@ -296,7 +298,7 @@ func getServiceConfig(reader *bufio.Reader) (*v3.RKEConfigServices, error) {
} }
servicesConfig.Kubelet.ClusterDNSServer = clusterDNSServiceIP servicesConfig.Kubelet.ClusterDNSServer = clusterDNSServiceIP
infraPodImage, err := getConfig(reader, "Infra Container image", cluster.DefaultInfraContainerImage) infraPodImage, err := getConfig(reader, "Infra Container image", imageDefaults.PodInfraContainer)
if err != nil { if err != nil {
return nil, err return nil, err
} }