summaryrefslogtreecommitdiffstats
path: root/roles/openshift_node_bootstrap_configmap
diff options
context:
space:
mode:
Diffstat (limited to 'roles/openshift_node_bootstrap_configmap')
-rw-r--r--roles/openshift_node_bootstrap_configmap/defaults/main.yml15
-rw-r--r--roles/openshift_node_bootstrap_configmap/meta/main.yml4
-rw-r--r--roles/openshift_node_bootstrap_configmap/tasks/create_config.yml32
-rw-r--r--roles/openshift_node_bootstrap_configmap/tasks/standard.yml12
-rw-r--r--roles/openshift_node_bootstrap_configmap/templates/node-config.yaml.j253
5 files changed, 116 insertions, 0 deletions
diff --git a/roles/openshift_node_bootstrap_configmap/defaults/main.yml b/roles/openshift_node_bootstrap_configmap/defaults/main.yml
new file mode 100644
index 000000000..02c872646
--- /dev/null
+++ b/roles/openshift_node_bootstrap_configmap/defaults/main.yml
@@ -0,0 +1,15 @@
+---
+openshift_node_bootstrap_configmap_custom_labels: []
+openshift_node_bootstrap_configmap_edits: []
+openshift_node_bootstrap_configmap_name: node-config-compute
+openshift_node_bootstrap_configmap_namespace: openshift-node
+openshift_node_bootstrap_configmap_default_labels:
+- type=compute
+
+openshift_imageconfig_format: "{{ openshift.node.registry_url if openshift is defined and 'node' in openshift else oreg_url }}"
+openshift_node_bootstrap_configmap_cloud_provider: "{{ openshift_cloudprovider_kind | default('aws') }}"
+openshift_node_bootstrap_configmap_network_plugin_default: "{{ os_sdn_network_plugin_name | default('redhat/openshift-ovs-subnet') }}"
+openshift_node_bootstrap_configmap_network_plugin: "{{ openshift_node_bootstrap_configmap_network_plugin_default }}"
+openshift_node_bootstrap_configmap_node_data_dir_default: "{{ openshift_data_dir | default('/var/lib/origin') }}"
+openshift_node_bootstrap_configmap_node_data_dir: "{{ openshift_node_bootstrap_configmap_node_data_dir_default }}"
+openshift_node_bootstrap_configmap_network_mtu: "{{ openshift_node_sdn_mtu | default(8951) }}"
diff --git a/roles/openshift_node_bootstrap_configmap/meta/main.yml b/roles/openshift_node_bootstrap_configmap/meta/main.yml
new file mode 100644
index 000000000..14c1dd498
--- /dev/null
+++ b/roles/openshift_node_bootstrap_configmap/meta/main.yml
@@ -0,0 +1,4 @@
+---
+dependencies:
+- role: lib_openshift
+- role: lib_utils
diff --git a/roles/openshift_node_bootstrap_configmap/tasks/create_config.yml b/roles/openshift_node_bootstrap_configmap/tasks/create_config.yml
new file mode 100644
index 000000000..05080daa4
--- /dev/null
+++ b/roles/openshift_node_bootstrap_configmap/tasks/create_config.yml
@@ -0,0 +1,32 @@
+---
+- name: create a temp dir for this work
+ command: mktemp -d /tmp/openshift_node_config-XXXXXX
+ register: mktempout
+ run_once: true
+
+- name: create node config template
+ template:
+ src: node-config.yaml.j2
+ dest: "{{ mktempout.stdout }}/node-config.yaml"
+
+- name: "specialize the generated configs for {{ openshift_node_bootstrap_configmap_name }}"
+ yedit:
+ content:
+ src: "{{ mktempout.stdout }}/node-config.yaml"
+ edits: "{{ openshift_node_bootstrap_configmap_edits }}"
+ when: openshift_node_bootstrap_configmap_edits|length > 0
+ run_once: true
+
+- name: create node-config.yaml configmap
+ oc_configmap:
+ name: "{{ openshift_node_bootstrap_configmap_name }}"
+ namespace: "{{ openshift_node_bootstrap_configmap_namespace }}"
+ from_file:
+ node-config.yaml: "{{ mktempout.stdout }}/node-config.yaml"
+ run_once: true
+
+- name: remove templated files
+ file:
+ dest: "{{ mktempout.stdout }}/"
+ state: absent
+ run_once: true
diff --git a/roles/openshift_node_bootstrap_configmap/tasks/standard.yml b/roles/openshift_node_bootstrap_configmap/tasks/standard.yml
new file mode 100644
index 000000000..637d7c7fc
--- /dev/null
+++ b/roles/openshift_node_bootstrap_configmap/tasks/standard.yml
@@ -0,0 +1,12 @@
+---
+- name: Build an infra node configmap
+ include: create_config.yml
+ vars:
+ openshift_node_bootstrap_configmap_name: node-config-infra
+ static: true
+
+- name: Build an infra node configmap
+ include: create_config.yml
+ vars:
+ openshift_node_bootstrap_configmap_name: node-config-compute
+ static: true
diff --git a/roles/openshift_node_bootstrap_configmap/templates/node-config.yaml.j2 b/roles/openshift_node_bootstrap_configmap/templates/node-config.yaml.j2
new file mode 100644
index 000000000..d533b88fa
--- /dev/null
+++ b/roles/openshift_node_bootstrap_configmap/templates/node-config.yaml.j2
@@ -0,0 +1,53 @@
+allowDisabledDocker: false
+apiVersion: v1
+authConfig:
+ authenticationCacheSize: 1000
+ authenticationCacheTTL: 5m
+ authorizationCacheSize: 1000
+ authorizationCacheTTL: 5m
+dnsBindAddress: "127.0.0.1:53"
+dnsDomain: cluster.local
+dnsIP: 0.0.0.0
+dnsNameservers: null
+dnsRecursiveResolvConf: /etc/origin/node/resolv.conf
+dockerConfig:
+ dockerShimRootDirectory: /var/lib/dockershim
+ dockerShimSocket: /var/run/dockershim.sock
+ execHandlerName: native
+enableUnidling: true
+imageConfig:
+ format: "{{ openshift_imageconfig_format }}"
+ latest: false
+iptablesSyncPeriod: 30s
+kind: NodeConfig
+kubeletArguments:
+ cloud-config:
+ - /etc/origin/cloudprovider/{{ openshift_node_bootstrap_configmap_cloud_provider }}.conf
+ cloud-provider:
+ - {{ openshift_node_bootstrap_configmap_cloud_provider }}
+ node-labels: {{ openshift_node_bootstrap_configmap_default_labels | union(openshift_node_bootstrap_configmap_custom_labels) | list | to_json }}
+masterClientConnectionOverrides:
+ acceptContentTypes: application/vnd.kubernetes.protobuf,application/json
+ burst: 40
+ contentType: application/vnd.kubernetes.protobuf
+ qps: 20
+masterKubeConfig: node.kubeconfig
+networkConfig:
+ mtu: "{{ openshift_node_bootstrap_configmap_network_mtu }}"
+ networkPluginName: {{ openshift_node_bootstrap_configmap_network_plugin }}
+nodeIP: ""
+podManifestConfig: null
+servingInfo:
+ bindAddress: 0.0.0.0:10250
+ bindNetwork: tcp4
+ certFile: server.crt
+ clientCA: node-client-ca.crt
+ keyFile: server.key
+ namedCertificates: null
+volumeConfig:
+ localQuota:
+ perFSGroup: null
+volumeDirectory: {{ openshift_node_bootstrap_configmap_node_data_dir }}/openshift.local.volumes
+enable-controller-attach-detach:
+- 'true'
+networkPluginName: {{ openshift_node_bootstrap_configmap_network_plugin }}