summaryrefslogtreecommitdiffstats
path: root/plugins/odl_cluster/roles/setup-odl/tasks/control-agents-2.yml
blob: 82a260059d43c683c6681f10c19b4d58956c7922 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
---

- 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: >
    local_ip=$(grep local_ip /etc/neutron/plugins/ml2/openvswitch_agent.ini |
    sed 's/local_ip =//g');
    ovs-vsctl set Open_vSwitch $(ovs-vsctl show | head -n 1)
    other_config={'local_ip'="$local_ip"};
  when: inventory_hostname not in groups['nova_compute']

- name: set local ip in openvswitch
  shell: >
    local_ip=$(grep local_ip /etc/neutron/plugins/ml2/openvswitch_agent.ini |
    sed 's/local_ip =//g');
    ovs-vsctl set Open_vSwitch $(ovs-vsctl show | head -n 1)
    other_config={'local_ip'="$local_ip"};
  when: inventory_hostname in groups['nova_compute']
# yamllint enable rule:line-length

- name: Setup br-provider
  openvswitch_bridge:
    bridge: "{{ public_bridge }}"
    state: present
  when:
    - inventory_hostname not in groups['nova_compute']
    - odl_l3_agent == "Disable"

- name: add ovs uplink
  openvswitch_port:
    bridge: "{{ public_bridge }}"
    port: "{{ contr_public_intf }}"
    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={{ contr_l2_mappings }}
  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={{ contr_l3_mappings }}
  when:
    - odl_l3_agent == "Enable"
    - 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={{ compu_l3_mappings }}
  when:
    - odl_l3_agent == "Enable"
    - inventory_hostname in groups['nova_compute']

- name: Set host OVS configurations
  command: |
    /openstack/venvs/neutron-15.1.4/bin/neutron-odl-ovs-hostconfig \
            --datapath_type=system --bridge_mappings={{ contr_l2_mappings }}
  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={{ contr_l3_mappings }}
  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={{ compu_l3_mappings }}
  when:
    - inventory_hostname in groups['nova_compute']
    - odl_l3_agent == "Enable"