promenade/examples/containerd/HostSystem.yaml
Ruslan Aliev 4eacd56646 Add configurable ETCD parameters to aux cluster
Bump k8s, calico, etcd, coredns and helm.

Signed-off-by: Ruslan Aliev <raliev@mirantis.com>
Change-Id: I77373c223c6ea723ee31fe51e6fb4a9e84be03f7
2024-04-18 10:25:26 -05:00

118 lines
3.0 KiB
YAML

---
schema: promenade/HostSystem/v1
metadata:
schema: metadata/Document/v1
name: host-system
layeringDefinition:
abstract: false
layer: site
storagePolicy: cleartext
data:
systemd_units:
kube-cgroup:
enable: true
files:
- path: /opt/kubernetes/bin/kubelet
tar_url: https://dl.k8s.io/v1.29.4/kubernetes-node-linux-amd64.tar.gz
tar_path: kubernetes/node/bin/kubelet
mode: 0555
- path: /usr/local/bin/kubectl
tar_url: https://dl.k8s.io/v1.29.4/kubernetes-node-linux-amd64.tar.gz
tar_path: kubernetes/node/bin/kubectl
mode: 0555
- path: /etc/systemd/system/kube-cgroup.service
content: |
[Unit]
Description=Create and tune cgroup for Kubernetes Pods
Requires=network-online.target
Before=kubelet.service
[Service]
Delegate=yes
ExecStart=/usr/local/sbin/kube-cgroup.sh
[Install]
RequiredBy=kubelet.service
mode: 0444
- path: /usr/local/sbin/kube-cgroup.sh
mode: 0744
content: |-
#!/bin/bash
set -x
KUBE_CGROUP=${KUBE_CGROUP:-"kube_whitelist"}
SYSTEMD_ABSPATH="/sys/fs/cgroup/systemd/$KUBE_CGROUP"
CPUSET_ABSPATH="/sys/fs/cgroup/cpuset/$KUBE_CGROUP"
CPU_ABSPATH="/sys/fs/cgroup/cpu/$KUBE_CGROUP"
MEM_ABSPATH="/sys/fs/cgroup/memory/$KUBE_CGROUP"
PIDS_ABSPATH="/sys/fs/cgroup/pids/$KUBE_CGROUP"
for cg in $SYSTEMD_ABSPATH $CPUSET_ABSPATH $CPU_ABSPATH $MEM_ABSPATH $PIDS_ABSPATH
do
mkdir -p "$cg"
done
- path: /etc/logrotate.d/json-logrotate
mode: 0444
content: |-
/var/lib/docker/containers/*/*-json.log
{
compress
copytruncate
create 0644 root root
daily
dateext
dateformat -%Y%m%d-%s
maxsize 10M
missingok
notifempty
su root root
rotate 1
}
- path: /etc/profile.d/kubeconfig.sh
mode: 0744
content: |-
export KUBECONFIG=/etc/kubernetes/admin/kubeconfig.yaml
- path: /etc/containerd/config.toml
mode: 0400
content: |-
version = 2
[plugins."io.containerd.grpc.v1.cri"]
[plugins."io.containerd.grpc.v1.cri".registry.mirrors]
[plugins."io.containerd.grpc.v1.cri".registry.mirrors."registry:5000"]
endpoint = ["http://registry:5000"]
images:
monitoring_image: &busybox busybox:1.28.3
haproxy: haproxy:1.8.3
helm:
helm: lachlanevenson/k8s-helm:v3.14.4
packages:
common:
additional:
- ceph-common
- curl
- jq
- chrony
required:
socat: socat
genesis:
additional:
- ceph-common
- curl
- jq
- chrony
required:
socat: socat
join:
additional:
- ceph-common
- curl
- jq
- chrony
required:
socat: socat
validation:
pod_logs:
image: *busybox
...