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

Document OpenShift service certificates for Operator deployments #1002

Merged
merged 5 commits into from
Sep 25, 2023

Conversation

feorlen
Copy link
Collaborator

@feorlen feorlen commented Sep 13, 2023

MinIO Operator on OpenShift may require manual configuration of TLS cert management via the OpenShift service-ca Operator. (For deployments that are not done through Red Hat OperatorHub.)

Document the needed envvars, volumes, and volumeMounts to enable service-ca and avoid the need to manually renew certs.

Note: This presumes kustomize, additional research/testing required to determine configuration for Helm chart deployments.

Staged
http://192.241.195.202:9000/staging/DOCS-991/openshift/operations/installation.html#procedure

See also: https://github.com/minio/wiki/wiki/Besides-MINIO_OPERATOR_RUNTIME-what-else-is-needed-in-Operator%3F

Fixes #991 (remaining item for v5.0.8)

@feorlen feorlen self-assigned this Sep 13, 2023
@feorlen feorlen marked this pull request as draft September 13, 2023 22:03
@@ -65,7 +65,7 @@
'podman-docs' : ('https://docs.podman.io/en/latest/%s', None),
'podman-git' : ('https://github.com/containers/podman/%s', None),
'docker-docs' : ('https://docs.docker.com/%s', None),
'openshift-docs' : ('https://docs.openshift.com/container-platform/4.11/%s', None),
'openshift-docs' : ('https://docs.openshift.com/container-platform/4.13/%s', None),
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Might as well? Too bad Red Hat docs don't have an equivalent of latest.

Copy link
Collaborator

Choose a reason for hiding this comment

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

No harm in bumping!

* - Environment Variable
- Value

* - :envvar:`MINIO_CONSOLE_TLS_ENABLE`
Copy link
Collaborator Author

@feorlen feorlen Sep 13, 2023

Choose a reason for hiding this comment

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

I found this in https://github.com/minio/operator/blob/3baa9696df34b127c2fdb20306192bd44a1c86bd/docs/env-variables.md but it's not in the giant list of envvars at the moment. I think most of the envvars in that file are not. (Because Operator, not MinIO Server.)

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Appears OPERATOR_STS_ENABLED is not required unless you are messing with STS. Which is beyond the scope of this page. It defaults to off.

* - :envvar:`MINIO_OPERATOR_RUNTIME`
- ``OpenShift``

#. Configure the following ``volumes`` and ``volumeMounts`` in ``something.yaml``:
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I'm unclear where this YAML is updated

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

This is in the Operator deployment. Celis has a YAML file to use with oc apply that will do this for you, no editing needed (for "standard" environments)

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Added example of editing the file. Can dig into the oc apply method on a future revisit. (Unclear where that YAML file should live.)

@@ -16,7 +17,7 @@ Overview
Red Hat® OpenShift® is an enterprise-ready Kubernetes container platform with full-stack automated operations to manage hybrid cloud, multi-cloud, and edge deployments.
OpenShift includes an enterprise-grade Linux operating system, container runtime, networking, monitoring, registry, and authentication and authorization solutions.

You can deploy the MinIO Kubernetes Operator through the :openshift-docs:`Red Hat® OpenShift® Container Platform 4.7+ <welcome/index.html>`.
You can deploy the MinIO Kubernetes Operator through the :openshift-docs:`Red Hat® OpenShift® Container Platform 4.8+ <welcome/index.html>`.
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Per Celis, Red Hat said we have to be 4.8+ now.

Copy link
Collaborator

Choose a reason for hiding this comment

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

@cniackz is there a specific Operator version where that bump happened? We might want to maintain a matrix somewhere, at least internally.

Copy link
Contributor

Choose a reason for hiding this comment

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

Hello @ravindk89,

Our ability to influence this situation is limited. I recall that certification tests would fail if we attempted to cover versions 4.7 or older, necessitating our decision to cease coverage of those versions and progress towards more recent ones.

Furthermore, if you visit their website, you will notice that full support for that particular version has already concluded: https://access.redhat.com/support/policy/updates/openshift

Best regards,

Screenshot 2023-09-25 at 11 09 48 AM

@@ -70,39 +71,38 @@ Select the tab that corresponds to your preferred installation method:

.. tab-set::

.. tab-item:: Red Hat Marketplace
.. tab-item:: Red Hat OperatorHub
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

Switched order of these tabs, because using OperatorHub saves you from several annoyances and we should encourage it.

Marketplace does lead you to OperatorHub, but in a roundabout way that few people do. (I.e. paying Red Hat instead of us directly.)

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

"changes" from here through line 105 are all because of the tab reorder. (Improvements to existing welcome, as always.)

@cniackz cniackz self-requested a review September 15, 2023 18:05
@cniackz
Copy link
Contributor

cniackz commented Sep 15, 2023

I know this is a draft, but I loved the way it looks in the web page provided at: http://192.241.195.202:9000/staging/DOCS-991/openshift/operations/installation.html#configure-tls-certificates
This to me looks good!

@feorlen feorlen marked this pull request as ready for review September 15, 2023 18:34
@@ -95,7 +95,7 @@ Kubernetes TLS Certificate API
The MinIO Operator manages TLS Certificate Signing Requests (CSR) using the Kubernetes ``certificates.k8s.io`` :kube-docs:`TLS certificate management API <tasks/tls/managing-tls-in-a-cluster/>` to create signed TLS certificates in the following circumstances:

- When ``autoCert`` is enabled.
- For the MinIO Console when the :envvar:`OPERATOR_CONSOLE_TLS_ENABLE` environment variable is set to ``on``.
- For the MinIO Console when the :envvar:`MINIO_CONSOLE_TLS_ENABLE` environment variable is set to ``on``.
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

OPERATOR_CONSOLE_TLS_ENABLE was an oops the correct name is MINIO_CONSOLE_TLS_ENABLE

Copy link
Collaborator

@ravindk89 ravindk89 left a comment

Choose a reason for hiding this comment

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

One minor nit, I don't see anything otherwise here that is a concern. Lovely bit of work.

@@ -65,7 +65,7 @@
'podman-docs' : ('https://docs.podman.io/en/latest/%s', None),
'podman-git' : ('https://github.com/containers/podman/%s', None),
'docker-docs' : ('https://docs.docker.com/%s', None),
'openshift-docs' : ('https://docs.openshift.com/container-platform/4.11/%s', None),
'openshift-docs' : ('https://docs.openshift.com/container-platform/4.13/%s', None),
Copy link
Collaborator

Choose a reason for hiding this comment

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

No harm in bumping!

@@ -16,7 +17,7 @@ Overview
Red Hat® OpenShift® is an enterprise-ready Kubernetes container platform with full-stack automated operations to manage hybrid cloud, multi-cloud, and edge deployments.
OpenShift includes an enterprise-grade Linux operating system, container runtime, networking, monitoring, registry, and authentication and authorization solutions.

You can deploy the MinIO Kubernetes Operator through the :openshift-docs:`Red Hat® OpenShift® Container Platform 4.7+ <welcome/index.html>`.
You can deploy the MinIO Kubernetes Operator through the :openshift-docs:`Red Hat® OpenShift® Container Platform 4.8+ <welcome/index.html>`.
Copy link
Collaborator

Choose a reason for hiding this comment

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

@cniackz is there a specific Operator version where that bump happened? We might want to maintain a matrix somewhere, at least internally.

source/includes/openshift/deploy-minio-on-openshift.rst Outdated Show resolved Hide resolved
@ravindk89 ravindk89 merged commit 62e1447 into main Sep 25, 2023
@ravindk89 ravindk89 deleted the DOCS-991 branch September 25, 2023 15:27
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.

[RELEASE] Operator v5.0.8
3 participants