GluesyncPlatform reference
The GluesyncPlatform resource (API group gluesync.molo17.com/v1alpha1, short name gsp) describes one Gluesync install: the Core Hub version it should run, who may update it, and how the Gluesync Kubernetes Operator (GKO) checks an update.
GKO serves one GluesyncPlatform per namespace, named gluesync by the kit and by the chart.
Example
apiVersion: gluesync.molo17.com/v1alpha1
kind: GluesyncPlatform
metadata:
name: gluesync
namespace: gluesync-dev
spec:
version: "2.3.2.2"
modules:
chronos: "0.3.3"
updatePolicy: ui
stability:
windowSeconds: 20
maxWaitSeconds: 180
maintenance:
drainTimeoutSeconds: 600
coreHub:
url: https://gluesync-gluesync-core-hub:1717
insecureSkipVerify: true
moduleAuth:
licenseSecretRef:
name: gluesync-gluesync-shared
key: gs-license.dat
tag: conductor
checkIntervalMinutes: 360
Edit it with kubectl edit gsp gluesync, kubectl patch, or in Git.
When the kit or the chart creates it, the matching Helm values are listed in the last column of the tables below: operator.* for the kit, platform.* for the GKO chart.
Versions
| Field | Default | Description | Helm value |
|---|---|---|---|
|
empty |
Core Hub version to run, the image tag without the registry, for example |
kit: |
|
empty |
Module versions pinned by image name, with or without its |
chart: |
|
empty |
|
chart: |
|
empty |
Set to a new value by every update request from the UI. A new value retries an update to the same version that failed or was refused. Do not set it by hand, except to retry, see Retry an update. |
none |
When you start an update from the UI, GKO itself writes version and, for a module you update on its own, a pin in modules.
Who may update
| Field | Default | Description | Helm value |
|---|---|---|---|
|
|
|
kit: |
The UI can start an update only for users with the SUPER_ADMIN or MANAGER role.
GKO checks the user’s role with Core Hub on each request.
Stability check
| Field | Default | Description | Helm value |
|---|---|---|---|
|
|
Seconds a component must stay Ready, without a container restart, to count as up. A restart during the window starts it again. |
kit: |
|
|
Seconds from the image change until the component must have passed the window. The time spent pulling the image counts. Minimum |
kit: |
These fields match Conductor’s UPDATE_VERIFY_SECONDS and UPDATE_VERIFY_MAX_WAIT_SECONDS.
Raise maxWaitSeconds when Core Hub takes long to start, or when your registry is slow to serve a new image, for example a pull-through cache that has not cached it yet.
See Stability check.
Maintenance mode
| Field | Default | Description | Helm value |
|---|---|---|---|
|
|
Seconds the running pipelines get to reach maintenance mode before Core Hub changes. When they do not make it in time, GKO resumes them and refuses the update, without changing any image. Minimum |
kit: |
|
|
Skips maintenance mode: pipelines keep running while Core Hub restarts. Not recommended. |
kit: |
Core Hub access
| Field | Default | Description | Helm value |
|---|---|---|---|
|
|
URL of Core Hub’s REST API. |
chart: |
|
|
Accepts Core Hub’s self-signed certificate. The kit and the chart set |
chart: |
|
|
chart: |
|
|
|
Tag GKO registers under. With |
chart: |
|
|
Port and scheme ( |
set by the chart |
|
|
chart: |
Images and catalog
| Field | Default | Description | Helm value |
|---|---|---|---|
|
empty |
Registry and path that replace those of every image GKO sets, for example |
chart: |
|
|
Minutes between two checks of the version catalog, which fill the Available column and the |
none |
|
|
Stops every call to the version catalog. See Offline installs. |
chart: |
GKO’s own update
GKO 0.2.0 and later update their own Deployment, see GKO’s own update.
GKO’s version is pinned like a module, in modules, under gluesync-operator or operator.
The other settings are Helm values, not fields of the GluesyncPlatform:
| Helm value | Default | Description | Environment variable |
|---|---|---|---|
kit: |
|
|
|
kit: |
|
Seconds without any update before GKO changes its own image. |
|
kit: |
|
|
none |
The kit and the chart also set what the hand-over needs: the label com.molo17.conductor.type: operator, a RollingUpdate strategy with maxUnavailable: 0, minReadySeconds: 10, and leader election, with a Role rule on leases.
GKO keeps the progress of its own update in the annotation gluesync.molo17.com/self-update of its Deployment.
Offline installs
With offline: true, GKO never calls the MOLO17 version catalog:
-
it shows no available version, and the UI cannot start a Core Hub update;
-
you set
versionand every module version inmodulesyourself; -
the images must be in a registry the cluster can reach, usually the mirror set in
imageRegistry.
An offline update still runs every step: maintenance mode, stability check and rollback.
kubectl -n gluesync-dev patch gsp gluesync --type merge \
-p '{"spec":{"version":"2.3.2.2","modules":{"chronos":"0.3.3"}}}'
Disaster recovery
spec.disasterRecovery shapes what GKO builds when the Core Hub UI sets up a disaster-recovery pair (GKO 0.3.0 and later).
Nothing in it turns disaster recovery on.
Helm value: kit operator.disasterRecovery, chart platform.disasterRecovery.
| Field | Default | Description |
|---|---|---|
|
|
Type of the Service |
|
empty |
For the load balancer. |
|
allocated |
Node ports of 1718 and 1719 for a |
|
empty |
|
|
|
For a Core Hub with a |
Status fields
GKO writes the status of the resource.
The main fields:
| Field | Description |
|---|---|
|
|
|
Core Hub version that runs, and the latest version on the release channel. |
|
Release channel read from Core Hub. |
|
Each managed workload: name, kind, type, image, version, latest available version, and whether it is Ready. |
|
The update in progress: target version, current step, the images recorded before the update, and the pipelines it put into maintenance mode. A restarted operator carries on from here. |
|
Pipelines the running update has put into maintenance mode and not yet resumed. |
|
Outcome of the last update: result, message, and one result per component. |
|
The last 10 updates, newest first. |
|
Last progress or error message. |
|
The disaster-recovery setup GKO made: whether it is enabled and set up by GKO, the node id, the peer URL, the failover mode, the address of the Service, and |