6b92dba1d5
This change implements TLS configurations for skydive. All servers will get their own certificates signed by the CA as setup on the `skydive_service_setup_host` node. > Documentation for TLS configuration can be found here: http://skydive.network/documentation/ Change-Id: I890b4a5d9076b0474ffe5649f9361cb6018c19fe Signed-off-by: Kevin Carter <kevin.carter@rackspace.com>
145 lines
4.7 KiB
YAML
145 lines
4.7 KiB
YAML
---
|
|
# Copyright 2019, Rackspace US, Inc.
|
|
#
|
|
# Licensed 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.
|
|
|
|
- name: Deploy skydive binaries
|
|
hosts: skydive_agents:skydive_analyzers
|
|
become: yes
|
|
vars:
|
|
skydive_binary_version: "v0.21.0"
|
|
skydive_binary_url: "https://github.com/skydive-project/skydive/releases/download/{{ skydive_binary_version }}/skydive"
|
|
skydive_staging_node: "localhost"
|
|
pre_tasks:
|
|
- name: Create skydive temp path
|
|
file:
|
|
path: "/tmp/skydive/{{ ansible_architecture }}"
|
|
state: directory
|
|
delegate_to: "{{ skydive_staging_node }}"
|
|
become: false
|
|
tasks:
|
|
- name: Built skydive installation
|
|
block:
|
|
- name: Find skydive binaries
|
|
find:
|
|
paths: "/tmp/skydive/{{ ansible_architecture }}/"
|
|
recurse: no
|
|
patterns: "*skydive*"
|
|
register: files_to_copy
|
|
delegate_to: "{{ skydive_staging_node }}"
|
|
run_once: true
|
|
become: false
|
|
- name: Install built skydive
|
|
copy:
|
|
src: "{{ item.path }}"
|
|
dest: "/usr/local/bin/{{ item.path | basename }}"
|
|
mode: "0755"
|
|
with_items: "{{ files_to_copy.files }}"
|
|
when:
|
|
- ((groups['skydive_build_nodes'] | default([])) | length) > 0
|
|
|
|
- name: Upstream skydive installation
|
|
block:
|
|
- name: Get skydive binary
|
|
get_url:
|
|
url: "{{ skydive_binary_url }}"
|
|
dest: "/tmp/skydive/{{ ansible_architecture }}/{{ skydive_binary_url | basename }}"
|
|
mode: '0755'
|
|
delegate_to: "{{ skydive_staging_node }}"
|
|
run_once: true
|
|
become: false
|
|
- name: Install binary skydive
|
|
copy:
|
|
src: "/tmp/skydive/{{ ansible_architecture }}/{{ skydive_binary_url | basename }}"
|
|
dest: "/usr/local/bin/skydive"
|
|
mode: "0755"
|
|
when:
|
|
- ((groups['skydive_build_nodes'] | default([])) | length) < 1
|
|
tags:
|
|
- skydive-install
|
|
|
|
|
|
- name: Deploy traefik binaries
|
|
hosts: skydive_analyzers
|
|
become: yes
|
|
vars:
|
|
traefik_binary_version: "v1.7.7"
|
|
traefik_binary_url: "https://github.com/containous/traefik/releases/download/{{ traefik_binary_version }}/traefik"
|
|
traefik_staging_node: "localhost"
|
|
pre_tasks:
|
|
- name: Create traefik temp path
|
|
file:
|
|
path: "/tmp/traefik/{{ ansible_architecture }}"
|
|
state: directory
|
|
delegate_to: "{{ traefik_staging_node }}"
|
|
become: false
|
|
tasks:
|
|
- name: Built traefik installation
|
|
block:
|
|
- name: Find traefik binaries
|
|
find:
|
|
paths: "/tmp/traefik/{{ ansible_architecture }}/"
|
|
recurse: no
|
|
patterns: "*traefik*"
|
|
register: files_to_copy
|
|
delegate_to: "{{ traefik_staging_node }}"
|
|
run_once: true
|
|
become: false
|
|
- name: Install built traefik
|
|
copy:
|
|
src: "{{ item.path }}"
|
|
dest: "/usr/local/bin/{{ item.path | basename }}"
|
|
mode: "0755"
|
|
with_items: "{{ files_to_copy.files }}"
|
|
when:
|
|
- ((groups['traefik_build_nodes'] | default([])) | length) > 0
|
|
|
|
- name: Upstream traefik installation
|
|
block:
|
|
- name: Get traefik binary
|
|
get_url:
|
|
url: "{{ traefik_binary_url }}"
|
|
dest: "/tmp/traefik/{{ ansible_architecture }}/{{ traefik_binary_url | basename }}"
|
|
mode: '0755'
|
|
delegate_to: "{{ traefik_staging_node }}"
|
|
run_once: true
|
|
become: false
|
|
- name: Install binary traefik
|
|
copy:
|
|
src: "/tmp/traefik/{{ ansible_architecture }}/{{ traefik_binary_url | basename }}"
|
|
dest: "/usr/local/bin/traefik"
|
|
mode: "0755"
|
|
when:
|
|
- ((groups['traefik_build_nodes'] | default([])) | length) < 1
|
|
tags:
|
|
- traefik-install
|
|
|
|
|
|
- name: Configure Skydive analyzers
|
|
hosts: skydive_analyzers
|
|
become: yes
|
|
roles:
|
|
- role: skydive_analyzer
|
|
tags:
|
|
- skydive-analyzer-setup
|
|
|
|
|
|
- name: Configure Skydive agents
|
|
hosts: skydive_agents
|
|
become: yes
|
|
roles:
|
|
- role: skydive_agent
|
|
skydive_service_setup_host: "{{ openstack_service_setup_host | default(groups['skydive_analyzers'][0]) }}"
|
|
tags:
|
|
- skydive-agent-setup
|