Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add guide docs for rookify #688

Open
wants to merge 14 commits into
base: main
Choose a base branch
from
Open

feat: add guide docs for rookify #688

wants to merge 14 commits into from

Conversation

boekhorstb1
Copy link

@boekhorstb1 boekhorstb1 commented Sep 25, 2024

  • adding docs for rookify: deploy, config and operation guides

Copy link
Contributor

@b1-lender b1-lender left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Some smaller wording/grammar issues.

docs/guides/operations-guide/rookify.md Outdated Show resolved Hide resolved
docs/guides/operations-guide/rookify.md Outdated Show resolved Hide resolved
docs/guides/operations-guide/rookify.md Outdated Show resolved Hide resolved
docs/guides/operations-guide/rookify.md Outdated Show resolved Hide resolved
docs/guides/deploy-guide/rookify.md Outdated Show resolved Hide resolved
docs/guides/deploy-guide/rookify.md Outdated Show resolved Hide resolved
docs/guides/deploy-guide/rookify.md Outdated Show resolved Hide resolved
docs/guides/deploy-guide/rookify.md Outdated Show resolved Hide resolved
docs/guides/configuration-guide/rookify.md Outdated Show resolved Hide resolved
docs/guides/configuration-guide/rookify.md Outdated Show resolved Hide resolved
boekhorstb1 and others added 14 commits October 8, 2024 10:56
Signed-off-by: Boekhorst <boekhorst@b1-systems.de>
Signed-off-by: Boekhorst <boekhorst@b1-systems.de>
Signed-off-by: Boekhorst <boekhorst@b1-systems.de>
Signed-off-by: Boekhorst <boekhorst@b1-systems.de>
Co-authored-by: b1-lender <lender@b1-systems.de>
Signed-off-by: Boekhorst <boekhorst@b1-systems.de>
Co-authored-by: b1-lender <lender@b1-systems.de>
Signed-off-by: Boekhorst <boekhorst@b1-systems.de>
Co-authored-by: b1-lender <lender@b1-systems.de>
Signed-off-by: Boekhorst <boekhorst@b1-systems.de>
Co-authored-by: b1-lender <lender@b1-systems.de>
Signed-off-by: Boekhorst <boekhorst@b1-systems.de>
Co-authored-by: b1-lender <lender@b1-systems.de>
Signed-off-by: Boekhorst <boekhorst@b1-systems.de>
Co-authored-by: b1-lender <lender@b1-systems.de>
Signed-off-by: Boekhorst <boekhorst@b1-systems.de>
Signed-off-by: Boekhorst <boekhorst@b1-systems.de>
Signed-off-by: Boekhorst <boekhorst@b1-systems.de>
Signed-off-by: Boekhorst <boekhorst@b1-systems.de>
Signed-off-by: Boekhorst <boekhorst@b1-systems.de>
:::warning

Rookify is developed to migrate from Ceph-Ansible to Rook _in place_ and _without downtime_.
Nevertheless, it is **strongly advised** to test Rookify in a controlled environment first, such as the [OSISM testbed](https://github.com/osism/testbed). Addition ure that precautionary backups are made, and all other necessary safety measures are in place.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: Additionally ensure that ... are made and all ...


## Config.yaml

The primary configuration file for Rookify is `config.yaml`. The repository includes an example file for general use, as well as one specifically tailored for the OSISM testbed setup:

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Alternatively:
... tailored for OSISM based setups:

As far as I know OSISM's Rook based Ceph installation has settled on the same labels as configured in the example mentioned.

machine_pickle_file: data.pickle
```

The `general` section allows for the optional definition of a pickle file, which saves the state of the migration as serialized objects on disk. The pickle filed can be named as desired.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: The pickle file can be ...

:::warning

Rookify is developed to migrate from Ceph-Ansible to Rook _in place_ and _without downtime_.
Nevertheless, it is **strongly advised** to test Rookify in a controlled environment first, such as the [OSISM testbed](https://github.com/osism/testbed). Additionally, ensure that precautionary backups are made, and all other necessary safety measures are in place.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: Additionally ensure that ... are made and all ...


- A functioning Ceph cluster deployed using traditional methods.
- Access to a Kubernetes cluster with sufficient resources to host the migrated Ceph cluster.
- Kubernetes nodes must be deployed on at least the OSD nodes.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Monitor and OSD daemons should stay in place. Former to ensure that the Ceph endpoints do not change during migration, the later ones to have access to the underlying hardware.

:::warning

Rookify is developed to migrate from Ceph-Ansible to Rook _in place_ and _without downtime_.
Nevertheless, it is **strongly advised** to test Rookify in a controlled environment first, such as the [OSISM testbed](https://github.com/osism/testbed). Additionally, ensure that precautionary backups are made, and all other necessary safety measures are in place.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: Additionally ensure that ... are made and all ...

machine_pickle_file: data.pickle
```

You can then view the migration progress by running `rookify --show-state`.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's rookify --show-states at the time of writing :)


Run `rookify --help` to view the various CLI options available.

### --show

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's still --show-states here as well ;)


Rookify's `preflight-mode` allows you to verify that basic commands and connections to the target systems are functioning correctly. Running `--dry-run` mode ensures no migration processes are executed.

### --help

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I like mentioning the --help parameter. As we currently do not mention --migrate it ensures users check for it manually. On the other hand we might want to add --migrate as well as the opposite of --dry-run?

:::warning

Rookify is developed to migrate from Ceph-Ansible to Rook _in place_ and _without downtime_.
Nevertheless, it is **strongly advised** to test Rookify in a controlled environment first, such as the [OSISM testbed](https://github.com/osism/testbed). Additionally, ensure that precautionary backups are made, and all other necessary safety measures are in place.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: Additionally ensure that ... are made and all ...

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants