---
cifmw_os_net_setup_config:
- name: public
external: true
is_default: true
provider_network_type: flat
provider_physical_network: datacentre
shared: true
subnets:
- name: public_subnet
cidr: 192.168.133.0/24
allocation_pool_start: 192.168.133.190
allocation_pool_end: 192.168.133.250
gateway_ip: 192.168.133.1
enable_dhcp: true
cifmw_run_id: ''
cifmw_use_devscripts: true
cifmw_use_libvirt: true
cifmw_virtualbmc_daemon_port: 50881
cifmw_use_uefi: >-
{{ (cifmw_repo_setup_os_release is defined
and cifmw_repo_setup_os_release == 'rhel') | bool }}
num_racks: 3
cifmw_libvirt_manager_compute_amount: "{{ num_racks }}"
cifmw_libvirt_manager_networker_amount: 3
cifmw_libvirt_manager_pub_net: ocpbm
cifmw_libvirt_manager_spineleaf_setup: true
cifmw_libvirt_manager_network_interface_types:
rtr-ocp: network
s0-rtr: network
s1-rtr: network
l00-s0: network
l01-s0: network
l00-s1: network
l01-s1: network
l10-s0: network
l11-s0: network
l10-s1: network
l11-s1: network
l20-s0: network
l21-s0: network
l20-s1: network
l21-s1: network
l00-node0: network
l00-node1: network
l00-node2: network
l00-node3: network
l00-node4: network
l00-ocp0: network
l00-ocp1: network
l00-ocp2: network
l01-node0: network
l01-node1: network
l01-node2: network
l01-node3: network
l01-node4: network
l01-ocp0: network
l01-ocp1: network
l01-ocp2: network
l10-node0: network
l10-node1: network
l10-node2: network
l10-node3: network
l10-node4: network
l10-ocp0: network
l10-ocp1: network
l10-ocp2: network
l11-node0: network
l11-node1: network
l11-node2: network
l11-node3: network
l11-node4: network
l11-ocp0: network
l11-ocp1: network
l11-ocp2: network
l20-node0: network
l20-node1: network
l20-node2: network
l20-node3: network
l20-node4: network
l20-ocp0: network
l20-ocp1: network
l20-ocp2: network
l21-node0: network
l21-node1: network
l21-node2: network
l21-node3: network
l21-node4: network
l21-ocp0: network
l21-ocp1: network
l21-ocp2: network
cifmw_libvirt_manager_configuration:
networks:
osp_trunk: |
osp_trunk
# router to ocp network
rtr-ocp: |
rtr-ocp
# spines to router networks
s0-rtr: |
s0-rtr
s1-rtr: |
s1-rtr
# leafs to spines networks
## rack0
l00-s0: |
l00-s0
l00-s1: |
l00-s1
l01-s0: |
l01-s0
l01-s1: |
l01-s1
## rack1
l10-s0: |
l10-s0
l10-s1: |
l10-s1
l11-s0: |
l11-s0
l11-s1: |
l11-s1
## rack2
l20-s0: |
l20-s0
l20-s1: |
l20-s1
l21-s0: |
l21-s0
l21-s1: |
l21-s1
# leafs to nodes and ocps
## rack0
l00-node0: |
l00-node0
l00-node1: |
l00-node1
l00-node2: |
l00-node2
l00-node3: |
l00-node3
l00-node4: |
l00-node4
l00-ocp0: |
l00-ocp0
l00-ocp1: |
l00-ocp1
l00-ocp2: |
l00-ocp2
l01-node0: |
l01-node0
l01-node1: |
l01-node1
l01-node2: |
l01-node2
l01-node3: |
l01-node3
l01-node4: |
l01-node4
l01-ocp0: |
l01-ocp0
l01-ocp1: |
l01-ocp1
l01-ocp2: |
l01-ocp2
## rack1
l10-node0: |
l10-node0
l10-node1: |
l10-node1
l10-node2: |
l10-node2
l10-node3: |
l10-node3
l10-node4: |
l10-node4
l10-ocp0: |
l10-ocp0
l10-ocp1: |
l10-ocp1
l10-ocp2: |
l10-ocp2
l11-node0: |
l11-node0
l11-node1: |
l11-node1
l11-node2: |
l11-node2
l11-node3: |
l11-node3
l11-node4: |
l11-node4
l11-ocp0: |
l11-ocp0
l11-ocp1: |
l11-ocp1
l11-ocp2: |
l11-ocp2
## rack2
l20-node0: |
l20-node0
l20-node1: |
l20-node1
l20-node2: |
l20-node2
l20-node3: |
l20-node3
l20-node4: |
l20-node4
l20-ocp0: |
l20-ocp0
l20-ocp1: |
l20-ocp1
l20-ocp2: |
l20-ocp2
l21-node0: |
l21-node0
l21-node1: |
l21-node1
l21-node2: |
l21-node2
l21-node3: |
l21-node3
l21-node4: |
l21-node4
l21-ocp0: |
l21-ocp0
l21-ocp1: |
l21-ocp1
l21-ocp2: |
l21-ocp2
ocpbm: |
ocpbm
ocppr: |
ocppr
r0_tr: |
r0_tr
r1_tr: |
r1_tr
r2_tr: |
r2_tr
vms:
controller:
root_part_id: >-
{{
(cifmw_repo_setup_os_release is defined and cifmw_repo_setup_os_release == 'rhel') |
ternary(4, 1)
}}
image_url: "{{ cifmw_discovered_image_url }}"
sha256_image_name: "{{ cifmw_discovered_hash }}"
image_local_dir: "{{ cifmw_basedir }}/images/"
disk_file_name: "base-os.qcow2"
disksize: 50
memory: 8
cpus: 4
nets:
- ocpbm
- osp_trunk
r0-compute: &r0_compute_def
amount: 0
root_part_id: >-
{{
(cifmw_repo_setup_os_release is defined and cifmw_repo_setup_os_release == 'rhel') |
ternary(4, 1)
}}
image_url: "{{ cifmw_discovered_image_url }}"
sha256_image_name: "{{ cifmw_discovered_hash }}"
image_local_dir: "{{ cifmw_basedir }}/images/"
disk_file_name: "compute-base-os.qcow2"
disksize: 50
memory: 8
cpus: 4
nets:
- "ocpbm"
- "r0_tr"
spineleafnets:
- # rack0 - compute0
- "l00-node0"
- "l01-node0"
- # rack0 - compute0
- "l00-node1"
- "l01-node1"
r1-compute:
amount: 0
root_part_id: >-
{{
(cifmw_repo_setup_os_release is defined and cifmw_repo_setup_os_release == 'rhel') |
ternary(4, 1)
}}
uefi: "{{ cifmw_use_uefi }}"
image_url: "{{ cifmw_discovered_image_url }}"
sha256_image_name: "{{ cifmw_discovered_hash }}"
image_local_dir: "{{ cifmw_basedir }}/images/"
disk_file_name: "compute-centos-stream-9.qcow2"
disksize: 50
memory: 8
cpus: 4
nets:
- ocpbm
- r1_tr
spineleafnets:
- # rack1 - compute0
- "l10-node0"
- "l11-node0"
- # rack1 - compute1
- "l10-node1"
- "l11-node1"
r2-compute:
amount: 0
root_part_id: >-
{{
(cifmw_repo_setup_os_release is defined and cifmw_repo_setup_os_release == 'rhel') |
ternary(4, 1)
}}
uefi: "{{ cifmw_use_uefi }}"
image_url: "{{ cifmw_discovered_image_url }}"
sha256_image_name: "{{ cifmw_discovered_hash }}"
image_local_dir: "{{ cifmw_basedir }}/images/"
disk_file_name: "compute-centos-stream-9.qcow2"
disksize: 50
memory: 8
cpus: 4
nets:
- ocpbm
- r2_tr
spineleafnets:
- # rack2 - compute0
- "l20-node0"
- "l21-node0"
- # rack2 - compute1
- "l20-node1"
- "l21-node1"
r0-networker:
amount: 1
root_part_id: >-
{{
(cifmw_repo_setup_os_release is defined and cifmw_repo_setup_os_release == 'rhel') |
ternary(4, 1)
}}
image_url: "{{ cifmw_discovered_image_url }}"
sha256_image_name: "{{ cifmw_discovered_hash }}"
image_local_dir: "{{ cifmw_basedir }}/images/"
disk_file_name: "base-os.qcow2"
disksize: 40
memory: 8
cpus: 4
# ansible_group: networker
nets:
- "ocpbm"
- "r0_tr"
spineleafnets:
- # rack0 - networker0
- "l00-node2"
- "l01-node2"
r1-networker:
amount: 1
root_part_id: >-
{{
(cifmw_repo_setup_os_release is defined and cifmw_repo_setup_os_release == 'rhel') |
ternary(4, 1)
}}
image_url: "{{ cifmw_discovered_image_url }}"
sha256_image_name: "{{ cifmw_discovered_hash }}"
image_local_dir: "{{ cifmw_basedir }}/images/"
disk_file_name: "base-os.qcow2"
disksize: 40
memory: 8
cpus: 4
# ansible_group: networker
nets:
- "ocpbm"
- "r1_tr"
spineleafnets:
- # rack1 - networker0
- "l10-node2"
- "l11-node2"
r2-networker:
amount: 1
root_part_id: >-
{{
(cifmw_repo_setup_os_release is defined and cifmw_repo_setup_os_release == 'rhel') |
ternary(4, 1)
}}
image_url: "{{ cifmw_discovered_image_url }}"
sha256_image_name: "{{ cifmw_discovered_hash }}"
image_local_dir: "{{ cifmw_basedir }}/images/"
disk_file_name: "base-os.qcow2"
disksize: 40
memory: 8
cpus: 4
# ansible_group: networker
nets:
- "ocpbm"
- "r2_tr"
spineleafnets:
- # rack2 - networker0
- "l20-node2"
- "l21-node2"
ocp:
amount: 3
uefi: true
root_part_id: 4
admin_user: core
image_local_dir: "{{ cifmw_basedir }}/images/"
disk_file_name: "ocp_master"
disksize: "105"
memory: 16
cpus: 10
extra_disks_num: 1
extra_disks_size: "20G"
nets: # nets common to all the ocp nodes
- "ocppr"
- "ocpbm"
- "osp_trunk"
ocp_worker:
amount: 10
uefi: true
root_part_id: 4
admin_user: core
image_local_dir: "{{ cifmw_basedir }}/images/"
disk_file_name: "ocp_worker"
disksize: "105"
memory: 16
cpus: 10
extra_disks_num: 1
extra_disks_size: "20G"
nets: # nets common to all the ocp_worker nodes
- "ocppr"
- "ocpbm"
- "osp_trunk"
spineleafnets:
- # rack0 - ocp worker 0
- "l00-ocp0"
- "l01-ocp0"
- # rack0 - ocp worker 1
- "l00-ocp1"
- "l01-ocp1"
- # rack0 - ocp worker 2
- "l00-ocp2"
- "l01-ocp2"
- # rack1 - ocp worker 3
- "l10-ocp0"
- "l11-ocp0"
- # rack1 - ocp worker 4
- "l10-ocp1"
- "l11-ocp1"
- # rack1 - ocp worker 5
- "l10-ocp2"
- "l11-ocp2"
- # rack2 - ocp worker 6
- "l20-ocp0"
- "l21-ocp0"
- # rack2 - ocp worker 7
- "l20-ocp1"
- "l21-ocp1"
- # rack2 - ocp worker 8
- "l20-ocp2"
- "l21-ocp2"
- # router - ocp_tester (worker 9)
- "rtr-ocp"
router:
amount: 1
root_part_id: >-
{{
(cifmw_repo_setup_os_release is defined and cifmw_repo_setup_os_release == 'rhel') |
ternary(4, 1)
}}
image_url: "{{ cifmw_discovered_image_url }}"
sha256_image_name: "{{ cifmw_discovered_hash }}"
image_local_dir: "{{ cifmw_basedir }}/images/"
disk_file_name: "base-os.qcow2"
disksize: 25
memory: 4
cpus: 2
nets: # nets common to all the router nodes
- "ocpbm"
spineleafnets:
- # router - ocp_tester
- "s0-rtr"
- "s1-rtr"
- "rtr-ocp"
spine:
amount: 2
root_part_id: >-
{{
(cifmw_repo_setup_os_release is defined and cifmw_repo_setup_os_release == 'rhel') |
ternary(4, 1)
}}
image_url: "{{ cifmw_discovered_image_url }}"
sha256_image_name: "{{ cifmw_discovered_hash }}"
image_local_dir: "{{ cifmw_basedir }}/images/"
disk_file_name: "base-os.qcow2"
disksize: 25
memory: 4
cpus: 2
nets: # nets common to all the spine nodes
- "ocpbm"
spineleafnets:
- # spine0
- "l00-s0"
- "l01-s0"
- "l10-s0"
- "l11-s0"
- "l20-s0"
- "l21-s0"
- "s0-rtr"
- # spine1
- "l00-s1"
- "l01-s1"
- "l10-s1"
- "l11-s1"
- "l20-s1"
- "l21-s1"
- "s1-rtr"
leaf:
amount: 6
root_part_id: >-
{{
(cifmw_repo_setup_os_release is defined and cifmw_repo_setup_os_release == 'rhel') |
ternary(4, 1)
}}
image_url: "{{ cifmw_discovered_image_url }}"
sha256_image_name: "{{ cifmw_discovered_hash }}"
image_local_dir: "{{ cifmw_basedir }}/images/"
disk_file_name: "base-os.qcow2"
disksize: 25
memory: 4
cpus: 2
nets: # nets common to all the leaf nodes
- "ocpbm"
spineleafnets:
- # rack0 - leaf00
- "l00-s0"
- "l00-s1"
- "l00-node0"
- "l00-node1"
- "l00-node2"
- "l00-ocp0"
- "l00-ocp1"
- "l00-ocp2"
- "l00-node3"
- "l00-node4"
- # rack0 - leaf01
- "l01-s0"
- "l01-s1"
- "l01-node0"
- "l01-node1"
- "l01-node2"
- "l01-ocp0"
- "l01-ocp1"
- "l01-ocp2"
- "l01-node3"
- "l01-node4"
- # rack1 - leaf10
- "l10-s0"
- "l10-s1"
- "l10-node0"
- "l10-node1"
- "l10-node2"
- "l10-ocp0"
- "l10-ocp1"
- "l10-ocp2"
- "l10-node3"
- # rack1 - leaf11
- "l11-s0"
- "l11-s1"
- "l11-node0"
- "l11-node1"
- "l11-node2"
- "l11-ocp0"
- "l11-ocp1"
- "l11-ocp2"
- "l11-node3"
- # rack2 - leaf20
- "l20-s0"
- "l20-s1"
- "l20-node0"
- "l20-node1"
- "l20-node2"
- "l20-ocp0"
- "l20-ocp1"
- "l20-ocp2"
- "l20-node3"
- # rack2 - leaf21
- "l21-s0"
- "l21-s1"
- "l21-node0"
- "l21-node1"
- "l21-node2"
- "l21-ocp0"
- "l21-ocp1"
- "l21-ocp2"
- "l21-node3"
## devscript support for OCP deploy
cifmw_devscripts_config_overrides:
fips_mode: "{{ cifmw_fips_enabled | default(false) | bool }}"
cluster_subnet_v4: "192.172.0.0/16"
network_config_folder: "{{ ansible_user_dir }}/netconf"
# Required for egress traffic from pods to the osp_trunk network
cifmw_devscripts_enable_ocp_nodes_host_routing: true
# Automation section. Most of those parameters will be passed to the
# controller-0 as-is and be consumed by the `deploy-va.sh` script.
# Please note, all paths are on the controller-0, meaning managed by the
# Framework. Please do not edit them!
cifmw_architecture_scenario: bgp-l3-xl
cifmw_kustomize_deploy_architecture_examples_path: "examples/dt/"
cifmw_arch_automation_file: "bgp-l3-xl.yaml"
cifmw_architecture_automation_file: >-
{{
(cifmw_architecture_repo,
'automation/vars',
cifmw_arch_automation_file) |
path_join
}}
cifmw_kustomize_deploy_metallb_source_files: >-
{{
(cifmw_architecture_repo,
'examples/dt/bgp-l3-xl/metallb') |
path_join
}}
# bgp_spines_leaves_playbook: "{{ ansible_user_dir }}/{{ zuul.projects['github.com/ci-framework'].
# src_dir }}/playbooks/bgp/prepare-bgp-spines-leaves.yaml"
# bgp_computes_playbook: "{{ ansible_user_dir }}/{{ zuul.projects['github.com/ci-framework'].
# src_dir }}/playbooks/bgp/prepare-bgp-computes.yaml"
pre_deploy:
- name: BGP spines and leaves configuration
type: playbook
source: "{{ ansible_user_dir }}/src/github.com/openstack-k8s-operators/ci-framework/playbooks/bgp/prepare-bgp-spines-leaves.yaml"
extra_vars:
num_racks: "{{ num_racks }}"
router_bool: true
edpm_nodes_per_rack: 5
ocp_nodes_per_rack: 3
router_uplink_ip: 100.64.10.1
cifmw_repo_setup_rhos_release_rpm: "{{ cifmw_repo_setup_rhos_release_rpm }}"
# post_deploy:
# - name: BGP computes configuration
# type: playbook
# source: "{{ bgp_computes_playbook }}"
# extra_vars:
# #networkers_bool: true
# networkers_bool: false
cifmw_libvirt_manager_default_gw_nets:
- ocpbm
- r0_tr
- r1_tr
- r2_tr
cifmw_networking_mapper_interfaces_info_translations:
osp_trunk:
- controlplane
- ctlplane
r0_tr:
- ctlplaner0
r1_tr:
- ctlplaner1
r2_tr:
- ctlplaner2