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: docs/guides/ca-import.md
+16-65Lines changed: 16 additions & 65 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,11 +1,6 @@
1
1
# Importing or Connecting an External CA
2
2
3
-
This guide covers two approaches for using an existing Puppet or OpenVox CA with the operator:
4
-
5
-
1.**CA Import** -- copy existing CA data into the operator-managed PVC (one-time migration)
6
-
2.**External CA** -- point the operator at a running CA outside the cluster (ongoing delegation)
7
-
8
-
## Option A: CA Import (One-Time Migration)
3
+
## CA Import (One-Time Migration)
9
4
10
5
If you have an existing CA and want the operator to manage it going forward, you can import the CA data into the operator's PVC.
11
6
@@ -68,7 +63,7 @@ If you have an existing CA and want the operator to manage it going forward, you
68
63
69
64
3. The CA setup Job will detect existing data and skip regeneration. The operator will create the corresponding Secrets and transition to `Ready`.
70
65
71
-
## Option B: External CA (Ongoing Delegation)
66
+
## External CA (Ongoing Delegation)
72
67
73
68
If you have a Puppet/OpenVox CA running outside the cluster and want to keep using it, configure `spec.external` on the `CertificateAuthority` resource. The operator will delegate CSR signing and CRL fetching to the external CA URL.
74
69
@@ -78,14 +73,20 @@ If you have a Puppet/OpenVox CA running outside the cluster and want to keep usi
78
73
- The CA's public certificate (`ca_crt.pem`)
79
74
- (Optional) A client certificate and key for mTLS authentication
80
75
76
+
!!! tip "Using an existing Puppet CA"
77
+
On a traditional Puppet CA server, the CA certificate is typically located at `/etc/puppetlabs/puppet/ssl/certs/ca.pem`. You can copy it with:
1. Create Secrets with the CA certificate and optional client credentials:
84
85
85
86
```bash
86
87
# CA certificate for TLS verification
87
88
kubectl create secret generic external-ca-cert \
88
-
--from-file=ca_crt.pem=/path/to/ca_crt.pem
89
+
--from-file=ca_crt.pem=ca_crt.pem
89
90
90
91
# (Optional) Client certificate for mTLS
91
92
kubectl create secret generic external-ca-tls \
@@ -118,6 +119,13 @@ If you have a Puppet/OpenVox CA running outside the cluster and want to keep usi
118
119
- Periodically fetch the CRL from the external CA
119
120
- Route CSR signing requests to the external CA
120
121
122
+
4. Verify the CA transitions to `External` phase:
123
+
124
+
```bash
125
+
kubectl get ca external-ca -o jsonpath='{.status.phase}'
126
+
# Expected: External
127
+
```
128
+
121
129
### External CA Fields
122
130
123
131
| Field | Required | Description |
@@ -187,60 +195,3 @@ In a multi-cluster or multi-namespace setup you can run one openvox-stack as the
187
195
```
188
196
189
197
5. The secondary stack will now delegate all CSR signing and CRL fetching to the primary CA.
190
-
191
-
## Using an Existing Puppet CA as External CA
192
-
193
-
If you already run a traditional Puppet CA (on a VM or bare-metal server) and want to manage Puppet agents via the operator without migrating the CA, you can point the operator at the existing CA.
194
-
195
-
### Prerequisites
196
-
197
-
- The Puppet CA server is accessible from the Kubernetes cluster (e.g. `https://puppet-ca.example.com:8140`)
198
-
- You have access to the CA certificate file (typically `/etc/puppetlabs/puppet/ssl/certs/ca.pem` on the Puppet CA server)
199
-
- (Optional) A signed client certificate and key for mTLS if the CA requires client authentication
200
-
201
-
### Steps
202
-
203
-
1. Copy the CA certificate from the Puppet CA server:
0 commit comments