diff options
Diffstat (limited to 'deploy/adapters/ansible/roles/onos_cluster')
19 files changed, 0 insertions, 991 deletions
diff --git a/deploy/adapters/ansible/roles/onos_cluster/files/onos.service b/deploy/adapters/ansible/roles/onos_cluster/files/onos.service deleted file mode 100755 index 2f4e8dd4..00000000 --- a/deploy/adapters/ansible/roles/onos_cluster/files/onos.service +++ /dev/null @@ -1,20 +0,0 @@ -[Unit] -Description=ONOS -After= - - -[Service] -User=root -Group=root -Type=simple -WorkingDirectory=/opt/onos/apache-karaf-3.0.5 -PermissionsStartOnly=true -ExecStartPre= -ExecStart=/usr/lib/jvm/java-8-oracle/bin/java -server -Xms128M -Xmx512M -XX:+UnlockDiagnosticVMOptions -XX:+UnsyncloadClass -Dcom.sun.management.jmxremote -Djava.endorsed.dirs=/usr/lib/jvm/java-8-oracle/jre/lib/endorsed:/usr/lib/jvm/java-8-oracle/lib/endorsed:/opt/onos/apache-karaf-3.0.5/lib/endorsed -Djava.ext.dirs=/usr/lib/jvm/java-8-oracle/jre/lib/ext:/usr/lib/jvm/java-8-oracle/lib/ext:/opt/onos/apache-karaf-3.0.5/lib/ext -Dkaraf.instances=/opt/onos/apache-karaf-3.0.5/instances -Dkaraf.home=/opt/onos/apache-karaf-3.0.5 -Dkaraf.base=/opt/onos/apache-karaf-3.0.5 -Dkaraf.data=/opt/onos/apache-karaf-3.0.5/data -Dkaraf.etc=/opt/onos/apache-karaf-3.0.5/etc -Djava.io.tmpdir=/opt/onos/apache-karaf-3.0.5/data/tmp -Djava.util.logging.config.file=/opt/onos/apache-karaf-3.0.5/etc/java.util.logging.properties -Dkaraf.startLocalConsole=true -Dkaraf.startRemoteShell=true -classpath /opt/onos/apache-karaf-3.0.5/lib/karaf-jaas-boot.jar:/opt/onos/apache-karaf-3.0.5/lib/karaf-org.osgi.core.jar:/opt/onos/apache-karaf-3.0.5/lib/karaf.jar org.apache.karaf.main.Main -Restart=on-failure -LimitNOFILE=65535 -TimeoutStopSec=15 - -[Install] -WantedBy=multi-user.target - diff --git a/deploy/adapters/ansible/roles/onos_cluster/files/setup_networks/log.py b/deploy/adapters/ansible/roles/onos_cluster/files/setup_networks/log.py deleted file mode 100755 index a22ff0fe..00000000 --- a/deploy/adapters/ansible/roles/onos_cluster/files/setup_networks/log.py +++ /dev/null @@ -1,43 +0,0 @@ -import logging -import os -loggers = {} -log_dir = "/var/log/setup_network" -try: - os.makedirs(log_dir) -except: - pass - - -def getLogger(name): - if name in loggers: - return loggers[name] - - logger = logging.getLogger(name) - logger.setLevel(logging.DEBUG) - - # create file handler which logs even debug messages - log_file = "%s/%s.log" % (log_dir, name) - try: - os.remove(log_file) - except: - pass - - fh = logging.FileHandler(log_file) - fh.setLevel(logging.DEBUG) - - # create console handler with a higher log level - ch = logging.StreamHandler() - ch.setLevel(logging.ERROR) - - # create formatter and add it to the handlers - formatter = logging.Formatter( - "%(asctime)s - %(name)s - %(levelname)s - %(message)s") - ch.setFormatter(formatter) - fh.setFormatter(formatter) - - # add the handlers to logger - logger.addHandler(ch) - logger.addHandler(fh) - - loggers[name] = logger - return logger diff --git a/deploy/adapters/ansible/roles/onos_cluster/files/setup_networks/net_init b/deploy/adapters/ansible/roles/onos_cluster/files/setup_networks/net_init deleted file mode 100755 index c27a8bf8..00000000 --- a/deploy/adapters/ansible/roles/onos_cluster/files/setup_networks/net_init +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/bash -## BEGIN INIT INFO -# Provides: anamon.init -# Default-Start: 3 5 -# Default-Stop: 0 1 2 4 6 -# Required-Start: $network -# Short-Description: Starts the cobbler anamon boot notification program -# Description: anamon runs the first time a machine is booted after -# installation. -## END INIT INFO - -# -# anamon.init: Starts the cobbler post-install boot notification program -# -# chkconfig: 35 0 6 -# -# description: anamon runs the first time a machine is booted after -# installation. -# -python /opt/setup_networks/setup_networks.py diff --git a/deploy/adapters/ansible/roles/onos_cluster/files/setup_networks/setup_networks.py b/deploy/adapters/ansible/roles/onos_cluster/files/setup_networks/setup_networks.py deleted file mode 100755 index a25d7ea9..00000000 --- a/deploy/adapters/ansible/roles/onos_cluster/files/setup_networks/setup_networks.py +++ /dev/null @@ -1,86 +0,0 @@ -import yaml -import netaddr -import os -import log as logging - -LOG = logging.getLogger("net-init") -config_path = os.path.join(os.path.dirname(__file__), "network.cfg") - - -def setup_bondings(bond_mappings): - print bond_mappings - - -def add_vlan_link(interface, ifname, vlan_id): - LOG.info("add_vlan_link enter") - cmd = "ip link add link %s name %s type vlan id %s; " % ( - ifname, interface, vlan_id) - cmd += "ip link set %s up; ip link set %s up" % (interface, ifname) - LOG.info("add_vlan_link: cmd=%s" % cmd) - os.system(cmd) - - -def add_ovs_port(ovs_br, ifname, uplink, vlan_id=None): - LOG.info("add_ovs_port enter") - cmd = "ovs-vsctl --may-exist add-port %s %s" % (ovs_br, ifname) - if vlan_id: - cmd += " tag=%s" % vlan_id - cmd += " -- set Interface %s type=internal;" % ifname - cmd += "ip link set dev %s address `ip link show %s |awk \ - '/link\/ether/{print $2}'`;" \ - % (ifname, uplink) - cmd += "ip link set %s up;" % ifname - LOG.info("add_ovs_port: cmd=%s" % cmd) - os.system(cmd) - - -def setup_intfs(sys_intf_mappings, uplink_map): - LOG.info("setup_intfs enter") - for intf_name, intf_info in sys_intf_mappings.items(): - if intf_info["type"] == "vlan": - add_vlan_link( - intf_name, - intf_info["interface"], - intf_info["vlan_tag"]) - elif intf_info["type"] == "ovs": - add_ovs_port( - intf_info["interface"], - intf_name, - uplink_map[intf_info["interface"]], - vlan_id=intf_info.get("vlan_tag")) - else: - pass - - -def setup_ips(ip_settings, sys_intf_mappings): - LOG.info("setup_ips enter") - for intf_info in ip_settings.values(): - network = netaddr.IPNetwork(intf_info["cidr"]) - if sys_intf_mappings[intf_info["name"]]["type"] == "ovs": - intf_name = intf_info["name"] - else: - intf_name = intf_info["alias"] - cmd = "ip addr add %s/%s brd %s dev %s;" \ - % (intf_info["ip"], intf_info["netmask"], str(network.broadcast), intf_name) # noqa: E501 - if "gw" in intf_info: - cmd += "route del default;" - cmd += "ip route add default via %s dev %s" % ( - intf_info["gw"], intf_name) - LOG.info("setup_ips: cmd=%s" % cmd) - os.system(cmd) - - -def main(config): - uplink_map = {} - setup_bondings(config["bond_mappings"]) - for provider_net in config["provider_net_mappings"]: - uplink_map[provider_net['name']] = provider_net['interface'] - - setup_intfs(config["sys_intf_mappings"], uplink_map) - setup_ips(config["ip_settings"], config["sys_intf_mappings"]) - -if __name__ == "__main__": - os.system( - "service openvswitch-switch status|| service openvswitch-switch start") - config = yaml.load(open(config_path)) - main(config) diff --git a/deploy/adapters/ansible/roles/onos_cluster/handlers/main.yml b/deploy/adapters/ansible/roles/onos_cluster/handlers/main.yml deleted file mode 100755 index e099fcf4..00000000 --- a/deploy/adapters/ansible/roles/onos_cluster/handlers/main.yml +++ /dev/null @@ -1,11 +0,0 @@ -############################################################################## -# Copyright (c) 2016 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: restart onos service - service: name=onos state=restarted enabled=yes diff --git a/deploy/adapters/ansible/roles/onos_cluster/tasks/main.yml b/deploy/adapters/ansible/roles/onos_cluster/tasks/main.yml deleted file mode 100755 index b86b149e..00000000 --- a/deploy/adapters/ansible/roles/onos_cluster/tasks/main.yml +++ /dev/null @@ -1,125 +0,0 @@ -############################################################################## -# Copyright (c) 2016 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 -############################################################################## ---- -- include_vars: "{{ ansible_os_family }}.yml" - -- name: install onos related packages - action: "{{ ansible_pkg_mgr }} name={{ item }} state=present" - with_items: "{{ packages | union(packages_noarch) }}" - when: groups['onos']|length !=0 - -- name: remove neutron-openvswitch-agent auto start - shell: > - update-rc.d neutron-openvswitch-agent remove; - sed -i /neutron-openvswitch-agent/d /opt/service - when: groups['onos']|length !=0 - ignore_errors: "True" - -- name: shut down and disable Neutron's agent services - service: name=neutron-openvswitch-agent state=stopped - when: groups['onos']|length !=0 - ignore_errors: "True" - -- name: remove neutron-l3-agent auto start - shell: > - update-rc.d neutron-l3-agent remove; - sed -i /neutron-l3-agent/d /opt/service - when: inventory_hostname in groups['onos'] - ignore_errors: "True" - -- name: shut down and disable Neutron's l3 agent services - service: name=neutron-l3-agent state=stopped - when: inventory_hostname in groups['onos'] - ignore_errors: "True" - -- name: Stop the Open vSwitch service and clear existing OVSDB - shell: > - service openvswitch-switch stop ; - rm -rf /var/log/openvswitch/* ; - rm -rf /etc/openvswitch/conf.db ; - service openvswitch-switch start ; - when: groups['onos']|length !=0 - ignore_errors: "True" - -################################################################## -########### Recover External network ################# -################################################################## - -- name: add ovs bridge - openvswitch_bridge: bridge={{ item["name"] }} state=present - with_items: "{{ network_cfg['provider_net_mappings'] }}" - when: item["type"] == "ovs" and groups['onos']|length !=0 - -- name: add ovs uplink - openvswitch_port: bridge={{ item["name"] }} port={{ item["interface"] }} state=present - with_items: "{{ network_cfg['provider_net_mappings'] }}" - when: item["type"] == "ovs" and groups['onos']|length !=0 - -- name: add ovs uplink - shell: ip link set {{ item["interface"] }} up - with_items: "{{ network_cfg['provider_net_mappings'] }}" - when: item["type"] == "ovs" and groups['onos']|length !=0 - -- name: ensure script dir exist - shell: mkdir -p /opt/setup_networks - when: groups['onos']|length !=0 - -- name: copy scripts - copy: src={{ item }} dest=/opt/setup_networks - with_items: - - setup_networks/log.py - - setup_networks/setup_networks.py - when: groups['onos']|length !=0 - -- name: copy boot scripts - copy: src={{ item }} dest=/etc/init.d/ mode=0755 - with_items: - - setup_networks/net_init - when: groups['onos']|length !=0 - -- name: copy config files - template: src=network.cfg dest=/opt/setup_networks - when: groups['onos']|length !=0 - -- name: make sure python lib exist - action: "{{ ansible_pkg_mgr }} name={{ item }} state=present" - with_items: - - python-yaml - - python-netaddr - when: groups['onos']|length !=0 - -- name: run scripts - shell: python /opt/setup_networks/setup_networks.py - when: groups['onos']|length !=0 - -- name: add to boot scripts - service: name=net_init enabled=yes - when: groups['onos']|length !=0 -################################################################## - -- name: restart keepalived to recover external IP - shell: service keepalived restart - when: inventory_hostname in groups['onos'] - ignore_errors: "True" - -- name: upgrade pbr - shell: | - pip install pbr --upgrade - -- name: Install ONOS Cluster on Controller - include: onos_controller.yml - when: inventory_hostname in groups['onos'] and onos_sfc == "Disable" - -- name: Install ONOS Cluster on Controller - include: onos_sfc_controller.yml - when: inventory_hostname in groups['onos'] and onos_sfc == "Enable" - -- name: Config ONOS Cluster - include: openvswitch.yml - when: groups['onos']|length !=0 diff --git a/deploy/adapters/ansible/roles/onos_cluster/tasks/onos_controller.yml b/deploy/adapters/ansible/roles/onos_cluster/tasks/onos_controller.yml deleted file mode 100755 index 87396bf0..00000000 --- a/deploy/adapters/ansible/roles/onos_cluster/tasks/onos_controller.yml +++ /dev/null @@ -1,175 +0,0 @@ -############################################################################## -# Copyright (c) 2016 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: get image http server - shell: awk -F'=' '/compass_server/ {print $2}' /etc/compass.conf - register: http_server - -- name: download onos driver packages - get_url: - url: "http://{{ http_server.stdout_lines[0] }}/packages/onos/{{ onos_driver }}" - dest: /opt/ - -- name: unarchive onos driver package - command: su -s /bin/sh -c "tar xvf /opt/networking-onos.tar -C /opt/" - -- name: install onos driver - command: su -s /bin/sh -c "/opt/networking-onos/install_driver.sh" - -- name: download oracle-jdk8 package file - get_url: - url: "http://{{ http_server.stdout_lines[0] }}/packages/java/{{ jdk8_pkg_name }}" - dest: /opt/{{ jdk8_pkg_name }} - -- name: install onos required packages - action: "{{ ansible_pkg_mgr }} name={{ item }} state=present" - with_items: "{{ packages }}" - -- name: download oracle-jdk8 script file - get_url: - url: "http://{{ http_server.stdout_lines[0] }}/packages/java/{{ jdk8_script_name }}" - dest: /opt/ - -- name: unarchive onos driver package - command: su -s /bin/sh -c "tar xvf /opt/install_jdk8.tar -C /opt/" - -- name: install install_jdk8 package - command: su -s /bin/sh -c "/opt/install_jdk8/install_jdk8.sh" - -- name: create JAVA_HOME environment variable - shell: > - export J2SDKDIR=/usr/lib/jvm/java-8-oracle; - export J2REDIR=/usr/lib/jvm/java-8-oracle/jre; - export PATH=$PATH:/usr/lib/jvm/java-8-oracle/bin; - export PATH=$PATH:/usr/lib/jvm/java-8-oracle/db/bin; - export PATH=$PATH:/usr/lib/jvm/java-8-oracle/jre/bin; - export JAVA_HOME=/usr/lib/jvm/java-8-oracle; - export DERBY_HOME=/usr/lib/jvm/java-8-oracle/db; - -- name: create onos group - group: name=onos system=yes state=present - -- name: create onos user - user: - name: onos - group: onos - home: "{{ onos_home }}" - createhome: "yes" - system: "yes" - shell: "/bin/false" - -- name: download onos package - get_url: - url: "http://{{ http_server.stdout_lines[0] }}/packages/onos/{{ onos_pkg_name }}" - dest: /opt/{{ onos_pkg_name }} - -- name: create new jar repository - command: su -s /bin/sh -c "mkdir ~/.m2" - ignore_errors: "True" - -- name: download jar repository - get_url: - url: "http://{{ http_server.stdout_lines[0] }}/packages/onos/{{ repository }}" - dest: ~/.m2/ - -- name: extract jar repository - command: su -s /bin/sh -c "tar xvf ~/.m2/repository.tar -C ~/.m2/" - -- name: extract onos package - command: | - su -s /bin/sh -c "tar xzf /opt/{{ onos_pkg_name }} -C {{ onos_home }} \ - --strip-components 1 --no-overwrite-dir -k --skip-old-files" onos - -- name: copy onos.service - copy: - src: "{{ onos_service_file.src }}" - dest: "{{ onos_service_file.dst }}" - mode: 0755 - -- name: configure onos service - shell: > - echo 'export ONOS_OPTS=debug' > {{ onos_home }}/options; - echo 'export ONOS_USER=root' >> {{ onos_home }}/options; - mkdir {{ onos_home }}/var; - mkdir {{ onos_home }}/config; - -- name: create karaf config - template: - src: org.apache.karaf.features.cfg - dest: "{{ onos_home }}/{{ karaf_dist }}/etc/org.apache.karaf.features.cfg" - owner: onos - group: onos - mode: 0775 - -- name: wait for config time - shell: "sleep 10" - -- name: chown onos directory and files - shell: > - chown -R onos:onos "{{ onos_home }}"; - chown onos:onos "{{ onos_service_file.dst }}"; - -- name: start onos service - service: name=onos state=started enabled=yes - -- name: wait for onos start time - shell: "sleep 200" - -- name: add onos auto start - shell: > - echo "onos">>/opt/service - -- name: Configure Neutron1 - shell: > - crudini --set /etc/neutron/neutron.conf DEFAULT service_plugins onos_router; - crudini --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 \ - mechanism_drivers onos_ml2; - crudini --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 \ - tenant_network_types vxlan; - crudini --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 type_drivers vxlan - -- name: configure metadata - shell: | - crudini --set /etc/neutron/dhcp_agent.ini DEFAULT \ - enable_isolated_metadata "True"; - -- name: force metadata - shell: | - crudini --set /etc/neutron/dhcp_agent.ini DEFAULT \ - force_metadata "True"; - -- name: configure vsctl for dhcp agent - shell: | - crudini --set /etc/neutron/dhcp_agent.ini OVS \ - ovsdb_interface vsctl; - -- name: Create ML2 Configuration File - template: - src: ml2_conf.sh - dest: "/opt/ml2_conf.sh" - mode: 0777 - -- name: Configure Neutron2 - command: su -s /bin/sh -c "/opt/ml2_conf.sh;" - -- name: Configure Neutron3 - shell: > - mysql -e "drop database if exists neutron_ml2;"; - mysql -e "create database neutron_ml2 character set utf8;"; - mysql -e "grant all on neutron_ml2.* to 'neutron'@'%';"; - su -s /bin/sh -c "neutron-db-manage --config-file /etc/neutron/neutron.conf \ - --config-file /etc/neutron/plugins/ml2/ml2_conf.ini upgrade head" \ - neutron; - -- name: Restart neutron-dhcp-agent - service: name=neutron-dhcp-agent state=restarted - -- name: Restart neutron-server - service: name=neutron-server state=restarted diff --git a/deploy/adapters/ansible/roles/onos_cluster/tasks/onos_sfc_controller.yml b/deploy/adapters/ansible/roles/onos_cluster/tasks/onos_sfc_controller.yml deleted file mode 100755 index 26679373..00000000 --- a/deploy/adapters/ansible/roles/onos_cluster/tasks/onos_sfc_controller.yml +++ /dev/null @@ -1,160 +0,0 @@ -############################################################################## -# Copyright (c) 2016 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: get image http server - shell: awk -F'=' '/compass_server/ {print $2}' /etc/compass.conf - register: http_server - -- name: download onos driver packages - get_url: - url: "http://{{ http_server.stdout_lines[0] }}/packages/onos/{{ onos_driver }}" - dest: /opt/ - -- name: download onos sfc driver package - get_url: - url: "http://{{ http_server.stdout_lines[0] }}/packages/onos/{{ onos_sfc_driver }}" - dest: /opt/ - -- name: unarchive onos driver package - command: su -s /bin/sh -c "tar xvf /opt/networking-onos.tar -C /opt/" - -- name: unarchive onos sfc driver package - command: su -s /bin/sh -c "tar xvf /opt/networking-sfc.tar -C /opt/" - -- name: install onos driver - command: su -s /bin/sh -c "/opt/networking-onos/install_driver.sh" - -- name: install onos sfc driver - command: su -s /bin/sh -c "/opt/networking-sfc/install_driver.sh" - -- name: install onos required packages - action: "{{ ansible_pkg_mgr }} name={{ item }} state=present" - with_items: packages - -- name: download oracle-jdk8 package file - get_url: - url: "http://{{ http_server.stdout_lines[0] }}/packages/java/{{ jdk8_pkg_name }}" - dest: /opt/{{ jdk8_pkg_name }} - -- name: download oracle-jdk8 script file - get_url: - url: "http://{{ http_server.stdout_lines[0] }}/packages/java/{{ jdk8_script_name }}" - dest: /opt/ - -- name: unarchive onos driver package - command: su -s /bin/sh -c "tar xvf /opt/install_jdk8.tar -C /opt/" - -- name: install install_jdk8 package - command: su -s /bin/sh -c "/opt/install_jdk8/install_jdk8.sh" - -- name: create JAVA_HOME environment variable - shell: > - export J2SDKDIR=/usr/lib/jvm/java-8-oracle; - export J2REDIR=/usr/lib/jvm/java-8-oracle/jre; - export PATH=$PATH:/usr/lib/jvm/java-8-oracle/bin; - export PATH=$PATH:/usr/lib/jvm/java-8-oracle/db/bin; - export PATH=$PATH:/usr/lib/jvm/java-8-oracle/jre/bin; - export JAVA_HOME=/usr/lib/jvm/java-8-oracle; - export DERBY_HOME=/usr/lib/jvm/java-8-oracle/db; - -- name: create onos group - group: name=onos system=yes state=present - -- name: create onos user - user: - name: onos - group: onos - home: "{{ onos_home }}" - createhome: "yes" - system: "yes" - shell: "/bin/false" - -- name: download onos package - get_url: - url: "http://{{ http_server.stdout_lines[0] }}/packages/onos/{{ onos_pkg_name }}" - dest: /opt/{{ onos_pkg_name }} - -- name: create new jar repository - command: su -s /bin/sh -c "mkdir ~/.m2" - ignore_errors: "True" - -- name: download jar repository - get_url: - url: "http://{{ http_server.stdout_lines[0] }}/packages/onos/{{ repository }}" - dest: ~/.m2/ - -- name: extract jar repository - command: su -s /bin/sh -c "tar xvf ~/.m2/repository.tar -C ~/.m2/" - -- name: extract onos package - command: | - su -s /bin/sh -c "tar xzf /opt/{{ onos_pkg_name }} -C {{ onos_home }} \ - --strip-components 1 --no-overwrite-dir -k --skip-old-files" onos - -- name: configure onos service - shell: > - echo 'export ONOS_OPTS=debug' > {{ onos_home }}/options; - echo 'export ONOS_USER=root' >> {{ onos_home }}/options; - mkdir {{ onos_home }}/var; - mkdir {{ onos_home }}/config; - sed -i '/pre-stop/i\env JAVA_HOME=/usr/lib/jvm/java-8-oracle' {{ onos_home }}/init/onos.conf; - cp -rf {{ onos_home }}/init/onos.conf /etc/init/; - cp -rf {{ onos_home }}/init/onos.conf /etc/init.d/; - -- name: configure onos boot feature - shell: > - sed -i '/^featuresBoot=/c\featuresBoot={{ onos_boot_features }}' \ - {{ onos_home }}/{{ karaf_dist }}/etc/org.apache.karaf.features.cfg; - -- name: wait for config time - shell: "sleep 10" - -- name: start onos service - service: name=onos state=started enabled=yes - -- name: wait for onos start time - shell: "sleep 200" - -- name: add onos auto start - shell: > - echo "onos">>/opt/service - -######################################################################################### -################################ ONOS connect with OpenStack ####################### -######################################################################################### -- name: Configure Neutron1 - shell: > - crudini --set /etc/neutron/neutron.conf DEFAULT service_plugins \ - networking_sfc.services.sfc.plugin.SfcPlugin, \ - networking_sfc.services.flowclassifier.plugin.FlowClassifierPlugin,onos_router; - crudini --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 mechanism_drivers onos_ml2; - crudini --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 tenant_network_types vxlan; - crudini --set /etc/neutron/plugins/ml2/ml2_conf.ini ml2 type_drivers vxlan - -- name: Create ML2 Configuration File - template: - src: ml2_conf.sh - dest: "/opt/ml2_conf.sh" - mode: 0777 - -- name: Configure Neutron2 - command: su -s /bin/sh -c "/opt/ml2_conf.sh;" - -- name: Configure Neutron3 - shell: > - mysql -e "drop database if exists neutron_ml2;"; - mysql -e "create database neutron_ml2 character set utf8;"; - mysql -e "grant all on neutron_ml2.* to 'neutron'@'%';"; - su -s /bin/sh -c "neutron-db-manage --config-file /etc/neutron/neutron.conf \ - --config-file /etc/neutron/plugins/ml2/ml2_conf.ini upgrade head" neutron; - su -s /bin/sh -c "neutron-db-manage --subproject networking-sfc upgrade head" neutron; - -- name: Restart neutron-server - service: name=neutron-server state=restarted diff --git a/deploy/adapters/ansible/roles/onos_cluster/tasks/openvswitch.yml b/deploy/adapters/ansible/roles/onos_cluster/tasks/openvswitch.yml deleted file mode 100755 index 7541d108..00000000 --- a/deploy/adapters/ansible/roles/onos_cluster/tasks/openvswitch.yml +++ /dev/null @@ -1,77 +0,0 @@ -############################################################################### -# Copyright (c) 2016 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: set veth port - shell: > - ip link add onos_port1 type veth peer name onos_port2; - ifconfig onos_port1 up; - ifconfig onos_port2 up; - ignore_errors: "True" - -- name: set veth to ovs - shell: > - export externamMac=`ifconfig eth1 | grep -Eo '\<[0-9a-fA-F]{2}(:[0-9a-fA-F]{2}){5}'`; - ifconfig onos_port2 hw ether $externamMac; - ovs-vsctl add-port br-prv onos_port1; - ignore_errors: "True" - -- name: add onos optical model feature - command: | - su -s /bin/sh -c "/opt/onos/bin/onos 'feature:install onos-optical-model'"; - when: inventory_hostname in groups['onos'] - -- name: add openflow-base feature - command: | - su -s /bin/sh -c "/opt/onos/bin/onos 'feature:install onos-providers-openflow-base'"; - when: inventory_hostname in groups['onos'] - -- name: add openflow feature - command: | - su -s /bin/sh -c "/opt/onos/bin/onos 'feature:install onos-providers-openflow-message'"; - when: inventory_hostname in groups['onos'] - -- name: add ovsdb-base feature - command: | - su -s /bin/sh -c "/opt/onos/bin/onos 'feature:install onos-providers-ovsdb-base'"; - when: inventory_hostname in groups['onos'] - -- name: add onos driver ovsdb feature - command: | - su -s /bin/sh -c "/opt/onos/bin/onos 'feature:install onos-drivers-ovsdb'"; - when: inventory_hostname in groups['onos'] - -- name: add ovsdb provider host feature - command: | - su -s /bin/sh -c \ - "/opt/onos/bin/onos 'feature:install onos-providers-ovsdb-host'"; - when: inventory_hostname in groups['onos'] - -- name: add vtn feature - command: | - su -s /bin/sh -c \ - "/opt/onos/bin/onos 'feature:install onos-apps-vtn'"; - when: inventory_hostname in groups['onos'] - -- name: set public eth card start - command: | - su -s /bin/sh -c "/opt/onos/bin/onos 'externalportname-set -n onos_port2'" - when: inventory_hostname in groups['onos'] - -- name: set ONOS as the manager - command: | - su -s /bin/sh -c \ - "ovs-vsctl set-manager \ - tcp:{{ ip_settings[groups['onos'][0]]['mgmt']['ip'] }}:6640;" - -- name: delete default gateway - shell: > - route delete default; - when: inventory_hostname not in groups['onos'] - ignore_errors: "True" diff --git a/deploy/adapters/ansible/roles/onos_cluster/templates/cluster.json b/deploy/adapters/ansible/roles/onos_cluster/templates/cluster.json deleted file mode 100755 index 5982c434..00000000 --- a/deploy/adapters/ansible/roles/onos_cluster/templates/cluster.json +++ /dev/null @@ -1,10 +0,0 @@ -{ "ipPrefix": "{{ ip_settings[groups['onos'][0]]['mgmt']['cidr'] }}", - "nodes":[ -{% for host in groups['onos'] %} - {% if loop.last %} - { "id": "{{ ip_settings[host]['mgmt']['ip'] }}", "ip": "{{ ip_settings[host]['mgmt']['ip'] }}", "tcpPort": 9876 } - {% else %} - { "id": "{{ ip_settings[host]['mgmt']['ip'] }}", "ip": "{{ ip_settings[host]['mgmt']['ip'] }}", "tcpPort": 9876 }, - {% endif %} -{% endfor %} -]} diff --git a/deploy/adapters/ansible/roles/onos_cluster/templates/keepalived.conf b/deploy/adapters/ansible/roles/onos_cluster/templates/keepalived.conf deleted file mode 100755 index 4ccf1c43..00000000 --- a/deploy/adapters/ansible/roles/onos_cluster/templates/keepalived.conf +++ /dev/null @@ -1,47 +0,0 @@ -global_defs { - router_id {{ inventory_hostname }} -} - -vrrp_sync_group VG1 { - group { - internal_vip - public_vip - } -} - -vrrp_instance internal_vip { - interface {{ internal_vip.interface }} - virtual_router_id {{ vrouter_id_internal }} - state BACKUP - nopreempt - advert_int 1 - priority {{ 50 + (host_index[inventory_hostname] * 50) }} - - authentication { - auth_type PASS - auth_pass 1234 - } - - virtual_ipaddress { - {{ internal_vip.ip }}/{{ internal_vip.netmask }} dev {{ internal_vip.interface }} - } -} - -vrrp_instance public_vip { - interface br-ex - virtual_router_id {{ vrouter_id_public }} - state BACKUP - nopreempt - advert_int 1 - priority {{ 50 + (host_index[inventory_hostname] * 50) }} - - authentication { - auth_type PASS - auth_pass 4321 - } - - virtual_ipaddress { - {{ network_cfg.public_vip.ip }}/{{ network_cfg.public_vip.netmask }} dev br-ex - } - -} diff --git a/deploy/adapters/ansible/roles/onos_cluster/templates/ml2_conf.sh b/deploy/adapters/ansible/roles/onos_cluster/templates/ml2_conf.sh deleted file mode 100755 index 8af03df4..00000000 --- a/deploy/adapters/ansible/roles/onos_cluster/templates/ml2_conf.sh +++ /dev/null @@ -1,15 +0,0 @@ -############################################################################## -# Copyright (c) 2016 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 -############################################################################## -cat <<EOT>> /etc/neutron/plugins/ml2/ml2_conf.ini -[onos] -password = admin -username = admin -url_path = http://{{ ip_settings[groups['onos'][0]]['mgmt']['ip'] }}:8181/onos/vtn -EOT - diff --git a/deploy/adapters/ansible/roles/onos_cluster/templates/my_configs.debian b/deploy/adapters/ansible/roles/onos_cluster/templates/my_configs.debian deleted file mode 100755 index 5ab1519b..00000000 --- a/deploy/adapters/ansible/roles/onos_cluster/templates/my_configs.debian +++ /dev/null @@ -1,14 +0,0 @@ -{%- for alias, intf in host_ip_settings.items() %} - -auto {{ alias }} -iface {{ alias }} inet static - address {{ intf["ip"] }} - netmask {{ intf["netmask"] }} -{% if "gw" in intf %} - gateway {{ intf["gw"] }} -{% endif %} -{% if intf["name"] == alias %} - pre-up ip link set {{ sys_intf_mappings[alias]["interface"] }} up - pre-up ip link add link {{ sys_intf_mappings[alias]["interface"] }} name {{ alias }} type vlan id {{ sys_intf_mappings[alias]["vlan_tag"] }} -{% endif %} -{% endfor %} diff --git a/deploy/adapters/ansible/roles/onos_cluster/templates/network.cfg b/deploy/adapters/ansible/roles/onos_cluster/templates/network.cfg deleted file mode 100755 index cf271ad6..00000000 --- a/deploy/adapters/ansible/roles/onos_cluster/templates/network.cfg +++ /dev/null @@ -1,5 +0,0 @@ -bond_mappings: {{ network_cfg["bond_mappings"] | to_json }} -ip_settings: {{ ip_settings[inventory_hostname] | to_json }} -sys_intf_mappings: {{ sys_intf_mappings | to_json }} -provider_net_mappings: {{ network_cfg["provider_net_mappings"] | to_json }} - diff --git a/deploy/adapters/ansible/roles/onos_cluster/templates/org.apache.karaf.features.cfg b/deploy/adapters/ansible/roles/onos_cluster/templates/org.apache.karaf.features.cfg deleted file mode 100755 index 321f0ab8..00000000 --- a/deploy/adapters/ansible/roles/onos_cluster/templates/org.apache.karaf.features.cfg +++ /dev/null @@ -1,49 +0,0 @@ -################################################################################ -# -# Licensed to the Apache Software Foundation (ASF) under one or more -# contributor license agreements. See the NOTICE file distributed with -# this work for additional information regarding copyright ownership. -# The ASF licenses this file to You under the Apache License, Version 2.0 -# (the "License"); you may not use this file except in compliance with -# the License. You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# -################################################################################ - -# -# Defines if the startlvl should be respected during feature startup. The default value is true. The default -# behavior for 2.x is false (!) for this property -# -# Be aware that this property is deprecated and will be removed in Karaf 4.0. So, if you need to -# set this to false, please use this only as a temporary solution! -# -#respectStartLvlDuringFeatureStartup=true - - -# -# Defines if the startlvl should be respected during feature uninstall. The default value is true. -# If true, means stop bundles respecting the descend order of start level in a certain feature. -# -#respectStartLvlDuringFeatureUninstall=true - -# -# Comma separated list of features repositories to register by default -# -featuresRepositories=mvn:org.apache.karaf.features/standard/3.0.5/xml/features,mvn:org.onosproject/onos-features/1.8.4/xml/features - -# -# Comma separated list of features to install at startup -# -featuresBoot=config,standard,region,package,kar,ssh,management,webconsole,onos-api,onos-core,onos-incubator,onos-cli,onos-rest,onos-gui - -# -# Defines if the boot features are started in asynchronous mode (in a dedicated thread) -# -featuresBootAsynchronous=false diff --git a/deploy/adapters/ansible/roles/onos_cluster/templates/tablets.json b/deploy/adapters/ansible/roles/onos_cluster/templates/tablets.json deleted file mode 100755 index f71be71f..00000000 --- a/deploy/adapters/ansible/roles/onos_cluster/templates/tablets.json +++ /dev/null @@ -1,63 +0,0 @@ -{ - "nodes": [ -{% for host in groups['onos'] %} - {% if loop.last %} - { - "ip": "{{ ip_settings[host]['mgmt']['ip'] }}", - "id": "{{ ip_settings[host]['mgmt']['ip'] }}", - "tcpPort": 9876 - } - {% else %} - { - "ip": "{{ ip_settings[host]['mgmt']['ip'] }}", - "id": "{{ ip_settings[host]['mgmt']['ip'] }}", - "tcpPort": 9876 - }, - {% endif %} -{% endfor %} - ], - "partitions": { - {% set key = 1 %} - {% for host in groups['onos'] %} - {% if loop.last %} - "p{{ key }}":[ - {% for host in groups['onos'] %} - {% if loop.last %} - { - "ip": "{{ ip_settings[host]['mgmt']['ip'] }}", - "id": "{{ ip_settings[host]['mgmt']['ip'] }}", - "tcpPort": 9876 - } - {% else %} - { - "ip": "{{ ip_settings[host]['mgmt']['ip'] }}", - "id": "{{ ip_settings[host]['mgmt']['ip'] }}", - "tcpPort": 9876 - }, - {% endif %} - {% endfor %} - ] - {% set key = key + 1 %} - {% else %} - "p{{ key }}":[ - {% for host in groups['onos'] %} - {% if loop.last %} - { - "ip": "{{ ip_settings[host]['mgmt']['ip'] }}", - "id": "{{ ip_settings[host]['mgmt']['ip'] }}", - "tcpPort": 9876 - } - {% else %} - { - "ip": "{{ ip_settings[host]['mgmt']['ip'] }}", - "id": "{{ ip_settings[host]['mgmt']['ip'] }}", - "tcpPort": 9876 - }, - {% endif %} - {% endfor %} - ], - {% set key = key + 1 %} - {% endif %} - {% endfor %} -} -} diff --git a/deploy/adapters/ansible/roles/onos_cluster/vars/Debian.yml b/deploy/adapters/ansible/roles/onos_cluster/vars/Debian.yml deleted file mode 100755 index 59a4dbd9..00000000 --- a/deploy/adapters/ansible/roles/onos_cluster/vars/Debian.yml +++ /dev/null @@ -1,14 +0,0 @@ -############################################################################## -# Copyright (c) 2016 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 -############################################################################## ---- -packages: - - software-properties-common - - crudini - -services: [] diff --git a/deploy/adapters/ansible/roles/onos_cluster/vars/RedHat.yml b/deploy/adapters/ansible/roles/onos_cluster/vars/RedHat.yml deleted file mode 100755 index 59a4dbd9..00000000 --- a/deploy/adapters/ansible/roles/onos_cluster/vars/RedHat.yml +++ /dev/null @@ -1,14 +0,0 @@ -############################################################################## -# Copyright (c) 2016 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 -############################################################################## ---- -packages: - - software-properties-common - - crudini - -services: [] diff --git a/deploy/adapters/ansible/roles/onos_cluster/vars/main.yml b/deploy/adapters/ansible/roles/onos_cluster/vars/main.yml deleted file mode 100755 index eaf4ed53..00000000 --- a/deploy/adapters/ansible/roles/onos_cluster/vars/main.yml +++ /dev/null @@ -1,43 +0,0 @@ ---- -############################################################################## -# Copyright (c) 2016 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 -############################################################################## -packages_noarch: [] -onos_pkg_name: onos-1.8.4.tar.gz -onos_home: /opt/onos/ -karaf_dist: apache-karaf-3.0.5 -jdk8_pkg_name: jdk-8u51-linux-x64.tar.gz -jdk8_script_name: install_jdk8.tar -onos_driver: networking-onos.tar -onos_sfc_driver: networking-sfc.tar -repository: repository.tar -onos_service_file: - src: onos.service - dst: /lib/systemd/system/onos.service -onos_boot_features: - - config - - standard - - region - - package - - kar - - ssh - - management - - webconsole - - onos-api - - onos-core - - onos-incubator - - onos-cli - - onos-rest - - onos-gui - - onos-openflow-base - - onos-openflow - - onos-ovsdatabase - - onos-ovsdb-base - - onos-drivers-ovsdb - - onos-ovsdb-provider-host - - onos-app-vtn-onosfw |