mirror of
https://github.com/clearlinux/cloud-native-setup.git
synced 2026-08-19 05:27:26 +00:00
20cb90c7f760f8fce9484fb284cf31a93715c8d5
This patch adds a new script, scaling/k8s_scaling_rapid.sh, for launching pods and collecting metrics. The goal is to two fold. The first goal is improve the required runtime duration of scaling to large numbers of pods. k8s_scaling.sh can take up to 29 hours to scale to 2900 pods. The is largely due to the overhead of collecting system utilization stats after each new pod is launched. This new script will collect system utilization stats asynchronously. The second goal is to make it easier to collect additional system utilization stats by leveraging the plugins supported by collectd. Instead of using the stats daemon set, a new daemon set that runs collectd on each node is added. collectd configuration is handled by collectd/collectd.conf A configmap is added to the K8s cluster containing collectd.conf, so the user of the script can test new configurations easily. The configmap is created and deleted as part of the test run. The data from collectd is stored on each node in the cluster via the csv plugin and the data is collected to the master node at the end of the test run. Several new pages have been added to the metrics_report.pdf These pages cover the same metrics as k8s_scale.sh results, but are populated with data from collectd. Additionally, network interface results are added. To run the report, in addition to the previous steps of creating a new directory and copying the result json file into it, all the new <node_name>.tar.gz files must be copied in as well. Signed-off-by: David Lyle <dklyle0@gmail.com>
Cloud Native Setup
Automation around setting up the cloud-native content (Kubernetes) on Clear Linux.
Folder Structure
- clr-k8s-examples: script tools to deploy a Kubernetes cluster
- metrics: tools to aid in measuring the scaling capabilities of Kubernetes clusters.
Description
Languages
Shell
65.1%
R
32.5%
Dockerfile
1.9%
Smarty
0.4%
Makefile
0.1%