Manoel Benedito Neto 8dfed5b6bb Add upgrade script to enable IPsec for multi-node upgrades
This commit adds an upgrade-script to enable and configure IPsec on
multi-node systems. It is required that IPsec is enabled on systems
after all upgrade-scripts are executed to prevent any occurrence of
network instability.

This script should prepare active controller environment and execute
initial-auth operation on each node pending to be IPsec configured.
An ansible-playbook is executed to contact and trigger initial-auth
operation request from other nodes to IPsec server. As a result of
the execution of the playbook, IPsec is configured on nodes. If any
node is missing to be configured, the script exits w/ an exception.
Notice that mtce_heartbeat_failure is updated to its default value
only after IPsec is successfully enabled per the execution of this
ansible-playbook.

The IPsec server port is set to 64764 as 54724 may be used for k8s
services.

Test Plan:
PASS: Deploy AIO-DX system and upgrade software version from stx 8 to
      stx 9. Observe that 100-enable-ipsec-on-hosts.py script is
      executed successfully and IPsec is enabled/configured on all
      nodes. The nodes remain online on unlocked enabled available
      state.
PASS: Deploy AIO-DX system on stx 9 version and manually execute
      100-enable-ipsec-on-hosts.py script. Observe that IPsec is
      already enabled/configured on all nodes, script is successfully
      executed with no additional changes applied on system and nodes
      remain online on unlocked enabled available state.

Depends-on: https://review.opendev.org/c/starlingx/ansible-playbooks/+/923294

Story: 2010940
Task: 50720

Change-Id: I3b3fde8f18d6c3f6d9f3ad548ff633aaabf40362
Signed-off-by: Manoel Benedito Neto <Manoel.BeneditoNeto@windriver.com>
2024-08-09 15:05:38 +00:00
2019-04-19 19:52:42 +00:00
2021-08-27 08:39:06 -04:00
2018-05-31 07:35:52 -07:00
2023-07-19 12:18:04 -03:00

config

The starlingx/config repository handles the StarlingX configuration management services.

Its key component is the System Inventory Service (Sysinv), which provides the system command-line interface (CLI)1.

This repository is not intended to be developed standalone, but rather as part of the StarlingX Source System, which is defined by the StarlingX manifest2.

References


  1. https://docs.starlingx.io/cli_ref/system.html↩︎

  2. https://opendev.org/starlingx/manifest.git↩︎

Description
StarlingX System Configuration Management
Readme 89 MiB
Languages
Python 97.6%
Shell 2%
CSS 0.2%