diff options
author | Vishal Patil <vishpat@gmail.com> | 2016-01-04 16:42:25 -0500 |
---|---|---|
committer | Vishal Patil <vishpat@gmail.com> | 2016-01-25 13:19:13 -0500 |
commit | 93eb9ba8fc5d6d14b8ffff1b946c528233cbb1d5 (patch) | |
tree | a4a06f52e08aebe8c55c21002f3f2956cd178e0a /roles/nuage_node | |
parent | 530aaf841d38c036a2d08df075f85d63b8a52840 (diff) | |
download | openshift-93eb9ba8fc5d6d14b8ffff1b946c528233cbb1d5.tar.gz openshift-93eb9ba8fc5d6d14b8ffff1b946c528233cbb1d5.tar.bz2 openshift-93eb9ba8fc5d6d14b8ffff1b946c528233cbb1d5.tar.xz openshift-93eb9ba8fc5d6d14b8ffff1b946c528233cbb1d5.zip |
Add Nuage support to openshift ansible
Added variables
Made changes for node configuration
Add service restart logic to node
Fixed ansible syntax errors
Add cert and key info for nodes
Added active and standby controller ip configuration information
Uncommented the nuage sdn check
Changed ca_crt -> ca_cert
Added restarting of atomic openshift master
Removed service account dependencies
Fixes
Fixed the api server url
Removed redundant restart of atomic openshift master
Configure nuagekubemon on all of the master nodes
Restart master api and controllers as well on nuagekubemon installation
Converted plugin config into template
Add template for nuagekubemon
Removed uplink interface from vars
Able to copy cert keys
Uninstall default ovs
Add the kubemon template
Do not install rdo sdn rpms in case of nuage
Addressed latest review comments
Set the networkPluginName for nuage
Diffstat (limited to 'roles/nuage_node')
-rw-r--r-- | roles/nuage_node/README.md | 9 | ||||
-rw-r--r-- | roles/nuage_node/handlers/main.yaml | 4 | ||||
-rw-r--r-- | roles/nuage_node/tasks/main.yaml | 37 | ||||
-rw-r--r-- | roles/nuage_node/templates/vsp-k8s.j2 | 14 | ||||
-rw-r--r-- | roles/nuage_node/vars/main.yaml | 9 |
5 files changed, 73 insertions, 0 deletions
diff --git a/roles/nuage_node/README.md b/roles/nuage_node/README.md new file mode 100644 index 000000000..02a3cbc77 --- /dev/null +++ b/roles/nuage_node/README.md @@ -0,0 +1,9 @@ +Nuage Node +========== + +Setup Nuage VRS (Virtual Routing Switching) on the Openshift Node + +Requirements +------------ + +This role assumes it has been deployed on RHEL/Fedora diff --git a/roles/nuage_node/handlers/main.yaml b/roles/nuage_node/handlers/main.yaml new file mode 100644 index 000000000..d82d4b67b --- /dev/null +++ b/roles/nuage_node/handlers/main.yaml @@ -0,0 +1,4 @@ +--- +- name: restart vrs + sudo: true + service: name=openvswitch state=restarted diff --git a/roles/nuage_node/tasks/main.yaml b/roles/nuage_node/tasks/main.yaml new file mode 100644 index 000000000..e0117bf71 --- /dev/null +++ b/roles/nuage_node/tasks/main.yaml @@ -0,0 +1,37 @@ +--- +- name: Install Nuage VRS + sudo: true + yum: name={{ vrs_rpm }} state=present + +- name: Set the uplink interface + sudo: true + lineinfile: dest={{ vrs_config }} regexp=^NETWORK_UPLINK_INTF line='NETWORK_UPLINK_INTF={{ uplink_interface }}' + +- name: Set the Active Controller + sudo: true + lineinfile: dest={{ vrs_config }} regexp=^ACTIVE_CONTROLLER line='ACTIVE_CONTROLLER={{ vsc_active_ip }}' + +- name: Set the Standby Controller + sudo: true + lineinfile: dest={{ vrs_config }} regexp=^STANDBY_CONTROLLER line='STANDBY_CONTROLLER={{ vsc_standby_ip }}' + when: vsc_standby_ip is defined + +- name: Install plugin rpm + sudo: true + yum: name={{ plugin_rpm }} state=present + +- name: Copy the certificates and keys + sudo: true + copy: src="/tmp/{{ item }}" dest="{{ vsp_k8s_dir }}/{{ item }}" + with_items: + - ca.crt + - nuage.crt + - nuage.key + - nuage.kubeconfig + +- name: Set the vsp-k8s.yaml + sudo: true + template: src=vsp-k8s.j2 dest={{ vsp_k8s_yaml }} owner=root mode=0644 + notify: + - restart vrs + - restart node diff --git a/roles/nuage_node/templates/vsp-k8s.j2 b/roles/nuage_node/templates/vsp-k8s.j2 new file mode 100644 index 000000000..98d6c3a9c --- /dev/null +++ b/roles/nuage_node/templates/vsp-k8s.j2 @@ -0,0 +1,14 @@ +clientCert: {{ client_cert }} +# The key to the certificate in clientCert above +clientKey: {{ client_key }} +# The certificate authority's certificate for the local kubelet. Usually the +# same as the CA cert used to create the client Cert/Key pair. +CACert: {{ ca_cert }} +# Name of the enterprise in which pods will reside +enterpriseName: {{ enterprise }} +# Name of the domain in which pods will reside +domainName: {{ domain }} +# IP address and port number of master API server +masterApiServer: {{ api_server }} +# Bridge name for the docker bridge +dockerBridgeName: {{ docker_bridge }} diff --git a/roles/nuage_node/vars/main.yaml b/roles/nuage_node/vars/main.yaml new file mode 100644 index 000000000..a6b7cf997 --- /dev/null +++ b/roles/nuage_node/vars/main.yaml @@ -0,0 +1,9 @@ +--- +vrs_config: /etc/default/openvswitch +vsp_k8s_dir: /usr/share/vsp-k8s +vsp_k8s_yaml: "{{ vsp_k8s_dir }}/vsp-k8s.yaml" +client_cert: "{{ vsp_k8s_dir }}/nuage.crt" +client_key: "{{ vsp_k8s_dir }}/nuage.key" +ca_cert: "{{ vsp_k8s_dir }}/ca.crt" +api_server: "{{ openshift_node_master_api_url }}" +docker_bridge: "docker0" |