diff options
author | Yifei Xue <xueyifei@huawei.com> | 2017-07-20 11:46:14 +0800 |
---|---|---|
committer | Justin chi <chigang@huawei.com> | 2017-07-21 01:35:06 +0000 |
commit | f12c7c6d19eb21cd99690271f4ef71794a24b683 (patch) | |
tree | cc75280865ce94d8cce3652d547e2b00abede889 /plugins/odl_cluster/tasks | |
parent | 117130a7f905696ccf66f5eef38d1c0eb951629f (diff) |
Adjust the plugins directory structure
JIRA:-
Since there may be multiple roles in one plugin, so add
a level of roles to the directory.
Move the copy operation of ODL from configure_osa to
a new setup-opendaylgiht role.
Add excute_order in the plugin description of ODL.
Change-Id: I905fb84b11df201dc1436ec888f511e251bba89c
Signed-off-by: Yifei Xue <xueyifei@huawei.com>
Signed-off-by: chigang <chigang@huawei.com>
Diffstat (limited to 'plugins/odl_cluster/tasks')
-rw-r--r-- | plugins/odl_cluster/tasks/control-agents-1.yml | 39 | ||||
-rw-r--r-- | plugins/odl_cluster/tasks/control-agents-2.yml | 87 | ||||
-rw-r--r-- | plugins/odl_cluster/tasks/control-agents-3.yml | 42 | ||||
-rw-r--r-- | plugins/odl_cluster/tasks/control-db-1.yml | 8 | ||||
-rw-r--r-- | plugins/odl_cluster/tasks/control-hosts-1.yml | 98 | ||||
-rw-r--r-- | plugins/odl_cluster/tasks/control-hosts-2.yml | 23 | ||||
-rw-r--r-- | plugins/odl_cluster/tasks/control-repos-1.yml | 17 | ||||
-rw-r--r-- | plugins/odl_cluster/tasks/control-servers-1.yml | 15 | ||||
-rw-r--r-- | plugins/odl_cluster/tasks/control-servers-2.yml | 34 | ||||
-rw-r--r-- | plugins/odl_cluster/tasks/control-servers-3.yml | 19 | ||||
-rw-r--r-- | plugins/odl_cluster/tasks/main.yml | 39 | ||||
-rw-r--r-- | plugins/odl_cluster/tasks/odl-post.yml | 32 |
12 files changed, 0 insertions, 453 deletions
diff --git a/plugins/odl_cluster/tasks/control-agents-1.yml b/plugins/odl_cluster/tasks/control-agents-1.yml deleted file mode 100644 index dc071cc7..00000000 --- a/plugins/odl_cluster/tasks/control-agents-1.yml +++ /dev/null @@ -1,39 +0,0 @@ ---- - -- name: install crudini - package: - name: crudini - state: latest - -- name: install networking-odl - pip: - name: networking-odl - version: "{{ networking_odl_version }}" - virtualenv: /openstack/venvs/neutron-15.1.4 - -- name: configure vsctl for dhcp agent - shell: | - crudini --set /etc/neutron/dhcp_agent.ini OVS \ - ovsdb_interface vsctl; - when: - - inventory_hostname not in groups['nova_compute'] - -- name: configure vsctl for l3 agent - shell: | - crudini --set /etc/neutron/l3_agent.ini OVS \ - ovsdb_interface vsctl; - when: odl_l3_agent == "Disable" and inventory_hostname not in groups['nova_compute'] - -- name: stop neutron l3 agent - service: name=neutron-l3-agent state=stopped enabled=no - when: odl_l3_agent == "Enable" and inventory_hostname not in groups['nova_compute'] - -- name: shut down and disable Neutron's openvswitch agent services - service: name={{ service_ovs_agent_name }} state=stopped enabled=no - -- name: Stop the Open vSwitch service and clear existing OVSDB - shell: > - service {{ service_ovs_name }} stop ; - rm -rf /var/log/openvswitch/* ; - rm -rf /etc/openvswitch/conf.db ; - service {{ service_ovs_name }} start ; diff --git a/plugins/odl_cluster/tasks/control-agents-2.yml b/plugins/odl_cluster/tasks/control-agents-2.yml deleted file mode 100644 index f53a3ac8..00000000 --- a/plugins/odl_cluster/tasks/control-agents-2.yml +++ /dev/null @@ -1,87 +0,0 @@ ---- - -- name: set opendaylight as the manager - command: | - su -s /bin/sh -c "ovs-vsctl set-manager tcp:{{ internal_lb_vip_address }}:6640;" - -- name: check br-int - shell: | - ovs-vsctl list-br | grep br-int; while [ $? -ne 0 ]; do sleep 10; \ - ovs-vsctl list-br | grep br-int; done - -# yamllint disable rule:line-length -- name: set local ip in openvswitch - shell: | - ovs-vsctl set Open_vSwitch $(ovs-vsctl show | head -n 1) \ - other_config={'local_ip'=' {{ hostvars[inventory_hostname]['container_networks']['tunnel_address']['address'] }} '}; - when: inventory_hostname not in groups['nova_compute'] - -- name: set local ip in openvswitch - shell: | - ovs-vsctl set Open_vSwitch $(ovs-vsctl show | head -n 1) \ - other_config={'local_ip'=' {{ hostvars[inventory_hostname]['ansible_br_vxlan']['ipv4']['address'] }} '}; - when: inventory_hostname in groups['nova_compute'] -# yamllint enable rule:line-length - -- name: Setup br-provider - openvswitch_bridge: - bridge: br-provider - state: present - when: - - inventory_hostname not in groups['nova_compute'] - - odl_l3_agent == "Disable" - -- name: add ovs uplink - openvswitch_port: - bridge: br-provider - port: "eth12" - state: present - when: - - inventory_hostname not in groups['nova_compute'] - - odl_l3_agent == "Disable" - -- name: set external nic in openvswitch - shell: | - ovs-vsctl set Open_vSwitch $(ovs-vsctl show | head -n 1) \ - other_config:provider_mappings=physnet:br-provider - when: - - odl_l3_agent == "Disable" - - inventory_hostname not in groups['nova_compute'] - -- name: set external nic in openvswitch - shell: | - ovs-vsctl set Open_vSwitch $(ovs-vsctl show | head -n 1) \ - other_config:provider_mappings=physnet:eth12 - when: - - odl_l3_agent == "Enable" - -- name: Set host OVS configurations - command: | - /openstack/venvs/neutron-15.1.4/bin/neutron-odl-ovs-hostconfig \ - --datapath_type=system --bridge_mappings=physnet:br-provider - when: - - inventory_hostname not in groups['nova_compute'] - - odl_l3_agent == "Disable" - -- name: Set host OVS configurations - command: | - /openstack/venvs/neutron-15.1.4/bin/neutron-odl-ovs-hostconfig - --datapath_type=system --bridge_mappings=physnet:eth12 - when: - - inventory_hostname not in groups['nova_compute'] - - odl_l3_agent == "Enable" - -- name: Set host OVS configurations - command: | - /openstack/venvs/neutron-15.1.4/bin/neutron-odl-ovs-hostconfig --datapath_type=system - when: - - inventory_hostname in groups['nova_compute'] - - odl_l3_agent == "Disable" - -- name: Set host OVS configurations - command: | - /openstack/venvs/neutron-15.1.4/bin/neutron-odl-ovs-hostconfig - --datapath_type=system --bridge_mappings=physnet:eth12 - when: - - inventory_hostname in groups['nova_compute'] - - odl_l3_agent == "Enable" diff --git a/plugins/odl_cluster/tasks/control-agents-3.yml b/plugins/odl_cluster/tasks/control-agents-3.yml deleted file mode 100644 index 68446a83..00000000 --- a/plugins/odl_cluster/tasks/control-agents-3.yml +++ /dev/null @@ -1,42 +0,0 @@ ---- - -- name: configure opendaylight -> ml2 - shell: > - crudini --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 mechanism_drivers opendaylight_v2; - crudini --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 tenant_network_types vxlan; - crudini --set /etc/neutron/plugins/ml2/ml2_conf.ini ovs enable_tunneling "True"; - crudini --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 extension_drivers port_security; - crudini --set /etc/neutron/plugins/ml2/ml2_conf.ini ovs bridge_mappings physnet:br-provider; - -- name: configure bridge_mappings for L3 - shell: | - crudini --set /etc/neutron/plugins/ml2/ml2_conf.ini ovs bridge_mappings physnet:eth12; - when: odl_l3_agent == "Enable" - -- name: configure external bridge name for L2 - shell: | - crudini --set /etc/neutron/l3_agent.ini DEFAULT external_network_bridge br-provider; - when: odl_l3_agent == "Disable" - -- name: configure opendaylight in ml2 - shell: | - crudini --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2_odl username admin; - crudini --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2_odl password admin; - crudini --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2_odl url \ - http://{{ internal_lb_vip_address }}:8080/controller/nb/v2/neutron; - crudini --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2_odl port_binding_controller \ - pseudo-agentdb-binding; - -- name: configure metadata for l3 configuration - shell: | - crudini --set /etc/neutron/dhcp_agent.ini DEFAULT \ - enable_isolated_metadata "True"; - when: - - inventory_hostname not in groups['nova_compute'] - -- name: force metadata for l3 configuration - shell: | - crudini --set /etc/neutron/dhcp_agent.ini DEFAULT \ - force_metadata "True"; - when: - - inventory_hostname not in groups['nova_compute'] diff --git a/plugins/odl_cluster/tasks/control-db-1.yml b/plugins/odl_cluster/tasks/control-db-1.yml deleted file mode 100644 index 3cef9792..00000000 --- a/plugins/odl_cluster/tasks/control-db-1.yml +++ /dev/null @@ -1,8 +0,0 @@ ---- - -- name: drop and recreate neutron database - shell: | - mysql -e "drop database if exists neutron;"; - mysql -e "create database neutron character set utf8;"; - mysql -e "grant all on neutron.* to 'neutron'@'%' identified by \ - '{{ neutron_container_mysql_password }}';"; diff --git a/plugins/odl_cluster/tasks/control-hosts-1.yml b/plugins/odl_cluster/tasks/control-hosts-1.yml deleted file mode 100644 index 133d98a7..00000000 --- a/plugins/odl_cluster/tasks/control-hosts-1.yml +++ /dev/null @@ -1,98 +0,0 @@ ---- - -- name: check sdn_package cache - stat: - path=/opt/sdn_package.tar.gz - register: sdn_cache # Todo: remove hard code and add md5 check - -- name: debug - debug: msg="{{ sdn_cache }}" - -- name: get sdn_package - get_url: - url: "{{ sdn_package }}" - dest: /opt/ - when: sdn_cache.stat.exists != 'true' - -- name: create odl group - group: name=odl system=yes state=present - -- name: create odl user - user: - name: odl - group: odl - home: "{{ odl_home }}" - createhome: "yes" - system: "yes" - shell: "/bin/false" - -- name: clear sdn_package - command: su -s /bin/sh -c "rm -rf /opt/sdn_package" - -- name: clear jdk8 package - command: su -s /bin/sh -c "rm -rf /opt/install_jdk8" - -- name: unarchive sdn_package - command: su -s /bin/sh -c "tar xzf /opt/sdn_package.tar.gz -C /opt/" - -- name: copy java package - command: su -s /bin/sh -c "cp /opt/sdn_package/java/jdk-8u51-linux-x64.tar.gz /opt/" - -- name: unarchive java_install package - command: su -s /bin/sh -c "tar xvf /opt/sdn_package/java/install_jdk8.tar -C /opt/" - -- name: install java - command: su -s /bin/sh -c "/opt/install_jdk8/install_jdk8.sh" - -- name: clear odl package - command: su -s /bin/sh -c "rm -rf {{ odl_home }}*" - -- name: extract odl package - command: | - su -s /bin/sh -c "tar xzf /opt/sdn_package/odl/{{ odl_pkg_name }} -C {{ odl_home }} \ - --strip-components 1" odl - -- name: opendaylight system file - copy: - src: "{{ service_file.src }}" - dest: "{{ service_file.dst }}" - mode: 0755 - -- name: set l3 fwd enable in custom.properties - template: - src: custom.properties - dest: "{{ odl_home }}/etc/custom.properties" - owner: odl - group: odl - mode: 0775 - when: odl_l3_agent == "Enable" - -- name: create karaf config - template: - src: org.apache.karaf.features.cfg - dest: "{{ odl_home }}/etc/org.apache.karaf.features.cfg" - owner: odl - group: odl - mode: 0775 - -- name: copy acl configuration script - template: - src: acl_conf.sh - dest: "/opt/acl_conf.sh" - mode: 0777 - -- name: execute acl configuration script - command: su -s /bin/sh -c "/opt/acl_conf.sh;" odl - -- name: create jetty config - shell: > - sed -i 's/default="8181"/default="8081"/' - {{ odl_home }}etc/jetty.xml - -- name: create tomcat config - shell: > - sed -i 's/port="8282"/port="8081"/' - {{ odl_home }}configuration/tomcat-server.xml - -- name: remove karaf data directory - shell: rm -rf {{ odl_home }}/data/*; diff --git a/plugins/odl_cluster/tasks/control-hosts-2.yml b/plugins/odl_cluster/tasks/control-hosts-2.yml deleted file mode 100644 index b8d9403a..00000000 --- a/plugins/odl_cluster/tasks/control-hosts-2.yml +++ /dev/null @@ -1,23 +0,0 @@ ---- - -- name: chown opendaylight directory and files - shell: > - chown -R odl:odl "{{ odl_home }}"; - chown odl:odl "{{ service_file.dst }}"; - -- name: start opendaylight - service: name=opendaylight state=started - when: ansible_os_family == "Debian" - -- name: set opendaylight autostart - shell: chkconfig opendaylight on - when: ansible_os_family == "RedHat" - -- name: start opendaylight - shell: service opendaylight start - when: ansible_os_family == "RedHat" - -- name: check if opendaylight running - shell: | - netstat -lpen --tcp | grep java | grep 6653; - while [ $? -ne 0 ]; do sleep 10; netstat -lpen --tcp | grep java | grep 6653; done diff --git a/plugins/odl_cluster/tasks/control-repos-1.yml b/plugins/odl_cluster/tasks/control-repos-1.yml deleted file mode 100644 index 8427e4f0..00000000 --- a/plugins/odl_cluster/tasks/control-repos-1.yml +++ /dev/null @@ -1,17 +0,0 @@ ---- - -- name: download networking-odl - get_url: - url: "{{ odl_pip }}" - dest: /var/www/repo/os-releases/15.1.4/ubuntu-16.04-x86_64 - -- name: patch networking-odl to fix a bug - shell: | - cd /var/www/repo/os-releases/15.1.4/ubuntu-16.04-x86_64/ - tar -zxf networking-odl-4.0.0.tar.gz # hard code, need to modify - rm -rf networking-odl-4.0.0.tar.gz - sed -i 's/^Babel.*/Babel!=2.4.0,>=2.3.4/' networking-odl-4.0.0/requirements.txt - tar -zcf networking-odl-4.0.0.tar.gz networking-odl-4.0.0/ - rm -rf networking-odl-4.0.0/ - pip install networking-odl-4.0.0.tar.gz -d ./ - cd - diff --git a/plugins/odl_cluster/tasks/control-servers-1.yml b/plugins/odl_cluster/tasks/control-servers-1.yml deleted file mode 100644 index 459c734a..00000000 --- a/plugins/odl_cluster/tasks/control-servers-1.yml +++ /dev/null @@ -1,15 +0,0 @@ ---- - -- name: install crudini - package: - name: crudini - state: latest - -- name: install networking-odl - pip: - name: networking-odl - version: "{{ networking_odl_version }}" - virtualenv: /openstack/venvs/neutron-15.1.4 # Todo: hardcode, need to modify - -- name: turn off neutron-server on control node - service: name=neutron-server state=stopped diff --git a/plugins/odl_cluster/tasks/control-servers-2.yml b/plugins/odl_cluster/tasks/control-servers-2.yml deleted file mode 100644 index 59b3aa2f..00000000 --- a/plugins/odl_cluster/tasks/control-servers-2.yml +++ /dev/null @@ -1,34 +0,0 @@ ---- - -- name: configure odl l3 driver - shell: | - crudini --set /etc/neutron/neutron.conf DEFAULT service_plugins \ - odl-router,metering; - when: odl_l3_agent == "Enable" - -- name: configure opendaylight -> ml2 - shell: > - crudini --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 mechanism_drivers opendaylight_v2; - crudini --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 tenant_network_types vxlan; - crudini --set /etc/neutron/plugins/ml2/ml2_conf.ini ovs enable_tunneling "True"; - crudini --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 extension_drivers port_security; - crudini --set /etc/neutron/plugins/ml2/ml2_conf.ini ovs bridge_mappings physnet:br-provider; - -- name: configure bridge_mappings for L3 - shell: | - crudini --set /etc/neutron/plugins/ml2/ml2_conf.ini ovs bridge_mappings physnet:eth12; - when: odl_l3_agent == "Enable" - -- name: turn off l3 ha for odl l2 - shell: | - crudini --set /etc/neutron/neutron.conf DEFAULT l3_ha "False"; - when: odl_l3_agent == "Disable" - -- name: configure opendaylight in ml2 - shell: | - crudini --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2_odl username admin; - crudini --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2_odl password admin; - crudini --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2_odl url \ - http://{{ internal_lb_vip_address }}:8080/controller/nb/v2/neutron; - crudini --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2_odl port_binding_controller \ - pseudo-agentdb-binding; diff --git a/plugins/odl_cluster/tasks/control-servers-3.yml b/plugins/odl_cluster/tasks/control-servers-3.yml deleted file mode 100644 index 3d5c307b..00000000 --- a/plugins/odl_cluster/tasks/control-servers-3.yml +++ /dev/null @@ -1,19 +0,0 @@ ---- - -- name: Perform a Neutron DB online upgrade - command: | - /openstack/venvs/neutron-15.1.4/bin/neutron-db-manage - --config-file /etc/neutron/neutron.conf - --config-file /etc/neutron/plugins/ml2/ml2_conf.ini - upgrade --expand - become: "yes" - become_user: "neutron" - -- name: Perform a Neutron DB offline upgrade - command: | - /openstack/venvs/neutron-15.1.4/bin/neutron-db-manage - --config-file /etc/neutron/neutron.conf - --config-file /etc/neutron/plugins/ml2/ml2_conf.ini - upgrade --contract - become: "yes" - become_user: "neutron" diff --git a/plugins/odl_cluster/tasks/main.yml b/plugins/odl_cluster/tasks/main.yml deleted file mode 100644 index 44359056..00000000 --- a/plugins/odl_cluster/tasks/main.yml +++ /dev/null @@ -1,39 +0,0 @@ ---- - -- include_vars: "{{ ansible_os_family }}.yml" - -- include: control-hosts-1.yml - when: inventory_hostname in groups['network_hosts'] # Todo: modify to odl_hosts - -- include: control-repos-1.yml - vars: - odl_pip: "{{ networking_odl_url }}" - when: inventory_hostname in groups['repo_container'] - -- include: control-servers-1.yml - when: inventory_hostname in groups['neutron_server'] - -- include: control-agents-1.yml - when: inventory_hostname in groups['neutron_openvswitch_agent'] - -- include: control-hosts-2.yml - when: inventory_hostname in groups['network_hosts'] # Todo: modify to odl_hosts - -- include: control-agents-2.yml - when: inventory_hostname in groups['neutron_openvswitch_agent'] - -- include: control-servers-2.yml - when: inventory_hostname in groups['neutron_server'] - -- include: control-agents-3.yml - when: inventory_hostname in groups['neutron_openvswitch_agent'] - -- include: control-db-1.yml - when: inventory_hostname == groups['galera_container'][0] - -- include: control-servers-3.yml - when: - - inventory_hostname in groups['neutron_server'][0] - - inventory_hostname not in groups['network_hosts'] - -- include: odl-post.yml diff --git a/plugins/odl_cluster/tasks/odl-post.yml b/plugins/odl_cluster/tasks/odl-post.yml deleted file mode 100644 index 8794ff0c..00000000 --- a/plugins/odl_cluster/tasks/odl-post.yml +++ /dev/null @@ -1,32 +0,0 @@ ---- - -- name: restart neutron-server - service: name=neutron-server state=restarted enabled=yes - when: inventory_hostname in groups['neutron_server'] - -- name: restart neutron-l3-agent server - service: name=neutron-l3-agent state=restarted - when: - - odl_l3_agent == "Disable" - - inventory_hostname in groups['neutron_openvswitch_agent'] - - inventory_hostname not in groups['nova_compute'] - -- name: restart neutron-dhcp-agent server - service: name=neutron-dhcp-agent state=restarted - when: - - inventory_hostname in groups['neutron_openvswitch_agent'] - - inventory_hostname not in groups['nova_compute'] - -- name: restart neutron-metadata-agent server - service: name=neutron-metadata-agent state=restarted - when: - - inventory_hostname in groups['neutron_openvswitch_agent'] - - inventory_hostname not in groups['nova_compute'] - -- name: clear karaf data - shell: rm -rf {{ odl_home }}/data/*; - when: inventory_hostname in groups['network_hosts'] - -- name: restart opendaylight - shell: sleep 60; service opendaylight restart; sleep 60; - when: inventory_hostname in groups['network_hosts'] |