aboutsummaryrefslogtreecommitdiffstats
path: root/kube2consul/bin
diff options
context:
space:
mode:
authorHuabingZhao <zhao.huabing@zte.com.cn>2017-08-11 09:16:22 +0000
committerHuabingZhao <zhao.huabing@zte.com.cn>2017-08-11 09:19:23 +0000
commit3736aafdb168d76483a42acb552098244ceee034 (patch)
treeddd22127094ba06bd1dd74c6f3b23b437eae4066 /kube2consul/bin
parent012e88c913f39706fa6ae1b79c1fe0924ac1d2df (diff)
Initial commit for registrator source codes
Change-Id: I0cdd285d6228f0a1b6a6b27787be09d2d7af3579 Issue-Id: OOM-61 Signed-off-by: HuabingZhao <zhao.huabing@zte.com.cn>
Diffstat (limited to 'kube2consul/bin')
-rw-r--r--kube2consul/bin/Dockerfile11
-rw-r--r--kube2consul/bin/blueprint/deploy.yml8
-rw-r--r--kube2consul/bin/blueprint/list_of_servicelet.list4
-rw-r--r--kube2consul/bin/blueprint/task.yml118
-rw-r--r--kube2consul/bin/blueprint/vars.yml14
-rw-r--r--kube2consul/bin/start.sh36
6 files changed, 191 insertions, 0 deletions
diff --git a/kube2consul/bin/Dockerfile b/kube2consul/bin/Dockerfile
new file mode 100644
index 0000000..278cac5
--- /dev/null
+++ b/kube2consul/bin/Dockerfile
@@ -0,0 +1,11 @@
+FROM alpine:3.3
+ENV CONSUL_VERSION 0.7.1
+ENV BASE /
+ADD consul-linux_amd64.tar.gz /
+RUN cd /usr/lib \
+ && ln -s /consul/libglib-2.0.so.0.4400.0 libglib-2.0.so.0 \
+ && ln -s /consul/libintl.so.8.1.3 libintl.so.8
+COPY kube2consul /bin/
+COPY start.sh /
+
+ENTRYPOINT exec /start.sh \ No newline at end of file
diff --git a/kube2consul/bin/blueprint/deploy.yml b/kube2consul/bin/blueprint/deploy.yml
new file mode 100644
index 0000000..cc61076
--- /dev/null
+++ b/kube2consul/bin/blueprint/deploy.yml
@@ -0,0 +1,8 @@
+---
+- remote_user: ubuntu
+ become: yes
+ become_method: sudo
+ vars_files:
+ - vars.yml
+ tasks:
+ - include: task.yml
diff --git a/kube2consul/bin/blueprint/list_of_servicelet.list b/kube2consul/bin/blueprint/list_of_servicelet.list
new file mode 100644
index 0000000..77a1d4f
--- /dev/null
+++ b/kube2consul/bin/blueprint/list_of_servicelet.list
@@ -0,0 +1,4 @@
+{
+ "servicelet_module":[
+ ]
+} \ No newline at end of file
diff --git a/kube2consul/bin/blueprint/task.yml b/kube2consul/bin/blueprint/task.yml
new file mode 100644
index 0000000..45cfcd9
--- /dev/null
+++ b/kube2consul/bin/blueprint/task.yml
@@ -0,0 +1,118 @@
+---
+- name: remove kube2consul container
+ docker:
+ name: kube2consul
+ image: "{{kube2consul_image}}"
+ state: absent
+
+- name: run kube2consul container
+ docker:
+ name: kube2consul
+ image: "{{kube2consul_image}}"
+ log_driver: syslog
+ net: host
+ restart_policy: always
+ volumes:
+ - "{{ kube2consul_data_host }}:{{ kube2consul_data_container }}"
+ env:
+ KUBE_MASTER_IP: "{{kube_master_ip}}"
+ PDM_CONTROLLER_IP: "{{pdm_controller_ip}}"
+ JOIN_IP: "{{consul_join_ip}}"
+ when:
+ - all_in_one == 'no'
+ - master_in_controller == 'no'
+ - cluster_type == 'k8s'
+
+- name: run kube2consul container
+ docker:
+ name: kube2consul
+ image: "{{kube2consul_image}}"
+ net: host
+ restart_policy: always
+ privileged: true
+ volumes:
+ - "{{ kube2consul_data_host }}:{{ kube2consul_data_container }}"
+ - "/root/.kube/config:/root/.kube/config:ro"
+ env:
+ KUBE_MASTER_IP: "{{kube_master_ip}}"
+ PDM_CONTROLLER_IP: "{{pdm_controller_ip}}"
+ JOIN_IP: "{{consul_join_ip}}"
+ CLUSTER_TYPE: "openshift"
+ when:
+ - all_in_one == 'no'
+ - master_in_controller == 'no'
+ - cluster_type == 'openshift'
+
+- name: run kube2consul container
+ docker:
+ name: kube2consul
+ image: "{{kube2consul_image}}"
+ log_driver: syslog
+ restart_policy: always
+ volumes:
+ - "{{ kube2consul_data_host }}:{{ kube2consul_data_container }}"
+ env:
+ KUBE_MASTER_IP: "{{kube_master_ip}}"
+ PDM_CONTROLLER_IP: "{{pdm_controller_ip}}"
+ JOIN_IP: "{{consul_join_ip}}"
+ ALL_IN_ONE: "yes"
+ when:
+ - all_in_one == 'yes'
+ - cluster_type == 'k8s'
+
+- name: run kube2consul container
+ docker:
+ name: kube2consul
+ image: "{{kube2consul_image}}"
+ log_driver: syslog
+ restart_policy: always
+ privileged: true
+ volumes:
+ - "{{ kube2consul_data_host }}:{{ kube2consul_data_container }}"
+ - "/root/.kube/config:/root/.kube/config:ro"
+ env:
+ KUBE_MASTER_IP: "{{kube_master_ip}}"
+ PDM_CONTROLLER_IP: "{{pdm_controller_ip}}"
+ JOIN_IP: "{{consul_join_ip}}"
+ ALL_IN_ONE: "yes"
+ CLUSTER_TYPE: "openshift"
+ when:
+ - all_in_one == 'yes'
+ - cluster_type == 'openshift'
+
+- name: run kube2consul container
+ docker:
+ name: kube2consul
+ image: "{{kube2consul_image}}"
+ log_driver: syslog
+ restart_policy: always
+ volumes:
+ - "{{ kube2consul_data_host }}:{{ kube2consul_data_container }}"
+ env:
+ KUBE_MASTER_IP: "{{kube_master_ip}}"
+ PDM_CONTROLLER_IP: "{{pdm_controller_ip}}"
+ JOIN_IP: "{{consul_join_ip}}"
+ ALL_IN_ONE: "yes"
+ when:
+ - master_in_controller == 'yes'
+ - cluster_type == 'k8s'
+
+- name: run kube2consul container
+ docker:
+ name: kube2consul
+ image: "{{kube2consul_image}}"
+ log_driver: syslog
+ restart_policy: always
+ privileged: true
+ volumes:
+ - "{{ kube2consul_data_host }}:{{ kube2consul_data_container }}"
+ - "/root/.kube/config:/root/.kube/config:ro"
+ env:
+ KUBE_MASTER_IP: "{{kube_master_ip}}"
+ PDM_CONTROLLER_IP: "{{pdm_controller_ip}}"
+ JOIN_IP: "{{consul_join_ip}}"
+ ALL_IN_ONE: "yes"
+ CLUSTER_TYPE: "openshift"
+ when:
+ - master_in_controller == 'yes'
+ - cluster_type == 'openshift' \ No newline at end of file
diff --git a/kube2consul/bin/blueprint/vars.yml b/kube2consul/bin/blueprint/vars.yml
new file mode 100644
index 0000000..971438d
--- /dev/null
+++ b/kube2consul/bin/blueprint/vars.yml
@@ -0,0 +1,14 @@
+---
+- api_network_ip:
+- man_network_ip:
+- registry_url:
+- cp_vertype:
+- cp_type:
+- cp_name:
+- cp_version:
+- kube2consul_image: "{{registry_url}}/{{cp_type}}/{{cp_name}}:{{cp_version}}"
+- kube_master_ip: "{{ hostvars[inventory_hostname]['api_network_ip'] }}"
+- pdm_controller_ip: "{{vp_ip}}"
+- consul_join_ip: "{{zenap_msb_consul_server_ip}}"
+- kube2consul_data_host: "/home/zenap-msb/consul_data/kube2consul_{{kube_master_ip}}"
+- kube2consul_data_container: "/consul-works/data-dir" \ No newline at end of file
diff --git a/kube2consul/bin/start.sh b/kube2consul/bin/start.sh
new file mode 100644
index 0000000..033c50b
--- /dev/null
+++ b/kube2consul/bin/start.sh
@@ -0,0 +1,36 @@
+#!/bin/sh
+if [ -z "${KUBE_MASTER_IP}" ]; then
+ echo "kube master node ip is required."
+ exit 1
+fi
+
+if [ -n "${JOIN_IP}" ]; then
+ echo "### Starting consul client"
+ if [ -z "${ALL_IN_ONE}" ]; then
+ /consul/consul agent -data-dir /consul-works/data-dir -node kube2consul_${KUBE_MASTER_IP} -bind ${KUBE_MASTER_IP} -client 0.0.0.0 -retry-join ${JOIN_IP} -retry-interval 5s &
+ else
+ /consul/consul agent -data-dir /consul-works/data-dir -node kube2consul_${KUBE_MASTER_IP} -bind 0.0.0.0 -client 0.0.0.0 -retry-join ${JOIN_IP} -retry-interval 5s &
+ fi
+fi
+
+if [ -z "${RUN_MODE}" ]; then
+ echo "non-HA scenario."
+else
+ echo "\n\n### Starting consul agent"
+ cd ./consul
+ ./entry.sh &
+fi
+
+kube_url="http://${KUBE_MASTER_IP}:8080"
+
+if [ "${CLUSTER_TYPE}" == "openshift" ]; then
+ kube_url="https://${KUBE_MASTER_IP}:8443"
+fi
+
+echo "\n\n### Starting kube2consul"
+if [ -z "${PDM_CONTROLLER_IP}" ]; then
+ /bin/kube2consul --kube_master_url ${kube_url}
+else
+ echo "in Paas mode."
+ /bin/kube2consul --kube_master_url ${kube_url} --pdm_controller_url http://${PDM_CONTROLLER_IP}:9527
+fi \ No newline at end of file