From 156049071d3cc5774d6db5b4c3c1778dd3b24aef Mon Sep 17 00:00:00 2001 From: Christian Berendt Date: Tue, 21 Nov 2023 11:03:30 +0100 Subject: [PATCH] Overall improvements (#151) Signed-off-by: Christian Berendt --- docs/getting-started.md | 15 ++++ docs/getting-started/index.md | 15 ---- .../ceph.md | 2 +- .../commons/index.md | 2 +- .../commons/network.md | 0 .../commons/packages.md | 0 .../commons/services.md | 0 .../commons/sshconfig.md | 0 .../commons/sysctl.md | 0 .../commons/timezone.md | 0 .../configuration-repository.md | 81 +++++++++++++++++- docs/guides/configuration-guide/index.md | 6 ++ .../inventory.md | 2 +- .../manager.md | 2 +- .../openstack/horizon.md | 0 .../openstack/index.md | 2 +- .../openstack/keystone.md | 0 .../self-signed-certificates.md | 0 .../services/index.md | 2 +- docs/guides/configuration-guides/index.md | 83 ------------------- docs/guides/deploy-guide/bootstrap.md | 74 +---------------- docs/guides/deploy-guide/manager.md | 4 +- docs/guides/deploy-guide/provisioning.md | 74 +++++++++++++++++ docs/guides/deploy-guide/seed.md | 6 ++ .../deploy-guide/{ => services}/ceph.md | 4 +- docs/guides/deploy-guide/services/index.md | 6 ++ .../{ => services}/infrastructure.md | 2 +- .../{ => services}/logging-monitoring.md | 2 +- .../deploy-guide/{ => services}/network.md | 0 .../deploy-guide/{ => services}/openstack.md | 4 +- .../deploy-guide/{ => services}/zuul.md | 0 .../index.md | 0 .../manager.md | 0 .../openstack.md | 0 .../{upgrade-guides => upgrade-guide}/ceph.md | 0 .../docker.md | 0 .../index.md | 0 .../infrastructure.md | 0 .../logging-monitoring.md | 0 .../manager.md | 2 +- .../network.md | 0 .../openstack.md | 0 42 files changed, 203 insertions(+), 187 deletions(-) create mode 100644 docs/getting-started.md delete mode 100644 docs/getting-started/index.md rename docs/guides/{configuration-guides => configuration-guide}/ceph.md (99%) rename docs/guides/{configuration-guides => configuration-guide}/commons/index.md (95%) rename docs/guides/{configuration-guides => configuration-guide}/commons/network.md (100%) rename docs/guides/{configuration-guides => configuration-guide}/commons/packages.md (100%) rename docs/guides/{configuration-guides => configuration-guide}/commons/services.md (100%) rename docs/guides/{configuration-guides => configuration-guide}/commons/sshconfig.md (100%) rename docs/guides/{configuration-guides => configuration-guide}/commons/sysctl.md (100%) rename docs/guides/{configuration-guides => configuration-guide}/commons/timezone.md (100%) rename docs/{getting-started => guides/configuration-guide}/configuration-repository.md (74%) create mode 100644 docs/guides/configuration-guide/index.md rename docs/guides/{configuration-guides => configuration-guide}/inventory.md (97%) rename docs/guides/{configuration-guides => configuration-guide}/manager.md (99%) rename docs/guides/{configuration-guides => configuration-guide}/openstack/horizon.md (100%) rename docs/guides/{configuration-guides => configuration-guide}/openstack/index.md (99%) rename docs/guides/{configuration-guides => configuration-guide}/openstack/keystone.md (100%) rename docs/guides/{configuration-guides => configuration-guide}/self-signed-certificates.md (100%) rename docs/guides/{configuration-guides => configuration-guide}/services/index.md (89%) delete mode 100644 docs/guides/configuration-guides/index.md create mode 100644 docs/guides/deploy-guide/provisioning.md create mode 100644 docs/guides/deploy-guide/seed.md rename docs/guides/deploy-guide/{ => services}/ceph.md (95%) create mode 100644 docs/guides/deploy-guide/services/index.md rename docs/guides/deploy-guide/{ => services}/infrastructure.md (96%) rename docs/guides/deploy-guide/{ => services}/logging-monitoring.md (94%) rename docs/guides/deploy-guide/{ => services}/network.md (100%) rename docs/guides/deploy-guide/{ => services}/openstack.md (89%) rename docs/guides/deploy-guide/{ => services}/zuul.md (100%) rename docs/guides/{troubleshooting-guides => troubleshooting-guide}/index.md (100%) rename docs/guides/{troubleshooting-guides => troubleshooting-guide}/manager.md (100%) rename docs/guides/{troubleshooting-guides => troubleshooting-guide}/openstack.md (100%) rename docs/guides/{upgrade-guides => upgrade-guide}/ceph.md (100%) rename docs/guides/{upgrade-guides => upgrade-guide}/docker.md (100%) rename docs/guides/{upgrade-guides => upgrade-guide}/index.md (100%) rename docs/guides/{upgrade-guides => upgrade-guide}/infrastructure.md (100%) rename docs/guides/{upgrade-guides => upgrade-guide}/logging-monitoring.md (100%) rename docs/guides/{upgrade-guides => upgrade-guide}/manager.md (96%) rename docs/guides/{upgrade-guides => upgrade-guide}/network.md (100%) rename docs/guides/{upgrade-guides => upgrade-guide}/openstack.md (100%) diff --git a/docs/getting-started.md b/docs/getting-started.md new file mode 100644 index 0000000000..a630dcc377 --- /dev/null +++ b/docs/getting-started.md @@ -0,0 +1,15 @@ +--- +sidebar_label: Getting Started +sidebar_position: 10 +--- + +# Getting Started + +OSISM is deployed in a series of successive phases. The phases are documented in this chapter. + +1. [Creation of a configuration repository](./guides/configuration-guide/configuration-repository#creating-a-new-configuration-repository) +2. [Preparation of a seed node](./guides/deploy-guide/seed) +3. [Preparation of a manager node](./guides/deploy-guide/manager) +4. [Provisioning of the bare-metal nodes](./guides/deploy-guide/bootstrap#provisioning-of-management-and-control-plane-nodes) +5. [Bootstrap of the bare-metal nodes](./guides/deploy-guide/bootstrap) +6. [Deployment of the services](./guides/deploy-guide/services) diff --git a/docs/getting-started/index.md b/docs/getting-started/index.md deleted file mode 100644 index 15353fe2ec..0000000000 --- a/docs/getting-started/index.md +++ /dev/null @@ -1,15 +0,0 @@ ---- -sidebar_label: Getting Started -sidebar_position: 10 ---- - -# Getting Started - -OSISM is deployed in a series of successive phases. The phases are documented in this chapter. - -1. Creation of a configuration repository -2. Preparation of a seed node -3. Preparation of a manager node -4. Provisioning of the bare-metal nodes -5. Bootstrap of the bare-metal nodes -6. Deployment of the services diff --git a/docs/guides/configuration-guides/ceph.md b/docs/guides/configuration-guide/ceph.md similarity index 99% rename from docs/guides/configuration-guides/ceph.md rename to docs/guides/configuration-guide/ceph.md index c0a06ccada..12c3a61551 100644 --- a/docs/guides/configuration-guides/ceph.md +++ b/docs/guides/configuration-guide/ceph.md @@ -1,6 +1,6 @@ --- sidebar_label: Ceph -sidebar_position: 20 +sidebar_position: 40 --- # Ceph diff --git a/docs/guides/configuration-guides/commons/index.md b/docs/guides/configuration-guide/commons/index.md similarity index 95% rename from docs/guides/configuration-guides/commons/index.md rename to docs/guides/configuration-guide/commons/index.md index 045def1126..76688a06c9 100644 --- a/docs/guides/configuration-guides/commons/index.md +++ b/docs/guides/configuration-guide/commons/index.md @@ -1,6 +1,6 @@ --- sidebar_label: Commons -sidebar_position: 10 +sidebar_position: 30 --- # Commons diff --git a/docs/guides/configuration-guides/commons/network.md b/docs/guides/configuration-guide/commons/network.md similarity index 100% rename from docs/guides/configuration-guides/commons/network.md rename to docs/guides/configuration-guide/commons/network.md diff --git a/docs/guides/configuration-guides/commons/packages.md b/docs/guides/configuration-guide/commons/packages.md similarity index 100% rename from docs/guides/configuration-guides/commons/packages.md rename to docs/guides/configuration-guide/commons/packages.md diff --git a/docs/guides/configuration-guides/commons/services.md b/docs/guides/configuration-guide/commons/services.md similarity index 100% rename from docs/guides/configuration-guides/commons/services.md rename to docs/guides/configuration-guide/commons/services.md diff --git a/docs/guides/configuration-guides/commons/sshconfig.md b/docs/guides/configuration-guide/commons/sshconfig.md similarity index 100% rename from docs/guides/configuration-guides/commons/sshconfig.md rename to docs/guides/configuration-guide/commons/sshconfig.md diff --git a/docs/guides/configuration-guides/commons/sysctl.md b/docs/guides/configuration-guide/commons/sysctl.md similarity index 100% rename from docs/guides/configuration-guides/commons/sysctl.md rename to docs/guides/configuration-guide/commons/sysctl.md diff --git a/docs/guides/configuration-guides/commons/timezone.md b/docs/guides/configuration-guide/commons/timezone.md similarity index 100% rename from docs/guides/configuration-guides/commons/timezone.md rename to docs/guides/configuration-guide/commons/timezone.md diff --git a/docs/getting-started/configuration-repository.md b/docs/guides/configuration-guide/configuration-repository.md similarity index 74% rename from docs/getting-started/configuration-repository.md rename to docs/guides/configuration-guide/configuration-repository.md index 3726da47a4..d6ccf325ff 100644 --- a/docs/getting-started/configuration-repository.md +++ b/docs/guides/configuration-guide/configuration-repository.md @@ -3,7 +3,84 @@ sidebar_label: Configuration repository sidebar_position: 10 --- -# Creating a new configuration repository +# Configuration Repository + +The entire configuration required for OSISM is stored in a single Git monorepo. + +## Configuration repository layout + +A configuration repository is always composed of the same basic layout. + +* `gilt.yml` & `requirements.txt` files +* `environments` directory +* `inventory` directory +* `netbox` directory (optional) + +### `gilt.yml` & `requirements.txt` files + +[Gilt](https://gilt.readthedocs.io) is a Git layering tool. We use Gilt to maintain the image versions, +Ansible configuration and scripts within the `environments/manager` directory. + +The [current gilt.yml](https://github.com/osism/cfg-generics/blob/main/gilt.yml) file is always +located in the [osism/cfg-generics](https://github.com/osism/cfg-generics) repository. + +```yaml title="gilt.yml (date of this example: 2023-10-09)" +--- +- git: https://github.com/osism/cfg-generics.git + version: main + files: + - src: src/render-images.py + dst: ./environments/manager/render-images.py + - src: gilt.yml + dst: ./gilt.yml + - src: requirements.txt + dst: ./requirements.txt + - src: environments/manager/images.yml + dst: environments/manager/images.yml + - src: environments/manager/run.sh + dst: environments/manager/run.sh + - src: environments/manager/ansible.cfg + dst: environments/manager/ansible.cfg + - src: environments/manager/requirements.* + dst: environments/manager/ + post_commands: + - python3 render-images.py + - rm render-images.py +``` + + +In the `requirements.txt` the necessary dependencies are listed to be able to execute Gilt. + +To use Gilt the dependencies are installed first. + +``` +pip3 install -r requirements.txt +``` + +After that you can update the manager environment in `environments/manager`. Since the `gilt.yml` +itself is updated with Gilt it is always important to run the command twice. + +``` +gilt overlay +gilt overlay +``` + +If a stable OSISM release is used, the version to be used is specified by `MANAGER_VERSION`. +In the example, OSISM release 6.0.0 is used. More detail about this in +[Configuration Guides > Manager > Stable release](manager#stable-release). + +``` +MANAGER_VERSION=6.0.0 gilt overlay +MANAGER_VERSION=6.0.0 gilt overlay +``` + +### `environments` directory + +### `inventory` directory + +### `netbox` directory + +## Creating a new configuration repository The initial content for this repository is generated using the [cookiecutter](https://github.com/osism/cfg-cookiecutter). @@ -92,7 +169,7 @@ How to add a deploy key on GitHub is documented in The configuration repository that is initially created with the Cookiecutter is not directly usable. For example, the inventory needs to be built. All further information can be found in the -[Configuration Guide](../guides/configuration-guides/index.md). +[Configuration Guides](./). ### Notes diff --git a/docs/guides/configuration-guide/index.md b/docs/guides/configuration-guide/index.md new file mode 100644 index 0000000000..0b8c922cea --- /dev/null +++ b/docs/guides/configuration-guide/index.md @@ -0,0 +1,6 @@ +--- +sidebar_label: Configuration Guides +sidebar_position: 30 +--- + +# Configuration Guides diff --git a/docs/guides/configuration-guides/inventory.md b/docs/guides/configuration-guide/inventory.md similarity index 97% rename from docs/guides/configuration-guides/inventory.md rename to docs/guides/configuration-guide/inventory.md index e5220ed345..9ed64a899f 100644 --- a/docs/guides/configuration-guides/inventory.md +++ b/docs/guides/configuration-guide/inventory.md @@ -1,6 +1,6 @@ --- sidebar_label: Inventory -sidebar_position: 4 +sidebar_position: 10 --- # Inventory diff --git a/docs/guides/configuration-guides/manager.md b/docs/guides/configuration-guide/manager.md similarity index 99% rename from docs/guides/configuration-guides/manager.md rename to docs/guides/configuration-guide/manager.md index c39b642d3d..0dbdae2c70 100644 --- a/docs/guides/configuration-guides/manager.md +++ b/docs/guides/configuration-guide/manager.md @@ -1,6 +1,6 @@ --- sidebar_label: Manager -sidebar_position: 5 +sidebar_position: 20 --- # Manager diff --git a/docs/guides/configuration-guides/openstack/horizon.md b/docs/guides/configuration-guide/openstack/horizon.md similarity index 100% rename from docs/guides/configuration-guides/openstack/horizon.md rename to docs/guides/configuration-guide/openstack/horizon.md diff --git a/docs/guides/configuration-guides/openstack/index.md b/docs/guides/configuration-guide/openstack/index.md similarity index 99% rename from docs/guides/configuration-guides/openstack/index.md rename to docs/guides/configuration-guide/openstack/index.md index 286109ecbb..446c8d625a 100644 --- a/docs/guides/configuration-guides/openstack/index.md +++ b/docs/guides/configuration-guide/openstack/index.md @@ -1,6 +1,6 @@ --- sidebar_label: OpenStack -sidebar_position: 30 +sidebar_position: 50 --- # OpenStack diff --git a/docs/guides/configuration-guides/openstack/keystone.md b/docs/guides/configuration-guide/openstack/keystone.md similarity index 100% rename from docs/guides/configuration-guides/openstack/keystone.md rename to docs/guides/configuration-guide/openstack/keystone.md diff --git a/docs/guides/configuration-guides/self-signed-certificates.md b/docs/guides/configuration-guide/self-signed-certificates.md similarity index 100% rename from docs/guides/configuration-guides/self-signed-certificates.md rename to docs/guides/configuration-guide/self-signed-certificates.md diff --git a/docs/guides/configuration-guides/services/index.md b/docs/guides/configuration-guide/services/index.md similarity index 89% rename from docs/guides/configuration-guides/services/index.md rename to docs/guides/configuration-guide/services/index.md index 0cab7b923a..80fd1be142 100644 --- a/docs/guides/configuration-guides/services/index.md +++ b/docs/guides/configuration-guide/services/index.md @@ -1,6 +1,6 @@ --- sidebar_label: Services -sidebar_position: 20 +sidebar_position: 30 --- # Services diff --git a/docs/guides/configuration-guides/index.md b/docs/guides/configuration-guides/index.md deleted file mode 100644 index 47054ba3e6..0000000000 --- a/docs/guides/configuration-guides/index.md +++ /dev/null @@ -1,83 +0,0 @@ ---- -sidebar_label: Configuration Guides -sidebar_position: 30 ---- - -# Configuration Guides - -## Configuration Repository - -The entire configuration required for OSISM is stored in a monorepo. - -### Layout - -A configuration repository is always composed of the same basic layout. - -* `gilt.yml` & `requirements.txt` files -* `environments` directory -* `inventory` directory -* `netbox` directory (optional) - -### `gilt.yml` & `requirements.txt` files - -[Gilt](https://gilt.readthedocs.io) is a Git layering tool. We use Gilt to maintain the image versions, -Ansible configuration and scripts within the `environments/manager` directory. - -The [current gilt.yml](https://github.com/osism/cfg-generics/blob/main/gilt.yml) file is always -located in the [osism/cfg-generics](https://github.com/osism/cfg-generics) repository. - -```yaml title="gilt.yml (date of this example: 2023-10-09)" ---- -- git: https://github.com/osism/cfg-generics.git - version: main - files: - - src: src/render-images.py - dst: ./environments/manager/render-images.py - - src: gilt.yml - dst: ./gilt.yml - - src: requirements.txt - dst: ./requirements.txt - - src: environments/manager/images.yml - dst: environments/manager/images.yml - - src: environments/manager/run.sh - dst: environments/manager/run.sh - - src: environments/manager/ansible.cfg - dst: environments/manager/ansible.cfg - - src: environments/manager/requirements.* - dst: environments/manager/ - post_commands: - - python3 render-images.py - - rm render-images.py -``` - - -In the `requirements.txt` the necessary dependencies are listed to be able to execute Gilt. - -To use Gilt the dependencies are installed first. - -``` -pip3 install -r requirements.txt -``` - -After that you can update the manager environment in `environments/manager`. Since the `gilt.yml` -itself is updated with Gilt it is always important to run the command twice. - -``` -gilt overlay -gilt overlay -``` - -If a stable OSISM release is used, the version to be used is specified by `MANAGER_VERSION`. -In the example, OSISM release 6.0.0 is used. More detail about this in -[Configuration Guides > Manager > Stable release](../guides/configuration-guides/manager.md#stable-release). - -``` -MANAGER_VERSION=6.0.0 gilt overlay -MANAGER_VERSION=6.0.0 gilt overlay -``` - -### `environments` directory - -### `inventory` directory - -### `netbox` directory diff --git a/docs/guides/deploy-guide/bootstrap.md b/docs/guides/deploy-guide/bootstrap.md index ae0b887413..44ccfdcef7 100644 --- a/docs/guides/deploy-guide/bootstrap.md +++ b/docs/guides/deploy-guide/bootstrap.md @@ -1,13 +1,13 @@ --- sidebar_label: Bootstrap -sidebar_position: 5 +sidebar_position: 40 --- # Bootstrap Before the nodes can be bootstrapped, they must all have already been provisioned. The guide for this can be found in the section -[Provisioning of management and control plane nodes](bootstrap#provisioning-of-management-and-control-plane-nodes) +[Provisioning of management and control plane nodes](./provisioning) The following steps are applied to bootstrap all nodes. After the completion of the bootstrap, the nodes are already ready for use. @@ -96,73 +96,3 @@ The following steps are applied to bootstrap all nodes. After the completion of ``` Ready. All nodes are now bootstrapped and available to deploy services. - -## Provisioning of management and control plane nodes - -For the initial deployment of the management plane and the control plane of OSISM, -the nodes must be pre-provisioned with Ubuntu 22.04. Currently, only Ubuntu 22.04 is supported -by OSISM. - -Data plane nodes can be automatically provisioned after the initial deployment and -do not need to be pre-provisioned. - -It is recommended not to install the initial nodes of the management plane and the -control plane manually. An ISO image is provided for this purpose which automatically -provisions a node. The ISO images are available for download in the -[osism/node-image](https://github.com/osism/node-image) repository. - -There are different variants of the ISO image. The variants differ in the disc layout. -The available variants are described in the README file of the [osism/node-image](https://github.com/osism/node-image) -repository. - -### Manual provisioning - -If none of the provided variants is suitable, this section describes the manual -installation with the help of the Ubuntu 22.04 live ISO image. The manual installation -is possible without network connectivity. - -* Download the latest ISO image for Ubuntu 22.04 from [releases.ubuntu.com](https://www.releases.ubuntu.com/22.04/). - * Use the `ubuntu-22.04.1-live-server-amd64.iso` image. - * The version number may be different, always use the latest available version of 22.04 LTS. -* Choose `English` as language. -* Choose `Install Ubuntu Server`. -* Choose `English as language` (again). -* Choose your location (e.g. `Germany`). -* Choose `en_US.UTF-8` as locale. -* Choose the keyboard layout from a list, use `English (US)`. -* Choose and configure the primary network interface. - * Depending on the environment, the network may not work at this point. Then select any interface - and then select `Do not configure the network at this time` in the next step. -* Set the hostname. - * The hostname is e.g. `node` and not a FQDN like `node.systems.osism.xyz`. -* Set `osism` as full name for the new user. -* Set `osism` as the username for the account. - * The later used operator user `dragon` is created during the bootstrap and **should not be created** during the installation - * The account is only needed initially and can be deleted after completion of the bootstrap. -* Set a password for the account. -* Choose `Manual` as partitioning method and execute the partitioning according to company specifications - * The use of a UEFI is recommended - * The use of a RAID is recommended. We prefer the use of software RAIDs to make us less dependent on hardware. - But there is nothing against using hardware RAIDs. - * The use of a LVM2 is recommended. `system` is recommended as the name for the volume group. - * Dedicated disks may be provided for `/var/lib/docker` on the controller nodes. In this case, do not - use an LV for `/var/lib/docker` but the devices provided for it. - * Do not configure devices that are not required for the operating system. - * The use of own file systems for the following mountpoints is recommended. The size of the individual partitions - is minimal. Depending on the node type, the individual partitions should be made larger. This applies in - particular to `/var/lib/docker`. On controllers at least 100 GByte should be used. - * `/` (10 GByte, logical volume `root`) - * `/home` (2 GByte, logical volume `home`) - * `/tmp` (5 GByte, logical volume `tmp`) - * `/var/lib/ceph` (50 GByte, logical volume `ceph`) (optional for storage nodes) - * `/var/lib/docker` (30 GByte, logical volume `docker`, do not set the `nosuid` flag on `/var/lib/docker`) - * When using XFS as the file system for `/var/lib/docker`, note the following: Running on XFS without `d_type` support - causes Docker to skip the attempt to use the `overlay` or `overlay2` driver. - * `/var/log/audit` (1 GByte, logical volume `audit`) - * `/var` (10 GByte, logical volume `var`) - * `swap` (min 8 GByte, logical volume `swap`) -* Choose `No automatic updates`. -* Choose `OpenSSH server` as software to install. - * **Do not install any other software component.** Everything you need will be installed later by OSISM. - In particular, it is not necessary to install a desktop environment. -* After completion, restart the system. diff --git a/docs/guides/deploy-guide/manager.md b/docs/guides/deploy-guide/manager.md index 3b7475a400..0474d4f308 100644 --- a/docs/guides/deploy-guide/manager.md +++ b/docs/guides/deploy-guide/manager.md @@ -1,6 +1,6 @@ --- sidebar_label: Manager -sidebar_position: 1 +sidebar_position: 20 --- # Manager @@ -9,7 +9,7 @@ The prerequisite for the deployment of the Manager is the preparation of a [configuration repository](https://osism.github.io/docs/getting-started/configuration-repository). 1. Install Ubuntu 22.04 on the node to be used as manager - (see [Provisioning of management and control plane nodes](./bootstrap.md##provisioning-of-management-and-control-plane-nodes)). + (see [Provisioning of management and control plane nodes](./provisioning)). 2. A copy of the configuration repository is checked out on a local system, the so-called seed node, with which the manager node can be reached via SSH. diff --git a/docs/guides/deploy-guide/provisioning.md b/docs/guides/deploy-guide/provisioning.md new file mode 100644 index 0000000000..b9b1decdd7 --- /dev/null +++ b/docs/guides/deploy-guide/provisioning.md @@ -0,0 +1,74 @@ +--- +sidebar_label: Provisioning +sidebar_position: 30 +--- + +# Provisioning of management and control plane nodes + +For the initial deployment of the management plane and the control plane of OSISM, +the nodes must be pre-provisioned with Ubuntu 22.04. Currently, only Ubuntu 22.04 is supported +by OSISM. + +Data plane nodes can be automatically provisioned after the initial deployment and +do not need to be pre-provisioned. + +It is recommended not to install the initial nodes of the management plane and the +control plane manually. An ISO image is provided for this purpose which automatically +provisions a node. The ISO images are available for download in the +[osism/node-image](https://github.com/osism/node-image) repository. + +There are different variants of the ISO image. The variants differ in the disc layout. +The available variants are described in the README file of the [osism/node-image](https://github.com/osism/node-image) +repository. + +### Manual provisioning + +If none of the provided variants is suitable, this section describes the manual +installation with the help of the Ubuntu 22.04 live ISO image. The manual installation +is possible without network connectivity. + +* Download the latest ISO image for Ubuntu 22.04 from [releases.ubuntu.com](https://www.releases.ubuntu.com/22.04/). + * Use the `ubuntu-22.04.1-live-server-amd64.iso` image. + * The version number may be different, always use the latest available version of 22.04 LTS. +* Choose `English` as language. +* Choose `Install Ubuntu Server`. +* Choose `English as language` (again). +* Choose your location (e.g. `Germany`). +* Choose `en_US.UTF-8` as locale. +* Choose the keyboard layout from a list, use `English (US)`. +* Choose and configure the primary network interface. + * Depending on the environment, the network may not work at this point. Then select any interface + and then select `Do not configure the network at this time` in the next step. +* Set the hostname. + * The hostname is e.g. `node` and not a FQDN like `node.systems.osism.xyz`. +* Set `osism` as full name for the new user. +* Set `osism` as the username for the account. + * The later used operator user `dragon` is created during the bootstrap and **should not be created** during the installation + * The account is only needed initially and can be deleted after completion of the bootstrap. +* Set a password for the account. +* Choose `Manual` as partitioning method and execute the partitioning according to company specifications + * The use of a UEFI is recommended + * The use of a RAID is recommended. We prefer the use of software RAIDs to make us less dependent on hardware. + But there is nothing against using hardware RAIDs. + * The use of a LVM2 is recommended. `system` is recommended as the name for the volume group. + * Dedicated disks may be provided for `/var/lib/docker` on the controller nodes. In this case, do not + use an LV for `/var/lib/docker` but the devices provided for it. + * Do not configure devices that are not required for the operating system. + * The use of own file systems for the following mountpoints is recommended. The size of the individual partitions + is minimal. Depending on the node type, the individual partitions should be made larger. This applies in + particular to `/var/lib/docker`. On controllers at least 100 GByte should be used. + * `/` (10 GByte, logical volume `root`) + * `/home` (2 GByte, logical volume `home`) + * `/tmp` (5 GByte, logical volume `tmp`) + * `/var/lib/ceph` (50 GByte, logical volume `ceph`) (optional for storage nodes) + * `/var/lib/docker` (30 GByte, logical volume `docker`, do not set the `nosuid` flag on `/var/lib/docker`) + * When using XFS as the file system for `/var/lib/docker`, note the following: Running on XFS without `d_type` support + causes Docker to skip the attempt to use the `overlay` or `overlay2` driver. + * `/var/log/audit` (1 GByte, logical volume `audit`) + * `/var` (10 GByte, logical volume `var`) + * `swap` (min 8 GByte, logical volume `swap`) +* Choose `No automatic updates`. +* Choose `OpenSSH server` as software to install. + * **Do not install any other software component.** Everything you need will be installed later by OSISM. + In particular, it is not necessary to install a desktop environment. +* After completion, restart the system. diff --git a/docs/guides/deploy-guide/seed.md b/docs/guides/deploy-guide/seed.md new file mode 100644 index 0000000000..ba9614cd9b --- /dev/null +++ b/docs/guides/deploy-guide/seed.md @@ -0,0 +1,6 @@ +--- +sidebar_label: Seed +sidebar_position: 10 +--- + +# Seed diff --git a/docs/guides/deploy-guide/ceph.md b/docs/guides/deploy-guide/services/ceph.md similarity index 95% rename from docs/guides/deploy-guide/ceph.md rename to docs/guides/deploy-guide/services/ceph.md index 70e0fda53a..9aeddb68e3 100644 --- a/docs/guides/deploy-guide/ceph.md +++ b/docs/guides/deploy-guide/services/ceph.md @@ -1,6 +1,6 @@ --- sidebar_label: Ceph -sidebar_position: 20 +sidebar_position: 50 --- # Ceph @@ -48,7 +48,7 @@ sidebar_position: 20 ## RGW service -1. [Configure the RGW service](../configuration-guides/ceph#rgw-service) +1. [Configure the RGW service](../configuration-guide/ceph#rgw-service) 2. Apply role `ceph-rgws` to deploy the Ceph RGW services. diff --git a/docs/guides/deploy-guide/services/index.md b/docs/guides/deploy-guide/services/index.md new file mode 100644 index 0000000000..623168214e --- /dev/null +++ b/docs/guides/deploy-guide/services/index.md @@ -0,0 +1,6 @@ +--- +sidebar_label: Services +sidebar_position: 100 +--- + +# Services diff --git a/docs/guides/deploy-guide/infrastructure.md b/docs/guides/deploy-guide/services/infrastructure.md similarity index 96% rename from docs/guides/deploy-guide/infrastructure.md rename to docs/guides/deploy-guide/services/infrastructure.md index 4c48494415..36cb35e5c3 100644 --- a/docs/guides/deploy-guide/infrastructure.md +++ b/docs/guides/deploy-guide/services/infrastructure.md @@ -6,7 +6,7 @@ sidebar_position: 10 # Infrastructure Common issues with deploying infrastructure services required by OpenStack -are documented in the [OpenStack Troubleshooting Guide](../troubleshooting-guides/openstack.md). +are documented in the [OpenStack Troubleshooting Guide](../troubleshooting-guide/openstack). ## Cron, Fluentd & Kolla Toolbox diff --git a/docs/guides/deploy-guide/logging-monitoring.md b/docs/guides/deploy-guide/services/logging-monitoring.md similarity index 94% rename from docs/guides/deploy-guide/logging-monitoring.md rename to docs/guides/deploy-guide/services/logging-monitoring.md index ee84a98c7e..db73f6ad52 100644 --- a/docs/guides/deploy-guide/logging-monitoring.md +++ b/docs/guides/deploy-guide/services/logging-monitoring.md @@ -6,7 +6,7 @@ sidebar_position: 40 # Logging & Monitoring Common issues with deploying logging & monitoring services provided by Kolla -are documented in the [OpenStack Troubleshooting Guide](../troubleshooting-guides/openstack.md). +are documented in the [OpenStack Troubleshooting Guide](../troubleshooting-guides/openstack). ## OpenSearch diff --git a/docs/guides/deploy-guide/network.md b/docs/guides/deploy-guide/services/network.md similarity index 100% rename from docs/guides/deploy-guide/network.md rename to docs/guides/deploy-guide/services/network.md diff --git a/docs/guides/deploy-guide/openstack.md b/docs/guides/deploy-guide/services/openstack.md similarity index 89% rename from docs/guides/deploy-guide/openstack.md rename to docs/guides/deploy-guide/services/openstack.md index 5bcf2023f9..64e3682c30 100644 --- a/docs/guides/deploy-guide/openstack.md +++ b/docs/guides/deploy-guide/services/openstack.md @@ -1,12 +1,12 @@ --- sidebar_label: OpenStack -sidebar_position: 30 +sidebar_position: 60 --- # OpenStack Common issues with deploying OpenStack services are documented in the -[OpenStack Troubleshooting Guide](../troubleshooting-guides/openstack.md). +[OpenStack Troubleshooting Guide](../troubleshooting-guide/openstack). ## Keystone diff --git a/docs/guides/deploy-guide/zuul.md b/docs/guides/deploy-guide/services/zuul.md similarity index 100% rename from docs/guides/deploy-guide/zuul.md rename to docs/guides/deploy-guide/services/zuul.md diff --git a/docs/guides/troubleshooting-guides/index.md b/docs/guides/troubleshooting-guide/index.md similarity index 100% rename from docs/guides/troubleshooting-guides/index.md rename to docs/guides/troubleshooting-guide/index.md diff --git a/docs/guides/troubleshooting-guides/manager.md b/docs/guides/troubleshooting-guide/manager.md similarity index 100% rename from docs/guides/troubleshooting-guides/manager.md rename to docs/guides/troubleshooting-guide/manager.md diff --git a/docs/guides/troubleshooting-guides/openstack.md b/docs/guides/troubleshooting-guide/openstack.md similarity index 100% rename from docs/guides/troubleshooting-guides/openstack.md rename to docs/guides/troubleshooting-guide/openstack.md diff --git a/docs/guides/upgrade-guides/ceph.md b/docs/guides/upgrade-guide/ceph.md similarity index 100% rename from docs/guides/upgrade-guides/ceph.md rename to docs/guides/upgrade-guide/ceph.md diff --git a/docs/guides/upgrade-guides/docker.md b/docs/guides/upgrade-guide/docker.md similarity index 100% rename from docs/guides/upgrade-guides/docker.md rename to docs/guides/upgrade-guide/docker.md diff --git a/docs/guides/upgrade-guides/index.md b/docs/guides/upgrade-guide/index.md similarity index 100% rename from docs/guides/upgrade-guides/index.md rename to docs/guides/upgrade-guide/index.md diff --git a/docs/guides/upgrade-guides/infrastructure.md b/docs/guides/upgrade-guide/infrastructure.md similarity index 100% rename from docs/guides/upgrade-guides/infrastructure.md rename to docs/guides/upgrade-guide/infrastructure.md diff --git a/docs/guides/upgrade-guides/logging-monitoring.md b/docs/guides/upgrade-guide/logging-monitoring.md similarity index 100% rename from docs/guides/upgrade-guides/logging-monitoring.md rename to docs/guides/upgrade-guide/logging-monitoring.md diff --git a/docs/guides/upgrade-guides/manager.md b/docs/guides/upgrade-guide/manager.md similarity index 96% rename from docs/guides/upgrade-guides/manager.md rename to docs/guides/upgrade-guide/manager.md index f30da1b5b7..89f9b9cc93 100644 --- a/docs/guides/upgrade-guides/manager.md +++ b/docs/guides/upgrade-guide/manager.md @@ -9,7 +9,7 @@ Always read the release notes first to learn what has changed and what adjustments are necessary 1. Update the OSISM release in use in the configuration repository as described in - [Configuration Guides > Manager > Stable release](../configuration-guides/manager.md#stable-release). + [Configuration Guides > Manager > Stable release](../configuration-guide/manager#stable-release). 2. Update the configuration repository on the manager. diff --git a/docs/guides/upgrade-guides/network.md b/docs/guides/upgrade-guide/network.md similarity index 100% rename from docs/guides/upgrade-guides/network.md rename to docs/guides/upgrade-guide/network.md diff --git a/docs/guides/upgrade-guides/openstack.md b/docs/guides/upgrade-guide/openstack.md similarity index 100% rename from docs/guides/upgrade-guides/openstack.md rename to docs/guides/upgrade-guide/openstack.md