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

New command for provisioning DB namespaces #185

Open
wants to merge 42 commits into
base: 1.4.0
Choose a base branch
from

Conversation

rasika-chivate
Copy link
Collaborator

Add new commands for provisioning database namespaces.

For detailed information refer to:

https://perconadev.atlassian.net/browse/EVEREST-1673

@rasika-chivate rasika-chivate temporarily deployed to new_commands_db_namespaces - Everest Release Branch PR #185 December 5, 2024 13:58 — with Render Destroyed
@rasika-chivate rasika-chivate temporarily deployed to new_commands_db_namespaces - Everest Release Branch PR #185 December 5, 2024 14:26 — with Render Destroyed
@rasika-chivate rasika-chivate temporarily deployed to new_commands_db_namespaces - Everest Release Branch PR #185 December 11, 2024 12:41 — with Render Destroyed
@rasika-chivate rasika-chivate temporarily deployed to new_commands_db_namespaces - Everest Release Branch PR #185 December 11, 2024 12:42 — with Render Destroyed

- This command deletes only the specified namespace, as long as it is managed by Percona Everest.

- Setting the `--keep-namespace` option will delete all operators in the namespace but will not remove the namespace itself. It will only remove the Percona Everest label.
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
- Setting the `--keep-namespace` option will delete all operators in the namespace but will not remove the namespace itself. It will only remove the Percona Everest label.
- Setting `--keep-namespace` deletes all resources within the namespace (e.g., operators, DatabaseClusters, BackupStorages) while preserving the namespace itself. Use this option to clean up the namespace without removing it.


`--operator.xtradb-cluster=<bool>`

`--take-ownership` - If the namespace exists, it will be part of Percona Everest. If it is set to false, Percona Everest will throw an error.
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
`--take-ownership` - If the namespace exists, it will be part of Percona Everest. If it is set to false, Percona Everest will throw an error.
`--take-ownership` - Allows Everest to manage an existing Kubernetes namespace by adding the necessary labels. Without this flag, Everest will attempt to create the namespace and throw an error if it already exists. Use this flag to take over an existing namespace.

Comment on lines +46 to +47
!!! note
The `everestctl install` command can provision a DB namespace. However, if you run this command again, an error will be thrown: `Everest is already installed.`
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
!!! note
The `everestctl install` command can provision a DB namespace. However, if you run this command again, an error will be thrown: `Everest is already installed.`
!!! note
The `everestctl install` command lets you create database namespaces during the initial installation. However, it cannot be rerun to add more database namespaces. To create additional database namespaces after installation, use the namespaces add command.`

Copy link
Member

Choose a reason for hiding this comment

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

I think we should move this note to the section above, i.e, Add new namespaces

Copy link
Collaborator

Choose a reason for hiding this comment

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

I agree, this and the 2 bullets below feel out of place

Comment on lines +50 to +52
- To provision a DB namespace after installation, use the command `everestctl namespaces add`.

- You may choose to skip the DB namespace installation in the `everestctl install` command.
Copy link
Member

Choose a reason for hiding this comment

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

Suggested change
- To provision a DB namespace after installation, use the command `everestctl namespaces add`.
- You may choose to skip the DB namespace installation in the `everestctl install` command.
- To provision a DB namespace after installation, use the command `everestctl namespaces add`.
- You may choose to skip the DB namespace installation in the `everestctl install` command.
- Removing operators with `update` is currently not supported.

Comment on lines +85 to +89





Copy link
Member

Choose a reason for hiding this comment

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

Suggested change

```

```sh
everestctl namespaces add development --operator.postgresql=false --kubeconfig /Users/rasikachivate/Downloads/Kubeconfig
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
everestctl namespaces add development --operator.postgresql=false --kubeconfig /Users/rasikachivate/Downloads/Kubeconfig
everestctl namespaces add development --operator.postgresql=false


??? example "Example"
```sh
everestctl namespaces add production --kubeconfig /Users/rasikachivate/Downloads/Kubeconfig
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
everestctl namespaces add production --kubeconfig /Users/rasikachivate/Downloads/Kubeconfig
everestctl namespaces add production


## Update namespaces

You can run the following command to add more operators to the DB namespace.
Copy link
Collaborator

Choose a reason for hiding this comment

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

Suggested change
You can run the following command to add more operators to the DB namespace.
You can run the following command to add more operators to an existing DB namespace.

Comment on lines +46 to +47
!!! note
The `everestctl install` command can provision a DB namespace. However, if you run this command again, an error will be thrown: `Everest is already installed.`
Copy link
Collaborator

Choose a reason for hiding this comment

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

I agree, this and the 2 bullets below feel out of place

Comment on lines +42 to +56
1. `everestctl namespaces add development`

??? example "Expected output"
??? example "Expected output"
```sh
? Which operators do you want to install? PostgreSQL
✓ Installing namespace 'development'
```

```sh
? Namespaces managed by Everest [comma separated] dev,testing
? What operators do you want to install? MySQL, MongoDB
```
2. `everestctl namespaces add production`.

2. Rerun the `everestctl install` command to install the PostgreSQL operator in the production and staging namespaces.
??? example "Expected output"
```sh
? Which operators do you want to install? MySQL, MongoDB
✓ Installing namespace 'production'
```
Copy link
Collaborator

Choose a reason for hiding this comment

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

Maybe we can switch the order of these 2 examples because in the description above we first mention production and then development

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