From 3b816ee660f2fc3e5ec73dd9f418c552dc77c7cb Mon Sep 17 00:00:00 2001 From: Aleksandr Didenko Date: Thu, 19 Jan 2017 11:56:14 +0100 Subject: [PATCH] Update playbooks to support new netchecker Netchecker is rewritten in Go lang with some new args instead of env variables. Also netchecker-server no longer requires kubectl container. Updating playbooks accordingly. --- docs/netcheck.md | 6 +++--- roles/download/defaults/main.yml | 14 +++----------- roles/kubernetes-apps/ansible/defaults/main.yml | 5 ----- .../ansible/templates/netchecker-agent-ds.yml | 7 +++++-- .../templates/netchecker-agent-hostnet-ds.yml | 7 +++++-- .../ansible/templates/netchecker-server-pod.yml | 15 ++++----------- roles/kubernetes-apps/meta/main.yaml | 4 ---- roles/kubernetes/node/meta/main.yml | 4 ---- 8 files changed, 20 insertions(+), 42 deletions(-) diff --git a/docs/netcheck.md b/docs/netcheck.md index 408b0fd8c..bee04cbb3 100644 --- a/docs/netcheck.md +++ b/docs/netcheck.md @@ -2,7 +2,7 @@ Network Checker Application =========================== With the ``deploy_netchecker`` var enabled (defaults to false), Kargo deploys a -Network Checker Application from the 3rd side `l23network/mcp-netchecker` docker +Network Checker Application from the 3rd side `l23network/k8s-netchecker` docker images. It consists of the server and agents trying to reach the server by usual for Kubernetes applications network connectivity meanings. Therefore, this automagically verifies a pod to pod connectivity via the cluster IP and checks @@ -25,8 +25,8 @@ There are related application specifc variables: netchecker_port: 31081 agent_report_interval: 15 netcheck_namespace: default -agent_img: "quay.io/l23network/mcp-netchecker-agent:v0.1" -server_img: "quay.io/l23network/mcp-netchecker-server:v0.1" +agent_img: "quay.io/l23network/k8s-netchecker-agent:v1.0" +server_img: "quay.io/l23network/k8s-netchecker-server:v1.0" ``` Note that the application verifies DNS resolve for FQDNs comprising only the diff --git a/roles/download/defaults/main.yml b/roles/download/defaults/main.yml index 7e06ac574..ef3038d83 100644 --- a/roles/download/defaults/main.yml +++ b/roles/download/defaults/main.yml @@ -59,11 +59,9 @@ hyperkube_image_repo: "quay.io/coreos/hyperkube" hyperkube_image_tag: "{{ kube_version }}_coreos.0" pod_infra_image_repo: "gcr.io/google_containers/pause-amd64" pod_infra_image_tag: "{{ pod_infra_version }}" -netcheck_tag: v0.1 -netcheck_kubectl_tag: v0.18.0-120-gaeb4ac55ad12b1-dirty -netcheck_agent_img_repo: "quay.io/l23network/mcp-netchecker-agent" -netcheck_server_img_repo: "quay.io/l23network/mcp-netchecker-server" -netcheck_kubectl_img_repo: "gcr.io/google_containers/kubectl" +netcheck_tag: "v1.0" +netcheck_agent_img_repo: "quay.io/l23network/k8s-netchecker-agent" +netcheck_server_img_repo: "quay.io/l23network/k8s-netchecker-server" weave_kube_image_repo: "weaveworks/weave-kube" weave_kube_image_tag: "{{ weave_version }}" weave_npc_image_repo: "weaveworks/weave-npc" @@ -96,12 +94,6 @@ downloads: tag: "{{ netcheck_tag }}" sha256: "{{ netcheck_agent_digest_checksum|default(None) }}" enabled: "{{ deploy_netchecker|bool }}" - netcheck_kubectl: - container: true - repo: "{{ netcheck_kubectl_img_repo }}" - tag: "{{ netcheck_kubectl_tag }}" - sha256: "{{ netcheck_kubectl_digest_checksum|default(None) }}" - enabled: "{{ deploy_netchecker|bool }}" etcd: version: "{{etcd_version}}" dest: "etcd/etcd-{{ etcd_version }}-linux-amd64.tar.gz" diff --git a/roles/kubernetes-apps/ansible/defaults/main.yml b/roles/kubernetes-apps/ansible/defaults/main.yml index 14deb333d..dcd54c9fe 100644 --- a/roles/kubernetes-apps/ansible/defaults/main.yml +++ b/roles/kubernetes-apps/ansible/defaults/main.yml @@ -31,7 +31,6 @@ agent_report_interval: 15 netcheck_namespace: default agent_img: "{{ netcheck_agent_img_repo }}:{{ netcheck_tag }}" server_img: "{{ netcheck_server_img_repo }}:{{ netcheck_tag }}" -kubectl_image: "{{ netcheck_kubectl_img_repo }}:{{ netcheck_kubectl_tag }}" # Limits for netchecker apps netchecker_agent_cpu_limit: 30m @@ -42,10 +41,6 @@ netchecker_server_cpu_limit: 100m netchecker_server_memory_limit: 256M netchecker_server_cpu_requests: 50m netchecker_server_memory_requests: 128M -netchecker_kubectl_cpu_limit: 30m -netchecker_kubectl_memory_limit: 128M -netchecker_kubectl_cpu_requests: 15m -netchecker_kubectl_memory_requests: 64M # SSL etcd_cert_dir: "/etc/ssl/etcd/ssl" diff --git a/roles/kubernetes-apps/ansible/templates/netchecker-agent-ds.yml b/roles/kubernetes-apps/ansible/templates/netchecker-agent-ds.yml index 41900ab33..139498733 100644 --- a/roles/kubernetes-apps/ansible/templates/netchecker-agent-ds.yml +++ b/roles/kubernetes-apps/ansible/templates/netchecker-agent-ds.yml @@ -20,8 +20,11 @@ spec: valueFrom: fieldRef: fieldPath: metadata.name - - name: REPORT_INTERVAL - value: '{{ agent_report_interval }}' + args: + - "-v=5" + - "-alsologtostderr=true" + - "-serverendpoint=netchecker-service:8081" + - "-reportinterval={{ agent_report_interval }}" imagePullPolicy: {{ k8s_image_pull_policy }} resources: limits: diff --git a/roles/kubernetes-apps/ansible/templates/netchecker-agent-hostnet-ds.yml b/roles/kubernetes-apps/ansible/templates/netchecker-agent-hostnet-ds.yml index 5a6a63f36..834321e87 100644 --- a/roles/kubernetes-apps/ansible/templates/netchecker-agent-hostnet-ds.yml +++ b/roles/kubernetes-apps/ansible/templates/netchecker-agent-hostnet-ds.yml @@ -21,8 +21,11 @@ spec: valueFrom: fieldRef: fieldPath: metadata.name - - name: REPORT_INTERVAL - value: '{{ agent_report_interval }}' + args: + - "-v=5" + - "-alsologtostderr=true" + - "-serverendpoint=netchecker-service:8081" + - "-reportinterval={{ agent_report_interval }}" imagePullPolicy: {{ k8s_image_pull_policy }} resources: limits: diff --git a/roles/kubernetes-apps/ansible/templates/netchecker-server-pod.yml b/roles/kubernetes-apps/ansible/templates/netchecker-server-pod.yml index c1d8ddb9f..06aea406a 100644 --- a/roles/kubernetes-apps/ansible/templates/netchecker-server-pod.yml +++ b/roles/kubernetes-apps/ansible/templates/netchecker-server-pod.yml @@ -21,15 +21,8 @@ spec: ports: - containerPort: 8081 hostPort: 8081 - - name: kubectl-proxy - image: "{{ kubectl_image }}" - imagePullPolicy: {{ k8s_image_pull_policy }} - resources: - limits: - cpu: {{ netchecker_kubectl_cpu_limit }} - memory: {{ netchecker_kubectl_memory_limit }} - requests: - cpu: {{ netchecker_kubectl_cpu_requests }} - memory: {{ netchecker_kubectl_memory_requests }} args: - - proxy + - "-v=5" + - "-logtostderr" + - "-kubeproxyinit" + - "-endpoint=0.0.0.0:8081" diff --git a/roles/kubernetes-apps/meta/main.yaml b/roles/kubernetes-apps/meta/main.yaml index 2ddb435de..e847f471e 100644 --- a/roles/kubernetes-apps/meta/main.yaml +++ b/roles/kubernetes-apps/meta/main.yaml @@ -12,9 +12,5 @@ dependencies: file: "{{ downloads.netcheck_agent }}" when: deploy_netchecker tags: [download, netchecker] - - role: download - file: "{{ downloads.netcheck_kubectl }}" - when: deploy_netchecker - tags: [download, netchecker] - {role: kubernetes-apps/ansible, tags: apps} - {role: kubernetes-apps/kpm, tags: [apps, kpm]} diff --git a/roles/kubernetes/node/meta/main.yml b/roles/kubernetes/node/meta/main.yml index 62720257d..2ef549c90 100644 --- a/roles/kubernetes/node/meta/main.yml +++ b/roles/kubernetes/node/meta/main.yml @@ -22,10 +22,6 @@ dependencies: file: "{{ downloads.netcheck_agent }}" when: deploy_netchecker tags: [download, netchecker] - - role: download - file: "{{ downloads.netcheck_kubectl }}" - when: deploy_netchecker - tags: [download, netchecker] - role: download file: "{{ downloads.kubednsmasq }}" tags: [download, dnsmasq]