mirror of
https://github.com/truenas/charts.git
synced 2026-02-09 05:24:34 +08:00
* update *.md formatting * upgrade string schema * add some extra fields * add some extra options * add int * full variable expample * add boolean * expand * add dict * typo * add list * more docs * add show_if operators * change description * add some notes
30 lines
1.6 KiB
Markdown
30 lines
1.6 KiB
Markdown
# Upgrading Installed Catalog Item
|
|
|
|
TrueNAS SCALE allows upgrading installed catalog item to a new available
|
|
item version. TrueNAS SCALE takes a snapshot of the existing PVC's / iX Volumes
|
|
before an upgrade which actually allows the user to rollback easily to a previous
|
|
catalog item version for any reason ( like some missing deprecated functionality or bug in the newer version ).
|
|
|
|
When TrueNAS SCALE takes a snapshot of the application's data ( this excludes explicit host path volumes ),
|
|
TrueNAS does not stop any workloads before taking a snapshot as each workload
|
|
might have its own custom upgrade strategy like Rolling Update and in this
|
|
case TrueNAS should not be stopping the workload as that would violate the
|
|
custom upgrade strategy. This works with most use cases, however there are
|
|
workloads which should be stopped before a snapshot is taken of their data like
|
|
databases. It's possible that if a database workload is not stopped before
|
|
taking a snapshot, on a rollback it might get into an inconsistent state as
|
|
it might have had active transactions at the time the snapshot was taken and rolling
|
|
back to that period of time can result in inconsistent / undesired behavior
|
|
from the database.
|
|
|
|
For such custom scenarios, TrueNAS SCALE allows to stop workloads specifically
|
|
before a snapshot is taken of an application's volumes. Workloads in this case can
|
|
add the following annotation to the deployment/statefulset:
|
|
|
|
```yaml
|
|
"ix.upgrade.scale.down.workload": true
|
|
```
|
|
|
|
Deployment(s) / statefulset(s) having the above annotation set will be stopped
|
|
by TrueNAS SCALE before a snapshot is taken of the application's volume.
|