Skip to content

Commit 8ce5521

Browse files
committed
Applied changes from PR#800 ranjinimn suggestions/proposals (first review)
Signed-off-by: Antonio Alonso Alarcon <[email protected]>
1 parent f215823 commit 8ce5521

File tree

1 file changed

+44
-31
lines changed

1 file changed

+44
-31
lines changed

asciidoc/product/atip-requirements.adoc

Lines changed: 44 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -62,22 +62,28 @@ To use the directed network provisioning workflow, the management cluster must h
6262

6363
=== Port requirements
6464

65-
To operate properly, a SUSE Telco Cloud deployment requires a number of ports to be reachable on the Management and the Downstream Kubernetes cluster nodes.
65+
To operate properly, a SUSE Telco Cloud deployment requires a number of ports to be reachable on the management and the downstream Kubernetes cluster nodes.
6666

67-
NOTE: The exact list depends on the deployed optional components and the selected deployment options (e.g., CNI plugin).
67+
[NOTE]
68+
====
69+
The exact list depends on the deployed optional components and the selected deployment options (e.g., CNI plug-in).
70+
====
6871

6972
==== Management Nodes
7073

71-
The following table lists the opened ports in nodes running the Management cluster:
74+
The following table lists the opened ports in nodes running the management cluster:
7275

73-
NOTE: CNI plugin related ports are not included in this list, those being detailed in a following section (see below).
76+
[NOTE]
77+
====
78+
For CNI plug-in related ports, see <<cni-specific-port-requirements,CNI specific port requirements>>.
79+
====
7480

7581
|===
7682
| Protocol | Port | Source | Description
7783
| TCP
7884
| 22
79-
| Any source requiring SSH access
80-
| SSH access to mgmt. cluster nodes
85+
| Any source that requires SSH access
86+
| SSH access to management cluster nodes
8187

8288
| TCP
8389
| 80
@@ -92,35 +98,35 @@ NOTE: CNI plugin related ports are not included in this list, those being detail
9298
| TCP
9399
| 2379
94100
| RKE2 (management cluster) server nodes
95-
| etcd client port
101+
| `etcd` client port
96102

97103
| TCP
98104
| 2380
99105
| RKE2 (management cluster) server nodes
100-
| etcd peer port
106+
| `etcd` peer port
101107

102108
| TCP
103109
| 6180
104110
| Any BMC^(1)^ previously instructed by `Metal^3^/ironic` to pull an IPA^(2)^ ramdisk image from this exposed port (non-TLS)
105-
| `Ironic` httpd non-TLS web server serving IPA^(2)^ iso images for virtual media based boot +
111+
| `Ironic` httpd non-TLS web server serving IPA^(2)^ ISO images for virtual media based boot +
106112
+
107-
NOTE: In case this port is enabled, the functionally equivalent but TLS-enabled one (see below) is not opened
113+
In case this port is enabled, the functionally equivalent but TLS-enabled one (see below) is not opened
108114

109115
| TCP
110116
| 6185
111117
| Any BMC^(1)^ previously instructed by `Metal^3^/ironic` to pull an IPA^(2)^ ramdisk image from this exposed port (TLS)
112-
| `Ironic` httpd TLS-enabled web server serving IPA^(2)^ iso images for virtual media based boot +
118+
| `Ironic` httpd TLS-enabled web server serving IPA^(2)^ ISO images for virtual media based boot +
113119
+
114-
NOTE: In case this port is enabled, the functionally equivalent but TLS-disabled one (see above) is not opened
120+
In case this port is enabled, the functionally equivalent but TLS-disabled one (see above) is not opened
115121

116122
| TCP
117123
| 6385
118124
| Any `Metal^3^/ironic` IPA^(1)^ ramdisk image deployed & running in an "enrolled" `BareMetalHost` instance
119-
|Ironic API
125+
| Ironic API
120126

121127
| TCP
122128
| 6443
123-
| Any management cluster node; any external (to the mgmt. cluster) kubernetes client
129+
| Any management cluster node; any external (to the management cluster) Kubernetes client
124130
| Kubernetes API
125131

126132
| TCP
@@ -136,7 +142,7 @@ NOTE: In case this port is enabled, the functionally equivalent but TLS-disabled
136142
| TCP
137143
| 10250
138144
| Any management cluster node
139-
| kubelet metrics
145+
| `kubelet` metrics
140146

141147
| TCP/UDP/SCTP
142148
| 30000-32767
@@ -148,9 +154,13 @@ NOTE: In case this port is enabled, the functionally equivalent but TLS-disabled
148154

149155
==== Downstream Nodes
150156

151-
In SUSE Telco Cloud, before any (downstream) server becomes part of a running downstream kubernetes cluster (or runs itself a single-node downstream kubernetes cluster), it is required to go through some of the https://github.com/metal3-io/baremetal-operator/blob/main/docs/baremetalhost-states.md[BaremetalHost Provisioning states].
157+
In SUSE Telco Cloud, before any (downstream) server becomes part of a running downstream Kubernetes cluster (or runs itself a single-node downstream Kubernetes cluster), it is required to go through some of the https://github.com/metal3-io/baremetal-operator/blob/main/docs/baremetalhost-states.md[BaremetalHost Provisioning states].
152158

153-
* First of all, the Baseboard Management Controller (BMC) for a just enrolled downstream server must be accessible through the out-of-band network, for the ironic service running on the mgmt. cluster to instruct it on the initial steps to take: to get and load an IPA ramdisk image in the BMC offered `virtual media` and power-on the server. Following ports are expected to be exposed from the BMC (they could differ depending on the exact hardware):
159+
* The Baseboard Management Controller (BMC) for a just declared downstream server must be accessible through the out-of-band network. BMC is instructed (from the ironic service running on the management cluster) on the initial steps to take:
160+
. Pull and load the indicated IPA ramdisk image in the BMC offered `virtual media`.
161+
. Power-on the server.
162+
163+
Following ports are expected to be exposed from the BMC (they could differ depending on the exact hardware):
154164

155165
|===
156166
| Protocol | Port | Source | Description
@@ -165,13 +175,13 @@ In SUSE Telco Cloud, before any (downstream) server becomes part of a running do
165175
| Redfish API access (HTTPS)
166176
|===
167177

168-
* Once an IPA ramdisk image has been loaded on the target downstream server and used as bootup image (using BMC `virtual media` support) the hardware inspection phase is started. Here below are listed the ports being exposed by a running IPA ramdisk image:
178+
* Once the IPA ramdisk image loaded on the BMC `virtual media` is used to bootup the downstream server image, the hardware inspection phase begins. The following table lists the ports exposed by a running IPA ramdisk image:
169179

170180
|===
171181
| Protocol | Port | Source | Description
172182
| TCP
173183
| 22
174-
| Any source requrining SSH access to IPA ramdisk image
184+
| Any source that requires SSH access to IPA ramdisk image
175185
| SSH access to a being inspected downstream cluster node
176186

177187
| TCP
@@ -180,15 +190,18 @@ In SUSE Telco Cloud, before any (downstream) server becomes part of a running do
180190
| Ironic commands towards the running ramdisk image
181191
|===
182192

183-
* Finally, once the baremetal host has been properly provisioned and has joined a downstream kubernetes cluster, it exposes the following ports:
193+
* Once the baremetal host is properly provisioned and has joined a downstream Kubernetes cluster, it exposes the following ports:
184194

185-
NOTE: CNI plugin related ports are not included in this list, those being detailed in a following section (see below).
195+
[NOTE]
196+
====
197+
For CNI plug-in related ports, see <<cni-specific-port-requirements,CNI specific port requirements>>.
198+
====
186199

187200
|===
188201
| Protocol | Port | Source | Description
189202
| TCP
190203
| 22
191-
| Any source requiring SSH access
204+
| Any source that requires SSH access
192205
| SSH access to downstream cluster nodes
193206

194207
| TCP
@@ -204,16 +217,16 @@ NOTE: CNI plugin related ports are not included in this list, those being detail
204217
| TCP
205218
| 2379
206219
| RKE2 (downstream cluster) server nodes
207-
| etcd client port
220+
| `etcd` client port
208221

209222
| TCP
210223
| 2380
211224
| RKE2 (downstream cluster) server nodes
212-
| etcd peer port
225+
| `etcd` peer port
213226

214227
| TCP
215228
| 6443
216-
| Any downstream cluster node; any external (to the downstream cluster) kubernetes client.
229+
| Any downstream cluster node; any external (to the downstream cluster) Kubernetes client.
217230
| Kubernetes API
218231

219232
| TCP
@@ -224,33 +237,33 @@ NOTE: CNI plugin related ports are not included in this list, those being detail
224237
| TCP
225238
| 10250
226239
| Any downstream cluster node
227-
| kubelet metrics
240+
| `kubelet` metrics
228241

229242
| TCP
230243
| 10255
231244
| Any downstream cluster node
232-
| kubelet read-only access
245+
| `kubelet` read-only access
233246

234247
| TCP/UDP/SCTP
235248
| 30000-32767
236249
| Any external (to the downstream cluster) source accessing a service exposed on the primary network through a `spec.type: NodePort` or `spec.type: LoadBalancer` https://kubernetes.io/docs/concepts/services-networking/service/#publishing-services-service-types[Service API object]
237250
| Available `NodePort` port range
238251
|===
239252

240-
253+
[#cni-specific-port-requirements]
241254
==== CNI specific port requirements
242255

243-
Each supported CNI variant comes with its own set of port requirements; RKE2 documentation details those per each of the supported CNI plugins, see https://docs.rke2.io/install/requirements#cni-specific-inbound-network-rules
256+
Each supported CNI variant comes with its own set of port requirements. For more details, refer https://docs.rke2.io/install/requirements#cni-specific-inbound-network-rules[CNI Specific Inbound Network Rules] in RKE2 documentation.
244257

245-
In case of setting `cilium` as default/primary CNI plugin, the following port must be added to the list of externally exposed TCP ports (as provided by RKE2 documentation) when the cilium-operator workload is configured to expose metrics outside the kubernetes cluster it is deployed on (so an external Prometheus server instance running outside that kubernetes cluster can still collect them):
258+
When `cilium` is set as default/primary CNI plug-in, following TCP port is additionally exposed when the cilium-operator workload is configured to expose metrics outside the Kubernetes cluster on which it is deployed. This ensures that an external `Prometheus` server instance running outside that Kubernetes cluster can still collect these metrics.
246259

247260
NOTE: This is the default option when deploying cilium from SUSE rke2-cilium Helm chart (https://rke2-charts.rancher.io/assets/rke2-cilium/rke2-cilium-<major>.<minor>.<patch>.tgz).
248261

249262
|===
250263
| Protocol | Port | Source | Description
251264
| TCP
252265
| 9963
253-
| External (to the kubernetes cluster) metrics collector
266+
| External (to the Kubernetes cluster) metrics collector
254267
| cilium-operator metrics exposure
255268
|===
256269

0 commit comments

Comments
 (0)