This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
система_kubernetes [2026/03/11 18:35] val [Metrics Server] |
система_kubernetes [2026/03/15 09:53] (current) val [Gateway API] |
||
|---|---|---|---|
| Line 1442: | Line 1442: | ||
| protocol: HTTP | protocol: HTTP | ||
| - name: https | - name: https | ||
| - | hostname: "ehwebd.corpX.un" | + | hostname: "webd.corpX.un" |
| protocol: HTTPS | protocol: HTTPS | ||
| # port: 8443 | # port: 8443 | ||
| Line 1450: | Line 1450: | ||
| certificateRefs: | certificateRefs: | ||
| - kind: Secret | - kind: Secret | ||
| - | name: ehwebd-tls | + | name: webd-tls |
| </code> | </code> | ||
| Line 1463: | Line 1463: | ||
| spec: | spec: | ||
| hostnames: | hostnames: | ||
| - | - ehwebd.corpX.un | + | - webd.corpX.un |
| parentRefs: | parentRefs: | ||
| # - name: my-gateway | # - name: my-gateway | ||
| Line 1482: | Line 1482: | ||
| - name: my-webd | - name: my-webd | ||
| port: 80 | port: 80 | ||
| + | # weight: 70 | ||
| + | # - name: my-webd2 | ||
| + | # port: 80 | ||
| + | # weight: 30 | ||
| + | |||
| </code> | </code> | ||
| ==== Volumes ==== | ==== Volumes ==== | ||
| Line 2577: | Line 2582: | ||
| ИЛИ | ИЛИ | ||
| kube1:~/users# kubectl delete clusterrolebindings user1-cluster-admin | kube1:~/users# kubectl delete clusterrolebindings user1-cluster-admin | ||
| + | </code> | ||
| + | |||
| + | ===== Horizontal Pod Autoscaler ===== | ||
| + | |||
| + | * [[#Metrics Server]] | ||
| + | |||
| + | <code> | ||
| + | kube1:~/webd-k8s# cat my-webd-deployment.yaml | ||
| + | </code><code> | ||
| + | ... | ||
| + | resources: | ||
| + | requests: | ||
| + | memory: "64Mi" | ||
| + | cpu: "250m" | ||
| + | </code><code> | ||
| + | kube1:~/webd-k8s# cat my-webd-hpa.yaml | ||
| + | </code><code> | ||
| + | apiVersion: autoscaling/v2 | ||
| + | kind: HorizontalPodAutoscaler | ||
| + | metadata: | ||
| + | name: my-webd-hpa | ||
| + | spec: | ||
| + | scaleTargetRef: | ||
| + | apiVersion: apps/v1 | ||
| + | kind: Deployment | ||
| + | name: my-webd | ||
| + | minReplicas: 2 | ||
| + | maxReplicas: 10 | ||
| + | metrics: | ||
| + | - type: Resource | ||
| + | resource: | ||
| + | name: cpu | ||
| + | target: | ||
| + | type: Utilization | ||
| + | averageUtilization: 50 | ||
| + | - type: Resource | ||
| + | resource: | ||
| + | name: memory | ||
| + | target: | ||
| + | type: Utilization | ||
| + | averageUtilization: 80 | ||
| + | </code><code> | ||
| + | kube1:~/webd-k8s# kubectl -n my-ns get hpa | ||
| </code> | </code> | ||
| Line 2784: | Line 2832: | ||
| * [[https://medium.com/@cloudspinx/fix-error-metrics-api-not-available-in-kubernetes-aa10766e1c2f|Fix “error: Metrics API not available” in Kubernetes]] | * [[https://medium.com/@cloudspinx/fix-error-metrics-api-not-available-in-kubernetes-aa10766e1c2f|Fix “error: Metrics API not available” in Kubernetes]] | ||
| + | <code> | ||
| + | kube1# kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/download/v0.8.1/components.yaml | ||
| + | |||
| + | kube1# kubectl patch deployment metrics-server -n kube-system --type='json' -p='[{"op": "add", "path": "/spec/template/spec/containers/0/args/-", "value": "--kubelet-insecure-tls"}]' | ||
| + | </code> | ||
| + | или | ||
| <code> | <code> | ||
| kube1:~/metrics-server# curl -L https://github.com/kubernetes-sigs/metrics-server/releases/download/v0.7.2/components.yaml | tee metrics-server-components.yaml | kube1:~/metrics-server# curl -L https://github.com/kubernetes-sigs/metrics-server/releases/download/v0.7.2/components.yaml | tee metrics-server-components.yaml | ||
| Line 2798: | Line 2852: | ||
| kube1:~/metrics-server# kubectl apply -f metrics-server-components.yaml | kube1:~/metrics-server# kubectl apply -f metrics-server-components.yaml | ||
| </code> | </code> | ||
| - | + | Проверки | |
| - | или | + | |
| <code> | <code> | ||
| - | kube1# kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/download/v0.8.1/components.yaml | ||
| - | |||
| - | kube1# kubectl patch deployment metrics-server -n kube-system --type='json' -p='[{"op": "add", "path": "/spec/template/spec/containers/0/args/-", "value": "--kubelet-insecure-tls"}]' | ||
| - | |||
| kube1# kubectl get pods -A | grep metrics-server | kube1# kubectl get pods -A | grep metrics-server | ||