Commit 87bd8858 authored by Sergio Gimenez's avatar Sergio Gimenez
Browse files

Add docs

[WIP] Add SRM and OEG

[WIP] Add SRM and OEG
parent d097c53c
Loading
Loading
Loading
Loading
+18 −10
Original line number Diff line number Diff line
@@ -32,8 +32,7 @@ external_host_ip: "{{ host_ip }}"
prometheus_nodeport: 30090
grafana_nodeport: 30091
alertmanager_nodeport: 30092
harbor_http_nodeport: 30002
harbor_https_nodeport: 30003
zot_http_nodeport: 30050
i2edge_nodeport: 30769
artefact_manager_nodeport: 30080
lite2edge_nodeport: 30081
@@ -44,6 +43,10 @@ mongodb_nodeport: 30017
remote_federation_manager_nodeport: 30990
remote_keycloak_nodeport: 30083
remote_mongodb_nodeport: 30018
# OOP Platform - SRM and OEG
srm_nodeport: 32415
oeg_nodeport: 32263
oop_namespace: oop

# Port mappings - using parameterized NodePorts to avoid duplication
port_mappings:
@@ -62,14 +65,9 @@ port_mappings:
    host_port: "{{ alertmanager_nodeport }}"
    listen_address: "{{ api_server_address }}"
    protocol: TCP
  - name: "Harbor HTTP"
    container_port: "{{ harbor_http_nodeport }}"
    host_port: "{{ harbor_http_nodeport }}"
    listen_address: "{{ api_server_address }}"
    protocol: TCP
  - name: "Harbor HTTPS"
    container_port: "{{ harbor_https_nodeport }}"
    host_port: "{{ harbor_https_nodeport }}"
  - name: "Zot"
    container_port: "{{ zot_http_nodeport }}"
    host_port: "{{ zot_http_nodeport }}"
    listen_address: "{{ api_server_address }}"
    protocol: TCP
  - name: "i2edge"
@@ -122,6 +120,16 @@ port_mappings:
    host_port: "{{ remote_mongodb_nodeport }}"
    listen_address: "{{ api_server_address }}"
    protocol: TCP
  - name: "SRM"
    container_port: "{{ srm_nodeport }}"
    host_port: "{{ srm_nodeport }}"
    listen_address: "{{ api_server_address }}"
    protocol: TCP
  - name: "OEG"
    container_port: "{{ oeg_nodeport }}"
    host_port: "{{ oeg_nodeport }}"
    listen_address: "{{ api_server_address }}"
    protocol: TCP

# Cluster nodes configuration
control_plane_nodes: 1
+19 −4
Original line number Diff line number Diff line
@@ -8,14 +8,15 @@ all:
      ansible_connection: local
      ansible_python_interpreter: "{{ ansible_playbook_python }}"

    openop_3:
      ansible_host: openop-3
    openop_1:
      ansible_host: 192.168.123.188
      ansible_connection: ssh
      ansible_user: ubuntu
      ansible_ssh_common_args: '-o StrictHostKeyChecking=no -o ConnectTimeout=300 -o ServerAliveInterval=30'
      ansible_ssh_private_key_file: "~/.ssh/keys/openop-dev-vm.key"
      ansible_ssh_common_args: '-o StrictHostKeyChecking=no -o ConnectTimeout=300 -o ServerAliveInterval=30 -o IdentitiesOnly=yes'
      ansible_python_interpreter: /usr/bin/python3
      deployment_mode: remote
      host_ip: 192.168.123.155
      host_ip: 192.168.123.188
      kubeconfig_output_dir: "/home/ubuntu/kind-cluster-config"

    openop_2:
@@ -28,7 +29,20 @@ all:
      host_ip: 192.168.123.178
      kubeconfig_output_dir: "/home/ubuntu/kind-cluster-config"

    openop_3:
      ansible_host: openop-3
      ansible_connection: ssh
      ansible_user: ubuntu
      ansible_ssh_common_args: '-o StrictHostKeyChecking=no -o ConnectTimeout=300 -o ServerAliveInterval=30'
      ansible_python_interpreter: /usr/bin/python3
      deployment_mode: remote
      host_ip: 192.168.123.155
      kubeconfig_output_dir: "/home/ubuntu/kind-cluster-config"

  children:
    openop_dev:
      hosts:
        openop_1:
    op1_nodes:
      hosts:
        openop_3:
@@ -37,6 +51,7 @@ all:
        openop_2:
    kind_cluster:
      children:
        openop_dev:
        op1_nodes:
        op2_nodes:

+42 −0
Original line number Diff line number Diff line
---
# Playbook: Single OOP Deployment Scenario with OEG and SRM
# Description: Deploys the complete Operator Platform environment with OEG and SRM
# Usage: ansible-playbook playbooks/scenarios/deploy_oop_with_oeg_srm.yml

- import_playbook: ../infrastructure/prerequisites/install-python-deps.yml
- import_playbook: ../infrastructure/prerequisites/setup-docker.yml
- import_playbook: ../infrastructure/prerequisites/setup-kubectl.yml
- import_playbook: ../infrastructure/prerequisites/setup-python-libs.yml

- name: Configure Scenario Variables
  hosts: kind_cluster
  gather_facts: false
  tasks:
    - name: Load group variables
      ansible.builtin.include_vars:
        file: "{{ playbook_dir }}/../../group_vars/all.yml"
    
    # Enable OOP storage preparation for OEG and SRM
    - name: Enable OOP storage preparation
      ansible.builtin.set_fact:
        prepare_oop_storage: true
    
    # TODO Make this pluggable for different edgecloud adapters
    - name: Set Federation Manager to use lite2edge
      ansible.builtin.set_fact:
        federation_manager_ecp_port: "{{ lite2edge_nodeport }}"
        federation_manager_ecp_client_name: "lite2edge"
        remote_federation_manager_ecp_port: "{{ lite2edge_nodeport }}"
        remote_federation_manager_ecp_client_name: "lite2edge"

- import_playbook: ../infrastructure/kind-cluster/deploy.yml
- import_playbook: ../infrastructure/install-prometheus.yml
- import_playbook: ../infrastructure/install-node-feature-discovery.yml
- import_playbook: ../tools/zot/deploy.yml
- import_playbook: ../tools/artefact-manager/deploy.yml
- import_playbook: ../tools/srm/deploy.yml
- import_playbook: ../tools/oeg/deploy.yml
- import_playbook: ../tools/federation-manager/deploy.yml
- import_playbook: ../tools/federation-manager/deploy-remote.yml
- import_playbook: ../tools/homer/deploy.yml
- import_playbook: ../tools/lite2edge/deploy.yml
+12 −6
Original line number Diff line number Diff line
@@ -3,10 +3,10 @@
# Description: Deploys the complete Operator Platform environment using lite2edge
# Usage: ansible-playbook playbooks/scenarios/deploy_single_oop.yml

- import_playbook: ../tools/prerequisites/install-python-deps.yml
- import_playbook: ../tools/prerequisites/setup-docker.yml
- import_playbook: ../tools/prerequisites/setup-kubectl.yml
- import_playbook: ../tools/prerequisites/setup-python-libs.yml
- import_playbook: ../infrastructure/prerequisites/install-python-deps.yml
- import_playbook: ../infrastructure/prerequisites/setup-docker.yml
- import_playbook: ../infrastructure/prerequisites/setup-kubectl.yml
- import_playbook: ../infrastructure/prerequisites/setup-python-libs.yml

- name: Configure Scenario Variables
  hosts: kind_cluster
@@ -16,6 +16,11 @@
      ansible.builtin.include_vars:
        file: "{{ playbook_dir }}/../../group_vars/all.yml"
    
    # Enable OOP storage preparation for OEG and SRM
    - name: Enable OOP storage preparation
      ansible.builtin.set_fact:
        prepare_oop_storage: true
    
    # TODO Make this pluggable for different edgecloud adapters
    - name: Set Federation Manager to use lite2edge
      ansible.builtin.set_fact:
@@ -27,10 +32,11 @@
- import_playbook: ../infrastructure/kind-cluster/deploy.yml
- import_playbook: ../infrastructure/install-prometheus.yml
- import_playbook: ../infrastructure/install-node-feature-discovery.yml
- import_playbook: ../tools/harbor/deploy.yml
- import_playbook: ../tools/zot/deploy.yml
- import_playbook: ../tools/artefact-manager/deploy.yml
- import_playbook: ../tools/srm/deploy.yml
- import_playbook: ../tools/oeg/deploy.yml
- import_playbook: ../tools/federation-manager/deploy.yml
- import_playbook: ../tools/federation-manager/deploy-remote.yml
- import_playbook: ../tools/homer/deploy.yml
- import_playbook: ../tools/lite2edge/deploy.yml
+22 −4
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@
      ansible.builtin.set_fact:
        kind_cluster_name: "op1"
        worker_nodes: 0
        prepare_oop_storage: true
        # Use default ports for OP1, but ensure kubeconfig is distinct
        kubeconfig_filename: "op1-kubeconfig.yaml"
        # Ensure URL matches the port (default 6443)
@@ -52,14 +53,22 @@
      ansible.builtin.include_role:
        name: node-feature-discovery

    - name: Deploy Harbor
    - name: Deploy Zot
      ansible.builtin.include_role:
        name: harbor
        name: zot

    - name: Deploy Artefact Manager
      ansible.builtin.include_role:
        name: artefact-manager

    - name: Deploy SRM
      ansible.builtin.include_role:
        name: srm

    - name: Deploy OEG
      ansible.builtin.include_role:
        name: oeg

    - name: Deploy Federation Manager
      ansible.builtin.include_role:
        name: federation-manager
@@ -87,6 +96,7 @@
        kind_cluster_name: "op2"
        # api_server_port: 6543 # Use default port since it's a separate VM
        worker_nodes: 0
        prepare_oop_storage: true
        
        # Use default ports since it is a separate VM
        kubeconfig_filename: "op2-kubeconfig.yaml"
@@ -117,14 +127,22 @@
      ansible.builtin.include_role:
        name: node-feature-discovery

    - name: Deploy Harbor
    - name: Deploy Zot
      ansible.builtin.include_role:
        name: harbor
        name: zot

    - name: Deploy Artefact Manager
      ansible.builtin.include_role:
        name: artefact-manager

    - name: Deploy SRM
      ansible.builtin.include_role:
        name: srm

    - name: Deploy OEG
      ansible.builtin.include_role:
        name: oeg

    - name: Deploy Federation Manager
      ansible.builtin.include_role:
        name: federation-manager
Loading