MCCUpgrade resource¶
This section describes the MCCUpgrade
resource used in Mirantis
Container Cloud API to configure a schedule for the Container Cloud update.
The Container Cloud MCCUpgrade
CR contains the following fields:
apiVersion
API version of the object that is
kaas.mirantis.com/v1alpha1
.
kind
Object type that is
MCCUpgrade
.
metadata
The
metadata
object field of theMCCUpgrade
resource contains the following fields:name
The name of
MCCUpgrade
object, must bemcc-upgrade
.
spec
The
spec
object field of theMCCUpgrade
resource contains the schedule when Container Cloud update is allowed or blocked. This field contains the following fields:blockUntil
Deprecated since Container Cloud 2.28.0 (Cluster release 16.3.0). Use
autoDelay
instead.Time stamp in the ISO 8601 format, for example,
2021-12-31T12:30:00-05:00
. Updates will be disabled until this time. You cannot set this field to more than 7 days in the future and more than 30 days after the latest Container Cloud release.
autoDelay
Available since Container Cloud 2.28.0 (Cluster release 16.3.0).
Flag that enables delay of the management cluster auto-update to a new Container Cloud release and ensures that auto-update is not started immediately on the release date. Boolean,
false
by default.The delay period is minimum 20 days for each newly discovered release and depends on specifics of each release cycle and on optional configuration of week days and hours selected for update. You can verify the exact date of a scheduled auto-update in the
status
section of theMCCUpgrade
object.Note
Modifying the delay period is not supported.
timeZone
Name of a time zone in the IANA Time Zone Database. This time zone will be used for all schedule calculations. For example:
Europe/Samara
,CET
,America/Los_Angeles
.
schedule
List of schedule items that allow an update at specific hours or weekdays. The update process can proceed if at least one of these items allows it. Schedule items allow update when both
hours
andweekdays
conditions are met. When this list is empty or absent, update is allowed at any hour of any day. Every schedule item contains the following fields:hours
Object with 2 fields:
from
andto
. Both must be non-negative integers not greater than 24. Theto
field must be greater than thefrom
one. Update is allowed if the current hour in the time zone specified bytimeZone
is greater or equals tofrom
and is less thanto
. Ifhours
is absent, update is allowed at any hour.
weekdays
Object with boolean fields with these names:
monday
tuesday
wednesday
thursday
friday
saturday
sunday
Update is allowed only on weekdays that have the corresponding field set to
true
. If all fields arefalse
or absent, orweekdays
is empty or absent, update is allowed on all weekdays.
Full
spec
example:spec: autoDelay: true timeZone: CET schedule: - hours: from: 10 to: 17 weekdays: monday: true tuesday: true - hours: from: 7 to: 10 weekdays: monday: true friday: true
In this example, all schedule calculations are done in the CET timezone and upgrades are allowed only:
From 7:00 to 17:00 on Mondays
From 10:00 to 17:00 on Tuesdays
From 7:00 to 10:00 on Fridays
status
The
status
object field of theMCCUpgrade
resource contains information about the next planned Container Cloud update, if available. This field contains the following fields:nextAttempt
Deprecated since 2.28.0 (Cluster release 16.3.0)Time stamp in the ISO 8601 format indicating the time when the Release Controller will attempt to discover and install a new Container Cloud release. Set to the next allowed time according to the schedule configured in
spec
or one minute in the future if the schedule currently allows update.
message
Deprecated since 2.28.0 (Cluster release 16.3.0)Message from the last update step or attempt.
nextRelease
Object describing the next release that Container Cloud will be updated to. Absent if no new releases have been discovered. Contains the following fields:
version
Semver-compatible version of the next Container Cloud release, for example,
2.22.0
.
date
Time stamp in the ISO 8601 format of the Container Cloud release defined in
version
:Since 2.28.0 (Cluster release 16.3.0), the field indicates the publish time stamp of a new release.
Before 2.28.0 (Cluster release 16.2.x or earlier), the field indicates the discovery time stamp of a new release.
scheduled
Available since Container Cloud 2.28.0 (Cluster release 16.3.0). Time window that the pending Container Cloud release update is scheduled for:
startTime
Time stamp in the ISO 8601 format indicating the start time of the update for the pending Container Cloud release.
endTime
Time stamp in the ISO 8601 format indicating the end time of the update for the pending Container Cloud release.
lastUpgrade
Time stamps of the latest Container Cloud update:
startedAt
Time stamp in the ISO 8601 format indicating the time when the last Container Cloud update started.
finishedAt
Time stamp in the ISO 8601 format indicating the time when the last Container Cloud update finished.
conditions
Available since Container Cloud 2.28.0 (Cluster release 16.3.0). List of status conditions describing the status of the
MCCUpgrade
resource. Each condition has the following format:type
Condition type representing a particular aspect of the
MCCUpgrade
object. Currently, the only supported condition type isReady
that defines readiness to process a new release.If the
status
field of theReady
condition type isFalse
, the Release Controller blocks the start of update operations.
status
Condition status. Possible values:
True
,False
,Unknown
.
reason
Machine-readable explanation of the condition.
lastTransitionTime
Time of the latest condition transition.
message
Human-readable description of the condition.
Example of MCCUpgrade
status:
status:
conditions:
- lastTransitionTime: "2024-09-16T13:22:27Z"
message: New release scheduled for upgrade
reason: ReleaseScheduled
status: "True"
type: Ready
lastUpgrade: {}
message: ''
nextAttempt: "2024-09-16T13:23:27Z"
nextRelease:
date: "2024-08-25T21:05:46Z"
scheduled:
endTime: "2024-09-17T00:00:00Z"
startTime: "2024-09-16T00:00:00Z"
version: 2.28.0