From c846444991b2b691a0b01057ac2ecdd1dbbcca60 Mon Sep 17 00:00:00 2001 From: "chenshuai@huawei.com" Date: Thu, 25 Feb 2016 17:30:24 +0800 Subject: bugfix:remove openvswitch when enable opencontrail JIRA: COMPASS-322 Change-Id: Ie095bbba6e22bb583f3caa56a40feb9157b4150e Signed-off-by: chenshuai@huawei.com --- .../open-contrail/tasks/install/install-common.yml | 2 +- .../ansible/roles/open-contrail/tasks/main.yml | 4 ++ .../open-contrail/tasks/uninstall-openvswitch.yml | 46 ++++++++++++++++++++++ 3 files changed, 51 insertions(+), 1 deletion(-) create mode 100755 deploy/adapters/ansible/roles/open-contrail/tasks/uninstall-openvswitch.yml (limited to 'deploy/adapters/ansible/roles/open-contrail/tasks') diff --git a/deploy/adapters/ansible/roles/open-contrail/tasks/install/install-common.yml b/deploy/adapters/ansible/roles/open-contrail/tasks/install/install-common.yml index b1d774e0..e94621bc 100755 --- a/deploy/adapters/ansible/roles/open-contrail/tasks/install/install-common.yml +++ b/deploy/adapters/ansible/roles/open-contrail/tasks/install/install-common.yml @@ -22,7 +22,7 @@ - name: download OpenContrail package file get_url: url="http://{{ http_server.stdout_lines[0] }}/packages/open-contrail/{{ package }}" dest=/tmp/{{ package }} - +#" - name: "install contrail install package" # sudo: True diff --git a/deploy/adapters/ansible/roles/open-contrail/tasks/main.yml b/deploy/adapters/ansible/roles/open-contrail/tasks/main.yml index 968148f8..6c01f0f1 100755 --- a/deploy/adapters/ansible/roles/open-contrail/tasks/main.yml +++ b/deploy/adapters/ansible/roles/open-contrail/tasks/main.yml @@ -113,6 +113,10 @@ include: provision/provision-compute.yml when: groups['opencontrail']|length !=0 and inventory_hostname not in groups['opencontrail'] +- name: Remove openvswitch on compute + include: uninstall-openvswitch.yml + when: groups['opencontrail']|length !=0 and inventory_hostname not in groups['opencontrail'] + - name: Enable Service Daemon shell: if [ -f “\/opt\/service.bak” ] ; then mv /opt/service.bak /opt/service ; fi when: groups['opencontrail']|length !=0 diff --git a/deploy/adapters/ansible/roles/open-contrail/tasks/uninstall-openvswitch.yml b/deploy/adapters/ansible/roles/open-contrail/tasks/uninstall-openvswitch.yml new file mode 100755 index 00000000..195a8990 --- /dev/null +++ b/deploy/adapters/ansible/roles/open-contrail/tasks/uninstall-openvswitch.yml @@ -0,0 +1,46 @@ +--- +- name: del ovs bridge + shell: ovs-vsctl del-br br-int; ovs-vsctl del-br br-tun; ovs-vsctl del-br br-prv; + +- name: remove ovs and ovs-plugin daeman + shell: > + sed -i '/neutron-plugin-openvswitch-agent/d' /opt/service ; + sed -i '/openvswitch-switch/d' /opt/service ; + +- name: stop ovs and ovs-plugin + shell: service openvswitch-switch stop; service neutron-plugin-openvswitch-agent stop; + +- name: remove ovs and ovs-plugin files + shell: > + update-rc.d -f neutron-plugin-openvswitch-agent remove; + mv /etc/init.d/neutron-plugin-openvswitch-agent /home/neutron-plugin-openvswitch-agent; + mv /etc/init/neutron-plugin-openvswitch-agent.conf /home/neutron-plugin-openvswitch-agent.conf; + update-rc.d -f openvswitch-switch remove ; + mv /etc/init.d/openvswitch-switch /home/openvswitch-switch ; + mv /etc/init/openvswitch-switch.conf /home/openvswitch-switch.conf ; + update-rc.d -f neutron-ovs-cleanup remove ; + mv /etc/init.d/neutron-ovs-cleanup /home/neutron-ovs-cleanup ; + mv /etc/init/neutron-ovs-cleanup.conf /home/neutron-ovs-cleanup.conf ; + +- name: remove ovs kernel module + shell: rmmod vport_vxlan; rmmod openvswitch; + ignore_errors: True + +- name: copy recovery script + copy: src={{ item }} dest=/opt/setup_networks + with_items: + - recover_network_opencontrail.py + - setup_networks_opencontrail.py + +- name: recover external script + shell: python /opt/setup_networks/recover_network_opencontrail.py + +- name: modify net-init + shell: sed -i 's/setup_networks.py/setup_networks_opencontrail.py/g' /etc/init.d/net_init + +- name: resolve dual NIC problem + shell: > + echo "net.ipv4.conf.all.arp_ignore=1" >> /etc/sysctl.conf ; + /sbin/sysctl -p ; + echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore ; + -- cgit 1.2.3-korg