blob: bf4e6a6f3633b070d6ab90efe3054c3d1dc91659 [file] [log] [blame]
# Copyright 2017-present Open Networking Foundation
#
# 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: "VOLT-HA Deploy | Add Namespace"
command: kubectl apply -f {{ target_voltha_home }}/k8s/namespace.yml
run_once: true
# Ingress
- name: "VOLT-HA Deploy | Start Ingress Controller"
command: kubectl apply -f {{ target_voltha_home }}/k8s/ingress
run_once: true
- name: "VOLT-HA Deploy | Wait for Default HTTP backend to be ready"
command: kubectl rollout status deployment/default-http-backend -w -n {{ voltha_namespace }}
run_once: true
- name: "VOLT-HA Deploy | Wait for Ingress Controller to be ready"
command: kubectl rollout status deployment/nginx-ingress-controller -w -n {{ voltha_namespace }}
run_once: true
# Zookeeper
- name: "VOLT-HA Deploy | Start zookeeper"
command: kubectl apply -f {{ target_voltha_home }}/k8s/zookeeper.yml
run_once: true
- name: "VOLT-HA Deploy | Wait for zookeeper to be ready"
command: kubectl rollout status statefulset/{{ item }} -w -n {{ voltha_namespace }}
with_items:
- zookeeper1
- zookeeper2
- zookeeper3
run_once: true
# Kafka
- name: "VOLT-HA Deploy | Start kafka"
command: kubectl apply -f {{ target_voltha_home }}/k8s/kafka.yml
run_once: true
- name: "VOLT-HA Deploy | Wait for kafka to be ready"
command: kubectl rollout status statefulset/kafka -w -n {{ voltha_namespace }}
run_once: true
# Fluentd Config
- name: "VOLT-HA Deploy | Add Fluentd Configuration"
command: kubectl apply -f {{ target_voltha_home }}/k8s/fluentd-config.yml
run_once: true
# Fluentd
- name: "VOLT-HA Deploy | Start fluentd"
command: kubectl apply -f {{ target_voltha_home }}/k8s/fluentd.yml
run_once: true
- name: "VOLT-HA Deploy | Wait for fluentd to be ready"
command: kubectl rollout status deployment/{{ item }} -w -n {{ voltha_namespace }}
with_items:
- fluentdactv
- fluentdstby
run_once: true
# Etcd
- name: "VOLT-HA Deploy | Define etcd cluster role"
command: kubectl apply -f {{ target_voltha_home }}/k8s/operator/etcd/cluster_role.yml
run_once: true
- name: "VOLT-HA Deploy | Define etcd cluster role binding"
command: kubectl apply -f {{ target_voltha_home }}/k8s/operator/etcd/cluster_role_binding.yml
run_once: true
- name: "VOLT-HA Deploy | Start etcd operator"
command: kubectl apply -f {{ target_voltha_home }}/k8s/operator/etcd/operator.yml
run_once: true
- name: "VOLT-HA Deploy | Wait for etcd operator to be ready"
command: kubectl rollout status deployment/etcd-operator -w -n {{ voltha_namespace }}
run_once: true
- name: "VOLT-HA Deploy | Start etcd cluster"
command: kubectl apply -f {{ target_voltha_home }}/k8s/operator/etcd/etcd_cluster.yml
run_once: true
# Voltha Core (for etcd)
- name: "VOLT-HA Deploy | Start VOLT-HA core (for etcd)"
command: kubectl apply -f {{ target_voltha_home }}/k8s/vcore_for_etcd.yml
run_once: true
- name: "VOLT-HA Deploy | Wait for VOLT-HA core (for etcd) to be ready"
command: kubectl rollout status deployment/vcore -w -n {{ voltha_namespace }}
run_once: true
# OFagent
- name: "VOLT-HA Deploy | Start OpenFlow Agent"
command: kubectl apply -f {{ target_voltha_home }}/k8s/ofagent.yml
run_once: true
- name: "VOLT-HA Deploy | Wait for OpenFlow Agent to be ready"
command: kubectl rollout status deployment/ofagent -w -n {{ voltha_namespace }}
run_once: true
# Envoy (for etcd)
- name: "VOLT-HA Deploy | Start Envoy (for etcd)"
command: kubectl apply -f {{ target_voltha_home }}/k8s/envoy_for_etcd.yml
run_once: true
- name: "VOLT-HA Deploy | Wait for Envoy (for etcd) to be ready"
command: kubectl rollout status deployment/voltha -w -n {{ voltha_namespace }}
run_once: true
# Voltha CLI
- name: "VOLT-HA Deploy | Start VOLT-HA CLI"
command: kubectl apply -f {{ target_voltha_home }}/k8s/vcli.yml
run_once: true
- name: "VOLT-HA Deploy | Wait for VOLT-HA CLI to be ready"
command: kubectl rollout status deployment/vcli -w -n {{ voltha_namespace }}
run_once: true
# NETCONF
- name: "VOLT-HA Deploy | Start NETCONF"
command: kubectl apply -f {{ target_voltha_home }}/k8s/netconf.yml
run_once: true
- name: "VOLT-HA Deploy | Wait for NETCONF to be ready"
command: kubectl rollout status deployment/netconf -w -n {{ voltha_namespace }}
run_once: true
# Grafana
- name: "VOLT-HA Deploy | Start Grafana"
command: kubectl apply -f {{ target_voltha_home }}/k8s/grafana.yml
run_once: true
when: monitor_voltha_stats
- name: "VOLT-HA Deploy | Wait for Grafana to be ready"
command: kubectl rollout status deployment/grafana -w -n {{ voltha_namespace }}
run_once: true
when: monitor_voltha_stats
# Dashd and Shovel
- name: "VOLT-HA Deploy | Start DASHD and SHOVEL"
command: kubectl apply -f {{ target_voltha_home }}/k8s/stats.yml
run_once: true
when: monitor_voltha_stats
- name: "VOLT-HA Deploy | Wait for DASHD and SHOVEL to be ready"
command: kubectl rollout status deployment/{{ item }} -w -n {{ voltha_namespace }}
with_items:
- dashd
- shovel
run_once: true
when: monitor_voltha_stats