summaryrefslogtreecommitdiffstats
path: root/ansible
diff options
context:
space:
mode:
Diffstat (limited to 'ansible')
-rw-r--r--ansible/install.yaml52
-rw-r--r--ansible/roles/build_yardstick_image/tasks/cloudimg_modify_nsb.yml33
-rw-r--r--ansible/roles/configure_rabbitmq/tasks/main.yml20
-rw-r--r--ansible/roles/configure_rabbitmq/templates/rabbitmq.config.j25
-rw-r--r--ansible/roles/configure_rabbitmq/templates/user_definitions.json.j223
-rw-r--r--ansible/roles/download_dpdk/defaults/main.yml3
-rw-r--r--ansible/roles/download_samplevnfs/defaults/main.yml2
-rwxr-xr-xansible/roles/install_dependencies_jumphost/tasks/Debian.yml10
-rw-r--r--ansible/roles/install_dpdk/tasks/main.yml17
-rw-r--r--ansible/roles/install_image_dependencies/defaults/main.yml1
-rw-r--r--ansible/ubuntu_server_baremetal_deploy_samplevnfs.yml11
-rw-r--r--ansible/ubuntu_server_cloudimg_modify_samplevnfs.yml15
12 files changed, 118 insertions, 74 deletions
diff --git a/ansible/install.yaml b/ansible/install.yaml
index 084cdcef3..d181c5ffd 100644
--- a/ansible/install.yaml
+++ b/ansible/install.yaml
@@ -39,7 +39,7 @@
- { role: configure_gui, when: installation_mode != inst_mode_container_pull }
- { role: download_trex, when: installation_mode != inst_mode_container_pull }
- { role: install_trex, when: installation_mode != inst_mode_container_pull }
- - { role: configure_rabbitmq, when: installation_mode != inst_mode_container_pull }
+ - { role: configure_rabbitmq, when: installation_mode == inst_mode_baremetal }
post_tasks:
@@ -56,6 +56,8 @@
- name: Prepare baremetal and standalone servers
hosts: yardstick-baremetal,yardstick-standalone
become: yes
+ vars_files:
+ - roles/download_dpdk/defaults/main.yml
environment: "{{ proxy_env }}"
roles:
@@ -69,15 +71,18 @@
- increase_open_file_limits
- install_image_dependencies
- role: download_dpdk
- # dpdk_version: "17.02"
+ dpdk_version: "{{ dpdk_version_for_PROX }}"
+ - role: install_dpdk
+ dpdk_version: "{{ dpdk_version_for_PROX }}"
+ - download_samplevnfs
+ - role: install_samplevnf
+ vnf_name: PROX
+ - download_dpdk
- install_dpdk
- download_trex
- install_trex
- download_civetweb
- install_civetweb
- - download_samplevnfs
- - role: install_samplevnf
- vnf_name: PROX
- role: install_samplevnf
vnf_name: UDP_Replay
- role: install_samplevnf
@@ -95,9 +100,12 @@
- install_pmu_tools
- download_collectd
- install_collectd
+ - docker
+ - barometer_collectd
-- hosts: jumphost
+- name: Prepare to build VM
+ hosts: jumphost
become: yes
vars:
img_prop_item: "{{ IMG_PROPERTY }}"
@@ -111,7 +119,8 @@
when: installation_mode != inst_mode_container
-- hosts: chroot_image
+- name: Build VM in chroot
+ hosts: chroot_image
connection: chroot
become: yes
vars:
@@ -126,7 +135,8 @@
when: installation_mode != inst_mode_container
-- hosts: jumphost
+- name: Clear up after VM is built
+ hosts: jumphost
become: yes
tasks:
@@ -137,11 +147,33 @@
when: installation_mode != inst_mode_container
-- name: start yardstick container on jumphost
+- hosts: jumphost
+ vars_files:
+ - yardstick_config.yml
+
+ roles:
+ - { role: convert_openrc, when: openrc_file is defined }
+
+
+- name: Add OpenStack variables, image
+ hosts: jumphost
+ vars_files:
+ - yardstick_config.yml
+ environment:
+ "{{ openrc }}"
+
+ roles:
+ - { role: clean_images, when: openrc_file is defined }
+ - { role: clean_flavors, when: openrc_file is defined }
+ - { role: create_samplevnfs_image, when: openrc_file is defined }
+
+
+- name: Start yardstick container on jumphost
hosts: jumphost
tasks:
- - include_role:
+ - name: Install docker needed to pull Yardstick container
+ include_role:
name: docker
when: installation_mode == inst_mode_container_pull
diff --git a/ansible/roles/build_yardstick_image/tasks/cloudimg_modify_nsb.yml b/ansible/roles/build_yardstick_image/tasks/cloudimg_modify_nsb.yml
index 9a70ff39a..c9e386346 100644
--- a/ansible/roles/build_yardstick_image/tasks/cloudimg_modify_nsb.yml
+++ b/ansible/roles/build_yardstick_image/tasks/cloudimg_modify_nsb.yml
@@ -52,14 +52,21 @@
- install_image_dependencies
- enable_hugepages_on_boot # can't update grub in chroot/docker
- increase_open_file_limits # needed for collectd plugins
- - download_dpdk
- - install_dpdk
- download_trex
- install_trex
- - download_pktgen
- - install_pktgen
- download_civetweb
- install_civetweb
+ loop_control:
+ loop_var: role_item
+ environment: "{{ proxy_env }}"
+
+- include_role:
+ name: "{{ role_item }}"
+ vars:
+ dpdk_version: "{{ dpdk_version_for_PROX }}"
+ with_items:
+ - download_dpdk
+ - install_dpdk
- download_samplevnfs
loop_control:
loop_var: role_item
@@ -68,6 +75,23 @@
- include_vars: roles/install_dpdk/defaults/main.yml
when: INSTALL_BIN_PATH is undefined
+- name: Install PROX
+ include_role:
+ name: install_samplevnf
+ vars:
+ vnf_name: PROX
+
+- include_role:
+ name: "{{ role_item }}"
+ with_items:
+ - download_dpdk
+ - install_dpdk
+ - download_pktgen
+ - install_pktgen
+ loop_control:
+ loop_var: role_item
+ environment: "{{ proxy_env }}"
+
- include_vars: roles/download_samplevnfs/defaults/main.yml
when: samplevnf_dest is undefined
- set_fact:
@@ -75,7 +99,6 @@
- include_role:
name: install_samplevnf
with_items:
- - PROX
- UDP_Replay
- ACL
- FW
diff --git a/ansible/roles/configure_rabbitmq/tasks/main.yml b/ansible/roles/configure_rabbitmq/tasks/main.yml
index 4ff4222dc..3ad60c1ea 100644
--- a/ansible/roles/configure_rabbitmq/tasks/main.yml
+++ b/ansible/roles/configure_rabbitmq/tasks/main.yml
@@ -12,16 +12,6 @@
# See the License for the specific language governing permissions and
# limitations under the License.
---
-- name: Create rabbitmq configuration
- template:
- src: rabbitmq.config.j2
- dest: /etc/rabbitmq/rabbitmq.config
-
-- name: Define user definitions file
- template:
- src: user_definitions.json.j2
- dest: /etc/rabbitmq/definitions.json
-
- name: Restart rabbitmq
service:
name: rabbitmq-server
@@ -30,5 +20,11 @@
- name: rabbitmqctl start_app
shell: rabbitmqctl start_app
-- name: Enable management plugin
- shell: rabbitmq-plugins enable rabbitmq_management
+- name: Configure rabbitmq
+ rabbitmq_user:
+ user: yardstick
+ password: yardstick
+ configure_priv: .*
+ read_priv: .*
+ write_priv: .*
+ state: present
diff --git a/ansible/roles/configure_rabbitmq/templates/rabbitmq.config.j2 b/ansible/roles/configure_rabbitmq/templates/rabbitmq.config.j2
deleted file mode 100644
index 8f07edf5c..000000000
--- a/ansible/roles/configure_rabbitmq/templates/rabbitmq.config.j2
+++ /dev/null
@@ -1,5 +0,0 @@
- [
- {rabbitmq_management, [
- {load_definitions, "/etc/rabbitmq/definitions.json"}
- ]}
-]. \ No newline at end of file
diff --git a/ansible/roles/configure_rabbitmq/templates/user_definitions.json.j2 b/ansible/roles/configure_rabbitmq/templates/user_definitions.json.j2
deleted file mode 100644
index 7c811f16d..000000000
--- a/ansible/roles/configure_rabbitmq/templates/user_definitions.json.j2
+++ /dev/null
@@ -1,23 +0,0 @@
- {
- "users": [{
- "name": "yardstick",
- "password_hash": "XHp9fBOE3vjTEf7ktiUBHqefW2g=",
- "hashing_algorithm": "rabbit_password_hashing_sha256",
- "tags": ""
- }],
- "vhosts": [{
- "name": "/"
- }],
- "permissions": [{
- "user": "yardstick",
- "vhost": "/",
- "configure": ".*",
- "write": ".*",
- "read": ".*"
- }],
- "parameters": [],
- "policies": [],
- "queues": [],
- "exchanges": [],
- "bindings": []
-}
diff --git a/ansible/roles/download_dpdk/defaults/main.yml b/ansible/roles/download_dpdk/defaults/main.yml
index 83711881b..b2d959eed 100644
--- a/ansible/roles/download_dpdk/defaults/main.yml
+++ b/ansible/roles/download_dpdk/defaults/main.yml
@@ -1,11 +1,11 @@
---
dpdk_version: "17.05"
+dpdk_version_for_PROX: "18.11"
dpdk_url: "http://fast.dpdk.org/rel/dpdk-{{ dpdk_version }}.tar.xz"
dpdk_file: "{{ dpdk_url|basename }}"
dpdk_unarchive: "{{ dpdk_file|regex_replace('[.]tar[.]xz$', '') }}"
dpdk_dest: "{{ clone_dest }}/"
-#NOTE(ralonsoh): DPDK > 17.02 are currently unsupported due to prox build issues
dpdk_md5:
"16.07.2": "md5:4922ea2ec935b64ff5c191fec53344a6"
"16.11.7": "md5:c081d113dfd57633e3bc3ebc802691be"
@@ -16,3 +16,4 @@ dpdk_md5:
"17.11.3": "md5:68ca84ac878011acf44e75d33b46f55b" #unsupported
"18.02.2": "md5:75ad6d39b513649744e49c9fcbbb9ca5" #unsupported
"18.05": "md5:9fc86367cd9407ff6a8dfea56c4eddc4" #unsupported
+ "18.11": "md5:04b86f4a77f4f81a7fbd26467dd2ea9f" # Not supported by SampleVNFs except PROX
diff --git a/ansible/roles/download_samplevnfs/defaults/main.yml b/ansible/roles/download_samplevnfs/defaults/main.yml
index 104f594f5..5ddc9f0f9 100644
--- a/ansible/roles/download_samplevnfs/defaults/main.yml
+++ b/ansible/roles/download_samplevnfs/defaults/main.yml
@@ -13,4 +13,4 @@
samplevnf_url: "https://git.opnfv.org/samplevnf"
samplevnf_dest: "{{ clone_dest }}/samplevnf"
-samplevnf_version: "3afd384b7e68a3cd29f4d2cdf39785f8441d0b6f"
+samplevnf_version: "47123bfc1b3c0d0b01884aebbce1a3e09ad7ddb0"
diff --git a/ansible/roles/install_dependencies_jumphost/tasks/Debian.yml b/ansible/roles/install_dependencies_jumphost/tasks/Debian.yml
index 6c3900d26..a229cc1a2 100755
--- a/ansible/roles/install_dependencies_jumphost/tasks/Debian.yml
+++ b/ansible/roles/install_dependencies_jumphost/tasks/Debian.yml
@@ -91,8 +91,16 @@
- ansible_distribution == 'Ubuntu'
- ansible_distribution_major_version|int >= 17
+- name: Uninstall docker as it conflicts with docker-py
+ pip:
+ name:
+ - docker
+ state: absent
+
- name: Install required docker-py module
pip:
- name: docker-py
+ name:
+ - docker-py
+ - shade
state: latest
environment: "{{ proxy_env }}"
diff --git a/ansible/roles/install_dpdk/tasks/main.yml b/ansible/roles/install_dpdk/tasks/main.yml
index d1dc2900b..a1a377eb1 100644
--- a/ansible/roles/install_dpdk/tasks/main.yml
+++ b/ansible/roles/install_dpdk/tasks/main.yml
@@ -20,6 +20,10 @@
# with_fileglob:
# - "{{ local_nsb_path }}/patches/dpdk_custom_patch/0*.patch"
+- debug:
+ var: dpdk_version
+ verbosity: 2
+
- name: find kernel for image, (including chroot)
find_kernel:
kernel: "{{ ansible_kernel }}"
@@ -106,6 +110,7 @@
src: "{{ dpdk_path }}/{{ dpdk_make_arch }}/kmod/igb_uio.ko"
dest: "{{ dpdk_module_dir }}/igb_uio.ko"
remote_src: yes
+ when: dpdk_version is version(dpdk_version_for_PROX, '>=')
- name: run depmod for dpdk_kernel
command: depmod "{{ dpdk_kernel }}"
@@ -114,20 +119,14 @@
path: "{{ INSTALL_BIN_PATH }}"
state: directory
-- set_fact:
- major: "{{ dpdk_version.split('.')[0] }}"
- minor: "{{ dpdk_version.split('.')[1] }}"
-
-- set_fact:
- major_minor_version: "{{ major }}.{{ minor }}"
-
- name: copy dpdk-devbind.py to correct location
copy:
- src: "{{ dpdk_devbind_usertools if major_minor_version|float >= 17.02 else dpdk_devbind_tools }}"
+ src: "{{ dpdk_devbind_usertools if dpdk_version is version('17.02', '>=') else dpdk_devbind_tools }}"
dest: "{{ INSTALL_BIN_PATH }}/dpdk-devbind.py"
remote_src: yes
force: yes
mode: 0755
+ when: dpdk_version is version(dpdk_version_for_PROX, '>=')
- name: make vPE binary
command: make -j {{ ansible_processor_vcpus }}
@@ -135,6 +134,7 @@
chdir: "{{ dpdk_path }}/examples/ip_pipeline"
environment:
RTE_SDK: "{{ dpdk_path }}"
+ when: dpdk_version is version(dpdk_version_for_PROX, '!=')
- name: Copy vPE to correct location
copy:
@@ -143,3 +143,4 @@
remote_src: yes
force: yes
mode: 0755
+ when: dpdk_version is version(dpdk_version_for_PROX, '!=')
diff --git a/ansible/roles/install_image_dependencies/defaults/main.yml b/ansible/roles/install_image_dependencies/defaults/main.yml
index 7a3f5fa7e..42951bf6d 100644
--- a/ansible/roles/install_image_dependencies/defaults/main.yml
+++ b/ansible/roles/install_image_dependencies/defaults/main.yml
@@ -29,6 +29,7 @@ install_dependencies:
- libxft-dev
- libxss-dev
- expect
+ - libnuma-dev
RedHat:
- bc
- fio
diff --git a/ansible/ubuntu_server_baremetal_deploy_samplevnfs.yml b/ansible/ubuntu_server_baremetal_deploy_samplevnfs.yml
index 84e1f9adf..4f4d7d075 100644
--- a/ansible/ubuntu_server_baremetal_deploy_samplevnfs.yml
+++ b/ansible/ubuntu_server_baremetal_deploy_samplevnfs.yml
@@ -15,6 +15,8 @@
- hosts: yardstick-standalone:jumphost
vars:
clone_dir: /tmp/yardstick-clone
+ vars_files:
+ - roles/download_dpdk/defaults/main.yml
environment:
"{{ proxy_env }}"
@@ -28,16 +30,19 @@
# needed for collectd plugins
- increase_open_file_limits
- install_image_dependencies
- - role: download_dpdk
-# dpdk_version: "17.02"
- - install_dpdk
- download_trex
- install_trex
- download_civetweb
- install_civetweb
+ - role: download_dpdk
+ dpdk_version: "{{ dpdk_version_for_PROX }}"
+ - role: install_dpdk
+ dpdk_version: "{{ dpdk_version_for_PROX }}"
- download_samplevnfs
- role: install_samplevnf
vnf_name: PROX
+ - download_dpdk
+ - install_dpdk
- role: install_samplevnf
vnf_name: UDP_Replay
- role: install_samplevnf
diff --git a/ansible/ubuntu_server_cloudimg_modify_samplevnfs.yml b/ansible/ubuntu_server_cloudimg_modify_samplevnfs.yml
index b27933bd1..d894c3dc4 100644
--- a/ansible/ubuntu_server_cloudimg_modify_samplevnfs.yml
+++ b/ansible/ubuntu_server_cloudimg_modify_samplevnfs.yml
@@ -16,6 +16,8 @@
connection: chroot
vars:
clone_dir: /tmp/yardstick-clone
+ vars_files:
+ - roles/download_dpdk/defaults/main.yml
pre_tasks:
- debug:
@@ -35,18 +37,21 @@
- increase_open_file_limits
- modify_cloud_config
- install_image_dependencies
- - role: download_dpdk
-# dpdk_version: "17.02"
- - install_dpdk
- download_trex
- install_trex
- - download_pktgen
- - install_pktgen
- download_civetweb
- install_civetweb
+ - role: download_dpdk
+ dpdk_version: "{{ dpdk_version_for_PROX }}"
+ - role: install_dpdk
+ dpdk_version: "{{ dpdk_version_for_PROX }}"
- download_samplevnfs
- role: install_samplevnf
vnf_name: PROX
+ - download_dpdk
+ - install_dpdk
+ - download_pktgen
+ - install_pktgen
- role: install_samplevnf
vnf_name: UDP_Replay
- role: install_samplevnf