Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] Advanced StatefulSet In situ upgrade card owner #1606

Open
ls-2018 opened this issue May 2, 2024 · 0 comments
Open

[BUG] Advanced StatefulSet In situ upgrade card owner #1606

ls-2018 opened this issue May 2, 2024 · 0 comments
Assignees
Labels
kind/bug Something isn't working

Comments

@ls-2018
Copy link
Member

ls-2018 commented May 2, 2024

apiVersion: apps.kruise.io/v1beta1
kind: StatefulSet
metadata:
  name: "ss-test"
  namespace: "default"
  annotations:
    apps.kruise.io/image-predownload-parallelism: "10"
    apps.kruise.io/image-predownload-min-updated-ready-pods: "3"
spec:
  podManagementPolicy: Parallel   # OrderedReady
  updateStrategy:
    type: RollingUpdate
    rollingUpdate:
      partition: 0
      maxUnavailable: 40%           
      paused: false 

      podUpdatePolicy: InPlaceIfPossible # InPlaceIfPossible # ReCreate、InPlaceOnly

  replicas: 10
  reserveOrdinals:
    - 1
  serviceName: fake-service
  selector:
    matchLabels:
      app: sample
  template:
    metadata:
      labels:
        app: sample
        'example.io/unready-predelete-blocker': 'true'
        'example.io/unready-inplaceupdate-blocker': 'true'
    spec:
      terminationGracePeriodSeconds: 5
      readinessGates:
        - conditionType: InPlaceUpdateReady
      containers:
        - name: main
          image: centos:8
          command:
            - "sleep"
            - "1d"
  lifecycle:
    preDelete:
      labelsHandler:
        example.io/unready-predelete-blocker: "true"
      markPodNotReady: true
    inPlaceUpdate:
      labelsHandler:
        example.io/unready-inplaceupdate-blocker: "true"
      markPodNotReady: true

 
 

What happened:

When I load image from centos:8 -> centos:7, and the two images exist on all nodes in the cluster.
We can find four pods with InPlaceUpdateReady =False conditions.
When we remove the 'example.io/unready-inplaceupdate-blocker' tag, after a while we can see that the pod is ready, but the rest of the pod has not been updated

What you expected to happen:

How to reproduce it (as minimally and precisely as possible):

Anything else we need to know?:

Environment:

  • Kruise version: 1.6.0
  • Kubernetes version (use kubectl version):
Cluster installed with kind
Client Version: v1.29.3
Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3
Server Version: v1.24.15
WARNING: version difference between client (1.29) and server (1.24) exceeds the supported minor version skew of +/-1
  • Install details (e.g. helm install args):

helm install kruise openkruise/kruise --version 1.6.0 --set manager.image.repository=openkruise-registry.cn-shanghai.cr.aliyuncs.com/openkruise/kruise-manager

- Others:

Operation procedure
k apply -f sa.yaml
change image
k apply -f sa.yaml

@ls-2018 ls-2018 added the kind/bug Something isn't working label May 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants