Skip to content

Commit 2fec9ba

Browse files
authored
Merge pull request #731 from stackhpc/merge-zed-antelope
Merge zed into antelope
2 parents 281c45e + f6165a6 commit 2fec9ba

36 files changed

+3021
-77
lines changed

.github/workflows/overcloud-host-image-build.yml

Lines changed: 3 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -34,14 +34,14 @@ jobs:
3434
runs-on: [self-hosted, stackhpc-kayobe-config-kolla-builder-rl9]
3535
permissions: {}
3636
steps:
37-
- uses: actions/checkout@v3
37+
- uses: actions/checkout@v4
3838
with:
3939
path: src/kayobe-config
4040

4141
- name: Determine OpenStack release
4242
id: openstack_release
4343
run: |
44-
BRANCH=$(awk -F'=' '/defaultbranch/ {print $2}' .gitreview)
44+
BRANCH=$(awk -F'=' '/defaultbranch/ {print $2}' src/kayobe-config/.gitreview)
4545
echo "openstack_release=${BRANCH}" | sed "s|stable/||" >> $GITHUB_OUTPUT
4646
4747
# Generate a tag to apply to all built overcloud host images.
@@ -67,7 +67,7 @@ jobs:
6767

6868
- name: Install dependencies
6969
run: |
70-
sudo dnf -y install zstd
70+
sudo dnf -y install zstd debootstrap
7171
7272
- name: Setup networking
7373
run: |
@@ -84,14 +84,6 @@ jobs:
8484
sudo ip l set dummy1 up
8585
sudo ip l set dummy1 master breth1
8686
87-
# FIXME: Without this workaround we see the following issue after the runner is power cycled:
88-
# TASK [MichaelRigart.interfaces : RedHat | ensure network service is started and enabled] ***
89-
# Unable to start service network: Job for network.service failed because the control process exited with error code.
90-
# See \"systemctl status network.service\" and \"journalctl -xe\" for details.
91-
- name: Kill dhclient (workaround)
92-
run: |
93-
(sudo killall dhclient || true) && sudo systemctl restart network
94-
9587
- name: Install Kayobe
9688
run: |
9789
mkdir -p venvs &&

doc/requirements.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,3 +5,4 @@
55
reno>=3.4.0 # Apache-2.0
66
sphinx>=4.2.0 # BSD
77
sphinxcontrib-svg2pdfconverter>=0.1.0 # BSD
8+
Sphinx-Substitution-Extensions # Apache-2.0

doc/source/conf.py

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,15 +30,18 @@
3030
# Variables to override
3131

3232
current_series = "2023.1"
33+
previous_series = "zed"
3334
branch = f"stackhpc/{current_series}"
3435

3536
# Substitutions loader
36-
rst_epilog = """
37+
rst_prolog = """
3738
.. |current_release| replace:: {current_release}
3839
.. |current_release_git_branch_name| replace:: {current_release_git_branch_name}
40+
.. |previous_release| replace:: {previous_release}
3941
""".format( # noqa: E501
4042
current_release_git_branch_name=branch,
4143
current_release=current_series,
44+
previous_release=previous_series,
4245
)
4346

4447
# -- General configuration ----------------------------------------------------
@@ -51,6 +54,7 @@
5154
'sphinx.ext.extlinks',
5255
#'sphinx.ext.intersphinx',
5356
'sphinxcontrib.rsvgconverter',
57+
'sphinx_substitution_extensions',
5458
]
5559

5660
# autodoc generation is a bit aggressive and a nuisance when doing heavy
@@ -118,3 +122,6 @@
118122
f"{project}-doc": (f"https://docs.openstack.org/{project}/{current_series}/", "%s documentation")
119123
for project in extlinks_projects
120124
}
125+
extlinks["skc-doc"] = (f"https://stackhpc-kayobe-config.readthedocs.io/en/stackhpc-{current_series}/", "%s documentation")
126+
extlinks["kayobe-renos"] = (f"https://docs.openstack.org/releasenotes/kayobe/{current_series}.html", "%s release notes")
127+
extlinks["kolla-ansible-renos"] = (f"https://docs.openstack.org/releasenotes/kolla-ansible/{current_series}.html", "%s release notes")

doc/source/configuration/monitoring.rst

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -136,3 +136,39 @@ mgrs group and list them as the endpoints for prometheus. Additionally,
136136
depending on your configuration, you may need set the
137137
``kolla_enable_prometheus_ceph_mgr_exporter`` variable to ``true`` in order to
138138
enable the ceph mgr exporter.
139+
140+
OpenStack Capacity
141+
==================
142+
143+
OpenStack Capacity allows you to see how much space you have avaliable
144+
in your cloud. StackHPC Kayobe Config includes this exporter by default
145+
and it's necessary that some variables are set to allow deployment.
146+
147+
To successfully deploy OpenStack Capacity, you are required to specify
148+
the OpenStack application credentials in ``kayobe/secrets.yml`` as:
149+
150+
.. code-block:: yaml
151+
152+
secrets_os_exporter_auth_url: <some_auth_url>
153+
secrets_os_exporter_credential_id: <some_credential_id>
154+
secrets_os_exporter_credential_secret: <some_credential_secret>
155+
156+
After defining your credentials, You may deploy OpenStack Capacity
157+
using the ``ansible/deploy-os-capacity-exporter.yml`` Ansible playbook
158+
via Kayobe.
159+
160+
.. code-block:: console
161+
162+
kayobe playbook run ansible/deploy-os-capacity-exporter.yml
163+
164+
It is required that you re-configure the Prometheus, Grafana and HAProxy
165+
services following deployment, to do this run the following Kayobe command.
166+
167+
.. code-block:: console
168+
169+
kayobe overcloud service reconfigure -kt grafana,prometheus,haproxy
170+
171+
If you notice ``HaproxyServerDown`` or ``HaproxyBackendDown`` prometheus
172+
alerts after deployment it's likely the os_exporter secrets have not been
173+
set correctly, double check you have entered the correct authentication
174+
information appropiate to your cloud and re-deploy.

doc/source/configuration/vault.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -296,6 +296,7 @@ Configure Barbican
296296
[vault_plugin]
297297
vault_url = https://{{ kolla_internal_vip_address }}:8200
298298
use_ssl = True
299+
ssl_ca_crt_file = {% raw %}{{ openstack_cacert }}{% endraw %}
299300
approle_role_id = {{ secrets_barbican_approle_role_id }}
300301
approle_secret_id = {{ secrets_barbican_approle_secret_id }}
301302
kv_mountpoint = barbican

doc/source/configuration/wazuh.rst

Lines changed: 22 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,9 @@ Define VM sizing in ``etc/kayobe/inventory/group_vars/wazuh-manager/infra-vms``:
5757
infra_vm_data_capacity: "200G"
5858
5959
60-
Optional: define LVM volumes ``etc/kayobe/inventory/group_vars/wazuh-manager/lvm``:
60+
Optional: define LVM volumes in ``etc/kayobe/inventory/group_vars/wazuh-manager/lvm``.
61+
``/var/ossec`` often requires greater storage space, and ``/var/lib/wazuh-indexer``
62+
may be beneficial too.
6163

6264
.. code-block:: console
6365
@@ -73,7 +75,7 @@ Optional: define LVM volumes ``etc/kayobe/inventory/group_vars/wazuh-manager/lvm
7375
size: "100%VG"
7476
filesystem: "ext4"
7577
mount: true
76-
mntp: /var/lib/elasticsearch”
78+
mntp: "/var/ossec"
7779
create: true
7880
7981
@@ -249,7 +251,7 @@ It will be used by wazuh secrets playbook to generate wazuh secrets vault file.
249251
.. code-block:: console
250252
251253
kayobe playbook run $KAYOBE_CONFIG_PATH/ansible/wazuh-secrets.yml
252-
ansible-vault encrypt --vault-password-file ~/vault.pass $KAYOBE_CONFIG_PATH/inventory/group_vars/wazuh/wazuh-manager/wazuh-secrets
254+
ansible-vault encrypt --vault-password-file ~/vault.pass $KAYOBE_CONFIG_PATH/wazuh-secrets.yml
253255
254256
255257
TLS (optional)
@@ -300,6 +302,21 @@ Example OpenSSL rune to convert to PKCS#8:
300302

301303
TODO: document how to use a local certificate. Do we need to override all certificates?
302304

305+
Custom SCA Policies (optional)
306+
------------------------------
307+
308+
Wazuh ships with a large selection of Security Configuration Assessment
309+
rulesets. However, you may find you want to add more. This can be achieved via
310+
`custom policies <https://documentation.wazuh.com/current/user-manual/capabilities/sec-config-assessment/how-to-configure.html>`_.
311+
312+
SKC supports this automatically, just add the policy file from this PR to
313+
``{{ kayobe_env_config_path }}/wazuh/custom_sca_policies``.
314+
315+
Currently, Wazuh does not ship with a CIS benchmark for Rocky 9. You can find
316+
the in-development policy here: https://github.com/wazuh/wazuh/pull/17810 To
317+
include this in your deployment, simply copy it to
318+
``{{ kayobe_env_config_path }}/wazuh/custom_sca_policies/cis_rocky_linux_9.yml``.
319+
303320
Deploy
304321
------
305322

@@ -314,6 +331,8 @@ Encrypt the keys (and remember to commit to git):
314331

315332
``ansible-vault encrypt --vault-password-file ~/vault.pass $KAYOBE_CONFIG_PATH/ansible/wazuh/certificates/certs/*.key``
316333

334+
.. _wazuh-verification:
335+
317336
Verification
318337
------------
319338

doc/source/operations/index.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ This guide is for operators of the StackHPC Kayobe configuration project.
77
.. toctree::
88
:maxdepth: 1
99

10+
upgrading
1011
rabbitmq
1112
octavia
1213
hotfix-playbook

0 commit comments

Comments
 (0)