Compare commits
36 Commits
fd125b4fa4
...
e28d8e983a
Author | SHA1 | Date | |
---|---|---|---|
e28d8e983a | |||
7f1d4333d7 | |||
cc9983742d | |||
a0f3230fab | |||
0b761fc5c4 | |||
22748995bc | |||
b00d3a6a14 | |||
fd2c32ed30 | |||
12e0b0cfcf | |||
db1f237a69 | |||
5a16422f75 | |||
84081514c6 | |||
12fd6df3d8 | |||
71d8919cc5 | |||
58986e1d5b | |||
257bedf284 | |||
6a002155a7 | |||
fb9865ef2c | |||
f01df7954d | |||
e6493e9961 | |||
9e87f92d45 | |||
49fa7b3c42 | |||
1538ea0d45 | |||
f72ef007f2 | |||
87e7f5fe20 | |||
7527e085ea | |||
7612d257aa | |||
c16a233864 | |||
33307fccce | |||
09a2ead705 | |||
7863202ca7 | |||
d3036ad1ac | |||
04ca35c676 | |||
55e22e7f6d | |||
9e9ae3e8b8 | |||
ccdf4652cf |
@ -2,7 +2,13 @@
|
|||||||
|
|
||||||
# All things BEFORE the first controller / control plane upgrade
|
# All things BEFORE the first controller / control plane upgrade
|
||||||
pre_control_plane_upgrade_cluster() {
|
pre_control_plane_upgrade_cluster() {
|
||||||
echo
|
if [ "$PLATFORM" != "gke" ];then
|
||||||
|
# patch multus DS to ONLY run pods on 1.31 controllers
|
||||||
|
kubectl patch ds kube-multus-ds -n kube-system -p '{"spec": {"template": {"spec": {"nodeSelector": {"node.kubernetes.io/kubezero.version": "v1.31.6"}}}}}' || true
|
||||||
|
|
||||||
|
# patch kube-proxy DS to ONLY run pods on 1.31 controllers
|
||||||
|
kubectl patch ds kube-proxy -n kube-system -p '{"spec": {"template": {"spec": {"nodeSelector": {"node.kubernetes.io/kubezero.version": "v1.31.6"}}}}}' || true
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -16,7 +22,20 @@ post_control_plane_upgrade_cluster() {
|
|||||||
pre_cluster_upgrade_final() {
|
pre_cluster_upgrade_final() {
|
||||||
set +e
|
set +e
|
||||||
|
|
||||||
echo
|
if [ "$PLATFORM" != "gke" ];then
|
||||||
|
# cleanup multus
|
||||||
|
kubectl delete clusterrolebinding multus
|
||||||
|
kubectl delete clusterrole multus
|
||||||
|
kubectl delete serviceaccount multus -n kube-system
|
||||||
|
kubectl delete cm multus-cni-config -n kube-system
|
||||||
|
kubectl delete ds kube-multus-ds -n kube-system
|
||||||
|
kubectl delete NetworkAttachmentDefinition cilium
|
||||||
|
kubectl delete crd network-attachment-definitions.k8s.cni.cncf.io
|
||||||
|
|
||||||
|
# remove kube-proxy
|
||||||
|
kubectl -n kube-system delete ds kube-proxy
|
||||||
|
kubectl -n kube-system delete cm kube-proxy
|
||||||
|
fi
|
||||||
|
|
||||||
set -e
|
set -e
|
||||||
}
|
}
|
||||||
|
@ -63,7 +63,7 @@ render_kubeadm() {
|
|||||||
|
|
||||||
# Assemble kubeadm config
|
# Assemble kubeadm config
|
||||||
cat /dev/null > ${HOSTFS}/etc/kubernetes/kubeadm.yaml
|
cat /dev/null > ${HOSTFS}/etc/kubernetes/kubeadm.yaml
|
||||||
for f in Cluster KubeProxy Kubelet; do
|
for f in Cluster Kubelet; do
|
||||||
# echo "---" >> /etc/kubernetes/kubeadm.yaml
|
# echo "---" >> /etc/kubernetes/kubeadm.yaml
|
||||||
cat ${WORKDIR}/kubeadm/templates/${f}Configuration.yaml >> ${HOSTFS}/etc/kubernetes/kubeadm.yaml
|
cat ${WORKDIR}/kubeadm/templates/${f}Configuration.yaml >> ${HOSTFS}/etc/kubernetes/kubeadm.yaml
|
||||||
done
|
done
|
||||||
@ -169,7 +169,7 @@ kubeadm_upgrade() {
|
|||||||
else
|
else
|
||||||
pre_cluster_upgrade_final
|
pre_cluster_upgrade_final
|
||||||
|
|
||||||
_kubeadm upgrade apply phase addon all $KUBE_VERSION
|
_kubeadm upgrade apply phase addon coredns $KUBE_VERSION
|
||||||
|
|
||||||
post_cluster_upgrade_final
|
post_cluster_upgrade_final
|
||||||
|
|
||||||
@ -239,7 +239,7 @@ control_plane_node() {
|
|||||||
if [[ "$CMD" =~ ^(join)$ ]]; then
|
if [[ "$CMD" =~ ^(join)$ ]]; then
|
||||||
# Delete any former self in case forseti did not delete yet
|
# Delete any former self in case forseti did not delete yet
|
||||||
kubectl delete node ${NODENAME} --wait=true || true
|
kubectl delete node ${NODENAME} --wait=true || true
|
||||||
# Wait for all pods to be deleted otherwise we end up with stale pods eg. kube-proxy and all goes to ....
|
# Wait for all pods to be deleted otherwise we end up with stale pods
|
||||||
kubectl delete pods -n kube-system --field-selector spec.nodeName=${NODENAME}
|
kubectl delete pods -n kube-system --field-selector spec.nodeName=${NODENAME}
|
||||||
|
|
||||||
# get current running etcd pods for etcdctl commands
|
# get current running etcd pods for etcdctl commands
|
||||||
@ -251,7 +251,7 @@ control_plane_node() {
|
|||||||
done
|
done
|
||||||
|
|
||||||
# see if we are a former member and remove our former self if so
|
# see if we are a former member and remove our former self if so
|
||||||
MY_ID=$(etcdctl member list --endpoints=$etcd_endpoints | grep $ETCD_NODENAME | awk '{print $1}' | sed -e 's/,$//')
|
MY_ID=$(etcdctl member list --endpoints=$etcd_endpoints | grep $ETCD_NODENAME | awk '{print $1}' | sed -e 's/,$//' || true)
|
||||||
[ -n "$MY_ID" ] && retry 12 5 5 etcdctl member remove $MY_ID --endpoints=$etcd_endpoints
|
[ -n "$MY_ID" ] && retry 12 5 5 etcdctl member remove $MY_ID --endpoints=$etcd_endpoints
|
||||||
|
|
||||||
# flush etcd data directory as joining with previous storage seems flaky, especially during etcd version upgrades
|
# flush etcd data directory as joining with previous storage seems flaky, especially during etcd version upgrades
|
||||||
@ -309,8 +309,9 @@ control_plane_node() {
|
|||||||
_kubeadm init phase mark-control-plane
|
_kubeadm init phase mark-control-plane
|
||||||
_kubeadm init phase kubelet-finalize all
|
_kubeadm init phase kubelet-finalize all
|
||||||
|
|
||||||
|
# we skip kube-proxy
|
||||||
if [[ "$CMD" =~ ^(bootstrap|restore)$ ]]; then
|
if [[ "$CMD" =~ ^(bootstrap|restore)$ ]]; then
|
||||||
_kubeadm init phase addon all
|
_kubeadm init phase addon coredns
|
||||||
fi
|
fi
|
||||||
|
|
||||||
post_kubeadm
|
post_kubeadm
|
||||||
|
@ -3,6 +3,7 @@
|
|||||||
# Simulate well-known CRDs being available
|
# Simulate well-known CRDs being available
|
||||||
API_VERSIONS="-a monitoring.coreos.com/v1 -a snapshot.storage.k8s.io/v1 -a policy/v1/PodDisruptionBudget -a apiregistration.k8s.io/v1"
|
API_VERSIONS="-a monitoring.coreos.com/v1 -a snapshot.storage.k8s.io/v1 -a policy/v1/PodDisruptionBudget -a apiregistration.k8s.io/v1"
|
||||||
LOCAL_DEV=${LOCAL_DEV:-""}
|
LOCAL_DEV=${LOCAL_DEV:-""}
|
||||||
|
ENV_VALUES=""
|
||||||
|
|
||||||
export HELM_SECRETS_BACKEND="vals"
|
export HELM_SECRETS_BACKEND="vals"
|
||||||
|
|
||||||
@ -80,15 +81,19 @@ function get_kubezero_secret() {
|
|||||||
get_secret_val kubezero kubezero-secrets "$1"
|
get_secret_val kubezero kubezero-secrets "$1"
|
||||||
}
|
}
|
||||||
|
|
||||||
function ensure_kubezero_secret_key() {
|
|
||||||
local secret="$(kubectl get secret -n kubezero kubezero-secrets -o yaml)"
|
|
||||||
local key=""
|
|
||||||
local val=""
|
|
||||||
|
|
||||||
for key in $@; do
|
function ensure_kubezero_secret_key() {
|
||||||
val=$(echo "$secret" | yq ".data.\"$key\"")
|
local ns=$1
|
||||||
|
local secret=$2
|
||||||
|
|
||||||
|
local secret="$(kubectl get secret -n $ns $secret -o yaml)"
|
||||||
|
local key
|
||||||
|
local val
|
||||||
|
|
||||||
|
for key in $1; do
|
||||||
|
val=$(echo $secret | yq ".data.\"$key\"")
|
||||||
if [ "$val" == "null" ]; then
|
if [ "$val" == "null" ]; then
|
||||||
kubectl patch secret -n kubezero kubezero-secrets --patch="{\"data\": { \"$key\": \"\" }}"
|
set_kubezero_secret $key ""
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
}
|
}
|
||||||
@ -210,7 +215,7 @@ for manifest in yaml.safe_load_all(sys.stdin):
|
|||||||
# helm template | kubectl apply -f -
|
# helm template | kubectl apply -f -
|
||||||
# confine to one namespace if possible
|
# confine to one namespace if possible
|
||||||
function render() {
|
function render() {
|
||||||
helm secrets --evaluate-templates template $(chart_location $chart) -n $namespace --name-template $module $targetRevision --skip-tests --skip-crds -f $WORKDIR/values.yaml $API_VERSIONS --kube-version $KUBE_VERSION $@ \
|
helm secrets --evaluate-templates template $(chart_location $chart) -n $namespace --name-template $module $targetRevision --skip-tests --skip-crds -f $WORKDIR/values.yaml $API_VERSIONS --kube-version $KUBE_VERSION $ENV_VALUES \
|
||||||
| python3 -c '
|
| python3 -c '
|
||||||
#!/usr/bin/python3
|
#!/usr/bin/python3
|
||||||
import yaml
|
import yaml
|
||||||
@ -262,6 +267,11 @@ function _helm() {
|
|||||||
|
|
||||||
crds
|
crds
|
||||||
|
|
||||||
|
elif [ $action == "dryrun" ]; then
|
||||||
|
cat $WORKDIR/values.yaml
|
||||||
|
render
|
||||||
|
cat $WORKDIR/helm.yaml
|
||||||
|
|
||||||
elif [ $action == "apply" -o $action == "replace" ]; then
|
elif [ $action == "apply" -o $action == "replace" ]; then
|
||||||
echo "using values to $action of module $module: "
|
echo "using values to $action of module $module: "
|
||||||
cat $WORKDIR/values.yaml
|
cat $WORKDIR/values.yaml
|
||||||
|
@ -10,7 +10,14 @@ def migrate(values):
|
|||||||
|
|
||||||
# 1.32
|
# 1.32
|
||||||
try:
|
try:
|
||||||
|
values["istio-ingress"]["gateway"]["service"]["extraPorts"] = values["istio-ingress"]["gateway"]["service"]["ports"]
|
||||||
|
values["istio-ingress"]["gateway"]["service"].pop("ports")
|
||||||
|
except KeyError:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
try:
|
||||||
|
values["istio-private-ingress"]["gateway"]["service"]["extraPorts"] = values["istio-private-ingress"]["gateway"]["service"]["ports"]
|
||||||
|
values["istio-private-ingress"]["gateway"]["service"].pop("ports")
|
||||||
except KeyError:
|
except KeyError:
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
@ -47,7 +47,6 @@ Kubernetes: `>= 1.32.0-0`
|
|||||||
- https://pkg.go.dev/k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/v1beta3
|
- https://pkg.go.dev/k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/v1beta3
|
||||||
- https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/kubelet/config/v1beta1/types.go
|
- https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/kubelet/config/v1beta1/types.go
|
||||||
- https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/control-plane-flags/
|
- https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/control-plane-flags/
|
||||||
- https://godoc.org/k8s.io/kube-proxy/config/v1alpha1#KubeProxyConfiguration
|
|
||||||
|
|
||||||
- https://github.com/awslabs/amazon-eks-ami
|
- https://github.com/awslabs/amazon-eks-ami
|
||||||
|
|
||||||
|
@ -22,7 +22,6 @@
|
|||||||
- https://pkg.go.dev/k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/v1beta3
|
- https://pkg.go.dev/k8s.io/kubernetes/cmd/kubeadm/app/apis/kubeadm/v1beta3
|
||||||
- https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/kubelet/config/v1beta1/types.go
|
- https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/kubelet/config/v1beta1/types.go
|
||||||
- https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/control-plane-flags/
|
- https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/control-plane-flags/
|
||||||
- https://godoc.org/k8s.io/kube-proxy/config/v1alpha1#KubeProxyConfiguration
|
|
||||||
|
|
||||||
- https://github.com/awslabs/amazon-eks-ami
|
- https://github.com/awslabs/amazon-eks-ami
|
||||||
|
|
||||||
|
@ -29,12 +29,6 @@ kind: Policy
|
|||||||
rules:
|
rules:
|
||||||
# The following requests were manually identified as high-volume and low-risk,
|
# The following requests were manually identified as high-volume and low-risk,
|
||||||
# so drop them.
|
# so drop them.
|
||||||
- level: None
|
|
||||||
users: ["system:kube-proxy"]
|
|
||||||
verbs: ["watch"]
|
|
||||||
resources:
|
|
||||||
- group: "" # core
|
|
||||||
resources: ["endpoints", "services", "services/status"]
|
|
||||||
- level: None
|
- level: None
|
||||||
# Ingress controller reads 'configmaps/ingress-uid' through the unsecured port.
|
# Ingress controller reads 'configmaps/ingress-uid' through the unsecured port.
|
||||||
# TODO(#46983): Change this to the ingress controller service account.
|
# TODO(#46983): Change this to the ingress controller service account.
|
||||||
|
@ -6,6 +6,8 @@ featureGates:
|
|||||||
ControlPlaneKubeletLocalMode: true
|
ControlPlaneKubeletLocalMode: true
|
||||||
NodeLocalCRISocket: true
|
NodeLocalCRISocket: true
|
||||||
controlPlaneEndpoint: {{ .Values.api.endpoint }}
|
controlPlaneEndpoint: {{ .Values.api.endpoint }}
|
||||||
|
proxy:
|
||||||
|
disabled: true
|
||||||
networking:
|
networking:
|
||||||
podSubnet: 10.244.0.0/16
|
podSubnet: 10.244.0.0/16
|
||||||
etcd:
|
etcd:
|
||||||
|
@ -7,6 +7,8 @@ localAPIEndpoint:
|
|||||||
patches:
|
patches:
|
||||||
directory: {{ . }}
|
directory: {{ . }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
skipPhases:
|
||||||
|
- addon/kube-proxy
|
||||||
nodeRegistration:
|
nodeRegistration:
|
||||||
criSocket: "unix:///run/containerd/containerd.sock"
|
criSocket: "unix:///run/containerd/containerd.sock"
|
||||||
ignorePreflightErrors:
|
ignorePreflightErrors:
|
||||||
|
@ -1,10 +0,0 @@
|
|||||||
apiVersion: kubeproxy.config.k8s.io/v1alpha1
|
|
||||||
kind: KubeProxyConfiguration
|
|
||||||
# kube-proxy doesnt really support setting dynamic bind-address via config, replaced by cilium long-term anyways
|
|
||||||
metricsBindAddress: "0.0.0.0:10249"
|
|
||||||
mode: "iptables"
|
|
||||||
logging:
|
|
||||||
format: json
|
|
||||||
iptables:
|
|
||||||
localhostNodePorts: false
|
|
||||||
#nodePortAddresses: primary
|
|
@ -3,12 +3,6 @@ kind: Policy
|
|||||||
rules:
|
rules:
|
||||||
# The following requests were manually identified as high-volume and low-risk,
|
# The following requests were manually identified as high-volume and low-risk,
|
||||||
# so drop them.
|
# so drop them.
|
||||||
- level: None
|
|
||||||
users: ["system:kube-proxy"]
|
|
||||||
verbs: ["watch"]
|
|
||||||
resources:
|
|
||||||
- group: "" # core
|
|
||||||
resources: ["endpoints", "services", "services/status"]
|
|
||||||
- level: None
|
- level: None
|
||||||
# Ingress controller reads 'configmaps/ingress-uid' through the unsecured port.
|
# Ingress controller reads 'configmaps/ingress-uid' through the unsecured port.
|
||||||
# TODO(#46983): Change this to the ingress controller service account.
|
# TODO(#46983): Change this to the ingress controller service account.
|
||||||
@ -114,7 +108,7 @@ rules:
|
|||||||
# Get responses can be large; skip them.
|
# Get responses can be large; skip them.
|
||||||
- level: Request
|
- level: Request
|
||||||
verbs: ["get", "list", "watch"]
|
verbs: ["get", "list", "watch"]
|
||||||
resources:
|
resources:
|
||||||
- group: "" # core
|
- group: "" # core
|
||||||
- group: "admissionregistration.k8s.io"
|
- group: "admissionregistration.k8s.io"
|
||||||
- group: "apiextensions.k8s.io"
|
- group: "apiextensions.k8s.io"
|
||||||
@ -137,7 +131,7 @@ rules:
|
|||||||
- "RequestReceived"
|
- "RequestReceived"
|
||||||
# Default level for known APIs
|
# Default level for known APIs
|
||||||
- level: RequestResponse
|
- level: RequestResponse
|
||||||
resources:
|
resources:
|
||||||
- group: "" # core
|
- group: "" # core
|
||||||
- group: "admissionregistration.k8s.io"
|
- group: "admissionregistration.k8s.io"
|
||||||
- group: "apiextensions.k8s.io"
|
- group: "apiextensions.k8s.io"
|
||||||
|
@ -2,8 +2,8 @@ apiVersion: v2
|
|||||||
name: kubezero-addons
|
name: kubezero-addons
|
||||||
description: KubeZero umbrella chart for various optional cluster addons
|
description: KubeZero umbrella chart for various optional cluster addons
|
||||||
type: application
|
type: application
|
||||||
version: 0.8.14
|
version: 0.8.15
|
||||||
appVersion: v1.31
|
appVersion: v1.32
|
||||||
home: https://kubezero.com
|
home: https://kubezero.com
|
||||||
icon: https://cdn.zero-downtime.net/assets/kubezero/logo-small-64.png
|
icon: https://cdn.zero-downtime.net/assets/kubezero/logo-small-64.png
|
||||||
keywords:
|
keywords:
|
||||||
@ -34,7 +34,7 @@ dependencies:
|
|||||||
repository: https://nvidia.github.io/k8s-device-plugin
|
repository: https://nvidia.github.io/k8s-device-plugin
|
||||||
condition: nvidia-device-plugin.enabled
|
condition: nvidia-device-plugin.enabled
|
||||||
- name: neuron-helm-chart
|
- name: neuron-helm-chart
|
||||||
version: 1.1.1
|
version: 1.1.2
|
||||||
# https://github.com/aws-neuron/neuron-helm-charts/tree/main/charts/neuron-helm-chart
|
# https://github.com/aws-neuron/neuron-helm-charts/tree/main/charts/neuron-helm-chart
|
||||||
repository: oci://public.ecr.aws/neuron #/neuron-helm-chart
|
repository: oci://public.ecr.aws/neuron #/neuron-helm-chart
|
||||||
condition: neuron-helm-chart.enabled
|
condition: neuron-helm-chart.enabled
|
||||||
@ -43,7 +43,7 @@ dependencies:
|
|||||||
repository: https://bitnami-labs.github.io/sealed-secrets
|
repository: https://bitnami-labs.github.io/sealed-secrets
|
||||||
condition: sealed-secrets.enabled
|
condition: sealed-secrets.enabled
|
||||||
- name: aws-node-termination-handler
|
- name: aws-node-termination-handler
|
||||||
version: 0.27.0
|
version: 0.27.1
|
||||||
repository: "oci://public.ecr.aws/aws-ec2/helm"
|
repository: "oci://public.ecr.aws/aws-ec2/helm"
|
||||||
condition: aws-node-termination-handler.enabled
|
condition: aws-node-termination-handler.enabled
|
||||||
- name: aws-eks-asg-rolling-update-handler
|
- name: aws-eks-asg-rolling-update-handler
|
||||||
@ -54,4 +54,4 @@ dependencies:
|
|||||||
version: 0.3.2
|
version: 0.3.2
|
||||||
repository: https://caas-team.github.io/helm-charts/
|
repository: https://caas-team.github.io/helm-charts/
|
||||||
condition: py-kube-downscaler.enabled
|
condition: py-kube-downscaler.enabled
|
||||||
kubeVersion: ">= 1.30.0-0"
|
kubeVersion: ">= 1.31.0-0"
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# kubezero-addons
|
# kubezero-addons
|
||||||
|
|
||||||
  
|
  
|
||||||
|
|
||||||
KubeZero umbrella chart for various optional cluster addons
|
KubeZero umbrella chart for various optional cluster addons
|
||||||
|
|
||||||
@ -14,7 +14,7 @@ KubeZero umbrella chart for various optional cluster addons
|
|||||||
|
|
||||||
## Requirements
|
## Requirements
|
||||||
|
|
||||||
Kubernetes: `>= 1.30.0-0`
|
Kubernetes: `>= 1.31.0-0`
|
||||||
|
|
||||||
| Repository | Name | Version |
|
| Repository | Name | Version |
|
||||||
|------------|------|---------|
|
|------------|------|---------|
|
||||||
@ -24,8 +24,8 @@ Kubernetes: `>= 1.30.0-0`
|
|||||||
| https://kubernetes.github.io/autoscaler | cluster-autoscaler | 9.46.6 |
|
| https://kubernetes.github.io/autoscaler | cluster-autoscaler | 9.46.6 |
|
||||||
| https://nvidia.github.io/k8s-device-plugin | nvidia-device-plugin | 0.17.1 |
|
| https://nvidia.github.io/k8s-device-plugin | nvidia-device-plugin | 0.17.1 |
|
||||||
| https://twin.github.io/helm-charts | aws-eks-asg-rolling-update-handler | 1.5.0 |
|
| https://twin.github.io/helm-charts | aws-eks-asg-rolling-update-handler | 1.5.0 |
|
||||||
| oci://public.ecr.aws/aws-ec2/helm | aws-node-termination-handler | 0.27.0 |
|
| oci://public.ecr.aws/aws-ec2/helm | aws-node-termination-handler | 0.27.1 |
|
||||||
| oci://public.ecr.aws/neuron | neuron-helm-chart | 1.1.1 |
|
| oci://public.ecr.aws/neuron | neuron-helm-chart | 1.1.2 |
|
||||||
|
|
||||||
# MetalLB
|
# MetalLB
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
apiVersion: v2
|
apiVersion: v2
|
||||||
appVersion: 1.25.0
|
appVersion: 1.25.1
|
||||||
description: A Helm chart for the AWS Node Termination Handler.
|
description: A Helm chart for the AWS Node Termination Handler.
|
||||||
home: https://github.com/aws/aws-node-termination-handler/
|
home: https://github.com/aws/aws-node-termination-handler/
|
||||||
icon: https://raw.githubusercontent.com/aws/eks-charts/master/docs/logo/aws.png
|
icon: https://raw.githubusercontent.com/aws/eks-charts/master/docs/logo/aws.png
|
||||||
@ -21,4 +21,4 @@ name: aws-node-termination-handler
|
|||||||
sources:
|
sources:
|
||||||
- https://github.com/aws/aws-node-termination-handler/
|
- https://github.com/aws/aws-node-termination-handler/
|
||||||
type: application
|
type: application
|
||||||
version: 0.27.0
|
version: 0.27.1
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
apiVersion: v2
|
apiVersion: v2
|
||||||
description: KubeZero Argo - Events, Workflow, CD
|
description: KubeZero Argo - Events, Workflow, CD
|
||||||
name: kubezero-argo
|
name: kubezero-argo
|
||||||
version: 0.3.4
|
version: 0.4.1
|
||||||
home: https://kubezero.com
|
home: https://kubezero.com
|
||||||
icon: https://cdn.zero-downtime.net/assets/kubezero/logo-small-64.png
|
icon: https://cdn.zero-downtime.net/assets/kubezero/logo-small-64.png
|
||||||
keywords:
|
keywords:
|
||||||
@ -22,11 +22,11 @@ dependencies:
|
|||||||
repository: https://argoproj.github.io/argo-helm
|
repository: https://argoproj.github.io/argo-helm
|
||||||
condition: argo-events.enabled
|
condition: argo-events.enabled
|
||||||
- name: argo-cd
|
- name: argo-cd
|
||||||
version: 8.0.9
|
version: 8.0.14
|
||||||
repository: https://argoproj.github.io/argo-helm
|
repository: https://argoproj.github.io/argo-helm
|
||||||
condition: argo-cd.enabled
|
condition: argo-cd.enabled
|
||||||
- name: argocd-image-updater
|
- name: argocd-image-updater
|
||||||
version: 0.12.1
|
version: 0.12.2
|
||||||
repository: https://argoproj.github.io/argo-helm
|
repository: https://argoproj.github.io/argo-helm
|
||||||
condition: argocd-image-updater.enabled
|
condition: argocd-image-updater.enabled
|
||||||
kubeVersion: ">= 1.30.0-0"
|
kubeVersion: ">= 1.30.0-0"
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# kubezero-argo
|
# kubezero-argo
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
KubeZero Argo - Events, Workflow, CD
|
KubeZero Argo - Events, Workflow, CD
|
||||||
|
|
||||||
@ -18,9 +18,9 @@ Kubernetes: `>= 1.30.0-0`
|
|||||||
|
|
||||||
| Repository | Name | Version |
|
| Repository | Name | Version |
|
||||||
|------------|------|---------|
|
|------------|------|---------|
|
||||||
| https://argoproj.github.io/argo-helm | argo-cd | 7.9.0 |
|
| https://argoproj.github.io/argo-helm | argo-cd | 8.0.14 |
|
||||||
| https://argoproj.github.io/argo-helm | argo-events | 2.4.15 |
|
| https://argoproj.github.io/argo-helm | argo-events | 2.4.15 |
|
||||||
| https://argoproj.github.io/argo-helm | argocd-image-updater | 0.12.1 |
|
| https://argoproj.github.io/argo-helm | argocd-image-updater | 0.12.2 |
|
||||||
| https://cdn.zero-downtime.net/charts/ | kubezero-lib | 0.2.1 |
|
| https://cdn.zero-downtime.net/charts/ | kubezero-lib | 0.2.1 |
|
||||||
|
|
||||||
## Values
|
## Values
|
||||||
@ -28,17 +28,16 @@ Kubernetes: `>= 1.30.0-0`
|
|||||||
| Key | Type | Default | Description |
|
| Key | Type | Default | Description |
|
||||||
|-----|------|---------|-------------|
|
|-----|------|---------|-------------|
|
||||||
| argo-cd.configs.cm."application.instanceLabelKey" | string | `nil` | |
|
| argo-cd.configs.cm."application.instanceLabelKey" | string | `nil` | |
|
||||||
| argo-cd.configs.cm."application.resourceTrackingMethod" | string | `"annotation"` | |
|
|
||||||
| argo-cd.configs.cm."resource.customizations" | string | `"argoproj.io/Application:\n health.lua: |\n hs = {}\n hs.status = \"Progressing\"\n hs.message = \"\"\n if obj.status ~= nil then\n if obj.status.health ~= nil then\n hs.status = obj.status.health.status\n if obj.status.health.message ~= nil then\n hs.message = obj.status.health.message\n end\n end\n end\n return hs\n"` | |
|
| argo-cd.configs.cm."resource.customizations" | string | `"argoproj.io/Application:\n health.lua: |\n hs = {}\n hs.status = \"Progressing\"\n hs.message = \"\"\n if obj.status ~= nil then\n if obj.status.health ~= nil then\n hs.status = obj.status.health.status\n if obj.status.health.message ~= nil then\n hs.message = obj.status.health.message\n end\n end\n end\n return hs\n"` | |
|
||||||
|
| argo-cd.configs.cm."server.rbac.log.enforce.enable" | string | `nil` | |
|
||||||
| argo-cd.configs.cm."timeout.reconciliation" | string | `"300s"` | |
|
| argo-cd.configs.cm."timeout.reconciliation" | string | `"300s"` | |
|
||||||
| argo-cd.configs.cm."ui.bannercontent" | string | `"KubeZero v1.31 - Release notes"` | |
|
| argo-cd.configs.cm."ui.bannercontent" | string | `"KubeZero v1.32 - Release notes"` | |
|
||||||
| argo-cd.configs.cm."ui.bannerpermanent" | string | `"true"` | |
|
| argo-cd.configs.cm."ui.bannerpermanent" | string | `"true"` | |
|
||||||
| argo-cd.configs.cm."ui.bannerposition" | string | `"bottom"` | |
|
| argo-cd.configs.cm."ui.bannerposition" | string | `"bottom"` | |
|
||||||
| argo-cd.configs.cm."ui.bannerurl" | string | `"https://kubezero.com/releases/v1.31"` | |
|
| argo-cd.configs.cm."ui.bannerurl" | string | `"https://kubezero.com/releases/v1.32"` | |
|
||||||
| argo-cd.configs.cm.installationID | string | `"KubeZero-ArgoCD"` | |
|
| argo-cd.configs.cm.installationID | string | `"KubeZero-ArgoCD"` | |
|
||||||
| argo-cd.configs.cm.url | string | `"https://argocd.example.com"` | |
|
| argo-cd.configs.cm.url | string | `"https://argocd.example.com"` | |
|
||||||
| argo-cd.configs.params."controller.diff.server.side" | string | `"true"` | |
|
| argo-cd.configs.params."controller.diff.server.side" | string | `"true"` | |
|
||||||
| argo-cd.configs.params."controller.resource.health.persist" | string | `"false"` | |
|
|
||||||
| argo-cd.configs.params."controller.sync.timeout.seconds" | int | `1800` | |
|
| argo-cd.configs.params."controller.sync.timeout.seconds" | int | `1800` | |
|
||||||
| argo-cd.configs.params."server.enable.gzip" | bool | `true` | |
|
| argo-cd.configs.params."server.enable.gzip" | bool | `true` | |
|
||||||
| argo-cd.configs.params."server.insecure" | bool | `true` | |
|
| argo-cd.configs.params."server.insecure" | bool | `true` | |
|
||||||
@ -54,7 +53,7 @@ Kubernetes: `>= 1.30.0-0`
|
|||||||
| argo-cd.dex.enabled | bool | `false` | |
|
| argo-cd.dex.enabled | bool | `false` | |
|
||||||
| argo-cd.enabled | bool | `false` | |
|
| argo-cd.enabled | bool | `false` | |
|
||||||
| argo-cd.global.image.repository | string | `"public.ecr.aws/zero-downtime/zdt-argocd"` | |
|
| argo-cd.global.image.repository | string | `"public.ecr.aws/zero-downtime/zdt-argocd"` | |
|
||||||
| argo-cd.global.image.tag | string | `"v2.14.9-1"` | |
|
| argo-cd.global.image.tag | string | `"v3.0.5"` | |
|
||||||
| argo-cd.global.logging.format | string | `"json"` | |
|
| argo-cd.global.logging.format | string | `"json"` | |
|
||||||
| argo-cd.global.networkPolicy.create | bool | `true` | |
|
| argo-cd.global.networkPolicy.create | bool | `true` | |
|
||||||
| argo-cd.istio.enabled | bool | `false` | |
|
| argo-cd.istio.enabled | bool | `false` | |
|
||||||
@ -84,8 +83,8 @@ Kubernetes: `>= 1.30.0-0`
|
|||||||
| argo-events.configs.jetstream.streamConfig.maxMsgs | int | `1000000` | Maximum number of messages before expiring oldest message |
|
| argo-events.configs.jetstream.streamConfig.maxMsgs | int | `1000000` | Maximum number of messages before expiring oldest message |
|
||||||
| argo-events.configs.jetstream.streamConfig.replicas | int | `1` | Number of replicas, defaults to 3 and requires minimal 3 |
|
| argo-events.configs.jetstream.streamConfig.replicas | int | `1` | Number of replicas, defaults to 3 and requires minimal 3 |
|
||||||
| argo-events.configs.jetstream.versions[0].configReloaderImage | string | `"natsio/nats-server-config-reloader:0.14.1"` | |
|
| argo-events.configs.jetstream.versions[0].configReloaderImage | string | `"natsio/nats-server-config-reloader:0.14.1"` | |
|
||||||
| argo-events.configs.jetstream.versions[0].metricsExporterImage | string | `"natsio/prometheus-nats-exporter:0.17.2"` | |
|
| argo-events.configs.jetstream.versions[0].metricsExporterImage | string | `"natsio/prometheus-nats-exporter:0.17.3"` | |
|
||||||
| argo-events.configs.jetstream.versions[0].natsImage | string | `"nats:2.11.1-scratch"` | |
|
| argo-events.configs.jetstream.versions[0].natsImage | string | `"nats:2.11.4-scratch"` | |
|
||||||
| argo-events.configs.jetstream.versions[0].startCommand | string | `"/nats-server"` | |
|
| argo-events.configs.jetstream.versions[0].startCommand | string | `"/nats-server"` | |
|
||||||
| argo-events.configs.jetstream.versions[0].version | string | `"2.10.11"` | |
|
| argo-events.configs.jetstream.versions[0].version | string | `"2.10.11"` | |
|
||||||
| argo-events.enabled | bool | `false` | |
|
| argo-events.enabled | bool | `false` | |
|
||||||
|
@ -4,6 +4,6 @@ condition: 'index .Values "argo-cd" "controller" "metrics" "enabled"'
|
|||||||
folder: KubeZero
|
folder: KubeZero
|
||||||
dashboards:
|
dashboards:
|
||||||
- name: ArgoCD
|
- name: ArgoCD
|
||||||
url: https://grafana.com/api/dashboards/14584/revisions/1/download
|
url: https://raw.githubusercontent.com/argoproj/argo-cd/refs/heads/master/examples/dashboard.json
|
||||||
tags:
|
tags:
|
||||||
- ArgoCD
|
- ArgoCD
|
||||||
|
File diff suppressed because one or more lines are too long
@ -25,9 +25,9 @@ spec:
|
|||||||
automated:
|
automated:
|
||||||
prune: true
|
prune: true
|
||||||
syncOptions:
|
syncOptions:
|
||||||
- ServerSideApply=true
|
|
||||||
- ApplyOutOfSyncOnly=true
|
- ApplyOutOfSyncOnly=true
|
||||||
|
- ServerSideApply=true
|
||||||
info:
|
info:
|
||||||
- name: "Source:"
|
- name: "Source:"
|
||||||
value: "https://git.zero-downtime.net/ZeroDownTime/KubeZero/src/branch/release/v1.31/"
|
value: "https://git.zero-downtime.net/ZeroDownTime/KubeZero/src/branch/release/v1.32/"
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
@ -25,8 +25,8 @@ argo-events:
|
|||||||
# do NOT use -alpine tag as the entrypoint differs
|
# do NOT use -alpine tag as the entrypoint differs
|
||||||
versions:
|
versions:
|
||||||
- version: 2.10.11
|
- version: 2.10.11
|
||||||
natsImage: nats:2.11.1-scratch
|
natsImage: nats:2.11.4-scratch
|
||||||
metricsExporterImage: natsio/prometheus-nats-exporter:0.17.2
|
metricsExporterImage: natsio/prometheus-nats-exporter:0.17.3
|
||||||
configReloaderImage: natsio/nats-server-config-reloader:0.14.1
|
configReloaderImage: natsio/nats-server-config-reloader:0.14.1
|
||||||
startCommand: /nats-server
|
startCommand: /nats-server
|
||||||
|
|
||||||
@ -38,7 +38,7 @@ argo-cd:
|
|||||||
format: json
|
format: json
|
||||||
image:
|
image:
|
||||||
repository: public.ecr.aws/zero-downtime/zdt-argocd
|
repository: public.ecr.aws/zero-downtime/zdt-argocd
|
||||||
tag: v2.14.9-1
|
tag: v3.0.5
|
||||||
networkPolicy:
|
networkPolicy:
|
||||||
create: true
|
create: true
|
||||||
|
|
||||||
@ -49,8 +49,8 @@ argo-cd:
|
|||||||
.sidebar { background: linear-gradient(to bottom, #6A4D79, #493558, #2D1B30, #0D0711); }
|
.sidebar { background: linear-gradient(to bottom, #6A4D79, #493558, #2D1B30, #0D0711); }
|
||||||
|
|
||||||
cm:
|
cm:
|
||||||
ui.bannercontent: "KubeZero v1.31 - Release notes"
|
ui.bannercontent: "KubeZero v1.32 - Release notes"
|
||||||
ui.bannerurl: "https://kubezero.com/releases/v1.31"
|
ui.bannerurl: "https://kubezero.com/releases/v1.32"
|
||||||
ui.bannerpermanent: "true"
|
ui.bannerpermanent: "true"
|
||||||
ui.bannerposition: "bottom"
|
ui.bannerposition: "bottom"
|
||||||
|
|
||||||
@ -59,9 +59,13 @@ argo-cd:
|
|||||||
|
|
||||||
timeout.reconciliation: 300s
|
timeout.reconciliation: 300s
|
||||||
|
|
||||||
application.resourceTrackingMethod: annotation
|
|
||||||
installationID: "KubeZero-ArgoCD"
|
installationID: "KubeZero-ArgoCD"
|
||||||
application.instanceLabelKey: Null
|
application.instanceLabelKey: Null
|
||||||
|
server.rbac.log.enforce.enable: Null
|
||||||
|
|
||||||
|
resource.compareoptions: |
|
||||||
|
# disables status field diffing in specified resource types
|
||||||
|
ignoreAggregatedRoles: true
|
||||||
|
|
||||||
resource.customizations: |
|
resource.customizations: |
|
||||||
argoproj.io/Application:
|
argoproj.io/Application:
|
||||||
@ -89,7 +93,6 @@ argo-cd:
|
|||||||
extraHosts: "git.zero-downtime.net ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC7UgK7Z4dDcuIW1uMOsuwhrqdkJCvYG/ZjHtLM7WaKFxVRnzNnNkQJNncWIGNDUQ1xxrbsoSNRZDtk0NlOjNtx2aApSWl4iWghkpXELvsZtOZ7I9FSC/E6ImLC3KWfK7P0mhZaF6kHPfpu8Y6pjUyLBTpV1AaVwr0I8onyqGazJOVotTFaBFEi/sT0O2FUk7agwZYfj61w3JGOy3c+fmBcK3lXf/QM90tosOpJNuJ7n5Vk5FDDLkl9rO4XR/+mXHFvITiWb8F5C50YAwjYcy36yWSSryUAAHAuqpgotwh65vSG6fZvFhmEwO2BrCkOV5+k8iRfhy/yZODJzZ5V/5cbMbdZrY6lm/p5/S1wv8BEyPekBGdseqQjEO0IQiQHcMrfgTrrQ7ndbZzVZRByZI+wbGFkBCzNSJcNsoiHjs2EblxYyuW0qUvvrBxLnySvaxyPm4BOukSAZAOEaUrajpQlnHdnY1CGcgbwxw0LNv3euKQ3tDJSUlKO0Wd8d85PRv1THW4Ui9Lhsmv+BPA2vJZDOkx/n0oyPFAB0oyd5JNM38eFxLCmPC2OE63gDP+WmzVO61YCVTnvhpQjEOLawEWVFsk0y25R5z5BboDqJaOFnZF6i517O96cn17z3Ls4hxw3+0rlKczYRoyfUHs7KQENa4mY8YlJweNTBgld//RMUQ=="
|
extraHosts: "git.zero-downtime.net ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQC7UgK7Z4dDcuIW1uMOsuwhrqdkJCvYG/ZjHtLM7WaKFxVRnzNnNkQJNncWIGNDUQ1xxrbsoSNRZDtk0NlOjNtx2aApSWl4iWghkpXELvsZtOZ7I9FSC/E6ImLC3KWfK7P0mhZaF6kHPfpu8Y6pjUyLBTpV1AaVwr0I8onyqGazJOVotTFaBFEi/sT0O2FUk7agwZYfj61w3JGOy3c+fmBcK3lXf/QM90tosOpJNuJ7n5Vk5FDDLkl9rO4XR/+mXHFvITiWb8F5C50YAwjYcy36yWSSryUAAHAuqpgotwh65vSG6fZvFhmEwO2BrCkOV5+k8iRfhy/yZODJzZ5V/5cbMbdZrY6lm/p5/S1wv8BEyPekBGdseqQjEO0IQiQHcMrfgTrrQ7ndbZzVZRByZI+wbGFkBCzNSJcNsoiHjs2EblxYyuW0qUvvrBxLnySvaxyPm4BOukSAZAOEaUrajpQlnHdnY1CGcgbwxw0LNv3euKQ3tDJSUlKO0Wd8d85PRv1THW4Ui9Lhsmv+BPA2vJZDOkx/n0oyPFAB0oyd5JNM38eFxLCmPC2OE63gDP+WmzVO61YCVTnvhpQjEOLawEWVFsk0y25R5z5BboDqJaOFnZF6i517O96cn17z3Ls4hxw3+0rlKczYRoyfUHs7KQENa4mY8YlJweNTBgld//RMUQ=="
|
||||||
|
|
||||||
params:
|
params:
|
||||||
controller.resource.health.persist: "false"
|
|
||||||
controller.diff.server.side: "true"
|
controller.diff.server.side: "true"
|
||||||
controller.sync.timeout.seconds: 1800
|
controller.sync.timeout.seconds: 1800
|
||||||
|
|
||||||
|
@ -289,7 +289,7 @@ trivy:
|
|||||||
#tag: 0.57.0
|
#tag: 0.57.0
|
||||||
persistence:
|
persistence:
|
||||||
enabled: true
|
enabled: true
|
||||||
size: 1Gi
|
size: 2Gi
|
||||||
rbac:
|
rbac:
|
||||||
create: false
|
create: false
|
||||||
|
|
||||||
|
@ -2,7 +2,7 @@ apiVersion: v2
|
|||||||
name: kubezero-falco
|
name: kubezero-falco
|
||||||
description: Falco Container Security and Audit components
|
description: Falco Container Security and Audit components
|
||||||
type: application
|
type: application
|
||||||
version: 0.1.2
|
version: 0.1.3
|
||||||
home: https://kubezero.com
|
home: https://kubezero.com
|
||||||
icon: https://cdn.zero-downtime.net/assets/kubezero/logo-small-64.png
|
icon: https://cdn.zero-downtime.net/assets/kubezero/logo-small-64.png
|
||||||
keywords:
|
keywords:
|
||||||
@ -16,7 +16,7 @@ dependencies:
|
|||||||
version: 0.2.1
|
version: 0.2.1
|
||||||
repository: https://cdn.zero-downtime.net/charts/
|
repository: https://cdn.zero-downtime.net/charts/
|
||||||
- name: falco
|
- name: falco
|
||||||
version: 4.2.5
|
version: 5.0.0
|
||||||
repository: https://falcosecurity.github.io/charts
|
repository: https://falcosecurity.github.io/charts
|
||||||
condition: k8saudit.enabled
|
condition: k8saudit.enabled
|
||||||
alias: k8saudit
|
alias: k8saudit
|
||||||
|
@ -42,17 +42,3 @@ helm.sh/chart: {{ include "kubezero-lib.chart" . }}
|
|||||||
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
app.kubernetes.io/managed-by: {{ .Release.Service }}
|
||||||
app.kubernetes.io/part-of: kubezero
|
app.kubernetes.io/part-of: kubezero
|
||||||
{{- end -}}
|
{{- end -}}
|
||||||
|
|
||||||
{{- /*
|
|
||||||
kubezero-lib.util.merge will merge two YAML templates and output the result.
|
|
||||||
This takes an array of three values:
|
|
||||||
- the top context
|
|
||||||
- the template name of the overrides (destination)
|
|
||||||
- the template name of the base (source)
|
|
||||||
*/ -}}
|
|
||||||
{{- define "kubezero-lib.util.merge" -}}
|
|
||||||
{{- $top := first . -}}
|
|
||||||
{{- $overrides := fromYaml (include (index . 1) $top) | default (dict ) -}}
|
|
||||||
{{- $tpl := fromYaml (include (index . 2) $top) | default (dict ) -}}
|
|
||||||
{{- toYaml (merge $overrides $tpl) -}}
|
|
||||||
{{- end -}}
|
|
||||||
|
@ -12,7 +12,7 @@ kube-prometheus-stack:
|
|||||||
kubeStateMetrics:
|
kubeStateMetrics:
|
||||||
enabled: true
|
enabled: true
|
||||||
kubeProxy:
|
kubeProxy:
|
||||||
enabled: true
|
enabled: false
|
||||||
|
|
||||||
kubeEtcd:
|
kubeEtcd:
|
||||||
enabled: true
|
enabled: true
|
||||||
|
@ -2,7 +2,7 @@ apiVersion: v2
|
|||||||
name: kubezero-mq
|
name: kubezero-mq
|
||||||
description: KubeZero umbrella chart for MQ systems like NATS, RabbitMQ
|
description: KubeZero umbrella chart for MQ systems like NATS, RabbitMQ
|
||||||
type: application
|
type: application
|
||||||
version: 0.3.11
|
version: 0.3.12
|
||||||
home: https://kubezero.com
|
home: https://kubezero.com
|
||||||
icon: https://cdn.zero-downtime.net/assets/kubezero/logo-small-64.png
|
icon: https://cdn.zero-downtime.net/assets/kubezero/logo-small-64.png
|
||||||
keywords:
|
keywords:
|
||||||
@ -17,7 +17,7 @@ dependencies:
|
|||||||
version: 0.2.1
|
version: 0.2.1
|
||||||
repository: https://cdn.zero-downtime.net/charts/
|
repository: https://cdn.zero-downtime.net/charts/
|
||||||
- name: nats
|
- name: nats
|
||||||
version: 1.3.3
|
version: 1.3.7
|
||||||
repository: https://nats-io.github.io/k8s/helm/charts/
|
repository: https://nats-io.github.io/k8s/helm/charts/
|
||||||
condition: nats.enabled
|
condition: nats.enabled
|
||||||
- name: rabbitmq
|
- name: rabbitmq
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# kubezero-mq
|
# kubezero-mq
|
||||||
|
|
||||||
 
|
 
|
||||||
|
|
||||||
KubeZero umbrella chart for MQ systems like NATS, RabbitMQ
|
KubeZero umbrella chart for MQ systems like NATS, RabbitMQ
|
||||||
|
|
||||||
@ -20,7 +20,7 @@ Kubernetes: `>= 1.26.0`
|
|||||||
|------------|------|---------|
|
|------------|------|---------|
|
||||||
| https://cdn.zero-downtime.net/charts/ | kubezero-lib | 0.2.1 |
|
| https://cdn.zero-downtime.net/charts/ | kubezero-lib | 0.2.1 |
|
||||||
| https://charts.bitnami.com/bitnami | rabbitmq | 14.7.0 |
|
| https://charts.bitnami.com/bitnami | rabbitmq | 14.7.0 |
|
||||||
| https://nats-io.github.io/k8s/helm/charts/ | nats | 1.3.3 |
|
| https://nats-io.github.io/k8s/helm/charts/ | nats | 1.3.7 |
|
||||||
|
|
||||||
## Values
|
## Values
|
||||||
|
|
||||||
@ -32,6 +32,8 @@ Kubernetes: `>= 1.26.0`
|
|||||||
| nats.istio.gateway | string | `"istio-ingress/private-ingressgateway"` | |
|
| nats.istio.gateway | string | `"istio-ingress/private-ingressgateway"` | |
|
||||||
| nats.mqtt.enabled | bool | `false` | |
|
| nats.mqtt.enabled | bool | `false` | |
|
||||||
| nats.natsBox.enabled | bool | `false` | |
|
| nats.natsBox.enabled | bool | `false` | |
|
||||||
|
| nats.podTemplate.topologySpreadConstraints."kubernetes.io/hostname".maxSkew | int | `1` | |
|
||||||
|
| nats.podTemplate.topologySpreadConstraints."kubernetes.io/hostname".whenUnsatisfiable | string | `"DoNotSchedule"` | |
|
||||||
| nats.promExporter.enabled | bool | `false` | |
|
| nats.promExporter.enabled | bool | `false` | |
|
||||||
| nats.promExporter.podMonitor.enabled | bool | `false` | |
|
| nats.promExporter.podMonitor.enabled | bool | `false` | |
|
||||||
| rabbitmq.auth.existingErlangSecret | string | `"rabbitmq"` | |
|
| rabbitmq.auth.existingErlangSecret | string | `"rabbitmq"` | |
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
configmap: grafana-dashboards-nats
|
configmap: grafana-dashboards-nats
|
||||||
condition: '.Values.nats.exporter.serviceMonitor.enabled'
|
condition: '.Values.nats.promExporter.podMonitor.enabled'
|
||||||
gzip: true
|
gzip: true
|
||||||
# folder:
|
# folder:
|
||||||
dashboards:
|
dashboards:
|
||||||
- name: nats
|
- name: nats
|
||||||
url: https://grafana.com/api/dashboards/13707/revisions/1/download
|
url: https://grafana.com/api/dashboards/13707/revisions/1/download
|
||||||
|
@ -2,7 +2,7 @@ apiVersion: v2
|
|||||||
name: kubezero-network
|
name: kubezero-network
|
||||||
description: KubeZero umbrella chart for all things network
|
description: KubeZero umbrella chart for all things network
|
||||||
type: application
|
type: application
|
||||||
version: 0.5.8
|
version: 0.5.9
|
||||||
home: https://kubezero.com
|
home: https://kubezero.com
|
||||||
icon: https://cdn.zero-downtime.net/assets/kubezero/logo-small-64.png
|
icon: https://cdn.zero-downtime.net/assets/kubezero/logo-small-64.png
|
||||||
keywords:
|
keywords:
|
||||||
@ -10,7 +10,6 @@ keywords:
|
|||||||
- multus
|
- multus
|
||||||
- cilium
|
- cilium
|
||||||
- aws-cni
|
- aws-cni
|
||||||
- metallb
|
|
||||||
maintainers:
|
maintainers:
|
||||||
- name: Stefan Reimer
|
- name: Stefan Reimer
|
||||||
email: stefan@zero-downtime.net
|
email: stefan@zero-downtime.net
|
||||||
@ -19,13 +18,9 @@ dependencies:
|
|||||||
version: 0.2.1
|
version: 0.2.1
|
||||||
repository: https://cdn.zero-downtime.net/charts/
|
repository: https://cdn.zero-downtime.net/charts/
|
||||||
- name: cilium
|
- name: cilium
|
||||||
version: 1.17.3
|
version: 1.17.4
|
||||||
repository: https://helm.cilium.io/
|
repository: https://helm.cilium.io/
|
||||||
condition: cilium.enabled
|
condition: cilium.enabled
|
||||||
- name: metallb
|
|
||||||
version: 0.14.9
|
|
||||||
repository: https://metallb.github.io/metallb
|
|
||||||
condition: metallb.enabled
|
|
||||||
- name: haproxy
|
- name: haproxy
|
||||||
version: 1.24.0
|
version: 1.24.0
|
||||||
repository: https://haproxytech.github.io/helm-charts
|
repository: https://haproxytech.github.io/helm-charts
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
# kubezero-network
|
# kubezero-network
|
||||||
|
|
||||||
 
|
 
|
||||||
|
|
||||||
KubeZero umbrella chart for all things network
|
KubeZero umbrella chart for all things network
|
||||||
|
|
||||||
@ -20,20 +20,22 @@ Kubernetes: `>= 1.30.0-0`
|
|||||||
|------------|------|---------|
|
|------------|------|---------|
|
||||||
| https://cdn.zero-downtime.net/charts/ | kubezero-lib | 0.2.1 |
|
| https://cdn.zero-downtime.net/charts/ | kubezero-lib | 0.2.1 |
|
||||||
| https://haproxytech.github.io/helm-charts | haproxy | 1.24.0 |
|
| https://haproxytech.github.io/helm-charts | haproxy | 1.24.0 |
|
||||||
| https://helm.cilium.io/ | cilium | 1.17.3 |
|
| https://helm.cilium.io/ | cilium | 1.17.4 |
|
||||||
| https://metallb.github.io/metallb | metallb | 0.14.9 |
|
|
||||||
|
|
||||||
## Values
|
## Values
|
||||||
|
|
||||||
| Key | Type | Default | Description |
|
| Key | Type | Default | Description |
|
||||||
|-----|------|---------|-------------|
|
|-----|------|---------|-------------|
|
||||||
|
| cilium.bpf.preallocateMaps | bool | `true` | |
|
||||||
| cilium.cgroup.autoMount.enabled | bool | `false` | |
|
| cilium.cgroup.autoMount.enabled | bool | `false` | |
|
||||||
| cilium.cgroup.hostRoot | string | `"/sys/fs/cgroup"` | |
|
| cilium.cgroup.hostRoot | string | `"/sys/fs/cgroup"` | |
|
||||||
| cilium.cluster.id | int | `240` | |
|
| cilium.cluster.id | int | `240` | |
|
||||||
| cilium.cluster.name | string | `"default"` | |
|
| cilium.cluster.name | string | `"default"` | |
|
||||||
| cilium.cni.binPath | string | `"/usr/libexec/cni"` | |
|
| cilium.cni.binPath | string | `"/usr/libexec/cni"` | |
|
||||||
| cilium.cni.exclusive | bool | `false` | |
|
| cilium.cni.exclusive | bool | `true` | |
|
||||||
|
| cilium.cni.iptablesRemoveAWSRules | bool | `false` | |
|
||||||
| cilium.cni.logFile | string | `"/var/log/cilium-cni.log"` | |
|
| cilium.cni.logFile | string | `"/var/log/cilium-cni.log"` | |
|
||||||
|
| cilium.dnsProxy.enableTransparentMode | bool | `true` | |
|
||||||
| cilium.enabled | bool | `false` | |
|
| cilium.enabled | bool | `false` | |
|
||||||
| cilium.envoy.enabled | bool | `false` | |
|
| cilium.envoy.enabled | bool | `false` | |
|
||||||
| cilium.hubble.enabled | bool | `false` | |
|
| cilium.hubble.enabled | bool | `false` | |
|
||||||
@ -45,6 +47,9 @@ Kubernetes: `>= 1.30.0-0`
|
|||||||
| cilium.hubble.ui.enabled | bool | `false` | |
|
| cilium.hubble.ui.enabled | bool | `false` | |
|
||||||
| cilium.image.useDigest | bool | `false` | |
|
| cilium.image.useDigest | bool | `false` | |
|
||||||
| cilium.ipam.operator.clusterPoolIPv4PodCIDRList[0] | string | `"10.240.0.0/16"` | |
|
| cilium.ipam.operator.clusterPoolIPv4PodCIDRList[0] | string | `"10.240.0.0/16"` | |
|
||||||
|
| cilium.k8sServiceHost | string | `""` | |
|
||||||
|
| cilium.k8sServicePort | int | `6443` | |
|
||||||
|
| cilium.kubeProxyReplacement | bool | `true` | |
|
||||||
| cilium.l7Proxy | bool | `false` | |
|
| cilium.l7Proxy | bool | `false` | |
|
||||||
| cilium.operator.nodeSelector."node-role.kubernetes.io/control-plane" | string | `""` | |
|
| cilium.operator.nodeSelector."node-role.kubernetes.io/control-plane" | string | `""` | |
|
||||||
| cilium.operator.prometheus.enabled | bool | `false` | |
|
| cilium.operator.prometheus.enabled | bool | `false` | |
|
||||||
@ -54,12 +59,13 @@ Kubernetes: `>= 1.30.0-0`
|
|||||||
| cilium.operator.tolerations[0].key | string | `"node-role.kubernetes.io/control-plane"` | |
|
| cilium.operator.tolerations[0].key | string | `"node-role.kubernetes.io/control-plane"` | |
|
||||||
| cilium.operator.tolerations[1].effect | string | `"NoSchedule"` | |
|
| cilium.operator.tolerations[1].effect | string | `"NoSchedule"` | |
|
||||||
| cilium.operator.tolerations[1].key | string | `"node.cilium.io/agent-not-ready"` | |
|
| cilium.operator.tolerations[1].key | string | `"node.cilium.io/agent-not-ready"` | |
|
||||||
|
| cilium.operator.tolerations[2].effect | string | `"NoSchedule"` | |
|
||||||
|
| cilium.operator.tolerations[2].key | string | `"node.kubernetes.io/not-ready"` | |
|
||||||
| cilium.prometheus.enabled | bool | `false` | |
|
| cilium.prometheus.enabled | bool | `false` | |
|
||||||
| cilium.prometheus.port | int | `9091` | |
|
| cilium.prometheus.port | int | `9091` | |
|
||||||
| cilium.prometheus.serviceMonitor.enabled | bool | `false` | |
|
| cilium.prometheus.serviceMonitor.enabled | bool | `false` | |
|
||||||
| cilium.resources.limits.memory | string | `"1Gi"` | |
|
| cilium.resources.requests.cpu | string | `"50m"` | |
|
||||||
| cilium.resources.requests.cpu | string | `"10m"` | |
|
| cilium.resources.requests.memory | string | `"256Mi"` | |
|
||||||
| cilium.resources.requests.memory | string | `"160Mi"` | |
|
|
||||||
| cilium.routingMode | string | `"tunnel"` | |
|
| cilium.routingMode | string | `"tunnel"` | |
|
||||||
| cilium.sysctlfix.enabled | bool | `false` | |
|
| cilium.sysctlfix.enabled | bool | `false` | |
|
||||||
| cilium.tunnelProtocol | string | `"geneve"` | |
|
| cilium.tunnelProtocol | string | `"geneve"` | |
|
||||||
@ -107,11 +113,6 @@ Kubernetes: `>= 1.30.0-0`
|
|||||||
| haproxy.serviceMonitor.endpoints[0].path | string | `"/metrics"` | |
|
| haproxy.serviceMonitor.endpoints[0].path | string | `"/metrics"` | |
|
||||||
| haproxy.serviceMonitor.endpoints[0].port | string | `"prometheus"` | |
|
| haproxy.serviceMonitor.endpoints[0].port | string | `"prometheus"` | |
|
||||||
| haproxy.serviceMonitor.endpoints[0].scheme | string | `"http"` | |
|
| haproxy.serviceMonitor.endpoints[0].scheme | string | `"http"` | |
|
||||||
| metallb.controller.nodeSelector."node-role.kubernetes.io/control-plane" | string | `""` | |
|
|
||||||
| metallb.controller.tolerations[0].effect | string | `"NoSchedule"` | |
|
|
||||||
| metallb.controller.tolerations[0].key | string | `"node-role.kubernetes.io/control-plane"` | |
|
|
||||||
| metallb.enabled | bool | `false` | |
|
|
||||||
| metallb.ipAddressPools | list | `[]` | |
|
|
||||||
| multus.clusterNetwork | string | `"cilium"` | |
|
| multus.clusterNetwork | string | `"cilium"` | |
|
||||||
| multus.defaultNetworks | list | `[]` | |
|
| multus.defaultNetworks | list | `[]` | |
|
||||||
| multus.enabled | bool | `false` | |
|
| multus.enabled | bool | `false` | |
|
||||||
|
@ -1,27 +0,0 @@
|
|||||||
{{- if .Values.metallb.enabled }}
|
|
||||||
apiVersion: metallb.io/v1beta1
|
|
||||||
kind: L2Advertisement
|
|
||||||
metadata:
|
|
||||||
name: l2advertisement1
|
|
||||||
namespace: kube-system
|
|
||||||
spec:
|
|
||||||
ipAddressPools:
|
|
||||||
{{- range $key, $val := .Values.metallb.ipAddressPools }}
|
|
||||||
{{- if eq $val.protocol "layer2" }}
|
|
||||||
- {{ $val.name }}
|
|
||||||
{{- end }}
|
|
||||||
{{- end }}
|
|
||||||
---
|
|
||||||
|
|
||||||
{{- range $key, $val := .Values.metallb.ipAddressPools }}
|
|
||||||
apiVersion: metallb.io/v1beta1
|
|
||||||
kind: IPAddressPool
|
|
||||||
metadata:
|
|
||||||
name: {{ $val.name }}
|
|
||||||
namespace: kube-system
|
|
||||||
spec:
|
|
||||||
addresses:
|
|
||||||
{{- $val.addresses | toYaml | nindent 4 }}
|
|
||||||
{{- end }}
|
|
||||||
---
|
|
||||||
{{- end }}
|
|
@ -1,19 +1,3 @@
|
|||||||
metallb:
|
|
||||||
enabled: false
|
|
||||||
|
|
||||||
controller:
|
|
||||||
tolerations:
|
|
||||||
- key: node-role.kubernetes.io/control-plane
|
|
||||||
effect: NoSchedule
|
|
||||||
nodeSelector:
|
|
||||||
node-role.kubernetes.io/control-plane: ""
|
|
||||||
|
|
||||||
ipAddressPools: []
|
|
||||||
#- name: my-ip-space
|
|
||||||
# protocol: layer2
|
|
||||||
# addresses:
|
|
||||||
# - 192.168.42.0/24
|
|
||||||
|
|
||||||
multus:
|
multus:
|
||||||
enabled: false
|
enabled: false
|
||||||
image:
|
image:
|
||||||
@ -33,17 +17,18 @@ cilium:
|
|||||||
|
|
||||||
resources:
|
resources:
|
||||||
requests:
|
requests:
|
||||||
cpu: 10m
|
cpu: 50m
|
||||||
memory: 160Mi
|
memory: 256Mi
|
||||||
limits:
|
# limits:
|
||||||
memory: 1Gi
|
# memory: 1Gi
|
||||||
# cpu: 4000m
|
# cpu: 4000m
|
||||||
|
|
||||||
cni:
|
cni:
|
||||||
binPath: "/usr/libexec/cni"
|
binPath: "/usr/libexec/cni"
|
||||||
logFile: /var/log/cilium-cni.log
|
logFile: /var/log/cilium-cni.log
|
||||||
#-- Ensure this is false if multus is enabled
|
#-- Ensure this is false if multus is enabled
|
||||||
exclusive: false
|
exclusive: true
|
||||||
|
iptablesRemoveAWSRules: false
|
||||||
|
|
||||||
cluster:
|
cluster:
|
||||||
# This should match the second octet of clusterPoolIPv4PodCIDRList
|
# This should match the second octet of clusterPoolIPv4PodCIDRList
|
||||||
@ -63,13 +48,32 @@ cilium:
|
|||||||
enabled: false
|
enabled: false
|
||||||
#rollOutCiliumPods: true
|
#rollOutCiliumPods: true
|
||||||
|
|
||||||
|
kubeProxyReplacement: true
|
||||||
|
dnsProxy:
|
||||||
|
enableTransparentMode: true
|
||||||
|
|
||||||
|
# For LB support via L2announcement or BGP - on-prem only
|
||||||
|
# l2announcements:
|
||||||
|
# enabled: true
|
||||||
|
# Not needed normally
|
||||||
|
# externalIPs:
|
||||||
|
# enabled: true
|
||||||
|
|
||||||
|
k8sServiceHost: ""
|
||||||
|
k8sServicePort: 6443
|
||||||
|
# k8s:
|
||||||
|
# # This has to be set to the DNS name of all API servers
|
||||||
|
# # For example "https://192.168.0.1:6443 https://192.168.0.2:6443"
|
||||||
|
# apiServerURLs: ""
|
||||||
|
|
||||||
cgroup:
|
cgroup:
|
||||||
autoMount:
|
autoMount:
|
||||||
enabled: false
|
enabled: false
|
||||||
hostRoot: "/sys/fs/cgroup"
|
hostRoot: "/sys/fs/cgroup"
|
||||||
|
|
||||||
|
bpf:
|
||||||
|
preallocateMaps: true
|
||||||
# we need biDirectional so use helm init-container
|
# we need biDirectional so use helm init-container
|
||||||
#bpf:
|
|
||||||
# autoMount:
|
# autoMount:
|
||||||
# enabled: false
|
# enabled: false
|
||||||
|
|
||||||
@ -91,9 +95,11 @@ cilium:
|
|||||||
- key: node-role.kubernetes.io/control-plane
|
- key: node-role.kubernetes.io/control-plane
|
||||||
effect: NoSchedule
|
effect: NoSchedule
|
||||||
# the operator removes the taints,
|
# the operator removes the taints,
|
||||||
# so we need to break chicken egg on single controller
|
# so we need to break chicken egg
|
||||||
- key: node.cilium.io/agent-not-ready
|
- key: node.cilium.io/agent-not-ready
|
||||||
effect: NoSchedule
|
effect: NoSchedule
|
||||||
|
- key: node.kubernetes.io/not-ready
|
||||||
|
effect: NoSchedule
|
||||||
|
|
||||||
nodeSelector:
|
nodeSelector:
|
||||||
node-role.kubernetes.io/control-plane: ""
|
node-role.kubernetes.io/control-plane: ""
|
||||||
|
23
charts/kubezero-policy/Chart.yaml
Normal file
23
charts/kubezero-policy/Chart.yaml
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
apiVersion: v2
|
||||||
|
name: kubezero-policy
|
||||||
|
description: KubeZero umbrella chart for Kyverno
|
||||||
|
type: application
|
||||||
|
version: 0.1.0
|
||||||
|
appVersion: v1.14
|
||||||
|
home: https://kubezero.com
|
||||||
|
icon: https://cdn.zero-downtime.net/assets/kubezero/logo-small-64.png
|
||||||
|
keywords:
|
||||||
|
- kubezero
|
||||||
|
- kyverno
|
||||||
|
maintainers:
|
||||||
|
- name: Stefan Reimer
|
||||||
|
email: stefan@zero-downtime.net
|
||||||
|
dependencies:
|
||||||
|
- name: kubezero-lib
|
||||||
|
version: 0.2.1
|
||||||
|
repository: https://cdn.zero-downtime.net/charts/
|
||||||
|
- name: kyverno
|
||||||
|
version: 3.4.2
|
||||||
|
repository: https://kyverno.github.io/kyverno/
|
||||||
|
condition: kyverno.enabled
|
||||||
|
kubeVersion: ">= 1.30.0-0"
|
30
charts/kubezero-policy/README.md
Normal file
30
charts/kubezero-policy/README.md
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
# kubezero-policy
|
||||||
|
|
||||||
|
  
|
||||||
|
|
||||||
|
KubeZero umbrella chart for Kyverno
|
||||||
|
|
||||||
|
**Homepage:** <https://kubezero.com>
|
||||||
|
|
||||||
|
## Maintainers
|
||||||
|
|
||||||
|
| Name | Email | Url |
|
||||||
|
| ---- | ------ | --- |
|
||||||
|
| Stefan Reimer | <stefan@zero-downtime.net> | |
|
||||||
|
|
||||||
|
## Requirements
|
||||||
|
|
||||||
|
Kubernetes: `>= 1.30.0-0`
|
||||||
|
|
||||||
|
| Repository | Name | Version |
|
||||||
|
|------------|------|---------|
|
||||||
|
| https://cdn.zero-downtime.net/charts/ | kubezero-lib | 0.2.1 |
|
||||||
|
| https://kyverno.github.io/kyverno/ | kyverno | 3.4.2 |
|
||||||
|
|
||||||
|
# Kyverno
|
||||||
|
|
||||||
|
## Values
|
||||||
|
|
||||||
|
| Key | Type | Default | Description |
|
||||||
|
|-----|------|---------|-------------|
|
||||||
|
| kyverno.enabled | bool | `false` | |
|
18
charts/kubezero-policy/README.md.gotmpl
Normal file
18
charts/kubezero-policy/README.md.gotmpl
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
{{ template "chart.header" . }}
|
||||||
|
{{ template "chart.deprecationWarning" . }}
|
||||||
|
|
||||||
|
{{ template "chart.versionBadge" . }}{{ template "chart.typeBadge" . }}{{ template "chart.appVersionBadge" . }}
|
||||||
|
|
||||||
|
{{ template "chart.description" . }}
|
||||||
|
|
||||||
|
{{ template "chart.homepageLine" . }}
|
||||||
|
|
||||||
|
{{ template "chart.maintainersSection" . }}
|
||||||
|
|
||||||
|
{{ template "chart.sourcesSection" . }}
|
||||||
|
|
||||||
|
{{ template "chart.requirementsSection" . }}
|
||||||
|
|
||||||
|
# Kyverno
|
||||||
|
|
||||||
|
{{ template "chart.valuesSection" . }}
|
52
charts/kubezero-policy/templates/kyverno/certifcates.yaml
Normal file
52
charts/kubezero-policy/templates/kyverno/certifcates.yaml
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
{{- if and false .Values.kyverno.enabled }}
|
||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Certificate
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kubezero-lib.fullname" . }}-admission-tls
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
{{ include "kubezero-lib.labels" . | nindent 4 }}
|
||||||
|
spec:
|
||||||
|
secretName: {{ template "kubezero-lib.fullname" . }}-kyverno-svc.{{ .Release.Namespace }}.svc.kyverno-tls-pair
|
||||||
|
issuerRef:
|
||||||
|
name: kubezero-local-ca-issuer
|
||||||
|
kind: ClusterIssuer
|
||||||
|
duration: 8760h0m0s
|
||||||
|
privateKey:
|
||||||
|
encoding: PKCS8
|
||||||
|
usages:
|
||||||
|
- "client auth"
|
||||||
|
- "server auth"
|
||||||
|
commonName: {{ template "kubezero-lib.fullname" . }}-admission
|
||||||
|
dnsNames:
|
||||||
|
# <cluster-name>-<nodepool-component>-<index>
|
||||||
|
- 'kyverno-svc'
|
||||||
|
- 'kyverno-svc.{{ .Release.Namespace }}'
|
||||||
|
- 'kyverno-svc.{{ .Release.Namespace }}.svc'
|
||||||
|
---
|
||||||
|
|
||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: Certificate
|
||||||
|
metadata:
|
||||||
|
name: {{ template "kubezero-lib.fullname" . }}-cleanup-tls
|
||||||
|
namespace: {{ .Release.Namespace }}
|
||||||
|
labels:
|
||||||
|
{{ include "kubezero-lib.labels" . | nindent 4 }}
|
||||||
|
spec:
|
||||||
|
secretName: {{ template "kubezero-lib.fullname" . }}-kyverno-cleanup-controller.{{ .Release.Namespace }}.svc.kyverno-tls-pair
|
||||||
|
issuerRef:
|
||||||
|
name: kubezero-local-ca-issuer
|
||||||
|
kind: ClusterIssuer
|
||||||
|
duration: 8760h0m0s
|
||||||
|
privateKey:
|
||||||
|
encoding: PKCS8
|
||||||
|
usages:
|
||||||
|
- "client auth"
|
||||||
|
- "server auth"
|
||||||
|
commonName: {{ template "kubezero-lib.fullname" . }}-cleanup-controller
|
||||||
|
dnsNames:
|
||||||
|
# <cluster-name>-<nodepool-component>-<index>
|
||||||
|
- 'kyverno-cleanup-controller'
|
||||||
|
- 'kyverno-cleanup-controller.{{ .Release.Namespace }}'
|
||||||
|
- 'kyverno-cleanup-controller.{{ .Release.Namespace }}.svc'
|
||||||
|
{{- end }}
|
9
charts/kubezero-policy/update.sh
Executable file
9
charts/kubezero-policy/update.sh
Executable file
@ -0,0 +1,9 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
. ../../scripts/lib-update.sh
|
||||||
|
|
||||||
|
login_ecr_public
|
||||||
|
update_helm
|
||||||
|
|
||||||
|
update_docs
|
28
charts/kubezero-policy/values.yaml
Normal file
28
charts/kubezero-policy/values.yaml
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
kyverno:
|
||||||
|
enabled: false
|
||||||
|
|
||||||
|
# templating:
|
||||||
|
# enabled: true
|
||||||
|
|
||||||
|
admissionController:
|
||||||
|
revisionHistoryLimit: 2
|
||||||
|
|
||||||
|
nodeSelector:
|
||||||
|
node-role.kubernetes.io/control-plane: ""
|
||||||
|
tolerations:
|
||||||
|
- key: node-role.kubernetes.io/control-plane
|
||||||
|
effect: NoSchedule
|
||||||
|
|
||||||
|
# container:
|
||||||
|
# extraArgs:
|
||||||
|
# caSecretName: kubezero-policy-admission-tls
|
||||||
|
# tlsSecretName: kubezero-policy-admission-tls
|
||||||
|
|
||||||
|
backgroundController:
|
||||||
|
enabled: false
|
||||||
|
|
||||||
|
# cleanupController:
|
||||||
|
# enabled: false
|
||||||
|
|
||||||
|
reportsController:
|
||||||
|
enabled: false
|
@ -17,7 +17,7 @@ dependencies:
|
|||||||
version: 0.2.1
|
version: 0.2.1
|
||||||
repository: https://cdn.zero-downtime.net/charts/
|
repository: https://cdn.zero-downtime.net/charts/
|
||||||
- name: mariadb-galera
|
- name: mariadb-galera
|
||||||
version: 14.2.6
|
version: 14.2.7
|
||||||
repository: https://charts.bitnami.com/bitnami
|
repository: https://charts.bitnami.com/bitnami
|
||||||
condition: mariadb-galera.enabled
|
condition: mariadb-galera.enabled
|
||||||
kubeVersion: ">= 1.26.0"
|
kubeVersion: ">= 1.26.0"
|
||||||
|
@ -9,10 +9,12 @@ metadata:
|
|||||||
namespace: argocd
|
namespace: argocd
|
||||||
labels:
|
labels:
|
||||||
{{- include "kubezero-lib.labels" . | nindent 4 }}
|
{{- include "kubezero-lib.labels" . | nindent 4 }}
|
||||||
{{- with ( index .Values $name "annotations" ) }}
|
|
||||||
annotations:
|
annotations:
|
||||||
|
argocd.argoproj.io/compare-options: IncludeMutationWebhook=true
|
||||||
|
# argocd.argoproj.io/sync-options: Replace=true
|
||||||
|
{{- with ( index .Values $name "annotations" ) }}
|
||||||
{{- toYaml . | nindent 4 }}
|
{{- toYaml . | nindent 4 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- if not ( index .Values $name "retain" ) }}
|
{{- if not ( index .Values $name "retain" ) }}
|
||||||
finalizers:
|
finalizers:
|
||||||
- resources-finalizer.argocd.argoproj.io
|
- resources-finalizer.argocd.argoproj.io
|
||||||
@ -27,7 +29,7 @@ spec:
|
|||||||
helm:
|
helm:
|
||||||
skipTests: true
|
skipTests: true
|
||||||
valuesObject:
|
valuesObject:
|
||||||
{{- include (print $name "-values") $ | nindent 8 }}
|
{{- toYaml (merge (omit (index .Values $name) "enabled" "namespace" "retain" "targetRevision") (fromYaml (include (print $name "-values") $ ))) | nindent 8 }}
|
||||||
|
|
||||||
destination:
|
destination:
|
||||||
server: "https://kubernetes.default.svc"
|
server: "https://kubernetes.default.svc"
|
||||||
@ -38,9 +40,9 @@ spec:
|
|||||||
automated:
|
automated:
|
||||||
prune: true
|
prune: true
|
||||||
syncOptions:
|
syncOptions:
|
||||||
- ServerSideApply=true
|
|
||||||
- CreateNamespace=true
|
- CreateNamespace=true
|
||||||
- ApplyOutOfSyncOnly=true
|
- ApplyOutOfSyncOnly=true
|
||||||
|
- ServerSideApply=true
|
||||||
info:
|
info:
|
||||||
- name: "Source:"
|
- name: "Source:"
|
||||||
value: "https://git.zero-downtime.net/ZeroDownTime/KubeZero/src/branch/release/v1.31/charts/kubezero-{{ $name }}"
|
value: "https://git.zero-downtime.net/ZeroDownTime/KubeZero/src/branch/release/v1.31/charts/kubezero-{{ $name }}"
|
||||||
|
@ -10,9 +10,9 @@ argo-cd:
|
|||||||
params:
|
params:
|
||||||
{{- if not $.Values.global.highAvailable }}
|
{{- if not $.Values.global.highAvailable }}
|
||||||
# Reduce load on API server on single node control plane
|
# Reduce load on API server on single node control plane
|
||||||
controller.status.processors: 2
|
controller.status.processors: 4
|
||||||
controller.operation.processors: 1
|
controller.operation.processors: 2
|
||||||
controller.kubectl.parallelism.limit: 1
|
controller.kubectl.parallelism.limit: 2
|
||||||
{{- else }}
|
{{- else }}
|
||||||
controller.status.processors: 8
|
controller.status.processors: 8
|
||||||
controller.operation.processors: 4
|
controller.operation.processors: 4
|
||||||
|
@ -67,7 +67,7 @@ gateway:
|
|||||||
gatewayProtocol: HTTPS
|
gatewayProtocol: HTTPS
|
||||||
tls:
|
tls:
|
||||||
mode: SIMPLE
|
mode: SIMPLE
|
||||||
{{- with index .Values "istio-ingress" "gateway" "service" "ports" }}
|
{{- with index .Values "istio-ingress" "gateway" "service" "extraPorts" }}
|
||||||
{{- toYaml . | nindent 4 }}
|
{{- toYaml . | nindent 4 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
@ -93,7 +93,6 @@ certificates:
|
|||||||
{{- toYaml $cert.dnsNames | nindent 4 }}
|
{{- toYaml $cert.dnsNames | nindent 4 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
proxyProtocol: {{ default true (index .Values "istio-ingress" "proxyProtocol") }}
|
|
||||||
{{- with (index .Values "istio-ingress" "hardening") }}
|
{{- with (index .Values "istio-ingress" "hardening") }}
|
||||||
hardening:
|
hardening:
|
||||||
{{- toYaml . | nindent 2 }}
|
{{- toYaml . | nindent 2 }}
|
||||||
|
@ -64,7 +64,7 @@ gateway:
|
|||||||
gatewayProtocol: HTTPS
|
gatewayProtocol: HTTPS
|
||||||
tls:
|
tls:
|
||||||
mode: SIMPLE
|
mode: SIMPLE
|
||||||
{{- with index .Values "istio-private-ingress" "gateway" "service" "ports" }}
|
{{- with index .Values "istio-private-ingress" "gateway" "service" "extraPorts" }}
|
||||||
{{- toYaml . | nindent 4 }}
|
{{- toYaml . | nindent 4 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
@ -88,7 +88,6 @@ certificates:
|
|||||||
dnsNames:
|
dnsNames:
|
||||||
{{- toYaml $cert.dnsNames | nindent 4 }}
|
{{- toYaml $cert.dnsNames | nindent 4 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
proxyProtocol: {{ default true (index .Values "istio-private-ingress" "proxyProtocol") }}
|
|
||||||
{{- with (index .Values "istio-private-ingress" "hardening") }}
|
{{- with (index .Values "istio-private-ingress" "hardening") }}
|
||||||
hardening:
|
hardening:
|
||||||
{{- toYaml . | nindent 2 }}
|
{{- toYaml . | nindent 2 }}
|
||||||
|
@ -1,30 +1,22 @@
|
|||||||
{{- define "network-values" }}
|
{{- define "network-values" }}
|
||||||
multus:
|
|
||||||
enabled: true
|
|
||||||
clusterNetwork: "cilium"
|
|
||||||
|
|
||||||
# {{- if eq .Values.global.platform "aws" }}
|
|
||||||
# image:
|
|
||||||
# pullPolicy: Never
|
|
||||||
# {{- end }}
|
|
||||||
|
|
||||||
cilium:
|
cilium:
|
||||||
enabled: true
|
k8sServiceHost: {{ .Values.global.apiServerUrl }}
|
||||||
|
|
||||||
# {{- if eq .Values.global.platform "aws" }}
|
# {{- if eq .Values.global.platform "aws" }}
|
||||||
# image:
|
# image:
|
||||||
# pullPolicy: Never
|
# pullPolicy: Never
|
||||||
# {{- end }}
|
# {{- end }}
|
||||||
|
# k8s:
|
||||||
|
# apiServerURLs: "https://{{ .Values.global.apiServerUrl }}"
|
||||||
|
|
||||||
cluster:
|
cluster:
|
||||||
name: {{ .Values.global.clusterName }}
|
name: {{ .Values.global.clusterName }}
|
||||||
{{- with .Values.network.cilium.cluster.id }}
|
{{- with ((.Values.network.cilium).cluster).id }}
|
||||||
id: {{ . }}
|
|
||||||
ipam:
|
ipam:
|
||||||
operator:
|
operator:
|
||||||
clusterPoolIPv4PodCIDRList:
|
clusterPoolIPv4PodCIDRList:
|
||||||
- 10.{{ . }}.0.0/16
|
- 10.{{ . }}.0.0/16
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
prometheus:
|
prometheus:
|
||||||
enabled: {{ .Values.metrics.enabled }}
|
enabled: {{ .Values.metrics.enabled }}
|
||||||
@ -40,11 +32,6 @@ cilium:
|
|||||||
serviceMonitor:
|
serviceMonitor:
|
||||||
enabled: {{ .Values.metrics.enabled }}
|
enabled: {{ .Values.metrics.enabled }}
|
||||||
|
|
||||||
{{- with .Values.network.metallb }}
|
|
||||||
metallb:
|
|
||||||
{{- toYaml . | nindent 2 }}
|
|
||||||
{{- end }}
|
|
||||||
|
|
||||||
{{- with .Values.network.haproxy }}
|
{{- with .Values.network.haproxy }}
|
||||||
haproxy:
|
haproxy:
|
||||||
{{- toYaml . | nindent 2 }}
|
{{- toYaml . | nindent 2 }}
|
||||||
@ -54,12 +41,6 @@ haproxy:
|
|||||||
|
|
||||||
|
|
||||||
{{- define "network-argo" }}
|
{{- define "network-argo" }}
|
||||||
# Metallb
|
|
||||||
ignoreDifferences:
|
|
||||||
- group: apiextensions.k8s.io
|
|
||||||
kind: CustomResourceDefinition
|
|
||||||
jsonPointers:
|
|
||||||
- /spec/conversion/webhook/clientConfig/caBundle
|
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
{{ include "kubezero-app.app" . }}
|
{{ include "kubezero-app.app" . }}
|
||||||
|
9
charts/kubezero/templates/policy.yaml
Normal file
9
charts/kubezero/templates/policy.yaml
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
{{- define "policy-values" }}
|
||||||
|
kyverno:
|
||||||
|
dummy: test
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{- define "policy-argo" }}
|
||||||
|
{{- end }}
|
||||||
|
|
||||||
|
{{ include "kubezero-app.app" . }}
|
@ -61,8 +61,10 @@ opensearch:
|
|||||||
{{- toYaml . | nindent 2 }}
|
{{- toYaml . | nindent 2 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
serviceMonitor:
|
# Disabled until upstream made up their mind
|
||||||
enabled: {{ .Values.metrics.enabled }}
|
# https://github.com/opensearch-project/technical-steering/issues/35
|
||||||
|
# serviceMonitor:
|
||||||
|
# enabled: {{ .Values.metrics.enabled }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
{{- if index .Values "telemetry" "opensearch-dashboards" }}
|
{{- if index .Values "telemetry" "opensearch-dashboards" }}
|
||||||
@ -71,8 +73,10 @@ opensearch-dashboards:
|
|||||||
{{- toYaml . | nindent 2 }}
|
{{- toYaml . | nindent 2 }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
serviceMonitor:
|
# Disabled until upstream made up their mind
|
||||||
enabled: {{ .Values.metrics.enabled }}
|
# https://github.com/opensearch-project/technical-steering/issues/35
|
||||||
|
# serviceMonitor:
|
||||||
|
# enabled: {{ .Values.metrics.enabled }}
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
|
||||||
{{- end }}
|
{{- end }}
|
||||||
|
@ -1,5 +1,6 @@
|
|||||||
global:
|
global:
|
||||||
clusterName: zdt-trial-cluster
|
clusterName: zdt-trial-cluster
|
||||||
|
apiServerUrl: localhost:6443
|
||||||
|
|
||||||
# platform: aws (kubeadm, default), gke, or nocloud
|
# platform: aws (kubeadm, default), gke, or nocloud
|
||||||
platform: "aws"
|
platform: "aws"
|
||||||
@ -29,12 +30,17 @@ addons:
|
|||||||
aws-eks-asg-rolling-update-handler:
|
aws-eks-asg-rolling-update-handler:
|
||||||
enabled: false
|
enabled: false
|
||||||
|
|
||||||
|
policy:
|
||||||
|
enabled: false
|
||||||
|
namespace: kyverno
|
||||||
|
targetRevision: 0.1.0
|
||||||
|
|
||||||
network:
|
network:
|
||||||
enabled: true
|
enabled: true
|
||||||
retain: true
|
retain: true
|
||||||
targetRevision: 0.5.8
|
targetRevision: 0.5.9
|
||||||
cilium:
|
cilium:
|
||||||
cluster: {}
|
enabled: true
|
||||||
|
|
||||||
cert-manager:
|
cert-manager:
|
||||||
enabled: false
|
enabled: false
|
||||||
@ -60,13 +66,13 @@ storage:
|
|||||||
istio:
|
istio:
|
||||||
enabled: false
|
enabled: false
|
||||||
namespace: istio-system
|
namespace: istio-system
|
||||||
targetRevision: 0.24.3
|
targetRevision: 0.24.6
|
||||||
|
|
||||||
istio-ingress:
|
istio-ingress:
|
||||||
enabled: false
|
enabled: false
|
||||||
chart: kubezero-istio-gateway
|
chart: kubezero-istio-gateway
|
||||||
namespace: istio-ingress
|
namespace: istio-ingress
|
||||||
targetRevision: 0.24.3
|
targetRevision: 0.24.6
|
||||||
gateway:
|
gateway:
|
||||||
service: {}
|
service: {}
|
||||||
|
|
||||||
@ -74,7 +80,7 @@ istio-private-ingress:
|
|||||||
enabled: false
|
enabled: false
|
||||||
chart: kubezero-istio-gateway
|
chart: kubezero-istio-gateway
|
||||||
namespace: istio-ingress
|
namespace: istio-ingress
|
||||||
targetRevision: 0.24.3
|
targetRevision: 0.24.6
|
||||||
gateway:
|
gateway:
|
||||||
service: {}
|
service: {}
|
||||||
|
|
||||||
@ -87,7 +93,7 @@ falco:
|
|||||||
telemetry:
|
telemetry:
|
||||||
enabled: false
|
enabled: false
|
||||||
namespace: telemetry
|
namespace: telemetry
|
||||||
targetRevision: 0.4.1
|
targetRevision: 0.5.0
|
||||||
|
|
||||||
operators:
|
operators:
|
||||||
enabled: false
|
enabled: false
|
||||||
@ -117,7 +123,7 @@ logging:
|
|||||||
argo:
|
argo:
|
||||||
enabled: false
|
enabled: false
|
||||||
namespace: argocd
|
namespace: argocd
|
||||||
targetRevision: 0.3.2
|
targetRevision: 0.4.1
|
||||||
argo-cd:
|
argo-cd:
|
||||||
enabled: false
|
enabled: false
|
||||||
istio:
|
istio:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user