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
The [`create_gke_metric.sh`](gke/create_gke_metric.sh) script configures the
63
+
project to allow log collection from GKE workload, configures a log based metric
64
+
to extract the relevant clock accuracy data into a monitoring compatible form
65
+
and finally creates a dashboard combining platform and VM metrics into a
66
+
tracability metric for each node.
67
+
68
+
The [`create_gke_cluster.sh`](gke/create_gke_cluster.sh) script creates a GKE
69
+
cluster and configures it to leverage TimeSync. The cluster is created with the
70
+
nodes "tainted" to ensure the daemonset is applied to each node before workload
71
+
can start running on it. Once the cluster is created, the script apply the
72
+
following configurations to it:
73
+
74
+
*[`Service account`](gke/serviceaccount.yaml), [`role`](gke/cluster-role.yaml) and [`bindings`](gke/cluster-role-binding.yaml) to allow the DaemonSet to untaint the node once configured
75
+
76
+
*[`ConfigMap`](gke/cm-entrypoint.yaml) with the script used by the DaemonSet node initializer to load PTP-KVM, configure chrony and untaint the node once it is configured and synchronized.
77
+
78
+
*[`DaemonSet`](gke/daemonset.yaml) which configures two init containers for each node - "node-initializers" which executes the script from the ConfigMap, and "logshipper" which ships chrony's tracking log to GKE's workload logging system.
79
+
80
+
Together, these configurations ensure all nodes in the cluster are enabled for
81
+
TimeSync and collect the telemetry from them to Google's cloud logging, where it
82
+
is converted to metric and can be monitored and analyzed.
0 commit comments