You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: install/ossm-cert-manager.adoc
+15-25Lines changed: 15 additions & 25 deletions
Original file line number
Diff line number
Diff line change
@@ -10,37 +10,27 @@ toc::[]
10
10
11
11
The cert-manager tool is a solution for X.509 certificate management on Kubernetes. It delivers a unified API to integrate applications with private or public key infrastructure (PKI), such as Vault, Google Cloud Certificate Authority Service, Let's Encrypt, and other providers.
12
12
13
+
The cert-manager tool ensures that the certificates are valid and up-to-date by attempting to renew certificates at a configured time before they expire.
14
+
13
15
[IMPORTANT]
14
16
====
15
17
The cert-manager tool must be installed before you create and install your `Istio` resource.
16
18
====
17
19
18
-
The cert-manager tool ensures the certificates are valid and up-to-date by attempting to renew certificates at a configured time before they expire.
To install `istio-csr`, you must follow the `istio-csr` installation instructions for the type of update strategy you want. By default, `spec.updateStrategy` is set to `InPlace` when you create and install your `Istio` resource. You create and install your `Istio` resource after you install `istio-csr`.
25
-
26
-
* xref:../install/ossm-cert-manager.adoc#inplace-istio-csr-installation_ossm-cert-manager[Installing the istio-csr agent by using the in place update strategy]
27
-
* xref:../install/ossm-cert-manager.adoc#revision-based-istio-csr-installation_ossm-cert-manager[Installing the istio-csr agent by using the revision based update strategy]
* link:https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/security_and_compliance/cert-manager-operator-for-red-hat-openshift#cert-manager-operator-install[Installing the cert-manager Operator for Red Hat OpenShift]
29
+
* link:https://docs.redhat.com/en/documentation/openshift_container_platform/latest/html/security_and_compliance/cert-manager-operator-for-red-hat-openshift#cert-manager-operator-integrating-istio[Integrating the cert-manager Operator for Red Hat OpenShift with Istio-CSR]
= About integrating Service Mesh with cert-manager and istio-csr
8
-
//TP1 content influx. Title, etc may change.
7
+
= About the cert-manager Operator istio-csr agent
9
8
10
-
The cert-manager tool provides integration with Istio through an external agent called `istio-csr`. The `istio-csr` agent handles certificate signing requests (CSR) from Istio proxies and the `controlplane` in the following ways:
. Creating a CSR through cert-manager for the workload.
11
+
The {cert-manager-operator} enhances certificate management for securing workloads and control plane components in {SMProductName} and {istio}. It supports issuing, delivering, and renewing certificates used for mutual Transport Layer Security (mTLS) through cert-manager issuers.
14
12
15
-
The cert-manager tool then creates a CSR to the configured CA Issuer, which signs the certificate.
13
+
By integrating {istio} with the `istio-csr` agent that is managed by the cert-manager Operator, you enable {istio}to request and manage the certificates directly. The integration simplifies security configuration and centralizes certificate management within the cluster.
16
14
17
15
[NOTE]
18
16
====
19
-
Red{nbsp}Hat provides support for integrating with `istio-csr` and cert-manager. Red{nbsp}Hat does not provide direct support for the `istio-csr` or the community cert-manager components. The use of community cert-manager shown here is for demonstration purposes only.
20
-
====
21
-
22
-
//For Istio users, cert-manager also provides integration with `istio-csr`, which is a certificate authority (CA) server that handles certificate signing requests (CSR) from Istio proxies. The server then delegates signing to cert-manager, which forwards CSRs to the configured CA server.
23
-
24
-
.Prerequisites
25
-
* One of these versions of cert-manager:
26
-
** Red Hat cert-manager Operator 1.10 or later
27
-
** community cert-manager Operator 1.11 or later
28
-
** cert-manager 1.11 or later
29
-
* {SMProductName} 3.0 or later
30
-
* An `IstioCNI` instance is running in the cluster
31
-
* Istio CLI (`istioctl`) tool is installed
32
-
* `jq` is installed
33
-
* Helm is installed
34
-
35
-
//Note to add {cert-manager-operator} to stand alone common attributes file. That is outside the scope of this PR and there is an existing Jira to add common attributes for OSSM GA.
17
+
The {cert-manager-operator} must be installed before you create and install your `{istio}` resource.
//all kinds of formatting things to fix. want to see if a build will generate to have a look, and see how it fits structurally with the IA.
7
+
= Integrating Service Mesh with the cert-manager Operator by using the istio-csr agent
11
8
12
-
You can integrate cert-manager with {SMProduct} by deploying `istio-csr` and then creating an `Istio` resource that uses the `istio-csr` agent to process workload and control plane certificate signing requests. This example creates a self-signed `Issuer`, but any other `Issuer` can be used instead.
9
+
You can integrate the cert-manager Operator with {SMProduct} by deploying the `istio-csr`agent and configuring an `{istio}` resource that uses the `istio-csr` agent to process workload and control plane certificate signing requests. The following procedure creates a self-signed `issuer` object.
13
10
14
-
[IMPORTANT]
15
-
====
16
-
You must install cert-manager before installing your `Istio` resource.
17
-
====
11
+
.Prerequisites
12
+
13
+
* You have installed the {cert-manager-operator} version 1.15.1.
14
+
* You are logged in to {ocp-product-title} 4.14 or later.
15
+
* You have installed the {SMProduct} Operator.
16
+
* You have a `IstioCNI` instance running in the cluster.
17
+
* You have installed the `istioctl` command.
18
18
19
19
.Procedure
20
20
@@ -25,10 +25,31 @@ You must install cert-manager before installing your `Istio` resource.
25
25
$ oc create namespace istio-system
26
26
----
27
27
28
-
. Create the root issuer by creating an `Issuer` object in a YAML file.
28
+
. Patch the cert-manager Operator to install the `istio-csr` agent by running the following command:
. Create the root certificate authority (CA) issuer by creating an `Issuer` object for the `istio-csr` agent:
38
+
39
+
.. Create a new project for installing the `istio-csr` agent by running the following command:
29
40
+
41
+
[source, terminal]
42
+
----
43
+
$ oc new-project istio-csr
44
+
----
45
+
30
46
.. Create an `Issuer` object similar to the following example:
31
47
+
48
+
[NOTE]
49
+
====
50
+
The `selfSigned` issuer is intended for demonstration, testing, or proof-of-concept environments. For production deployments, use a secure and trusted CA.
51
+
====
52
+
+
32
53
.Example `issuer.yaml` file
33
54
[source, yaml]
34
55
----
@@ -43,11 +64,11 @@ spec:
43
64
apiVersion: cert-manager.io/v1
44
65
kind: Certificate
45
66
metadata:
46
-
name: istio-ca
47
-
namespace: istio-system
67
+
name: istio-ca
68
+
namespace: istio-system
48
69
spec:
49
70
isCA: true
50
-
duration: 87600h # 10 years
71
+
duration: 87600h
51
72
secretName: istio-ca
52
73
commonName: istio-ca
53
74
privateKey:
@@ -70,36 +91,102 @@ metadata:
70
91
spec:
71
92
ca:
72
93
secretName: istio-ca
73
-
---
74
94
----
75
-
+
95
+
76
96
.. Create the objects by running the following command:
77
97
+
78
98
[source, terminal]
79
99
+
80
100
----
81
101
$ oc apply -f issuer.yaml
82
102
----
83
-
+
103
+
84
104
.. Wait for the `istio-ca` certificate to contain the "Ready" status condition by running the following command:
The configuration disables the built-in CA server for {istio} and forwards certificate signing requests from `istiod` to the `istio-csr` agent. The `istio-csr` agent obtains certificates for both `istiod` and mesh workloads from the cert-manager Operator. The `istiod` TLS certificate that is generated by the `istio-csr` agent is mounted into the pod at a known location for use.
157
+
====
158
+
159
+
.. Create the `{istio}` object similar to the following example:
99
160
+
100
-
.. Create a secret from the local certificate file in the `cert-manager` namespace by running the following command:
= Uninstalling Service Mesh with the cert-manager Operator by using the istio-csr agent
8
+
9
+
You can uninstall the cert-manager Operator with {SMProduct} by completing the following procedure. Before you remove the following resources, verify that no {SMProductName} or {istio} components reference the `Istio-CSR` agent or the certificates it issued. Removing these resources while they are still in use might disrupt mesh functionality.
10
+
11
+
.Procedure
12
+
13
+
. Remove the `IstioCSR` custom resource by running the following command:
0 commit comments