From a94e0159d98d511be4b4da9afe077e1188cc6ce6 Mon Sep 17 00:00:00 2001 From: CNlukai Date: Mon, 11 Jan 2016 17:39:55 +0800 Subject: ONOSFW-157 Add script of installer integration onos Change-Id: I0ac05b6a7ede8654af2c2573ea7ecb3e5e7a9473 Signed-off-by: CNlukai --- .../installer/onos_cluster/files/install_jdk8.tar | Bin 4608 -> 0 bytes .../onos_cluster/files/networking-onos.tar | Bin 153600 -> 0 bytes .../installer/onos_cluster/handlers/main.yml | 3 - .../scripts/installer/onos_cluster/tasks/main.yml | 44 ------- .../onos_cluster/tasks/onos_controller.yml | 146 --------------------- .../installer/onos_cluster/tasks/openvswitch.yml | 83 ------------ .../installer/onos_cluster/templates/cluster.json | 10 -- .../installer/onos_cluster/templates/ml2_conf.sh | 7 - .../installer/onos_cluster/templates/tablets.json | 63 --------- .../scripts/installer/onos_cluster/vars/Debian.yml | 6 - .../scripts/installer/onos_cluster/vars/RedHat.yml | 6 - .../scripts/installer/onos_cluster/vars/main.yml | 6 - 12 files changed, 374 deletions(-) delete mode 100755 framework/scripts/installer/onos_cluster/files/install_jdk8.tar delete mode 100644 framework/scripts/installer/onos_cluster/files/networking-onos.tar delete mode 100755 framework/scripts/installer/onos_cluster/handlers/main.yml delete mode 100755 framework/scripts/installer/onos_cluster/tasks/main.yml delete mode 100755 framework/scripts/installer/onos_cluster/tasks/onos_controller.yml delete mode 100755 framework/scripts/installer/onos_cluster/tasks/openvswitch.yml delete mode 100755 framework/scripts/installer/onos_cluster/templates/cluster.json delete mode 100755 framework/scripts/installer/onos_cluster/templates/ml2_conf.sh delete mode 100755 framework/scripts/installer/onos_cluster/templates/tablets.json delete mode 100755 framework/scripts/installer/onos_cluster/vars/Debian.yml delete mode 100755 framework/scripts/installer/onos_cluster/vars/RedHat.yml delete mode 100755 framework/scripts/installer/onos_cluster/vars/main.yml (limited to 'framework/scripts/installer/onos_cluster') diff --git a/framework/scripts/installer/onos_cluster/files/install_jdk8.tar b/framework/scripts/installer/onos_cluster/files/install_jdk8.tar deleted file mode 100755 index faaaeb39..00000000 Binary files a/framework/scripts/installer/onos_cluster/files/install_jdk8.tar and /dev/null differ diff --git a/framework/scripts/installer/onos_cluster/files/networking-onos.tar b/framework/scripts/installer/onos_cluster/files/networking-onos.tar deleted file mode 100644 index 9358199c..00000000 Binary files a/framework/scripts/installer/onos_cluster/files/networking-onos.tar and /dev/null differ diff --git a/framework/scripts/installer/onos_cluster/handlers/main.yml b/framework/scripts/installer/onos_cluster/handlers/main.yml deleted file mode 100755 index c8742dd5..00000000 --- a/framework/scripts/installer/onos_cluster/handlers/main.yml +++ /dev/null @@ -1,3 +0,0 @@ ---- -- name: restart onos service - service: name=onos state=restarted enabled=yes diff --git a/framework/scripts/installer/onos_cluster/tasks/main.yml b/framework/scripts/installer/onos_cluster/tasks/main.yml deleted file mode 100755 index 3cd4421b..00000000 --- a/framework/scripts/installer/onos_cluster/tasks/main.yml +++ /dev/null @@ -1,44 +0,0 @@ ---- -- include_vars: "{{ ansible_os_family }}.yml" - -- name: remove neutron-plugin-openvswitch-agent auto start - shell: > - update-rc.d neutron-plugin-openvswitch-agent remove; - sed -i /neutron-plugin-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-plugin-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: > - ovs-vsctl del-br br-int ; - ovs-vsctl del-br br-tun ; - ovs-vsctl del-manager ; - when: groups['onos']|length !=0 - ignore_errors: True - -- name: Install ONOS Cluster on Controller - include: onos_controller.yml - when: inventory_hostname in groups['onos'] - -- name: Install ONOS Cluster on Compute - include: openvswitch.yml - when: groups['onos']|length !=0 -# when: groups['onos']|length !=0 and inventory_hostname not in groups['onos'] - diff --git a/framework/scripts/installer/onos_cluster/tasks/onos_controller.yml b/framework/scripts/installer/onos_cluster/tasks/onos_controller.yml deleted file mode 100755 index 0606fad9..00000000 --- a/framework/scripts/installer/onos_cluster/tasks/onos_controller.yml +++ /dev/null @@ -1,146 +0,0 @@ ---- -- name: upload onos driver package - unarchive: src=networking-onos.tar dest=/opt/ - -- name: install onos driver - command: su -s /bin/sh -c "/opt/networking-onos/install_driver.sh" - -- name: install onos required packages - action: "{{ ansible_pkg_mgr }} name={{ item }} state=present" - with_items: packages - -- name: get image http server - shell: awk -F'=' '/compass_server/ {print $2}' /etc/compass.conf - register: http_server - -- name: download oracle-jdk8 package file - get_url: url="http://{{ http_server.stdout_lines[0] }}/packages/onos/{{ jdk8_pkg_name }}" dest=/opt/{{ jdk8_pkg_name }} - -- name: upload install_jdk8 scripts - unarchive: src=install_jdk8.tar dest=/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:/usr/lib/jvm/java-8-oracle/db/bin:/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" - -- name: download jar repository - get_url: url="http://{{ http_server.stdout_lines[0] }}/packages/onos/repository.tar" 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/; -# notify: -# - restart onos service - -- 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: create cluster json -# template: -# src: cluster.json -# dest: "{{ onos_home }}/config/cluster.json" -# notify: -# - restart onos service - -#- name: create tablets json -# template: -# src: tablets.json -# dest: "{{ onos_home }}/config/tablets.json" -# notify: -# - restart onos service - -- name: wait for config time - shell: "sleep 10" - -- name: start onos service - service: name=onos state=started enabled=yes - -- name: wait for restart time - shell: "sleep 60" - -- name: start onos service - service: name=onos state=restarted enabled=yes - -- name: wait for onos start time - shell: "sleep 60" - -- name: start onos service - service: name=onos state=restarted enabled=yes - -- name: wait for onos start time - shell: "sleep 100" - -- name: add onos auto start - shell: > - echo "onos">>/opt/service - -########################################################################################################## -################################ ONOS connect with OpenStack ################################ -########################################################################################################## -#- name: Run OpenVSwitch Script -# include: openvswitch.yml - -- 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: 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-server - service: name=neutron-server state=restarted diff --git a/framework/scripts/installer/onos_cluster/tasks/openvswitch.yml b/framework/scripts/installer/onos_cluster/tasks/openvswitch.yml deleted file mode 100755 index f8ed551f..00000000 --- a/framework/scripts/installer/onos_cluster/tasks/openvswitch.yml +++ /dev/null @@ -1,83 +0,0 @@ ---- -#- name: remove neutron-plugin-openvswitch-agent auto start -# shell: > -# update-rc.d neutron-plugin-openvswitch-agent remove; -# sed -i /neutron-plugin-openvswitch-agent/d /opt/service - -#- name: shut down and disable Neutron's agent services -# service: name=neutron-plugin-openvswitch-agent state=stopped - -#- name: Stop the Open vSwitch service and clear existing OVSDB -# shell: > -# ovs-vsctl del-br br-int ; -# ovs-vsctl del-br br-tun ; -# ovs-vsctl del-manager ; - -#- name: get image http server -# shell: awk -F'=' '/compass_server/ {print $2}' /etc/compass.conf -# register: http_server -# -#- name: download ovs -# get_url: url="http://{{ http_server.stdout_lines[0] }}/packages/onos/openvswitch.tar" dest=/opt/openvswitch.tar -# -#- name: extract ovs -# command: su -s /bin/sh -c "tar xvf /opt/openvswitch.tar -C /opt/" -# -#- name: update ovs -# shell: > -# cd /opt/openvswitch; -# dpkg -i openvswitch-common_2.3.0-1_amd64.deb; -# dpkg -i openvswitch-switch_2.3.0-1_amd64.deb; - -- name: start up onos-external nic - command: su -s /bin/sh -c "ifconfig eth2 0 up" - -#- name: wait for onos start time -# shell: "sleep 200" - -- name: add ovsdatabase feature - command: su -s /bin/sh -c "/opt/onos/bin/onos 'feature:install onos-ovsdatabase'"; - when: inventory_hostname == groups['onos'][0] - -- name: add openflow-base feature - command: su -s /bin/sh -c "/opt/onos/bin/onos 'feature:install onos-openflow-base'"; - when: inventory_hostname == groups['onos'][0] - -- name: add openflow feature - command: su -s /bin/sh -c "/opt/onos/bin/onos 'feature:install onos-openflow'"; - when: inventory_hostname == groups['onos'][0] - -- name: add vtn feature - command: su -s /bin/sh -c "/opt/onos/bin/onos 'feature:install onos-app-vtn-onosfw'"; - when: inventory_hostname == groups['onos'][0] - - -- name: set public eth card start - command: su -s /bin/sh -c "/opt/onos/bin/onos 'externalportname-set -n eth2'" - when: inventory_hostname == groups['onos'][0] - -- 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: create public network - shell: > - export OS_PASSWORD=console; - export OS_TENANT_NAME=admin; - export OS_AUTH_URL=http://{{ internal_vip.ip }}:35357/v2.0; - export OS_USERNAME=ADMIN; - neutron net-create ext-net --shared --router:external=True; - neutron subnet-create ext-net --name ext-subnet {{ public_net_info.floating_ip_cidr }}; - when: inventory_hostname == groups['controller'][0] - -- name: set gateway mac address - shell: > - ping -c 1 {{ ansible_default_ipv4.gateway }}; - gatewayMac=`arp -a {{ ansible_default_ipv4.gateway }} | awk '{print $4}'`; - /opt/onos/bin/onos "externalgateway-update -m $gatewayMac"; - when: inventory_hostname == groups['onos'][0] - -- name: delete default gateway - shell: > - route delete default; - when: inventory_hostname not in groups['onos'] - ignore_errors: True diff --git a/framework/scripts/installer/onos_cluster/templates/cluster.json b/framework/scripts/installer/onos_cluster/templates/cluster.json deleted file mode 100755 index 5982c434..00000000 --- a/framework/scripts/installer/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/framework/scripts/installer/onos_cluster/templates/ml2_conf.sh b/framework/scripts/installer/onos_cluster/templates/ml2_conf.sh deleted file mode 100755 index a9e61acb..00000000 --- a/framework/scripts/installer/onos_cluster/templates/ml2_conf.sh +++ /dev/null @@ -1,7 +0,0 @@ -cat <> /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/framework/scripts/installer/onos_cluster/templates/tablets.json b/framework/scripts/installer/onos_cluster/templates/tablets.json deleted file mode 100755 index f71be71f..00000000 --- a/framework/scripts/installer/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/framework/scripts/installer/onos_cluster/vars/Debian.yml b/framework/scripts/installer/onos_cluster/vars/Debian.yml deleted file mode 100755 index 70ce4ef2..00000000 --- a/framework/scripts/installer/onos_cluster/vars/Debian.yml +++ /dev/null @@ -1,6 +0,0 @@ ---- -packages: - - software-properties-common - - crudini - -services: [] diff --git a/framework/scripts/installer/onos_cluster/vars/RedHat.yml b/framework/scripts/installer/onos_cluster/vars/RedHat.yml deleted file mode 100755 index 70ce4ef2..00000000 --- a/framework/scripts/installer/onos_cluster/vars/RedHat.yml +++ /dev/null @@ -1,6 +0,0 @@ ---- -packages: - - software-properties-common - - crudini - -services: [] diff --git a/framework/scripts/installer/onos_cluster/vars/main.yml b/framework/scripts/installer/onos_cluster/vars/main.yml deleted file mode 100755 index f083a89c..00000000 --- a/framework/scripts/installer/onos_cluster/vars/main.yml +++ /dev/null @@ -1,6 +0,0 @@ -onos_pkg_url: http://downloads.onosproject.org/release/onos-1.3.0.tar.gz -onos_pkg_name: onos-1.3.0.tar.gz -onos_home: /opt/onos/ -karaf_dist: apache-karaf-3.0.3 -jdk8_pkg_name: jdk-8u51-linux-x64.tar.gz -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-app-vtn-onosfw -- cgit 1.2.3-korg