Skip to content

Commit 563bf3f

Browse files
authored
Merge pull request #44163 from SNiemann15/ossm_federation
OSSM-728. Add IBM Power, IBM Z, and nodeport
2 parents 2b3989e + 5dce774 commit 563bf3f

File tree

2 files changed

+51
-1
lines changed

2 files changed

+51
-1
lines changed

modules/ossm-federation-across-cluster.adoc

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,11 @@ If the cluster runs on bare metal and fully supports `LoadBalancer` services, th
1515

1616
If the cluster does not support `LoadBalancer` services, using a `NodePort` service could be an option if the nodes are accessible from the cluster running the other mesh. In the `ServiceMeshPeer` object, specify the IP addresses of the nodes in the `.spec.remote.addresses` field and the service's node ports in the `.spec.remote.discoveryPort` and `.spec.remote.servicePort` fields.
1717

18+
== Exposing the federation ingress on clusters running on IBM Power and IBM Z
19+
If the cluster runs on IBM Power or IBM Z infrastructure and fully supports `LoadBalancer` services, the IP address found in the `.status.loadBalancer.ingress.ip` field of the ingress gateway `Service` object should be specified as one of the entries in the `.spec.remote.addresses` field of the `ServiceMeshPeer` object.
20+
21+
If the cluster does not support `LoadBalancer` services, using a `NodePort` service could be an option if the nodes are accessible from the cluster running the other mesh. In the `ServiceMeshPeer` object, specify the IP addresses of the nodes in the `.spec.remote.addresses` field and the service's node ports in the `.spec.remote.discoveryPort` and `.spec.remote.servicePort` fields.
22+
1823
== Exposing the federation ingress on Amazon Web Services (AWS)
1924
By default, LoadBalancer services in clusters running on AWS do not support L4 load balancing. In order for {SMProductName} federation to operate correctly, the following annotation must be added to the ingress gateway service:
2025

modules/ossm-federation-config-smcp.adoc

Lines changed: 46 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ You use a *gateway* to manage inbound and outbound traffic for your mesh, lettin
114114

115115
You use ingress and egress gateways to manage traffic entering and leaving the service mesh (North-South traffic). When you create a federated mesh, you create additional ingress/egress gateways, to facilitate service discovery between federated meshes, communication between federated meshes, and to manage traffic flow between service meshes (East-West traffic).
116116

117-
To avoid naming conflicts between meshes, you must create separate egress and ingress gateways for each mesh. For example, 'red-mesh' would have separate egress gateways for traffic going to 'green-mesh' and `blue-mesh`.
117+
To avoid naming conflicts between meshes, you must create separate egress and ingress gateways for each mesh. For example, `red-mesh` would have separate egress gateways for traffic going to `green-mesh` and `blue-mesh`.
118118

119119
.Federation gateway parameters
120120
[options="header"]
@@ -213,6 +213,16 @@ To avoid naming conflicts between meshes, you must create separate egress and in
213213
|`LoadBalancer`
214214
|
215215

216+
|spec:
217+
gateways:
218+
additionalIngress:
219+
<ingressName>:
220+
service:
221+
type:
222+
|If the cluster does not support `LoadBalancer` services, the ingress gateway service can be exposed through a `NodePort` service.
223+
|`NodePort`
224+
|
225+
216226
|spec:
217227
gateways:
218228
additionalIngress:
@@ -234,8 +244,43 @@ To avoid naming conflicts between meshes, you must create separate egress and in
234244
|Used to specify the `port:` and `name:` used for TLS and service discovery. Federation traffic consists of raw encrypted TCP for service traffic. Federation traffic consists of HTTPS for discovery.
235245
|Port `15443` is required for receiving TLS service requests to other meshes in the federation. Port `8188` is required for receiving service discovery requests to other meshes in the federation.
236246
|
247+
248+
|spec:
249+
gateways:
250+
additionalIngress:
251+
<ingressName>:
252+
service:
253+
ports:
254+
nodePort:
255+
|Used to specify the `nodePort:` if the cluster does not support `LoadBalancer` services.
256+
|If specified, is required in addition to `port:` and `name:` for both TLS and service discovery. `nodePort:` must be in the range `30000`-`32767`.
257+
|
237258
|===
238259

260+
In the following example, the administrator is configuring the SMCP for federation with the `green-mesh` using a `NodePort` service.
261+
262+
.Sample SMCP for NodePort
263+
[source,yaml]
264+
----
265+
gateways:
266+
additionalIngress:
267+
ingress-green-mesh:
268+
enabled: true
269+
routerMode: sni-dnat
270+
service:
271+
type: NodePort
272+
metadata:
273+
labels:
274+
federation.maistra.io/ingress-for: ingress-green-mesh
275+
ports:
276+
- port: 15443
277+
nodePort: 30510
278+
name: tls
279+
- port: 8188
280+
nodePort: 32359
281+
name: https-discovery
282+
----
283+
239284
== Understanding federation trust domain parameters
240285

241286
Each mesh in the federation must have its own unique trust domain. This value is used when configuring mesh federation in the `ServiceMeshPeer` resource.

0 commit comments

Comments
 (0)