github.com/oam-dev/kubevela@v1.9.11/docs/examples/cloneset-rollout/README.md (about)

     1  # Rollout Example
     2  
     3  Here is an example of how to rollout an application with a component of type CloneSet.
     4  
     5  ## Install Kruise
     6  
     7  ```shell 
     8  helm install kruise https://github.com/openkruise/kruise/releases/download/v0.9.0/kruise-chart.tgz --set featureGates="PreDownloadImageForInPlaceUpdate=true"
     9  ```
    10  
    11  ## Rollout steps
    12  
    13  1. Install CloneSet based workloadDefinition
    14  
    15  ```shell
    16  kubectl apply -f docs/examples/cloneset-rollout/clonesetDefinition.yaml
    17  ```
    18  
    19  2. Apply an application for rolling out
    20  ```shell
    21  kubectl apply -f docs/examples/cloneset-rollout/app-scale.yaml
    22  kubectl apply -f docs/examples/cloneset-rollout/appRollout-scale.yaml
    23  ```
    24  Check the status of the ApplicationRollout and wait for the rollout to complete.
    25  
    26  3. Modify the application image and apply
    27  ```shell
    28  kubectl apply -f docs/examples/cloneset-rollout/app-target.yaml
    29  ```
    30  
    31  4. Apply the application rollout that stops at the second batch and mrk the application as normal
    32  ```shell
    33  kubectl apply -f docs/examples/cloneset-rollout/appRollout-pause.yaml
    34  ```
    35  
    36  Check the status of the ApplicationRollout and see the step by step rolling out. This rollout
    37  will pause after the second batch.
    38  
    39  5. Apply the application rollout that completes the rollout
    40  ```shell
    41  kubectl apply -f docs/examples/cloneset-rollout/appRollout-finish.yaml
    42  ```
    43  
    44  Check the status of the ApplicationRollout and see the rollout completes, and the
    45  ApplicationRollout's "Rolling State" becomes `rolloutSucceed`