我们有一个 sts,例如如下所示 -
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: test-app-onkar
spec:
serviceName: test-app-onkar
selector:
matchLabels:
app: test-app-onkar
replicas: 1
template:
metadata:
name: test-app-onkar
labels:
app: test-app-onkar
spec:
containers:
- name: test-app-onkar
image: 10.1.1.100:5000/kubernetes-bootcamp:v1
我们使用 helm 并且我们的图表具有上述 sts 定义。现在我们已经用如下所示的deployment.yaml 替换了上面的文件,并使用我们的新图表进行了操作helm upgrade
。
apiVersion: apps/v1
kind: Deployment
metadata:
name: test-app-onkar
spec:
selector:
matchLabels:
app: test-app-onkar
replicas: 1
template:
metadata:
name: test-app-onkar
labels:
app: test-app-onkar
spec:
containers:
- name: test-app-onkar
image: 10.1.1.100:5000/kubernetes-bootcamp:v1
一切顺利,掌舵升级创建了一个新的部署test-app-onkar。但是 sts test-app-onkar仍然没有被删除。它仍然存在,我认为这是期望?如果是这样,如何确保 kubernetes 实际删除旧的 sts 并仅创建新的部署。有哪些可能的方法可以实现?