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
Cluster-gateway has native integration with [Open-Cluster-Management(OCM)](https://open-cluster-management.io/)
63
+
to provide the KubeVela admin a more coherent user experience in distributing
64
+
applications across multiple clusters:
65
+
66
+
#### Enabling OCM seamlessly in your KubeVela environment
67
+
68
+
The official vela addon named [ocm-cluster-manager](https://github.com/oam-dev/catalog/tree/master/addons/ocm-cluster-manager)
69
+
will help you easily bootstrap the OCM control plane (in the hosting cluster
70
+
where your KubeVela control plane lives). Note that the OCM environment
71
+
installed from the addon above will not take any effect until we opt-in to
72
+
enable the functional integration between KubeVela and OCM as is elaborated
73
+
below. It's just a minimal trial setup to try out OCM instantly, while in order
74
+
to enable the further integration with OCM, we will need to adjust the
75
+
configuration of cluster-gateway to make it detect and aware of the local OCM
76
+
environment.
77
+
78
+
#### Aligning ClusterGateway to OCM's cluster registry
79
+
80
+
By opt-in to the flag `--ocm-integration=true`, the cluster-gateway will be
81
+
detecting and loading the OCM environment in the hosting cluster and connecting
82
+
each `ClusterGateway` custom resource from cluster-gateway to OCM's original
83
+
cluster model in OCM named `ManagedCluster`. The `ClusterGateway` is a
84
+
gateway "ingress" abstraction for the Kubernetes clusters managed by KubeVela,
85
+
so after integrating with OCM it's intuitive to regard the gateway resource
86
+
as a "satellite" child resource around `ManagedCluster`. Setting the flag will
87
+
make the cluster-gateway filter out those dangling `ClusterGateway` that doesn't
88
+
have a valid `ManagedCluster` bound with. In addition to that, we won't need to
89
+
explicitly set the master URL in the cluster secret because the cluster-gateway
90
+
will be merging the URL list from the corresponding `ManagedCluster`.
91
+
92
+
Furthermore, by enabling the integration, we will also reflect/aggregate the
93
+
healthiness of the corresponding clusters by partially merging the original
94
+
healthiness status from OCM's `ManagedCluster`. So we can save the troubles
95
+
before attempting to talk to an unavailable cluster.
96
+
97
+
#### Delegating the upgrading/rotation of cluster-gateway to OCM
98
+
99
+
Installing the cluster-gateway via the [standalone chart](https://github.com/oam-dev/cluster-gateway/tree/master/charts/cluster-gateway)
100
+
or [KubeVela's chart](https://github.com/oam-dev/kubevela/tree/master/charts/vela-core)
101
+
provides us a one-time light-weighting setup of cluster-gateway, but sadly
102
+
there are still some missing puzzles we should notice before we bring the
103
+
cluster-gateway into sustainable production environment:
104
+
105
+
- The rotation of cluster-gateway's server TLS certificate.
106
+
- Automatic addition/removal of the `ClusterGateway` resource upon cluster
107
+
discovery.
108
+
109
+
In order to fill the blanks in cluster-gateway above, optionally we can delegate
110
+
the management of cluster-gateway to OCM by introducing a new component named [cluster-gateway-addon-manager](https://github.com/oam-dev/cluster-gateway/tree/master/cmd/addon-manager)
111
+
to the hosting cluster which is basically responsible for:
112
+
113
+
1. Sustainable installation as a typical "operator" dedicated for
114
+
cluster-gateway.
115
+
2. Modelling cluster-gateway as an [OCM addon](https://open-cluster-management.io/concepts/addon/).
116
+
117
+
The addon-manager can be installed via simple helm commands, please refer to
118
+
the installation guide [here](https://open-cluster-management.io/scenarios/pushing-kube-api-requests/#installation).
0 commit comments