рдЬрдм рд╣реЗрд▓реНрдо рдЕрдкрдЧреНрд░реЗрдб рдЬрд╛рд░реА рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рджрд┐рдЦрд╛рддрд╛ рд╣реИ, рдЬреИрд╕реЗ ("рдореЗрд░реА-рд╕реЗрд╡рд╛" "рдХреНрд▓рд╕реНрдЯрд░рдЖрдИрдкреА: рдХреЛрдИ рдирд╣реАрдВ" рд╕реЗ "рдЯрд╛рдЗрдк: рд▓реЛрдбрдмреИрд▓реЗрдВрд╕рд░" рдмрд┐рдирд╛ рдлреАрд▓реНрдб рдХреНрд▓рд╕реНрдЯрд░ рдХреЗ)
Error: UPGRADE FAILED: Service "my-service" is invalid: spec.clusterIP: Invalid value: "": field is immutable
рд╣рд╛рд▓рд╛рдБрдХрд┐, рдирдП рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд╕рд╛рде рдЕрдиреНрдп рд╕рднреА рдкреЙрдбреНрд╕ рдЕрднреА рднреА рдкреБрдирд░рд╛рд░рдВрдн рд╣реЛрдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ, рд╕рд┐рд╡рд╛рдп рдЗрд╕рдХреЗ рдХрд┐ "рдореЗрд░реА-рд╕реЗрд╡рд╛" рдкреНрд░рдХрд╛рд░ рдирдП рдкреНрд░рдХрд╛рд░ "рд▓реЛрдбрдмреЗрд▓рд░" рдореЗрдВ рдирд╣реАрдВ рдмрджрд▓рддрд╛ рд╣реИ
рдореИрдВ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ рдЕрдкрдЧреНрд░реЗрдб рдлреЗрд▓ рдХреНрдпреЛрдВ рд╣реБрдЖ рдХреНрдпреЛрдВрдХрд┐ рд╣реЗрд▓реНрдо рдХреБрдЫ рдирд┐рд╢реНрдЪрд┐рдд рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рд▓реЗрдХрд┐рди рдХреНрдпреЛрдВ рдкрддрд╡рд╛рд░ рдЕрднреА рднреА рдкреБрдирд░рд╛рд░рдВрдн рдХрд░рдХреЗ рдЕрдиреНрдп рд╕реЗрд╡рд╛рдУрдВ / рдкреЙрдбреНрд╕ рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рддрд╛ рд╣реИред рдпрджрд┐ рдЕрдкрдЧреНрд░реЗрдб рдХреЗ рджреМрд░рд╛рди рдХреЛрдИ рддреНрд░реБрдЯрд┐ рд╣реИ рддреЛ рдХреНрдпрд╛ рд╣реЗрд▓рдо рдХреЛ рдХреБрдЫ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП? рдореИрдВрдиреЗ рд╣реЗрд▓реНрдо рдХреЛ рдЫреЛрдбрд╝рдХрд░ рд╕рднреА рд╕реЗрд╡рд╛рдУрдВ рдХреЗ рдкреВрд░реЗ рд╕реЗрдЯ рдХреЛ рдПрдХ рдкреИрдХреЗрдЬ рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╛ рддреЛ рд╕рднреА рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд┐рдпрд╛ рдпрд╛ рдХреЛрдИ рднреА рдирд╣реАрдВ, рд▓реЗрдХрд┐рди рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореЗрд░реА рдЙрдореНрдореАрдж рдЧрд▓рдд рд╣реЛ рд╕рдХрддреА рд╣реИред
рдФрд░ рдЕрдЧрд░ рд╣рдо рдХрднреА рдРрд╕реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ рд╣рдореЗрдВ рд╕реНрдерд┐рддрд┐ рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдХреНрдпрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП? рдирдП рдкреНрд░рдХрд╛рд░ рдХреЗ рд▓рд┐рдП "рдорд╛рдп-рд╕рд░реНрд╡рд┐рд╕" рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХреИрд╕реЗ рдХрд░реЗрдВ?
рдФрд░ рдЕрдЧрд░ рдореИрдВ --dry-run рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ helm рдореЗрдВ рдХреЛрдИ рддреНрд░реБрдЯрд┐ рдирд╣реАрдВ рд╣реИред
рдХреНрдпрд╛ рдЗрд╕реЗ рдмрдЧ рдпрд╛ рдЕрдкреЗрдХреНрд╖рд┐рдд рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЕрд░реНрдерд╛рдд рдЕрдкрдЧреНрд░реЗрдб рдХреБрдЫ рддреНрд░реБрдЯрд┐ рдХреЛ рдмрдврд╝рд╛рддрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдХреБрдЫ рд╕реЗрд╡рд╛ рдЕрднреА рднреА рдЕрдкрдЧреНрд░реЗрдб рд╣реЛ рдЬрд╛рддреА рд╣реИред
helm version
рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ:
Client: &version.Version{SemVer:"v2.12.3", GitCommit:"eecf22f77df5f65c823aacd2dbd30ae6c65f186e", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.14.3", GitCommit:"0e7f3b6637f7af8fcfddb3d2941fcc7cbebb0085", GitTreeState:"clean"}
kubectl version
рдХрд╛ рдЖрдЙрдЯрдкреБрдЯ:
Client Version: version.Info{Major:"1", Minor:"16", GitVersion:"v1.16.0", GitCommit:"2bd9643cee5b3b3a5ecbd3af49d09018f0773c77", GitTreeState:"clean", BuildDate:"2019-09-18T14:36:53Z", GoVersion:"go1.12.9", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"14+", GitVersion:"v1.14.10-gke.27", GitCommit:"145f9e21a4515947d6fb10819e5a336aff1b6959", GitTreeState:"clean", BuildDate:"2020-02-21T18:01:40Z", GoVersion:"go1.12.12b4", Compiler:"gc", Platform:"linux/amd64"}
рдХреНрд▓рд╛рдЙрдб рдкреНрд░рджрд╛рддрд╛ / рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо (AKS, GKE, Minikube рдЖрджрд┐):
рдЬреАрдХреЗ рдФрд░ рдорд┐рдВрдХреНрдпреВрдм
рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд╛рди рдирд╣реАрдВ рдХреА рдЧрдИ рд╣реИред рдХреГрдкрдпрд╛ рд╣рдореЗрдВ рдмрддрд╛рдПрдВ рдХрд┐ рдПрдХ рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдЪрд╛рд░реНрдЯ рдХреИрд╕реЗ рдмрдирд╛рдпрд╛ рдЬрд╛рдП, рдФрд░ рдХрд┐рд╕ рд╣реЗрд▓рдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдЖрдкрдиреЗ рдХрд┐рдпрд╛ред
рдирдорд╕реНрддреЗ, рдпрд╣рд╛рдБ рдкреНрд░рдЬрдирди рдХрджрдо рд╣реИрдВ
рдиреАрдЪреЗ рдХреЗ рд░реВрдк рдореЗрдВ рджреЛ рд╕реЗрд╡рд╛рдУрдВ yaml рдлрд╝рд╛рдЗрд▓ рд╣реЛрдиреЗред
nginx.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx-deployment
labels:
app: nginx
spec:
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:1.14.2
ports:
- containerPort: 80
prometheus.yaml
apiVersion: apps/v1beta1
kind: Deployment
metadata:
name: prometheus
spec:
template:
metadata:
labels:
app: prometheus
spec:
containers:
- image: prom/prometheus
name: prometheus
ports:
- containerPort: 9090
imagePullPolicy: Always
hostname: prometheus
restartPolicy: Always
---
apiVersion: v1
kind: Service
metadata:
name: prometheus
spec:
selector:
app: prometheus
clusterIP: None
ports:
- name: headless
port: 9090
targetPort: 0
рдлрд┐рд░ рд╡рд╣рд╛рдБ рджреЛ рдлрд╝рд╛рдЗрд▓реЗрдВ helm1 / рдЯреЗрдореНрдкрд▓реЗрдЯреНрд╕ рдореЗрдВ рдбрд╛рд▓ / рдлрд┐рд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВред рдпрд╣ рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдХрд┐ рдкреНрд░реЛрдореЗрдерд┐рдпрд╕ рд╕реЗрд╡рд╛ рдХреНрд▓рд╕реНрдЯрд░рдЖрдИрдкреА рдФрд░ рдирдЧреАрдирдХреНрд╕ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИ 1.14.2
# helm upgrade --install test helm1
Release "test" does not exist. Installing it now.
NAME: test
LAST DEPLOYED: Tue Apr 21 20:42:55 2020
NAMESPACE: default
STATUS: deployed
REVISION: 1
TEST SUITE: None
# kubectl get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 35d
prometheus ClusterIP None <none> 9090/TCP 7s
# kubectl describe deployment nginx |grep Image
Image: nginx:1.14.2
рдЕрдм nginx.yaml рдХреЗ рдЕрдиреБрднрд╛рдЧ рдХреЛ рдирдП рд╕рдВрд╕реНрдХрд░рдг 1.16 рдореЗрдВ рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ
image: nginx:1.16
рдФрд░ Prometheus.yaml рдХреЛ LoadBalancer рдореЗрдВ рдмрджрд▓рдХрд░ред
spec:
selector:
app: prometheus
ports:
- name: "9090"
port: 9090
protocol: TCP
targetPort: 9090
type: LoadBalancer
рдЕрдм рдЙрдиреНрд╣реЗрдВ рд╣реЗрд▓реНрдо 2 рдХреЗ рд░реВрдк рдореЗрдВ рдбрд╛рд▓реЗрдВ рдФрд░ рдЕрдкрдЧреНрд░реЗрдб рдХрд░реЗрдВред рдлрд┐рд░ рдЖрдк рдЕрдкрдЧреНрд░реЗрдб рдереНрд░реЛ рдХреЛ рдХреБрдЫ рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди nginx рд╕реЗрд╡рд╛ рдПрдХ рдирдП рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдХреЗ рдЧреБрдЬрд░рддреА рд╣реИ, рд▓реЗрдХрд┐рди рдкреНрд░реЛрдореЗрдерд┐рдпрд╕ рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЕрднреА рднреА рдХреНрд▓рд╕реНрдЯрд░ рдЖрдИрдкреА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИред
# helm upgrade --install test helm2
Error: UPGRADE FAILED: cannot patch "prometheus" with kind Service: Service "prometheus" is invalid: spec.clusterIP: Invalid value: "": field is immutable
# kubectl get svc
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 35d
prometheus ClusterIP None <none> 9090/TCP 5m34s
# kubectl describe deployment nginx |grep Image
Image: nginx:1.16
рдкрддрд╡рд╛рд░ рд╕реВрдЪреА рджрд┐рдЦрд╛рддрд╛ рд╣реИ
# helm list
NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION
test default 2 2020-04-21 20:48:20.133644429 -0700 PDT failed
рдкрддрд╡рд╛рд░ рдХрд╛ рдЗрддрд┐рд╣рд╛рд╕
# helm history test
REVISION UPDATED STATUS CHART APP VERSION DESCRIPTION
1 Tue Apr 21 20:42:55 2020 deployed helm-helm 1.0.0.6 Install complete
2 Tue Apr 21 20:48:20 2020 failed helm-helm 1.0.0.6 Upgrade "test" failed: cannot patch "prometheus" with kind Service: Service "prometheus" is invalid: spec.clusterIP: Invalid value: "": field is immutable
рд╣рдорд╛рд░реЗ рдкрд╛рд╕ v3.2.0 рдХреЗ рд╕рд╛рде рд╕рдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реИ, v3.1.3 рдХреЗ рд▓рд┐рдП рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдирд╛ рд╣рдорд╛рд░рд╛ рдЕрд╕реНрдерд╛рдпреА рд╕реБрдзрд╛рд░ рд╣реИ
рдореИрдВ рдЕрдкрдиреЗ рд╣реЗрд▓реНрдо 2 -> 3 рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдХреБрдЫ рдкреНрд░рд╛рдкреНрдд рдХрд░ рдЪреБрдХрд╛ рд╣реВрдВред рдЬрдм рдореБрдЭреЗ рдкрд╣рд▓реА рдмрд╛рд░ рдЗрд╕рдореЗрдВ рд╕реЗ рдмрд╣реБрдд рдХреБрдЫ рдорд┐рд▓рд╛ рд╣реИ, рддреЛ рдЗрд╕реЗ рдЬрд╛рд░реА рдХрд┐рдП рдЧрдП рд░рд┐рд▓реАрдЬрд╝ рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдпрд╣ рдЕрдм рддрдХ Nginx Ingress, Prometheus Operator, Graylog рдФрд░ Jaeger рдЪрд╛рд░реНрдЯреНрд╕ рдХреЗ рд▓рд┐рдП рд╣реИред рдЙрдирдореЗрдВ рд╕реЗ рдЬреНрдпрд╛рджрд╛рддрд░ рдореИрдВ рд╕рд┐рд░реНрдл рд╕реЗрд╡рд╛рдУрдВ рдХреЛ рд╣рдЯрд╛рдиреЗ рдФрд░ рд╣реЗрд▓реНрдо рдХреЛ рдЙрдиреНрд╣реЗрдВ рдлрд┐рд░ рд╕реЗ рдмрдирд╛рдиреЗ рдХреЗ рд╕рд╛рде рд╕рдВрддреБрд╖реНрдЯ рд╣реВрдВ рд▓реЗрдХрд┐рди рдирдЧреНрдиреЗрдХреНрд╕ рдЗрдирдЧреНрд░реЗрдб рдХреЗ рд▓рд┐рдП рдпрд╣ рдПрдХ рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИ ...
рдмрд╕ рдпрд╣ рдкрд╛рдпрд╛ рдЧрдпрд╛ https://github.com/helm/helm/issues/6378#issuecomment -557746499 рдЬреЛ рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛ рдХрд░рддрд╛ рд╣реИред
# 6378 рдХреЗ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдмрдВрдж рдХрд░рдирд╛ред @cablespaghetti рдиреЗ рдЗрд╕ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рд▓рд┐рдП рдЧрд╣рди рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдкрд╛рдпрд╛, рдЬрд┐рд╕рдХрд╛ рд╡рд░реНрдгрди рдмрд╣реБрдд рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред
рд╣рдореЗрдВ рдмрддрд╛рдПрдВ рдХрд┐ рдХреНрдпрд╛ рдпрд╣ рдЖрдкрдХреЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред
@GaramNick рдЖрдкрдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдирд╛ рдХреНрдпреЛрдВ рдареАрдХ рд╣реЛрдЧрд╛? рдХреНрдпрд╛ рдЖрдк рдбрд╛рдЙрдирдЧреНрд░реЗрдбрд┐рдВрдЧ рджреНрд╡рд╛рд░рд╛ рддрдп рдХрд┐рдП рдЧрдП "рдХреНрдпрд╛" рдкрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рдмрддрд╛ рд╕рдХрддреЗ рд╣реИрдВ?
@bacongobbler рдпрд╣рд╛рдБ рд░рд╣рддреЗ рд╣реБрдПред рдХреНрдпрд╛ рд░рд┐рд▓реАрдЬ рдХреЛ рд╣рдЯрд╛рдиреЗ рдФрд░ рдлрд┐рд░ рд╕реЗ рддреИрдирд╛рдд рдХрд┐рдП рдмрд┐рдирд╛ рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рд╣реИ? рдореБрдЭреЗ рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд▓рдЧ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╣реЗрд▓реНрдо 2 рдпрд╛ 3 рдХреЗ рддрд╣рдд рдореИрдВ рдореМрдЬреВрджрд╛ рд░рд┐рд▓реАрдЬрд╝ рдбреЗрдЯрд╛ рдХреЛ рд╣реИрдХ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ, рдЗрд╕рд▓рд┐рдП рд╣реЗрд▓рдо рдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреНрд▓рд╕реНрдЯрд░ рд╣рдореЗрд╢рд╛ рдЫреЛрдбрд╝рд╛ рдЧрдпрд╛ рд╣реИ рдФрд░ рдЗрд╕рд▓рд┐рдП рдХреЛрдИ рдкреИрдЪ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИред
рдХреНрдпрд╛ рдЖрдкрдиреЗ kubectl edit
рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ?
рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рдореБрджреНрджрд╛ рд╣реИ рдФрд░ 3.1.3
рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдирд╛ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рднреА рддрдп рд╣реИред рдореЗрд░рд╛ рдЕрдиреБрдорд╛рди рд╣реИ рдХрд┐ рдЗрд╕реЗ https://github.com/helm/helm/pull/7649/commits/d829343c1514db17bee7a90624d06cdfffde963 рдкрд░ рдирдП рддрд░реНрдХ рдХреЗ рд╕рд╛рде рдХрд░рдирд╛ рд╣реИ, рдЗрд╕ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддреЗ рд╣реБрдП Create
рдФрд░ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдЕрдкрдбреЗрдЯ рдХреЛ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдирд╣реАрдВ рдХреА рдЬрд╛ рд░рд╣реА рд╣реИред рдЖрдИрдкреА тАЛтАЛрдФрд░ рдЖрдмрд╛рджреА рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ
рджрд┐рд▓рдЪрд╕реНрдк рдЦреЛрдЬред рдЬрд╛рдВрдЪ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред
@jlegrone рдХрд┐рд╕реА рднреА рдореМрдХрд╛ рдЖрдк рдЗрд╕ рдкрд░ рдЧреМрд░ рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рд╣реЛ рд╕рдХрддрд╛ рд╣реИ?
@bacongobbler рд╣рдорд╛рд░реА CI / CD рдкрд╛рдЗрдкрд▓рд╛рдЗрди рд╣рдорд╛рд░реЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Helm рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдкреНрд░рдХрд╛рд░ рдХреНрд▓рд╕реНрдЯрд░ рдХреЗ рд╕рд╛рде рдПрдХ рд╕реЗрд╡рд╛ рд╢рд╛рдорд┐рд▓ рд╣реИред рдЖрджреЗрд╢:
helm upgrade --install --force \
--wait \
--set image.repository="$CI_REGISTRY_IMAGE" \
--set image.tag="$CI_COMMIT_REF_NAME-$CI_COMMIT_SHA" \
--set image.pullPolicy=IfNotPresent \
--namespace="$KUBE_NAMESPACE" \
"$APP_NAME" \
./path/to/charts/
V3.2.0 рдкрд░ рдпрд╣ рдХрдорд╛рдВрдб Service "service-name" is invalid: spec.clusterIP: Invalid value: "": field is immutable
рд╕рд╛рде рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддреА рд╣реИ
V3.1.3 рдкрд░ рдпрд╣ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдЕрдЧрд░ рдЖрдкрдХреЛ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдкрд╕рдВрдж рд╣реИ рддреЛ рдореБрдЭреЗ рдмрддрд╛рдПрдВред
рдореБрдЭреЗ рднреАред рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реЗрд╡рд╛ рдереАред рдХрдИ рдорд╣реАрдиреЛрдВ рддрдХ рд╣реЗрд▓реНрдо 2 рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдирд╛ рдареАрдХ рдерд╛ред
рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдХреЗ рдмрд╛рдж, рдКрдкрд░ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рд╣реЗрдЬреЗрдВ рддреНрд░реБрдЯрд┐ рдХреЗ рд╕рд╛рде рд╣реЗрд▓реНрдо 3.2 helm upgrade
рдХрдорд╛рдВрдб рд╡рд┐рдлрд▓ рд░рд╣реАред 3.1.3 рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░ рдЗрд╕реЗ рд╣рд▓ рдХрд┐рдпрд╛ред
apiVersion: v1
kind: Service
metadata:
name: {{ .Values.global.name }}
namespace: {{ index .Values.global.namespace .Values.global.env }}
labels:
microservice: {{ .Values.global.name }}
spec:
type: ClusterIP
ports:
- port: 8080
selector:
microservice: {{ .Values.global.name }}
рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рд╣реА рдореБрджреНрджрд╛ рд╣реИ рдФрд░ 3.1.3 рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдирд╛ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рднреА рддрдп рд╣реИред рдореЗрд░рд╛ рдЕрдиреБрдорд╛рди рд╣реИ рдХрд┐ рдЗрд╕реЗ d829343 рдореЗрдВ рдирдП рддрд░реНрдХ рдХреЗ рд╕рд╛рде рдХрд░рдирд╛ рд╣реИ, рдЗрд╕ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ рдХрд┐ рдХреНрд░рд┐рдПрдЯ рдХрд░реЗрдВ рдФрд░ рдЕрдкрдбреЗрдЯ рди рд╣реЛ, рдЗрд╕ рддрд░рд╣ рдЦрд╛рд▓реА рдЖрдИрдкреА рд╕реЗрдЯ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ рдФрд░ рдЖрдмрд╛рджреА рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рди рдХрд░реЗрдВ
@ n1koo рдХреНрдпрд╛ рдЖрдк рдмрддрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЖрдкрдХреЛ рдХреНрдпреЛрдВ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдХрд╛рд░рдг рд╣реИ? рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ рдЗрдВрд╕реНрдЯреЙрд▓ рдФрд░ рдЕрдкрдЧреНрд░реЗрдб рдХреЛрдб рдирд╣реАрдВ рд╣реИ, рдФрд░ 3.1 рдореЗрдВ рднреА create
рдФрд░ рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдореИрдВ @adamreese рдХреЗ рд╕рд╛рде рдЗрд╕ рдореБрджреНрджреЗ рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░ рд░рд╣рд╛ @ n1koo рдиреЗ рдкрд╣рдЪрд╛рдирд╛ рд╣реИред рдмрдирд╛рдПрдБ рд╡рд┐рдзрд┐ рд╕реЗрд╡рд╛ рдкрд░ рд╕рд╛рдорд╛рдиреНрдп 3-рд╡реЗ рдЕрдВрддрд░ рдХреЛ рдмрд╛рдпрдкрд╛рд╕ рдХрд░реЗрдЧреА, рдЬрд┐рд╕рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдХреБрдмреЗрд░рдиреЗрдЯ рджреНрд╡рд╛рд░рд╛ рдЖрдмрд╛рджреА рд╡рд╛рд▓реЗ рдореВрд▓реНрдп рдХреЗ рдмрдЬрд╛рдп рд╕реЗрд╡рд╛ рдХреЗ рдХреНрд▓рд╕реНрдЯрд░ рдХреЛ "" рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк, рдХреНрд▓рд╕реНрдЯрд░ IP рдХреЛ рд░реАрд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП API рд╕рд░реНрд╡рд░ _appears_ рдХреЛ рднреЗрдЬрд╛ рдЧрдпрд╛ рдШреЛрд╖рдгрд╛рдкрддреНрд░, рдЬреЛ рдПрдХ рд╕реЗрд╡рд╛ рдкрд░ рдЕрд╡реИрдз рд╣реИ (рдФрд░ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХрд╛ рдЗрд░рд╛рджрд╛ рдирд╣реАрдВ рд╣реИ)ред
рд╣рдо рдЕрднреА рднреА рдЗрд╕ рдкрд░ рдЧреМрд░ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдЕрдЧрд░ рд╣рдо рдФрд░ рд╕реАрдЦреЗрдВрдЧреЗ рддреЛ рдореИрдВ рдЕрдкрдбреЗрдЯ рдХрд░реВрдВрдЧрд╛ред
рддреЛ https://github.com/helm/helm/issues/6378#issuecomment -557746499 рд╕рд╣реА рд╣реИред рдХреГрдкрдпрд╛ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдЬрд╛рд░реА рд░рдЦрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдкрдврд╝реЗрдВред рдпрджрд┐ clusterIP: ""
рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ Kubernetes рдПрдХ рдЖрдИрдкреА рдЕрд╕рд╛рдЗрди рдХрд░реЗрдЧрд╛ред рдЕрдЧрд▓реЗ рд╣реЗрд▓реНрдо рдЕрдкрдЧреНрд░реЗрдб рдкрд░, рдпрджрд┐ clusterIP:""
рдлрд┐рд░ рд╕реЗ, рдпрд╣ рдКрдкрд░ рддреНрд░реБрдЯрд┐ рджреЗрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ _to Kubernetes_ рдкреНрд░рдХрдЯ рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдЖрдк IP рд░реАрд╕реЗрдЯ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣реЗ рд╣реИрдВред (рд╣рд╛рдВ, рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ spec:
рдПрдХ рд╕реЗрд╡рд╛ рдХрд╛ рдЕрдиреБрднрд╛рдЧ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рддрд╛ рд╣реИ!)
рдЬрдм Create
рдкрджреНрдзрддрд┐ 3-рддрд░рдлрд╛ рдЕрдВрддрд░ рдХреЛ рджрд░рдХрд┐рдирд╛рд░ рдХрд░ рджреЗрддреА рд╣реИ, рддреЛ рдпрд╣ Kubernetes рджреНрд╡рд╛рд░рд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ IP рдкрддреЗ рдкрд░ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп clusterIP: ""
рд╕реЗрдЯ рдХрд░рддрд╛ рд╣реИред
рдкреНрд░рдЬрдирди рдХрд░рдирд╛:
$ helm create issue7956
$ # edit issue7956/templates/service.yaml and add `clusterIP: ""` under `spec:`
$ helm upgrade --install issue7956 issue7956
...
$ helm upgrade issue7956 issue7956
Error: UPGRADE FAILED: cannot patch "issue-issue7956" with kind Service: Service "issue-issue7956" is invalid: spec.clusterIP: Invalid value: "": field is immutable
рджреВрд╕рд░реА рдмрд╛рд░ рдЬрдм рдЖрдк рдЕрдкрдЧреНрд░реЗрдб рдЪрд▓рд╛рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред
рдореИрдВ master
рдкрд░ @IadanAdar рдХреЗ рдорд╛рдорд▓реЗ рдХреЛ рдкреБрди: рдкреЗрд╢ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред
@GaramNick рдЖрдкрдХреА рддреНрд░реБрдЯрд┐ рдХреЛ рдкреБрди: рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛ рд░рд╣реА рд╕реЗрд╡рд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрд░реНрдпрд╛рдкреНрдд рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рд╣реИред
рдореЗрд░реА рд╕реНрдерд┐рддрд┐:
version.BuildInfo{Version:"v3.2.0", GitCommit:"e11b7ce3b12db2941e90399e874513fbd24bcb71", GitTreeState:"clean", GoVersion:"go1.13.10"}
рдпрд╣ рднреА рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ w /
version.BuildInfo{Version:"v3.2.1", GitCommit:"fe51cd1e31e6a202cba7dead9552a6d418ded79a", GitTreeState:"clean", GoVersion:"go1.13.10"}
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реЗрд╡рд╛ рдЯреЗрдореНрдкрд▓реЗрдЯ рджрд┐рдпрд╛ рдЧрдпрд╛:
apiVersion: v1
kind: Service
metadata:
name: {{ include "app.fullname" . }}
labels:
{{- include "app.labels" . | nindent 4 }}
annotations:
getambassador.io/config: |
---
apiVersion: ambassador/v1
kind: Mapping
name: {{ include "app.fullname" . }}_mapping
prefix: /{{ include "app.fullname" . }}
host: "^{{ include "app.fullname" . }}.*"
host_regex: true
service: {{ include "app.fullname" . }}.{{ .Release.Namespace }}
rewrite: ""
timeout_ms: 60000
bypass_auth: true
cors:
origins: "*"
methods: POST, GET, OPTIONS
headers:
- Content-Type
- Authorization
- x-client-id
- x-client-secret
- x-client-trace-id
- x-flow-proto
---
apiVersion: ambassador/v1
kind: Mapping
name: {{ include "app.fullname" . }}_swagger_mapping
ambassador_id: corp
prefix: /swagger
host: "^{{ include "app.fullname" . }}.corp.*"
host_regex: true
service: {{ include "app.fullname" . }}.{{ .Release.Namespace }}
rewrite: ""
bypass_auth: true
cors:
origins: "*"
methods: POST, GET, OPTIONS
headers:
- Content-Type
- x-client-id
- x-client-secret
- Authorization
- x-flow-proto
namespace: {{ .Release.Namespace }}
spec:
type: {{ .Values.service.type }}
selector:
{{- include "app.selectorLabels" . | nindent 4 }}
ports:
- port: {{ .Values.service.port }}
name: http-rest-hub
targetPort: http-rest
- port: {{ .Values.service.healthPort }}
name: http-health
targetPort : http-health
рдЬреЛ upgrade --install
рдмрд╛рдж рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдореЗрдВ рдкрд░рд┐рдгрд╛рдо:
apiVersion: v1
kind: Service
metadata:
annotations:
getambassador.io/config: |
---
apiVersion: ambassador/v1
kind: Mapping
name: hub-alt-bor_mapping
prefix: /hub-alt-bor
host: "^hub-alt-bor.*"
host_regex: true
service: hub-alt-bor.brett
rewrite: ""
timeout_ms: 60000
bypass_auth: true
cors:
origins: "*"
methods: POST, GET, OPTIONS
headers:
- Content-Type
- Authorization
- x-client-id
- x-client-secret
- x-client-trace-id
- x-flow-proto
---
apiVersion: ambassador/v1
kind: Mapping
name: hub-alt-bor_swagger_mapping
ambassador_id: corp
prefix: /swagger
host: "^hub-alt-bor.corp.*"
host_regex: true
service: hub-alt-bor.brett
rewrite: ""
bypass_auth: true
cors:
origins: "*"
methods: POST, GET, OPTIONS
headers:
- Content-Type
- x-client-id
- x-client-secret
- Authorization
- x-flow-proto
meta.helm.sh/release-name: alt-bor
meta.helm.sh/release-namespace: brett
creationTimestamp: ...
labels:
app: hub
app.kubernetes.io/instance: alt-bor
app.kubernetes.io/managed-by: Helm
app.kubernetes.io/name: hub
app.kubernetes.io/version: v1.6.0-rc.26
deploy.xevo.com/stackname: bor-v0.1-test
helm.sh/chart: hub-0.0.4
owner: gateway
ownerSlack: TODOunknown
name: hub-alt-bor
namespace: brett
resourceVersion: ...
selfLink: ...
uid: ...
spec:
clusterIP: 172.20.147.13
ports:
- name: http-rest-hub
port: 80
protocol: TCP
targetPort: http-rest
- name: http-health
port: 90
protocol: TCP
targetPort: http-health
selector:
app.kubernetes.io/instance: alt-bor
app.kubernetes.io/name: hub
sessionAffinity: None
type: ClusterIP
status:
loadBalancer: {}
рдЕрдЧрд░ рдореИрдВ рдЗрд╕рдХреЗ рдмрд╛рдж рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕ рд╕рдЯреАрдХ рдЪрд╛рд░реНрдЯ рдХреЛ реж.реж.рел рдФрд░ upgrade --install
рдЕрдкрд▓реЛрдб рдХрд░рддрд╛ рд╣реВрдВ рддреЛ рдореБрдЭреЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдорд┐рд▓реЗрдЧрд╛:
Error: UPGRADE FAILED: failed to replace object: Service "hub-alt-bor" is invalid: spec.clusterIP: Invalid value: "": field is immutable
рдПрдХрдорд╛рддреНрд░ рдЕрдВрддрд░ helm.sh/chart
рд▓реЗрдмрд▓ рдХрд╛ рдореВрд▓реНрдп рд╣реИ рдЬреЛ рдЕрдм hub-0.0.5
рдпрд╣ рдПрдХ рд╡рд┐рд╢рд╛рд▓ рдЕрд╡рд░реЛрдзрдХ рд╣реИред
@GaramNick рдЖрдкрдХреА рддреНрд░реБрдЯрд┐ рдХреЛ рдкреБрди: рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛ рд░рд╣реА рд╕реЗрд╡рд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрд░реНрдпрд╛рдкреНрдд рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рд╣реИред
@technosophos рдЖрдкрдХреЛ рдХреНрдпрд╛ рдЪрд╛рд╣рд┐рдП? рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЦреБрд╢!
рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ! helm upgrade --install
w / --force
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдЕрджреНрдпрддрди рд╡рд┐рдлрд▓ рд░рд╣рддрд╛ рд╣реИред рдЕрдм рдПрдХ рдЕрд╡рд░реЛрдзрдХ рдХреЗ рдХрдоред
рдУрд╣! рдпрд╣ рджрд┐рд▓рдЪрд╕реНрдк рд╣реИред рдпрд╣ рдиреАрдЪреЗ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреНрд░реБрдЯрд┐ рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдирдорд╕реНрдХрд╛рд░ @technosophos @bacongobbler рд╣рдорд╛рд░реЗ рдкрд╛рд╕ 2 рд╣реА рдореБрджреНрджреЗ рд╣реИрдВ:
version.BuildInfo{Version:"v3.2.1", GitCommit:"fe51cd1e31e6a202cba7dead9552a6d418ded79a", GitTreeState:"clean", GoVersion:"go1.13.10"}
Service
рдЯреЗрдореНрдкрд▓реЗрдЯ clusterIP
рдмрд┐рдирд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ clusterIP
рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЕрд╕рд╛рдЗрди рдХрд░реЗрдВрдЧреЗ:apiVersion: v1
kind: Service
metadata:
name: {{ .Release.Name }}
labels:
app: {{ .Values.image.name }}
release: {{ .Release.Name }}
spec:
type: ClusterIP
ports:
- port: {{ .Values.service.port }}
targetPort: {{ .Values.service.port }}
protocol: TCP
name: http
selector:
app: {{ .Values.image.name }}
release: {{ .Release.Name }}
helm 2to3 convert
3 рдХреЗ рд╕рд╛рде helm 3 рдореЗрдВ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдЙрд╕реА рд░рд┐рд▓реАрдЬрд╝ helm3 upgrade --install --force
рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ:
failed to replace object: Service "dummy-stage" is invalid: spec.clusterIP: Invalid value: "": field is immutable
рдЕрдЧрд░ рдореИрдВ --force
-> helm3 upgrade --install
рдмрд┐рдирд╛ рддреНрд░реБрдЯрд┐ рдХреЗ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реВрдВред
spec.selector.matchLabels
рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдБ рдЬреЛ --force
рдмрд┐рдирд╛ рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдХреНрд╖реЗрддреНрд░ рд╣реИ рддреЛ рдореБрдЭреЗ рдорджрдж рдорд┐рд▓реЗрдЧреА:cannot patch "dummy-stage" with kind Deployment: Deployment.apps "dummy-stage" is invalid: spec.selector: Invalid value: v1.LabelSelector{MatchLabels:map[string]string{"app.kubernetes.io/name":"web-nerf-dummy-app"}, MatchExpressions:[]v1.LabelSelectorRequirement(nil)}: field is immutable
рдЕрдЧрд░ рдореИрдВ --force
рд╕рд╛рде рдРрд╕рд╛ рд╣реА рдХрд░реВрдВрдЧрд╛ рддреЛ рдореБрдЭреЗ рддреНрд░реБрдЯрд┐ рдорд┐рд▓реЗрдЧреА:
failed to replace object: Deployment.apps "dummy-stage" is invalid: spec.selector: Invalid value: v1.LabelSelector{MatchLabels:map[string]string{"app.kubernetes.io/name":"web-nerf-dummy-app"}, MatchExpressions:[]v1.LabelSelectorRequirement(nil)}: field is immutable
рдХреНрдпрд╛ --force
рд▓рд┐рдП рд╕рдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реИ рдЬреИрд╕рд╛ рдХрд┐ helm 2
рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рдмрд┐рдирд╛ рдХрд┐рд╕реА рддреНрд░реБрдЯрд┐ рдХреЗ рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рд░реВрдк рд╕реЗ рджрд╛рдпрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?
apiVersion: v1
kind: Service
metadata:
name: zipkin-proxy
namespace: monitoring
spec:
ports:
- port: 9411
targetPort: 9411
selector:
app: zipkin-proxy
type: ClusterIP
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: zipkin-proxy
namespace: monitoring
spec:
replicas: {{ .Values.zipkinProxy.replicaCount }}
template:
metadata:
labels:
app: zipkin-proxy
annotations:
prometheus.io/scrape: 'true'
spec:
containers:
- image: {{ .Values.image.repository }}/zipkin-proxy
name: zipkin-proxy
env:
- name: STORAGE_TYPE
value: stackdriver
helm upgrade -i --debug --force --namespace monitoring zipkin-proxy --values ./values.yaml.tmp .
рдореИрдВрдиреЗ рдмрд▓ рд╡рд┐рдХрд▓реНрдк рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИред рдореИрдВрдиреЗ v3.1.3, v3.2.0 рдХреЗ рд╕рд╛рде-рд╕рд╛рде v3.2.1 рдХреЗ рд╕рд╛рде рдЕрднреА рднреА рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рдХреА рдХреЛрд╢рд┐рд╢ рдХреАред
рд╕реНрдЯреИрдХ рдЯреНрд░реЗрд╕
history.go:52: [debug] getting history for release zipkin-proxy
upgrade.go:84: [debug] preparing upgrade for zipkin-proxy
upgrade.go:92: [debug] performing update for zipkin-proxy
upgrade.go:234: [debug] creating upgraded release for zipkin-proxy
client.go:163: [debug] checking 2 resources for changes
client.go:195: [debug] error updating the resource "zipkin-proxy":
cannot patch "zipkin-proxy" with kind Service: Service "zipkin-proxy" is invalid: spec.clusterIP: Invalid value: "": field is immutable
client.go:403: [debug] Looks like there are no changes for Deployment "zipkin-proxy"
upgrade.go:293: [debug] warning: Upgrade "zipkin-proxy" failed: cannot patch "zipkin-proxy" with kind Service: Service "zipkin-proxy" is invalid: spec.clusterIP: Invalid value: "": field is immutable
Error: UPGRADE FAILED: cannot patch "zipkin-proxy" with kind Service: Service "zipkin-proxy" is invalid: spec.clusterIP: Invalid value: "": field is immutable
helm.go:75: [debug] cannot patch "zipkin-proxy" with kind Service: Service "zipkin-proxy" is invalid: spec.clusterIP: Invalid value: "": field is immutable
helm.sh/helm/v3/pkg/kube.(*Client).Update
/home/circleci/helm.sh/helm/pkg/kube/client.go:208
helm.sh/helm/v3/pkg/action.(*Upgrade).performUpgrade
/home/circleci/helm.sh/helm/pkg/action/upgrade.go:248
helm.sh/helm/v3/pkg/action.(*Upgrade).Run
/home/circleci/helm.sh/helm/pkg/action/upgrade.go:93
main.newUpgradeCmd.func1
/home/circleci/helm.sh/helm/cmd/helm/upgrade.go:137
github.com/spf13/cobra.(*Command).execute
/go/pkg/mod/github.com/spf13/[email protected]/command.go:826
github.com/spf13/cobra.(*Command).ExecuteC
/go/pkg/mod/github.com/spf13/[email protected]/command.go:914
github.com/spf13/cobra.(*Command).Execute
/go/pkg/mod/github.com/spf13/[email protected]/command.go:864
main.main
/home/circleci/helm.sh/helm/cmd/helm/helm.go:74
runtime.main
/usr/local/go/src/runtime/proc.go:203
runtime.goexit
/usr/local/go/src/runtime/asm_amd64.s:1357
UPGRADE FAILED
main.newUpgradeCmd.func1
/home/circleci/helm.sh/helm/cmd/helm/upgrade.go:139
github.com/spf13/cobra.(*Command).execute
/go/pkg/mod/github.com/spf13/[email protected]/command.go:826
github.com/spf13/cobra.(*Command).ExecuteC
/go/pkg/mod/github.com/spf13/[email protected]/command.go:914
github.com/spf13/cobra.(*Command).Execute
/go/pkg/mod/github.com/spf13/[email protected]/command.go:864
main.main
/home/circleci/helm.sh/helm/cmd/helm/helm.go:74
runtime.main
/usr/local/go/src/runtime/proc.go:203
runtime.goexit
/usr/local/go/src/runtime/asm_amd64.s:1357
рдЬрдм рд╣реЗрд▓рдо рдЪрд╛рд░реНрдЯ рд╕рдВрд╕реНрдХрд░рдг рдмрджрд▓рддрд╛ рд╣реИ рдФрд░ рдореМрдЬреВрджрд╛ рдкрд░рд┐рдирд┐рдпреЛрдЬрди рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдореБрдЭреЗ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдЖ рд░рд╣реА рд╣реИред
рд╣реЗрд▓реНрдо v3.2.0 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
рдореИрдВ рдкреБрд╖реНрдЯрд┐ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ 3.1.2 рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдирд╛ред
@ gor181 рд╣рдо рдХреИрд╕реЗ рдкреБрди: рдкреЗрд╢ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ? 3.2 рдкрд░ рдХреНрдпрд╛ рдЯреВрдЯ рдЧрдпрд╛ рд▓реЗрдХрд┐рди 3.1 рдкрд░ рдХрд╛рдо рдХрд┐рдпрд╛? рдЪрд╛рд░реНрдЯ (рдпрд╛ рдХрдо рд╕реЗ рдХрдо svc рдЯреЗрдореНрдкрд▓реЗрдЯ) рдФрд░ рдХрдорд╛рдВрдбреНрд╕ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рд╣рдореЗрдВ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдмрджрд▓ рдЧрдпрд╛ рд╣реИред
@azarudeena @alexandrsemak - рддреБрдо рджреЛрдиреЛрдВ, рдХреЗ рд▓рд┐рдП --force
рдЭрдВрдбрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдХрд╛рд░рдг рд╣реИ рд╣реИред рдпрджрд┐ рдЖрдк --force
рд╣рдЯрд╛рддреЗ рд╣реИрдВ, рддреЛ рдХреНрдпрд╛ рдирд╡реАрдиреАрдХрд░рдг рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ?
@technosophos рдиреЗ рдмрд▓ рдХреЗ рдмрд┐рдирд╛ рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛ред 3.1.2 рдХреЗ рд╕рд╛рде рдкреНрд░рдпрд╛рд╕ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛
@ Mazudeena рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рдЕрдкрдиреЗ рдореБрджреНрджреЗ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ? рдЖрдкрдиреЗ рдХрд┐рд╕реА рд╕реЗрд╡рд╛ рдФрд░ рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХреЗ рдХреБрдЫ рдЖрдЙрдЯрдкреБрдЯ рджрд┐рдЦрд╛рдП, рд▓реЗрдХрд┐рди рддрдм рдЖрдкрдиреЗ values.yaml.tmp
рд╕рдВрджрд░реНрдн рднреА рджрд┐рдпрд╛ рдерд╛, рдЬрд┐рд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣рдо рди рддреЛ рдЬрд╛рдирддреЗ рд╣реИрдВ рдФрд░ рди рд╣реА рдЪрд╛рд░реНрдЯред
рдХреНрдпрд╛ рдЖрдк рдХреГрдкрдпрд╛ рдПрдХ рдирдореВрдирд╛ рдЪрд╛рд░реНрдЯ рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рд╣рдо рдЖрдкрдХреЗ рдореБрджреНрджреЗ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?
@bacongobbler рдореИрдВ рд╕рдВрд░рдЪрдирд╛ рд╕рд╛рдЭрд╛ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред
рдЪрд╛рд░реНрдЯ
apiVersion: v1
description: Deploys Stackdriver Trace Zipkin Proxy
name: zipkin-proxy
version: 1.0.0
рдореИрдВрдиреЗ рдЕрдкрдирд╛ рдЯреЗрдореНрдкрд▓реЗрдЯ рдКрдкрд░ рд░рдЦрд╛ рд╣реИ,
рдореЗрд░рд╛ рдорд╛рди yaml.tmp рдиреАрдЪреЗ рд╣реИ
zipkinProxy:
replicaCount: 1
image:
repository: openzipkin/zipkin
рдореИрдВ рдЗрд╕реЗ рд╣реЗрд▓реНрдо рдкреИрдХреЗрдЬ --version рдХреЗ рд░реВрдк рдореЗрдВ рдкреИрдХреЗрдЬ рдХрд░рддрд╛ рд╣реВрдВ
рей.рез.реи рдФрд░ рей.рез.рез рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреАред рдЕрднреА рднреА рдЗрд╕ рдкреИрдЪ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реИред
рдореБрдЭреЗ рдПрдХ рд╣реА рдореБрджреНрджреЗ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛, рд▓реЗрдХрд┐рди рдЯреЗрд░рд╛рдлреЙрд░реНрдо рд╣реЗрд▓реНрдо рдкреНрд░рджрд╛рддрд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдПрдХ рд╣реЗрд▓реНрдо рдЪрд╛рд░реНрдЯ рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рдХреЗ рд╕рд╛рдеред
рдЬрдм рдореИрдВрдиреЗ force_update = true
рд╕реЗ force_update = false
рдмрджрд▓рд╛ рдерд╛, рддрдм рддреНрд░реБрдЯрд┐ рджреВрд░ рд╣реЛ рдЧрдИ рдереАред
рдЬрдм рд╣реЗрд▓рдо рдЪрд╛рд░реНрдЯ рд╕рдВрд╕реНрдХрд░рдг рдмрджрд▓рддрд╛ рд╣реИ рдФрд░ рдореМрдЬреВрджрд╛ рдкрд░рд┐рдирд┐рдпреЛрдЬрди рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдореБрдЭреЗ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдЖ рд░рд╣реА рд╣реИред
рд╣реЗрд▓реНрдо v3.2.0 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛
рдЕрдХреНрд╖рдо - рдкреНрд░рд╡рд░реНрддрди рдзреНрд╡рдЬ рдиреЗ рдЗрд╕реЗ рдХрд╛рдо рдХрд┐рдпрд╛ред
@technosophos --force
ClusterIP рдХреЗ рд╕рд╛рде рд░рд┐рдЬрд╝реЙрд▓реНрдпреВрд╢рди рд╕рдорд╕реНрдпрд╛ рдЬрдм рдЖрдк helm 3 рдкрд░ рдЬрд╛рддреЗ рд╣реИрдВ, рддреЛ helm 2 рдЬрдм helm 3 рдХрд░рддреЗ рд╣реИрдВ, рддреЛ ClusterIP рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рди рдХрд░реЗрдВред
matchLabels
рд░реВрдк рдореЗрдВ рджрд╛рдпрд░ рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдХреЗ рд╕рд╛рде Helm 3 рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реИ
рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдПрдХ рд╕реЗрд╡рд╛ рдХреЗ
spec:
рдЕрдиреБрднрд╛рдЧ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рддрд╛ рд╣реИ
рдЗрд╕реЗ рд░реВрдЯ рдореЗрдВ рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдореЗрдВ рдПрдХ рдбрд┐рдЬрд╛рдЗрди рджреЛрд╖ рдорд╛рдирд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП? https://kubernetes.io/docs/concepts/services-networking/service/#choosing -your-own-ip-address рдЗрд╕ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд╛ рдХреЛрдИ рдЙрд▓реНрд▓реЗрдЦ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдореБрдЭреЗ status
рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рджрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдЕрд╕рд╛рдЗрди рдХрд┐рдП рдЧрдП рдорд╛рди рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рд╣реЛрдЧреАред
(рдПрдХ рд╕рдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ .spec.nodeName
Pod
, рд▓реЗрдХрд┐рди рдпрд╣ рд╣реЗрд▓рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИред)
v3.2.3: рдпрд╣ --force рдХреЗ рд╕рд╛рде рд╡рд┐рдлрд▓ рд╣реЛрддрд╛ рд╣реИ, рдпрд╣ w / o --force рдЧреБрдЬрд░рддрд╛ рд╣реИред рдЪрд╛рд░реНрдЯ-рдЯреЗрдореНрдкрд▓реЗрдЯ рдореЗрдВ рдХреЛрдИ ClusterIP:
ред рдЬреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ https://github.com/helm/helm/pull/8000/files рдХреЛ рдареАрдХ рдХрд░рдирд╛ рдерд╛ред
upgrade.go:121: [debug] preparing upgrade for eos-eve-srv-d1
upgrade.go:129: [debug] performing update for eos-eve-srv-d1
upgrade.go:308: [debug] creating upgraded release for eos-eve-srv-d1
client.go:173: [debug] checking 6 resources for changes
client.go:432: [debug] Replaced "eos-eve-srv-d1-fsnode" with kind ServiceAccount for kind ServiceAccount
client.go:432: [debug] Replaced "eos-eve-srv-d1-fsnode-imagepullsecret" with kind Secret for kind Secret
client.go:432: [debug] Replaced "eos-eve-srv-d1-fsnode-config" with kind ConfigMap for kind ConfigMap
client.go:205: [debug] error updating the resource "eos-eve-srv-d1-fsnode":
failed to replace object: Service "eos-eve-srv-d1-fsnode" is invalid: spec.clusterIP: Invalid value: "": field is immutable
client.go:432: [debug] Replaced "eos-eve-srv-d1-fsnode" with kind Deployment for kind Deployment
client.go:432: [debug] Replaced "eos-eve-srv-d1-fsnode" with kind Ingress for kind Ingress
upgrade.go:367: [debug] warning: Upgrade "eos-eve-srv-d1" failed: failed to replace object: Service "eos-eve-srv-d1-fsnode" is invalid: spec.clusterIP: Invalid value: "": field is immutable
Error: UPGRADE FAILED: failed to replace object: Service "eos-eve-srv-d1-fsnode" is invalid: spec.clusterIP: Invalid value: "": field is immutable
helm.go:84: [debug] failed to replace object: Service "eos-eve-srv-d1-fsnode" is invalid: spec.clusterIP: Invalid value: "": field is immutable
helm.sh/helm/v3/pkg/kube.(*Client).Update
/private/tmp/helm-20200608-50972-gq0j1j/src/helm.sh/helm/pkg/kube/client.go:218
helm.sh/helm/v3/pkg/action.(*Upgrade).performUpgrade
/private/tmp/helm-20200608-50972-gq0j1j/src/helm.sh/helm/pkg/action/upgrade.go:322
helm.sh/helm/v3/pkg/action.(*Upgrade).Run
/private/tmp/helm-20200608-50972-gq0j1j/src/helm.sh/helm/pkg/action/upgrade.go:130
main.newUpgradeCmd.func1
/private/tmp/helm-20200608-50972-gq0j1j/src/helm.sh/helm/cmd/helm/upgrade.go:144
github.com/spf13/cobra.(*Command).execute
/private/tmp/helm-20200608-50972-gq0j1j/pkg/mod/github.com/spf13/[email protected]/command.go:842
github.com/spf13/cobra.(*Command).ExecuteC
/private/tmp/helm-20200608-50972-gq0j1j/pkg/mod/github.com/spf13/[email protected]/command.go:950
github.com/spf13/cobra.(*Command).Execute
/private/tmp/helm-20200608-50972-gq0j1j/pkg/mod/github.com/spf13/[email protected]/command.go:887
main.main
/private/tmp/helm-20200608-50972-gq0j1j/src/helm.sh/helm/cmd/helm/helm.go:83
runtime.main
/usr/local/Cellar/[email protected]/1.13.12/libexec/src/runtime/proc.go:203
runtime.goexit
/usr/local/Cellar/[email protected]/1.13.12/libexec/src/runtime/asm_amd64.s:1357
UPGRADE FAILED
main.newUpgradeCmd.func1
/private/tmp/helm-20200608-50972-gq0j1j/src/helm.sh/helm/cmd/helm/upgrade.go:146
github.com/spf13/cobra.(*Command).execute
/private/tmp/helm-20200608-50972-gq0j1j/pkg/mod/github.com/spf13/[email protected]/command.go:842
github.com/spf13/cobra.(*Command).ExecuteC
/private/tmp/helm-20200608-50972-gq0j1j/pkg/mod/github.com/spf13/[email protected]/command.go:950
github.com/spf13/cobra.(*Command).Execute
/private/tmp/helm-20200608-50972-gq0j1j/pkg/mod/github.com/spf13/[email protected]/command.go:887
main.main
/private/tmp/helm-20200608-50972-gq0j1j/src/helm.sh/helm/cmd/helm/helm.go:83
runtime.main
/usr/local/Cellar/[email protected]/1.13.12/libexec/src/runtime/proc.go:203
runtime.goexit
/usr/local/Cellar/[email protected]/1.13.12/libexec/src/runtime/asm_amd64.s:1357
рдореИрдВ 3.2.3
рдкрд░ рдЗрд╕ рдореБрджреНрджреЗ рдХрд╛ рдЕрд╡рд▓реЛрдХрди рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рд▓реЗрдХрд┐рди 3.2.0
ред рдмрд▓ рдХреЛ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдХрд░рдирд╛ рднреА рдПрдХ рдЙрдкрдпреЛрдЧреА рд╕рдорд╛рдзрд╛рди рдерд╛ред
FYI рдХрд░реЗрдВ, рдУрдкреА рджреНрд╡рд╛рд░рд╛ рдЙрдард╛рдпрд╛ рдЧрдпрд╛ рдореБрджреНрджрд╛ рдФрд░ рдпрд╣рд╛рдБ рдЙрдард╛рдП рдЧрдП рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВ --force
рдЕрд▓рдЧ рд╣реИрдВ, рдЕрд╕рддрдд рдореБрджреНрджреЗ рд╣реИрдВред рдЖрдЗрдП рдпрд╣рд╛рдВ рдУрдкреА рдХреЗ рдореБрджреНрджреЗ рдкрд░ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВред
рд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдУрдкреА рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдореБрджреНрджрд╛ https://github.com/helm/helm/issues/7956#issuecomment -620749552 рдореЗрдВ рдкрд╣рдЪрд╛рдирд╛ рдЧрдпрд╛ рдПрдХ рд╕рдВрднрд╛рд╡рд┐рдд рдкреНрд░рддрд┐рдЧрдорди @ n1koo рд╣реИред рдпрд╣ рдПрдХ рд╡реИрдз рдмрдЧ рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИред
рдЕрдиреНрдп рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдЙрдирдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ --force
рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рдирд╛ рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рдЬрд╛рдирдмреВрдЭрдХрд░ рдФрд░ рдЕрдкреЗрдХреНрд╖рд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реИред --force
, рдЖрдк рд╣реЗрд▓реНрдо рдХреЛ рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдХреЗ рдЦрд┐рд▓рд╛рдл рдПрдХ PUT рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣ рд░рд╣реЗ рд╣реИрдВред рдкреНрд░рднрд╛рд╡реА рд░реВрдк рд╕реЗ, рдЖрдк Kubernetes рдХреЛ рдЕрдкрдирд╛ рд▓рдХреНрд╖реНрдп рдореИрдирд┐рдлрд╝реЗрд╕реНрдЯ рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣ рд░рд╣реЗ рд╣реИрдВ (рд╕рддреНрдп рдХреЗ рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВ helm upgrade
рд╕реЗ рдЖрдкрдХреЗ рдЪрд╛рд░реНрдЯ рдореЗрдВ рджрд┐рдП рдЧрдП рдЯреЗрдореНрдкреНрд▓реЗрдЯ) рдФрд░ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдЕрдзрд┐рд▓реЗрдЦрд┐рдд рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╣ kubectl apply --overwrite
рд╕рдорд╛рди рд╣реИред
рдЬреНрдпрд╛рджрд╛рддрд░ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдЖрдкрдХреЗ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреНрд▓рд╕реНрдЯрд░ IP рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ helm upgrade --force
рд╕реЗрд╡рд╛ рдХреЗ рдХреНрд▓рд╕реНрдЯрд░ IP рдХреЛ рдирд┐рдХрд╛рд▓рдиреЗ (рдпрд╛ рдмрджрд▓рдиреЗ) рдХреЗ рд▓рд┐рдП рдХрд╣ рд░рд╣рд╛ рд╣реИред рдпрд╣ рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рдПрдХ рдЕрд╡реИрдз рдСрдкрд░реЗрд╢рди рд╣реИред
рдпрд╣ # 7082 рдореЗрдВ рднреА рдкреНрд░рд▓реЗрдЦрд┐рдд рд╣реИред
рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ --force
рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд╣рдЯрд╛рдирд╛: Helm рдПрдХ PATCH рдСрдкрд░реЗрд╢рди рдХрд░рддрд╛ рд╣реИ, рд▓рд╛рдЗрд╡ рд╕реНрдЯреЗрдЯ рдХреЗ рд╡рд┐рд░реБрджреНрдз рдлреИрд▓рддрд╛ рд╣реИ, рдХреНрд▓рд╕реНрдЯрд░ IP рдореЗрдВ рдкреИрдЪ рдореЗрдирд┐рдлрд╝реЗрд╕реНрдЯ рдореЗрдВ рд╡рд┐рд▓рдп рд╣реЛрддрд╛ рд╣реИ, рдЬреЛ рдЕрдкрдЧреНрд░реЗрдб рдкрд░ рдХреНрд▓рд╕реНрдЯрд░ IP рдХреЛ рд╕рдВрд░рдХреНрд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред
рдпрджрд┐ рдЖрдк рдЬрдмрд░рджрд╕реНрддреА рд╣рдЯрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рдлрд┐рд░ рд╕реЗ рдмрдирд╛рдПрдВ рдЬреИрд╕реЗ рдХрд┐ рд╣реЗрд▓реНрдо 2 рдореЗрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ # 7431 рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВред
рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдмрд╛рддреЗрдВ рд╕реНрдкрд╖реНрдЯ рдХрд░рддреА рд╣реИрдВред
рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реБрдП, рд╣рдо рдпрд╣рд╛рдБ рдУрдкреА рдХреЗ рдореБрджреНрджреЗ рдкрд░ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВред
рдХреНрдпрд╛ рдХреЛрдИ рдЬреНрдЮрд╛рдд рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рд╣реИрдВ? 1-34.1 рд╕реЗ 1.46.4 рддрдХ https://github.com/helm/charts/tree/master/stable/rabbitmq-ha рдХреЛ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╕рдордп рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛ред рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ --force
рдпрд╛ 3.1.3
рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдорджрдж рдирд╣реАрдВ рдХреА, рдкреНрд░рд╢реНрди рдореЗрдВ рд╕реЗрд╡рд╛ рдХреЛ рд╣рдЯрд╛рдиреЗ рдФрд░ helm upgrade
рдиреЗ рдорджрдж рдирд╣реАрдВ рдХреА
@EvgeniGordeev рдпрд╣ рдХреНрд░реВрдб рд╕реЙрд▓реНрдпреВрд╢рди рд╣реЛрдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдЬреЛ рдореЗрд░реЗ рд▓рд┐рдП рдЫреЛрдЯреЗ рдбрд╛рдЙрдирдЯрд╛рдЗрдо рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдЪрд╛рд░реНрдЯ рдХреЛ рдЕрдирдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░реЗрдВ / рдлрд┐рд░ рд╕реЗ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░реЗрдВред
рд╣рдордиреЗ рдЗрд╕реЗ nginxinc ingress рдЪрд╛рд░реНрдЯ рдХреЗ рд╕рд╛рде рдорд╛рд░рд╛ рд╣реИред рд╣рдо рдЖрдо рддреМрд░ рдкрд░ --force
рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред
рдЪреВрдБрдХрд┐ рдпрд╣ рдореБрджреНрджрд╛ рдЕрднреА рднреА рдЦреБрд▓рд╛ рд╣реИ, рдХреНрдпрд╛ рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рдИ рдЧрдИ рд╣реИ, рдпрд╛ рдХреНрдпрд╛ рдЗрд╕реЗ рдбрд┐рдЬрд╛рдЗрди рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордЭрд╛ рдЬрд╛рддрд╛ рд╣реИ (рдЗрд╕ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рд╕рд╛рде рдЦреЛрд▓реЗ рдЧрдП рдЕрдиреНрдп рдореБрджреНрджреЛрдВ рд╕реЗ рдпрд╣ рд╕рдордЭрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ) рдореИрдВрдиреЗ рдПрдХ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдкрдврд╝рд╛ рдХрд┐ рдпрд╣ рдЪрд╛рд░реНрдЯ рдХреЗ рд╕рд╛рде рдПрдХ рдореБрджреНрджрд╛ рд╣реИ рдЬреЛ рд╕реНрд╡рдпрдВ рдФрд░ clusterIP: ""
рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдореВрд▓реНрдп рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдХреНрдпрд╛ рдпрд╣ рдХреБрдЫ рд╣реИ рдЬреЛ рд╣рдореЗрдВ рдЪрд╛рд░реНрдЯ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд╕рд╛рде рдкреАрдЫрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП?
@cdunford - рдиреЗ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рдХрд┐ рдЗрд╕реЗ --force
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рдЬреИрд╕рд╛ рдХрд┐ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ https://github.com/helm/helm/issues/7956#issuecomment -643432099ред
рдпрд╣ PR рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рднреА рдХрд░ рд╕рдХрддрд╛ рд╣реИ: # 7431 (рдЙрд╕ рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рд╕реБрдЭрд╛рдП рдЧрдП рдЕрдиреБрд╕рд╛рд░) ...
рд╣рдордиреЗ рдПрди рд╕рдордп рдХреЗ рд▓рд┐рдП рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдорд╛рд░рд╛, рд╣рдо рдЕрдкрдиреА рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдореЗрдВ --force
рдзреНрд╡рдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВред
рдореВрд▓ рд╕рдорд╕реНрдпрд╛ helm2 рдХреЗ рд╕рд╛рде рдЖрдИ рдереА, рддреЛ рдХреНрдпрд╛ рдпрд╣ рднреА helm2 рдореЗрдВ рддрдп рд╣реЛ рдЬрд╛рдПрдЧреА? @bacongobbler
@bacongobbler рдЖрдк рдпрд╣ рдХреНрдпреЛрдВ рдХрд╣рддреЗ рд╣реИрдВ рдХрд┐ "рдмрд▓" рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рдореБрджреНрджреЗ рд╕реЗ рдЕрд▓рдЧ рд╣реИ рдпрджрд┐ рдЗрд╕реЗ рдЕрд▓рдЧ рдХрд░рдирд╛ рдпрд╛ рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдХрд░рдирд╛ рдорджрдж рдХрд░рддрд╛ рд╣реИ?
рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ, рдореИрдВрдиреЗ рд╕рд┐рд░реНрдл рд╣реЗрд▓реНрдо 3.3.4, https://artifacthub.io/packages/helm/bitnami/nginx рдЪрд╛рд░реНрдЯ рдХреЗ рд╕рд╛рде рдореБрджреНрджреЗ рдХреЛ рдорд╛рд░рд╛ рд╣реИ рдФрд░ рдХреЛрдИ рдорд╛рди рдирд╣реАрдВ рдмрджрд▓рд╛ рд╣реИред рддреАрди рдЕрд▓рдЧ-рдЕрд▓рдЧ рдмрд╛рджрд▓реЛрдВ рдкрд░ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЧрдпрд╛: GCP / GKE, Azure / AKS рдФрд░ AWS / EKS, рддреАрдиреЛрдВ рдкрд░ рд╡рд┐рдлрд▓ рд░рд╣реЗред
рд╣реЗрд▓реНрдо рдХреЛ 3.1.3 рдкрд░ рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдХрд░рдиреЗ рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж рдХрд╛рдо рдХрд┐рдпрд╛ рдФрд░ 3.3.4 рдкрд░ "--рдлреЛрд░реНрд╕" рдзреНрд╡рдЬ рдХреЗ рдмрд┐рдирд╛ рднреА рдХрд╛рдо рдХрд┐рдпрд╛ред
рдореБрдЭреЗ рд▓рдЧрд╛ рдХрд┐ рдореИрдВрдиреЗ рдЕрдкрдиреА рдкреВрд░реНрд╡ рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдХрд░ рджрд┐рдпрд╛ рд╣реИ рдХрд┐ рджреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ, рдЕрдиреВрдареЗ рдорд╛рдорд▓реЗ рд╣реИрдВ рдЬрд╣рд╛рдБ рдХреЛрдИ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЗрд╕ рддреНрд░реБрдЯрд┐ рдХреЛ рджреЗрдЦ рд╕рдХрддрд╛ рд╣реИред рдПрдХ рдУрдкреА рдХрд╛ рдорд╛рдорд▓рд╛ рд╣реИред рджреВрд╕рд░рд╛ --рдлреЛрд░реНрд╕ рдХреЗ рдЙрдкрдпреЛрдЧ рд╕реЗ рд╣реИред рд╣рдо рдпрд╣рд╛рдВ рдУрдкреА рдХреЗ рдореБрджреНрджреЗ рдкрд░ рдзреНрдпрд╛рди рдХреЗрдВрджреНрд░рд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВред
рдУрдкреА рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рд╣реА рдореБрджреНрджреЗ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░ рд░рд╣реЗ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдореНрдорд╛рди рд╕реЗ рдмрд╛рд╣рд░, рдХреГрдкрдпрд╛ рдЗрд╕ рдзрд╛рдЧреЗ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХреЗрдВред рд╣рдо рдУрдкреА рдХреЗ рдореБрджреНрджреЗ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдпрджрд┐ рдЖрдк рдЙрди рд╡рд┐рд╖рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЬреЛ рдЙрд╕ рд╕рдорд╕реНрдпрд╛ рд╕реЗ рдЕрдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИрдВ, рдЬреЛ рдУрдкреА рджреНрд╡рд╛рд░рд╛ рд╡рд░реНрдгрд┐рдд рд╣реИ, рддреЛ рдХреГрдкрдпрд╛ рдпрд╛ рддреЛ рдПрдХ рдирдпрд╛ рдЯрд┐рдХрдЯ рдЦреЛрд▓реЗрдВ рдпрд╛ рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдкрд╣рд▓реЗ рдХрд┐рдП рдЧрдП рд╕реБрдЭрд╛рд╡реЛрдВ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВред
@ рд╣реЗрд▓рдо 2 рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ https://helm.sh/blog/helm-v2-deprecation-timeline/ рджреЗрдЦреЗрдВред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рдУрдкреА рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рдЬреБрдкрд╛рдЗрдерд░рд╣рдм рд╣реЗрд▓реНрдо рдЪрд╛рд░реНрдЯ рдХреЗ рд╕рд╛рде рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣рд╛ред
рдЙрдореНрдореАрдж рд╣реИ, рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рд╕рд╛рде, рдЖрдк рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдкреБрди: рдкреЗрд╢ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░реЗрдВрдЧреЗ:
рдорд╣рддреНрд╡рдкреВрд░реНрдг
Jupyterhub рдкрддрд╡рд╛рд░ рдЪрд╛рд░реНрдЯ рдПрдХ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рд╣реИ spec.clusterIP
: рдпрд╣рд╛рдБ рдЕрдкрдиреА рд╕реЗрд╡рд╛ рд╡рд┐рд╢рд┐рд╖реНрдЯрддрд╛рдУрдВ рдореЗрдВ рдХреНрд╖реЗрддреНрд░, рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП) рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ https://github.com/jupyterhub/zero-to-jupyterhub-k8s/blob/c0a43af12a89d54bcd6dcb927fdcc2f623a14aca /jupyterhub/templates/hub/service.yaml#L17 -L29
рдореИрдВ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдкреБрди: рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрддрд╡рд╛рд░ рдФрд░ рддрд░рд╣ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ:
тЮЬ helm version
version.BuildInfo{Version:"v3.4.0", GitCommit:"7090a89efc8a18f3d8178bf47d2462450349a004", GitTreeState:"clean", GoVersion:"go1.14.10"}
тЮЬ kind version
kind v0.9.0 go1.15.2 linux/amd64
тЮЬ kubectl version
Client Version: version.Info{Major:"1", Minor:"18", GitVersion:"v1.18.2", GitCommit:"52c56ce7a8272c798dbc29846288d7cd9fbae032", GitTreeState:"clean", BuildDate:"2020-04-16T11:56:40Z", GoVersion:"go1.13.9", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"19", GitVersion:"v1.19.1", GitCommit:"206bcadf021e76c27513500ca24182692aabd17e", GitTreeState:"clean", BuildDate:"2020-09-14T07:30:52Z", GoVersion:"go1.15", Compiler:"gc", Platform:"linux/amd64"}
рдкреНрд░рдЬрдирди рдХреИрд╕реЗ рдХрд░реЗрдВ?
kind create cluster
proxy:
secretToken: "3a4bbf7405dfe1096ea2eb9736c0df299299f94651fe0605cfb1c6c5700a6786"
FYI рдХрд░реЗрдВ рдореИрдВ рдкрддрд╡рд╛рд░ рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░ рд░рд╣рд╛ рд╣реВрдБ ( рд▓рд┐рдВрдХ )
helm repo add jupyterhub https://jupyterhub.github.io/helm-chart/
helm repo update
--force
рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рд╛рде)RELEASE=jhub
NAMESPACE=jhub
helm upgrade --cleanup-on-fail --force \
--install $RELEASE jupyterhub/jupyterhub \
--namespace $NAMESPACE \
--create-namespace \
--version=0.9.0 \
--values config.yaml
рддреНрд░реБрдЯрд┐:
Error: UPGRADE FAILED: failed to replace object: PersistentVolumeClaim "hub-db-dir" is invalid: spec: Forbidden: spec is immutable after creation except resources.requests for bound claims
┬а┬аcore.PersistentVolumeClaimSpec{
┬а┬а AccessModes: []core.PersistentVolumeAccessMode{"ReadWriteOnce"},
┬а┬а Selector: nil,
┬а┬а Resources: core.ResourceRequirements{Requests: core.ResourceList{s"storage": {i: resource.int64Amount{value: 1073741824}, s: "1Gi", Format: "BinarySI"}}},
-┬а VolumeName: "",
+┬а VolumeName: "pvc-c614de5c-4749-4755-bd3a-6e603605c44e",
-┬а StorageClassName: nil,
+┬а StorageClassName: &"standard",
┬а┬а VolumeMode: &"Filesystem",
┬а┬а DataSource: nil,
┬а┬а}
&& failed to replace object: Service "hub" is invalid: spec.clusterIP: Invalid value: "": field is immutable && failed to replace object: Service "proxy-api" is invalid: spec.clusterIP: Invalid value: "": field is immutable && failed to replace object: Service "proxy-public" is invalid: spec.clusterIP: Invalid value: "": field is immutable
рдореИрдВ 3.3m рдореЗрдВ рд╣реВрдБ рдФрд░ рдпрд╣ рдЕрднреА рднреА рдПрдХ рдореБрджреНрджрд╛ рд╣реИ
Helm 2.14.1 рдЬрд╛рд░реА рдпрд╛ рддреЛ w / w-out --force
рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб : type.spec: NodePort
рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рд╕реЗ рдореЗрд░рд╛ рд╣реЗрд▓реНрдордЪрд╛рд░реНрдЯ рдЕрдкрдЧреНрд░реЗрдб рдирд┐рд╢реНрдЪрд┐рдд рд╣реЛ рдЧрдпрд╛ред
рд╣рдо v3.4.1 рдкрд░ рдпрд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИ - рдкреНрд░рд╡рд░реНрддрди рдзреНрд╡рдЬ рдХреЗ рд╕рд╛рдеред
@bacongobbler рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдУрдкреА рдХреА рд╕рдорд╕реНрдпрд╛ (# 6378 рд╕реЗ рдЕрд▓рдЧ) рдХреЛ рдЕрдкрд╣реГрдд рд╣реЛрдиреЗ рд╕реЗ рдмрдЪрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рддрд░реНрдХрддрд╛ рд╕реЗ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдореИрдВрдиреЗ рд╕реЛрдЪрд╛ рдХрд┐ рдпрд╣ рдкреЛрд╕реНрдЯ рдХрд░рдиреЗ рд╡рд╛рд▓реЛрдВ рдХреЛ рдЕрдкрдиреЗ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ рддрд╛рдХрд┐ рдпрд╣ рдкрддрд╛ рдЪрд▓ рд╕рдХреЗ рдХрд┐ рдпрд╣ рдзрд╛рдЧрд╛ рдЙрдирдХреЗ рд▓рд┐рдП рд╣реИ рдпрд╛ рдирд╣реАрдВ:
рдХреНрдпрд╛ рдЖрдкрдХрд╛ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ "рддреНрд░реБрдЯрд┐: UPGRADE рд╡рд┐рдлрд▓: _replace_ ..." рдореЗрдВ рд╡рд┐рдлрд▓ рд░рд╣рд╛ рд╣реИ рдФрд░ рдЖрдк рдЕрдкрдиреЗ рдЖрджреЗрд╢ рдореЗрдВ __id рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ? рдЧреЛрдЯреЛ # 6378
рдХреНрдпрд╛ рдЖрдкрдХрд╛ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ "рддреНрд░реБрдЯрд┐: UPGRADE рд╡рд┐рдлрд▓: _patch_ ..." рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЖрдкрдиреЗ _ рдЕрдкрдиреЗ рдЖрджреЗрд╢ рдореЗрдВ _ --force рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ ? рдХреГрдкрдпрд╛ рдЗрд╕ рдЕрдВрдХ рдореЗрдВ рдкреЛрд╕реНрдЯ рдХрд░реЗрдВ рдХрд┐ рдЖрдкрдиреЗ рдЗрд╕реЗ рдХреИрд╕реЗ рдкреБрди: рдкреЗрд╢ рдХрд┐рдпрд╛ред
@zpittmansf
helm3 upgrade concourse concourse/concourse -f temp.yaml --force
Error: UPGRADE FAILED: failed to replace object: Service "concourse-web" is invalid: spec.clusterIP: Invalid value: "None": field is immutable && failed to replace object: Service "concourse-web-prometheus" is invalid: spec.clusterIP: Invalid value: "": field is immutable && failed to replace object: Service "concourse-web-worker-gateway" is invalid: spec.clusterIP: Invalid value: "": field is immutable
helm3 upgrade concourse concourse/concourse -f temp.yaml
Error: UPGRADE FAILED: cannot patch "concourse-web" with kind Service: Service "concourse-web" is invalid: spec.clusterIP: Invalid value: "None": field is immutable
рдореИрдВ рдЙрд╕реА рдореБрджреНрджреЗ рдкрд░ рдЪрд▓ рд░рд╣рд╛ рд╣реВрдБ 3.4.2ред рдореИрдВ рдПрдХ рд╣реЗрд▓реНрдо-рдЪрд╛рд░реНрдЯ рдЪрд▓рд╛рддрд╛ рд╣реВрдВ рдЬреЛ рдПрдХ рддреИрдирд╛рддреА, рд╕рд░реНрд╡рд┐рд╕рд╕реАрдХрд╛рдЙрдВрдЯ рдФрд░ рд╕рд░реНрд╡рд┐рд╕ рдмрдирд╛рддрд╛ рд╣реИред рдореИрдВ рдкрд░рд┐рдирд┐рдпреЛрдЬрди рдкрд░ рдЕрдкрдиреЗ рдЪрд╛рд░реНрдЯ рдкрд░ рдореЗрд░реЗ рдореМрдЬреВрджрд╛ рд╕реЗрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рд▓реЗрдмрд▓ рдЬреЛрдбрд╝рддрд╛ рд╣реВрдВ, рдФрд░ рдЕрдм рдЗрд╕реЗ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рд╕реЗ рдЗрдирдХрд╛рд░ рдХрд░рддрд╛ рд╣реИ:
helm upgrade test-whale charts/app-template/ --install --values values.yaml --namespace whale --force
Error: UPGRADE FAILED: failed to replace object: Service "test-whale" is invalid: spec.clusterIP: Invalid value: "": field is immutable && failed to replace object: Deployment.apps "test-whale-canary" is invalid: spec.selector: Invalid value: v1.LabelSelector{MatchLabels:map[string]string{"app":"test-whale", "app-id":"302040", "environment":"test", "version":"latest"}, MatchExpressions:[]v1.LabelSelectorRequirement(nil)}: field is immutable && failed to replace object: Deployment.apps "test-whale" is invalid: spec.selector: Invalid value: v1.LabelSelector{MatchLabels:map[string]string{"app":"test-whale", "app-id":"302040", "environment":"test", "version":"latest"}, MatchExpressions:[]v1.LabelSelectorRequirement(nil)}: field is immutable
рдореВрд▓ рд░реВрдк рд╕реЗ, рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдХрднреА рднреА рдПрдХ рд▓реЗрдмрд▓ рдХреЛ рдЬреЛрдбрд╝ рдирд╣реАрдВ рд╕рдХрддреЗ рд╣реИрдВ рдЬреЛ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рд╣реЗрд▓реНрдо рдкрд░рд┐рдирд┐рдпреЛрдЬрд┐рдд рд╣реИред
рдпрд╣ рднрдпрд╛рдирдХ рд▓рдЧрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╣реЗрд▓реНрдо "рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдХреНрд╖реЗрддреНрд░реЛрдВ" рдХреА рдПрдХ рд╕реВрдЪреА рдХреЛ рд▓рд╛рдЧреВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рд╡рд┐рд╢реЗрд╖ рдЙрдкрдЪрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдЧрд╛?
рдЗрд╕ рд╕реНрдерд┐рддрд┐ рдореЗрдВ, рдПрдХ "рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдХреНрд╖реЗрддреНрд░" рд╕реЗрд╡рд╛ рдСрдмреНрдЬреЗрдХреНрдЯ рдХрд╛ spec.clusterIP
рд╣реЛрдЧрд╛ - рд╣реЗрд▓реНрдо рдЗрд╕реЗ рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдорд╛рдиреЗрдВрдЧреЗ рдФрд░ рдРрд╕реЗ рдПрдкреАрдЖрдИ рдЕрдиреБрд░реЛрдз рдЙрддреНрдкрдиреНрди рдХрд░реЗрдВрдЧреЗ рдЬреЛ рджреЛрдиреЛрдВ рд╣реА) рдЗрд╕реЗ рдмрджрд▓рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗ, рдмреА) рдЗрд╕реЗ рд╣рдЯрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред , рдЧ) рдЗрд╕реЗ рдЕрджреНрдпрддрди рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рди рдХрд░реЗрдВред
рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ, рд╣реЗрд▓реНрдо рдПрдХ рдЕрдкрд░рд┐рд╡рд░реНрддрдиреАрдп рдХреНрд╖реЗрддреНрд░ рдХреЗ рд╡рд░реНрддрдорд╛рди рдореВрд▓реНрдп рдХреА рддрд▓рд╛рд╢ рдХрд░реЗрдЧрд╛ рдФрд░ рдПрдкреАрдЖрдИ рдЕрдиреБрд░реЛрдз рдХреЗ рдкреЗрд▓реЛрдб рдореЗрдВ рдЙрд╕ рдореВрд▓реНрдп рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдЧрд╛ред рдирддреАрдЬрддрди, k8s рдПрдкреАрдЖрдИ рд╕рд░реНрд╡рд░ рд╣реЗрд▓реНрдо рдХреЗ рдЕрдиреБрд░реЛрдз рдХреЛ "рдареАрдХ рд╣реИ, рд╡реЗ рдЗрд╕ рдХреНрд╖реЗрддреНрд░ рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ" рдХреЗ рд░реВрдк рдореЗрдВ рджреЗрдЦреЗрдВрдЧреЗред
рд╡рд░реНрддрдорд╛рди рд╕реНрдерд┐рддрд┐ рдпрд╣ рд╣реИ рдХрд┐ рд╣реЗрд▓реНрдо рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╕реЗрд╡рд╛ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╣реЗрд▓рдо рдорд╛рдирддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХрд┐рд╕реА рджрд┐рдП рдЧрдП рд╕рдВрд╕рд╛рдзрди рдХрд╛ рд╕рддреНрдп рд╣реИред рдпрд╣ рдПрдХ рдЧрд▓рдд рдзрд╛рд░рдгрд╛ рд╣реИ рдЬреЛ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдХреА рдУрд░ рд▓реЗ рдЬрд╛рддреА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдХрд┐рд╕реА рд╕рдВрд╕рд╛рдзрди рдХреЛ рдирдП рдЧреБрдг рд╕рд░реНрд╡рд░-рд╕рд╛рдЗрдб рдкреНрд░рд╛рдкреНрдд рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ рд╣реЗрд▓реНрдо рдЕрдирдЬрд╛рди рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╣реЗрд▓реНрдо рдХреЛ рдкрддрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдПрдХ рдЕрдиреБрд░реВрдк k8 рдирд╛рдЧрд░рд┐рдХ рдмрдирдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рди рдХреНрд╖реЗрддреНрд░реЛрдВ рдореЗрдВ рд╡рд┐рд╢реЗрд╖ рдЙрдкрдЪрд╛рд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред
рдкреБрдирд╢реНрдЪ рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ kubectl
рдмрд╣реБрдд рд╕рд╛рд░реЗ рддрд░реНрдХ рдЧреНрд░рд╛рд╣рдХ-рдкрдХреНрд╖ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рдЗрди рдирд┐рд╣рд┐рдд рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде kubectl
рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред
@ jbilliau-rcd
--рдлреЛрд░реНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ
@
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рддреАрди рддрд░рд╣ рдХреЗ рдорд░реНрдЬ рдХреЗ рд╕рд╛рде рдХреБрдЫ рдХрд╛рдо рд╣реЛ рд░рд╣рд╛ рд╣реИред рд╢рд╛рдпрдж рдЕрдВрддрд┐рдо рд░реВрдк рд╕реЗ рд▓рд╛рдЧреВ рдПрдиреЛрдЯреЗрд╢рди рдХреЛ рдХрд┐рд╕реА рддрд░рд╣ рдЕрдиреБрдЪрд┐рдд рддрд░реАрдХреЗ рд╕реЗ рджрд░реНрдЬ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред
рдореИрдВрдиреЗ рдЗрд╕реЗ рд╕рдорд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рдИ; рдЬрд╛рд╣рд┐рд░рд╛ рддреМрд░ рдкрд░ рдЖрдк рдПрдХ Deployment
рдФрд░ рдкреЙрдб рдпреБрдХреНрддрд┐ рдкрд░ рд▓реЗрдмрд▓ рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдореИрдЪ рдЪрдпрдирдХрд░реНрддрд╛ рдкрд░ рдирд╣реАрдВ ...... рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдХреЛ рдпрд╣ рдкрд╕рдВрдж рдирд╣реАрдВ рд╣реИред рдЬреЛ рдореЗрд░реЗ рд▓рд┐рдП рдЕрдЬреАрдм рд╣реИ; рдФрд░ рдХреНрдпрд╛ рдореИрдВ рдЕрдкрдиреА рддреИрдирд╛рддреА рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ version
"v2" рдкрд░ рдкреЙрдбреНрд╕ рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рд╣реВрдВ, рдХрд╣рддреЗ рд╣реИрдВ, рдПрдХ рдХреИрдирд░реА рддреИрдирд╛рддреА? рд╡рд░реНрддрдорд╛рди рдореЗрдВ, рдореЗрд░реЗ рдкрд╛рд╕ рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрдо рдХреЛ рдЙрд╕ рд╣рд┐рд╕реНрд╕реЗ рдкрд░ рднреНрд░рдорд┐рдд рдХрд░реЗрдВред
3.5.0 рд╣реЗрд▓реНрдо рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рд╕реЗ рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рд╣реЛ рдЧрдИред
3.5.0 рд╣реЗрд▓реНрдо рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рд╕реЗ рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рд╣реЛ рдЧрдИред
рдмрд┐рд▓реНрдХреБрд▓ рдХреИрд╕реЗ?
3.5.0 рд╣реЗрд▓реНрдо рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рд╕реЗ рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рд╣реЛ рдЧрдИред
рд╣реЗрд▓реНрдо рд╕рдВрд╕реНрдХрд░рдг 3.5.0 рдЕрднреА рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред
рд▓реЗрдХрд┐рди рдмрд┐рдирд╛ --force
рдХрд╛рдо рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдпрд╣ рдкрддрд╡рд╛рд░ 3.5.2 рдореЗрдВ рдорд╛рд░рд╛
рдореИрдВрдиреЗ --force
рдирд┐рдХрд╛рд▓рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд▓реЗрдХрд┐рди рдЕрднреА рднреА рд╡рд╣реА рдореБрджреНрджрд╛ рдорд┐рд▓ рд░рд╣рд╛ рд╣реИред
Upgrade "gateway" failed: failed to replace object: Service "ingress"
is invalid: spec.clusterIPs[0]: Invalid value: []string(nil): primary clusterIP
can not be unset
рдЕрдм рддрдХ рдПрдХ рдЙрдЪрд┐рдд рд╕рдорд╛рдзрд╛рди рдорд┐рд▓рд╛ - --reuse-values
рдЭрдВрдбрд╛ред рдореЗрд░реЗ рдХреЗрд╕ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рей.рел.реи рдХреЛ рдЕрднреА рднреА рдпрд╣ рдореБрджреНрджрд╛ рдорд┐рд▓рд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ / рдмрд┐рдирд╛ --reuse-values тАЛтАЛрд╣реИрдВ
3.5.3 рдореЗрдВ рдпрд╣ рднреА рд╣реИ: /
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
FYI рдХрд░реЗрдВ, рдУрдкреА рджреНрд╡рд╛рд░рд╛ рдЙрдард╛рдпрд╛ рдЧрдпрд╛ рдореБрджреНрджрд╛ рдФрд░ рдпрд╣рд╛рдБ рдЙрдард╛рдП рдЧрдП рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдВ
--force
рдЕрд▓рдЧ рд╣реИрдВ, рдЕрд╕рддрдд рдореБрджреНрджреЗ рд╣реИрдВред рдЖрдЗрдП рдпрд╣рд╛рдВ рдУрдкреА рдХреЗ рдореБрджреНрджреЗ рдкрд░ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВредрд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдУрдкреА рдХрд╛ рд╡рд░реНрдгрди рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рдореБрджреНрджрд╛ https://github.com/helm/helm/issues/7956#issuecomment -620749552 рдореЗрдВ рдкрд╣рдЪрд╛рдирд╛ рдЧрдпрд╛ рдПрдХ рд╕рдВрднрд╛рд╡рд┐рдд рдкреНрд░рддрд┐рдЧрдорди @ n1koo рд╣реИред рдпрд╣ рдПрдХ рд╡реИрдз рдмрдЧ рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИред
рдЕрдиреНрдп рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдЙрдирдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ
--force
рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рдирд╛ рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рдЬрд╛рдирдмреВрдЭрдХрд░ рдФрд░ рдЕрдкреЗрдХреНрд╖рд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реИред--force
, рдЖрдк рд╣реЗрд▓реНрдо рдХреЛ рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдХреЗ рдЦрд┐рд▓рд╛рдл рдПрдХ PUT рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣ рд░рд╣реЗ рд╣реИрдВред рдкреНрд░рднрд╛рд╡реА рд░реВрдк рд╕реЗ, рдЖрдк Kubernetes рдХреЛ рдЕрдкрдирд╛ рд▓рдХреНрд╖реНрдп рдореИрдирд┐рдлрд╝реЗрд╕реНрдЯ рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣ рд░рд╣реЗ рд╣реИрдВ (рд╕рддреНрдп рдХреЗ рд╕реНрд░реЛрдд рдХреЗ рд░реВрдк рдореЗрдВhelm upgrade
рд╕реЗ рдЖрдкрдХреЗ рдЪрд╛рд░реНрдЯ рдореЗрдВ рджрд┐рдП рдЧрдП рдЯреЗрдореНрдкреНрд▓реЗрдЯ) рдФрд░ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреЛ рдЕрдзрд┐рд▓реЗрдЦрд┐рдд рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╣kubectl apply --overwrite
рд╕рдорд╛рди рд╣реИредрдЬреНрдпрд╛рджрд╛рддрд░ рдорд╛рдорд▓реЛрдВ рдореЗрдВ, рдЖрдкрдХреЗ рдЯреЗрдореНрдкрд▓реЗрдЯ рдХреНрд▓рд╕реНрдЯрд░ IP рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐
helm upgrade --force
рд╕реЗрд╡рд╛ рдХреЗ рдХреНрд▓рд╕реНрдЯрд░ IP рдХреЛ рдирд┐рдХрд╛рд▓рдиреЗ (рдпрд╛ рдмрджрд▓рдиреЗ) рдХреЗ рд▓рд┐рдП рдХрд╣ рд░рд╣рд╛ рд╣реИред рдпрд╣ рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╕реЗ рдПрдХ рдЕрд╡реИрдз рдСрдкрд░реЗрд╢рди рд╣реИредрдпрд╣ # 7082 рдореЗрдВ рднреА рдкреНрд░рд▓реЗрдЦрд┐рдд рд╣реИред
рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐
--force
рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд╣рдЯрд╛рдирд╛: Helm рдПрдХ PATCH рдСрдкрд░реЗрд╢рди рдХрд░рддрд╛ рд╣реИ, рд▓рд╛рдЗрд╡ рд╕реНрдЯреЗрдЯ рдХреЗ рд╡рд┐рд░реБрджреНрдз рдлреИрд▓рддрд╛ рд╣реИ, рдХреНрд▓рд╕реНрдЯрд░ IP рдореЗрдВ рдкреИрдЪ рдореЗрдирд┐рдлрд╝реЗрд╕реНрдЯ рдореЗрдВ рд╡рд┐рд▓рдп рд╣реЛрддрд╛ рд╣реИ, рдЬреЛ рдЕрдкрдЧреНрд░реЗрдб рдкрд░ рдХреНрд▓рд╕реНрдЯрд░ IP рдХреЛ рд╕рдВрд░рдХреНрд╖рд┐рдд рдХрд░рддрд╛ рд╣реИредрдпрджрд┐ рдЖрдк рдЬрдмрд░рджрд╕реНрддреА рд╣рдЯрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЛ рдлрд┐рд░ рд╕реЗ рдмрдирд╛рдПрдВ рдЬреИрд╕реЗ рдХрд┐ рд╣реЗрд▓реНрдо 2 рдореЗрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рддреЛ # 7431 рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реЗрдВред
рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдмрд╛рддреЗрдВ рд╕реНрдкрд╖реНрдЯ рдХрд░рддреА рд╣реИрдВред
рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реБрдП, рд╣рдо рдпрд╣рд╛рдБ рдУрдкреА рдХреЗ рдореБрджреНрджреЗ рдкрд░ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╣реИрдВред