StarlingX Metrics Server App
8bf3798c1b
This commit removes the resources.requests.cpu and resources.requests.memory fields from the deployment. By eliminating these resource requests, the deployment is no longer tied to specific guaranteed allocations, allowing for more flexible and dynamic use of available resources. This aligns with the behavior of previous metrics server versions. Additionally, there should be no CPU allocation in 'platform' pods as they end up using the CPU resource pool of 'application' due to a limitation in the implementation of CPU isolation present in the system. Closes-bug: 2076940 Test Plan: PASS: Build package PASS: App upload/apply/update/remove/delete PASS: Verify that the values shown in the metrics server deployment describe for the metrics-server and addon-resizer containers do not have values in 'resource.requests' for cpu and memory PASS: Run sample application Change-Id: Ia018f5410b2c807682d05d1edf14c543159984a8 Signed-off-by: Gabriel de Araújo Cabral <gabriel.cabral@windriver.com> |
||
---|---|---|
helm-charts/upstream/metrics-server-helm | ||
python3-k8sapp-metrics-server | ||
sample-app | ||
stx-metrics-server-helm | ||
.gitignore | ||
.gitreview | ||
.zuul.yaml | ||
bindep.txt | ||
debian_build_layer.cfg | ||
debian_iso_image.inc | ||
debian_pkg_dirs | ||
debian_stable_docker_images.inc | ||
readme.md | ||
requirements.txt | ||
test-requirements.txt | ||
tox.ini |
Metrics Server Armada App
This Armada App is responsible to deliver the metrics server inside the ISO.
Metrics Server is a scalable, efficient source of container resource metrics for Kubernetes built-in autoscaling pipelines.
Structure
metrics-server-armada-app
├── debian_build_layer.cfg
├── debian_iso_image.inc
├── debian_pkg_dirs
├── debian_stable_docker_images.inc
├── metrics-server-helm
│ ├── debian
│ │ ├── deb_folder
│ │ │ ├── changelog
│ │ │ ├── control
│ │ │ ├── copyright
│ │ │ ├── metrics-server-helm.install
│ │ │ └── rules
│ │ └── meta_data.yaml
│ └── files
│ ├── 0001-Add-sample-app-to-metrics-server.patch
| ├── 0002-Add-label-platform-application-to-pods.patch
│ └── Makefile
├── readme.md
├── requirements.txt
├── sample-app
│ ├── debian
│ │ └── sample-app.stable_docker_image
│ ├── docker
│ │ ├── Dockerfile.debian
│ │ └── src
│ │ ├── package.json
│ │ └── sample-application.js
│ └── readme.md
├── stx-metrics-server-helm
│ ├── debian
│ │ ├── deb_folder
│ │ │ ├── changelog
│ │ │ ├── control
│ │ │ ├── copyright
│ │ │ ├── rules
│ │ │ ├── source
│ │ │ │ └── format
│ │ │ └── stx-metrics-server-helm.install
│ │ └── meta_data.yaml
│ └── stx-metrics-server-helm
│ ├── files
│ │ ├── Makefile
│ │ └── metadata.yaml
│ ├── fluxcd-manifests
│ │ ├── base
│ │ │ ├── helmrepository.yaml
│ │ │ ├── kustomization.yaml
│ │ │ └── namespace.yaml
│ │ ├── kustomization.yaml
│ │ └── metrics-server
│ │ ├── helmrelease.yaml
│ │ ├── kustomization.yaml
│ │ ├── metrics-server-static-overrides.yaml
│ │ └── metrics-server-system-overrides.yaml
│ └── helm-charts
│ └── Makefile
├── test-requirements.txt
└── tox.ini
Important files
- metrics-server_manifest.yaml - Armada Manifest
- helm-charts - Metrics Server helm charts
- stx-metrics-server-helm.spec - Steps to generate
- sample-app - Sample app application
Install
- Navigate to the path
/usr/local/share/applications/helm/
- The
metrics-server-1.0-1.tgz
will be present - Run
system application-upload metrics-server-1.0-1.tgz
- Run
system application-list
to see if it was uploaded - Run
system helm-override-update --reuse-values --set sampleApp.create=true metrics-server metrics-server metrics-server
If you want to deploy the sample app - Run
system application-apply metrics-server
- Run
system application-list
to see if it was applied - Run
kubectl get pods -l app=metrics-server -n metrics-server
to see the pod running