diff options
Diffstat (limited to 'deploy/adapters/ansible/roles/config-compute/tasks')
3 files changed, 145 insertions, 26 deletions
diff --git a/deploy/adapters/ansible/roles/config-compute/tasks/RedHat.yml b/deploy/adapters/ansible/roles/config-compute/tasks/RedHat.yml new file mode 100644 index 00000000..4c6d2465 --- /dev/null +++ b/deploy/adapters/ansible/roles/config-compute/tasks/RedHat.yml @@ -0,0 +1,105 @@ +############################################################################## +# Copyright (c) 2017 HUAWEI TECHNOLOGIES CO.,LTD and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## +--- +- name: make nfs dircetory + file: "dest=/images mode=0777 state=directory" + +- name: configure service + shell: "echo 'nfs 2049/tcp' >> /etc/services; \ + echo 'nfs 2049/udp' >> /etc/services" + +# yamllint disable rule:line-length +- name: generate ifcfg-if.vxlan + template: + src: ifcfg-if.vxlan + dest: /etc/sysconfig/network-scripts/ifcfg-{{sys_intf_mappings["mgmt"]["interface"]}}.{{sys_intf_mappings["mgmt"]["vlan_tag"]}} + +- name: generate ifcfg-if.storage + template: + src: ifcfg-if.storage + dest: /etc/sysconfig/network-scripts/ifcfg-{{sys_intf_mappings["storage"]["interface"]}}.{{sys_intf_mappings["storage"]["vlan_tag"]}} + +- name: add br-vlan to interface script + lineinfile: + dest: /etc/sysconfig/network-scripts/ifcfg-{{ network_cfg["provider_net_mappings"][0]["interface"] }} + line: "BRIDGE=br-vlan" + +- name: remove eth0 ip addresss + lineinfile: + dest: /etc/sysconfig/network-scripts/ifcfg-eth0 + regexp: "^IPADDR=*" + state: absent + +- name: remove eth0 netmask + lineinfile: + dest: /etc/sysconfig/network-scripts/ifcfg-eth0 + regexp: "^NETMASK=*" + state: absent + +- name: add br-mgmt to eth0 script + lineinfile: + dest: /etc/sysconfig/network-scripts/ifcfg-eth0 + line: "BRIDGE=br-mgmt" + +- name: add br-vlan to interface script + lineinfile: + dest: /etc/sysconfig/network-scripts/ifcfg-{{sys_intf_mappings["storage"]["interface"]}}.{{sys_intf_mappings["storage"]["vlan_tag"]}} + line: "BRIDGE=br-storage" + +- name: add br-vxlan to interface script + lineinfile: + dest: /etc/sysconfig/network-scripts/ifcfg-{{sys_intf_mappings["mgmt"]["interface"]}}.{{sys_intf_mappings["mgmt"]["vlan_tag"]}} + line: "BRIDGE=br-vxlan" +# yamllint enable rule:line-length + +- name: generate ifcfg-br-mgmt script + template: + src: ifcfg-br-mgmt + dest: /etc/sysconfig/network-scripts/ + +- name: generate ifcfg-br-vlan script + template: + src: ifcfg-br-vlan + dest: /etc/sysconfig/network-scripts/ + +- name: generate ifcfg-br-storage script + template: + src: ifcfg-br-storage + dest: /etc/sysconfig/network-scripts/ + +- name: generate ifcfg-br-vxlan script + template: + src: ifcfg-br-vxlan + dest: /etc/sysconfig/network-scripts/ + +- name: restart the network + shell: systemctl restart network + +- name: Install apt packages + yum: + pkg: "{{item}}" + state: "present" + with_items: + - nfs-utils + - rpcbind + +- name: configure NFS + template: + src: exports + dest: /etc/exports + +- name: exportfs + shell: exportfs -r + +- name: start nfs + shell: | + service rpcbind start; + service nfs start; + chkconfig rpcbind on; + chkconfig nfs on; diff --git a/deploy/adapters/ansible/roles/config-compute/tasks/Ubuntu.yml b/deploy/adapters/ansible/roles/config-compute/tasks/Ubuntu.yml new file mode 100644 index 00000000..886a407f --- /dev/null +++ b/deploy/adapters/ansible/roles/config-compute/tasks/Ubuntu.yml @@ -0,0 +1,36 @@ +############################################################################## +# Copyright (c) 2017 HUAWEI TECHNOLOGIES CO.,LTD and others. +# +# All rights reserved. This program and the accompanying materials +# are made available under the terms of the Apache License, Version 2.0 +# which accompanies this distribution, and is available at +# http://www.apache.org/licenses/LICENSE-2.0 +############################################################################## +--- +- name: configure network + template: + src: compute.j2 + dest: /etc/network/interfaces + notify: + - restart network service + +- meta: flush_handlers + +- name: Install apt packages + apt: + pkg: "nfs-kernel-server" + state: "present" + +- name: make nfs dircetory + file: "dest=/images mode=0777 state=directory" + +- name: configure service + shell: "echo 'nfs 2049/tcp' >> /etc/services; \ + echo 'nfs 2049/udp' >> /etc/services" + +- name: configure NFS + template: + src: exports + dest: /etc/exports + notify: + - restart nfs service diff --git a/deploy/adapters/ansible/roles/config-compute/tasks/main.yml b/deploy/adapters/ansible/roles/config-compute/tasks/main.yml index 886a407f..674c80cc 100644 --- a/deploy/adapters/ansible/roles/config-compute/tasks/main.yml +++ b/deploy/adapters/ansible/roles/config-compute/tasks/main.yml @@ -7,30 +7,8 @@ # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## --- -- name: configure network - template: - src: compute.j2 - dest: /etc/network/interfaces - notify: - - restart network service +- include: "{{ ansible_distribution }}.yml" + when: ansible_distribution == 'Ubuntu' -- meta: flush_handlers - -- name: Install apt packages - apt: - pkg: "nfs-kernel-server" - state: "present" - -- name: make nfs dircetory - file: "dest=/images mode=0777 state=directory" - -- name: configure service - shell: "echo 'nfs 2049/tcp' >> /etc/services; \ - echo 'nfs 2049/udp' >> /etc/services" - -- name: configure NFS - template: - src: exports - dest: /etc/exports - notify: - - restart nfs service +- include: "{{ ansible_os_family }}.yml" + when: ansible_os_family == 'RedHat' and ansible_distribution_major_version == '7' |