From 68f9aafe0f7ca0f7e7b12937d3d45c5a18b43c70 Mon Sep 17 00:00:00 2001 From: CJ Cullen Date: Thu, 23 Apr 2015 16:42:10 -0700 Subject: [PATCH] kube2sky using kubeconfig secret: take 2. Point system secrets at https://kubernetes. Override in clients that can't use DNS. --- default | 14 -------------- init.sls | 14 -------------- initd | 3 --- kube-addons.service | 1 - kube-addons.sh | 9 +++------ 5 files changed, 3 insertions(+), 38 deletions(-) delete mode 100644 default diff --git a/default b/default deleted file mode 100644 index 65bc90a4af..0000000000 --- a/default +++ /dev/null @@ -1,14 +0,0 @@ -#TODO(erictune): once we make DNS a hard requirement for clusters, then this can be removed, -# and APISERVER_URL="https://kubernetes:443" -{% if grains.api_servers is defined -%} - {% set api_server = "https://" + grains.api_servers + ":6443" -%} -{% elif grains.apiservers is defined -%} # TODO(remove after 0.16.0): Deprecated form - {% set api_server = "https://" + grains.apiservers + ":6443" -%} -{% elif grains['roles'][0] == 'kubernetes-master' -%} - {% set master_ipv4 = salt['grains.get']('fqdn_ip4')[0] -%} - {% set api_server = "https://" + master_ipv4 + ":6443" -%} -{% else -%} - {% set ips = salt['mine.get']('roles:kubernetes-master', 'network.ip_addrs', 'grain').values() -%} - {% set api_server = "https://" + ips[0][0] + ":6443" -%} -{% endif -%} -export APISERVER_URL={{ api_server }} diff --git a/init.sls b/init.sls index 0896fa7767..9ff1b7530d 100644 --- a/init.sls +++ b/init.sls @@ -40,20 +40,6 @@ - file_mode: 644 {% endif %} -{% if grains['os_family'] == 'RedHat' %} -{% set environment_file = '/etc/sysconfig/kube-addons' %} -{% else %} -{% set environment_file = '/etc/default/kube-addons' %} -{% endif %} - -{{ environment_file }}: - file.managed: - - source: salt://kube-addons/default - - template: jinja - - user: root - - group: root - - mode: 644 - /etc/kubernetes/kube-addons.sh: file.managed: - source: salt://kube-addons/kube-addons.sh diff --git a/initd b/initd index 2c60e5bd29..6b06e8c7cd 100644 --- a/initd +++ b/initd @@ -21,9 +21,6 @@ PIDFILE=/var/run/$NAME.pid SCRIPTNAME=/etc/init.d/$NAME KUBE_ADDONS_SH=/etc/kubernetes/kube-addons.sh -# Read configuration variable file if it is present -[ -r /etc/default/$NAME ] && . /etc/default/$NAME - # Define LSB log_* functions. # Depend on lsb-base (>= 3.2-14) to ensure that this file is present # and status_of_proc is working. diff --git a/kube-addons.service b/kube-addons.service index f9be6db316..086394e857 100644 --- a/kube-addons.service +++ b/kube-addons.service @@ -3,7 +3,6 @@ Description=Kubernetes Addon Object Manager Documentation=https://github.com/GoogleCloudPlatform/kubernetes [Service] -EnvironmentFile=/etc/sysconfig/kube-addons ExecStart=/etc/kubernetes/kube-addons.sh [Install] diff --git a/kube-addons.sh b/kube-addons.sh index 12cd629f64..6b996c3c06 100644 --- a/kube-addons.sh +++ b/kube-addons.sh @@ -19,11 +19,6 @@ # managed result is of that. Start everything below that directory. KUBECTL=/usr/local/bin/kubectl -if [ -z "$APISERVER_URL" ] ; then - echo "Must set APISERVER_URL" - exit 1 -fi - function create-kubeconfig-secret() { local -r token=$1 local -r username=$2 @@ -32,6 +27,8 @@ function create-kubeconfig-secret() { # Make a kubeconfig file with the token. # TODO(etune): put apiserver certs into secret too, and reference from authfile, # so that "Insecure" is not needed. + # Point the kubeconfig file at https://kubernetes:443. Pods/components that + # do not have DNS available will have to override the server. read -r -d '' kubeconfig <