REST Resource: projects.locations.units

Ressource: Einheit

Eine Bereitstellungseinheit, deren Lebenszyklus über eine CRUD-API mit einer zugrunde liegenden Ausführungs-Engine (z.B. basierend auf Terraform, Helm oder einer benutzerdefinierten Implementierung des Diensterstellers) verwaltet wird. Ein Baustein eines SaaS-Mandanten.

JSON-Darstellung
{
  "name": string,
  "unitKind": string,
  "release": string,
  "tenant": string,
  "ongoingOperations": [
    string
  ],
  "pendingOperations": [
    string
  ],
  "scheduledOperations": [
    string
  ],
  "dependents": [
    {
      object (UnitDependency)
    }
  ],
  "dependencies": [
    {
      object (UnitDependency)
    }
  ],
  "inputVariables": [
    {
      object (UnitVariable)
    }
  ],
  "outputVariables": [
    {
      object (UnitVariable)
    }
  ],
  "maintenance": {
    object (MaintenanceSettings)
  },
  "state": enum (UnitState),
  "conditions": [
    {
      object (UnitCondition)
    }
  ],
  "managementMode": enum (ManagementMode),
  "systemManagedState": enum (SystemManagedState),
  "systemCleanupAt": string,
  "labels": {
    string: string,
    ...
  },
  "annotations": {
    string: string,
    ...
  },
  "uid": string,
  "etag": string,
  "createTime": string,
  "updateTime": string,
  "satisfiesPzs": boolean,
  "satisfiesPzi": boolean
}
Felder
name

string

ID. Der Ressourcenname (vollständiger URI der Ressource) gemäß dem Standardbenennungsschema:

"projects/{project}/locations/{location}/units/{unit}"

unitKind

string

Optional. Verweis auf die UnitKind, zu der diese Unit gehört. Kann nach der Festlegung nicht mehr geändert werden.

release

string

Optional. Nur Ausgabe. Das aktuelle Release-Objekt für diese Einheit.

tenant

string

Optional. Verweis auf die SaaS-Mandantenressource, zu der diese Einheit gehört. So werden beispielsweise die Wartungsrichtlinien für die Planung zukünftiger Updates auf einem Gerät festgelegt. (optional und nach der Erstellung unveränderlich)

ongoingOperations[]

string

Optional. Nur Ausgabe. Liste der gleichzeitigen UnitOperations, die für diese Unit ausgeführt werden.

pendingOperations[]

string

Optional. Nur Ausgabe. Liste der ausstehenden (auf Ausführung wartenden) UnitOperations für diese Einheit.

scheduledOperations[]

string

Optional. Nur Ausgabe. Liste der geplanten UnitOperations für diese Einheit.

dependents[]

object (UnitDependency)

Optional. Nur Ausgabe. Liste der Einheiten, die von dieser Einheit abhängen. Das Gerät kann nur aufgehoben werden, wenn diese Liste leer ist. Maximal 1.000.

dependencies[]

object (UnitDependency)

Optional. Nur Ausgabe. Eine Reihe von Abhängigkeiten für diese Einheit. Maximal 10.

inputVariables[]

object (UnitVariable)

Optional. Nur Ausgabe. Gibt die aktuellen Eingabevariablen an, die von der Einheit bereitgestellt werden.

outputVariables[]

object (UnitVariable)

Optional. Nur Ausgabe. Eine Reihe von Schlüssel/Wert-Paaren, die den Ausgabevariablen aus der Ausführung von Aktuierungsvorlagen entsprechen. Die Variablen werden in den Aktivierungskonfigurationen deklariert (z. B. im Helm-Diagramm oder in Terraform). Die Werte werden nach Abschluss der Ausführung von der Aktivierungs-Engine abgerufen und zurückgegeben.

maintenance

object (MaintenanceSettings)

Optional. Erfasst angeforderte Anweisungen für die Durchführung zukünftiger Wartungsarbeiten am Gerät. Dazu gehört eine Anfrage, die Wartung für einen bestimmten Zeitraum zu überspringen und die Einheit an die aktuelle Version zu binden, sowie Steuerelemente zum Verschieben von Wartungsarbeiten, die in Zukunft geplant sind.

state

enum (UnitState)

Optional. Nur Ausgabe. Der aktuelle Lebenszyklusstatus der Ressource, z.B. ob sie erstellt wird oder einsatzbereit ist.

conditions[]

object (UnitCondition)

Optional. Nur Ausgabe. Eine Reihe von Bedingungen, die die verschiedenen Bedingungen angeben, die diese Ressource haben kann.

managementMode

enum (ManagementMode)

Optional. Nicht veränderbar. Gibt an, ob der Lebenszyklus der Einheit vom Nutzer oder vom System gesteuert wird. Nach der Erstellung nicht mehr veränderbar.

systemManagedState

enum (SystemManagedState)

Optional. Nur Ausgabe. Gibt den vom System verwalteten Status der Einheit an.

systemCleanupAt

string (Timestamp format)

Optional. Nur Ausgabe. Wenn festgelegt, gibt dies den Zeitpunkt an, zu dem das System mit dem Entfernen der Einheit beginnt.

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30".

labels

map (key: string, value: string)

Optional. Die Labels der Ressource, die zur Kategorisierung verwendet werden können, ähnlich wie Kubernetes-Ressourcenlabels.

Ein Objekt, das eine Liste von "key": value-Paaren enthält. Beispiel: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

annotations

map (key: string, value: string)

Optional. „Annotations“ ist eine unstrukturierte Schlüssel/Wert-Zuordnung, die mit einer Ressource gespeichert wird und von externen Tools festgelegt werden kann, um beliebige Metadaten zu speichern und abzurufen. Sie können nicht abgefragt werden und sollten beim Ändern von Objekten beibehalten werden.

Weitere Informationen: https://kubernetes.io/docs/user-guide/annotations

Ein Objekt, das eine Liste von "key": value-Paaren enthält. Beispiel: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

uid

string

Nur Ausgabe. Die eindeutige Kennzeichnung der Ressource. Die UID gilt zeitlich und räumlich im Rahmen des Dienstes nur für diese eine Ressource. Sie wird in der Regel nach dem Erstellen der Ressource vom Server generiert und darf nicht geändert werden. Die UID dient dazu, Ressourcen, deren Namen wiederverwendet werden, eindeutig zu kennzeichnen. Dies sollte eine UUID4 sein.

etag

string

Nur Ausgabe. Ein opaker Wert, der eine Version oder Generation einer Ressource eindeutig kennzeichnet. Damit kann bestätigt werden, dass Client und Server der Reihenfolge einer Ressource, die gerade geschrieben wird, zustimmen.

createTime

string (Timestamp format)

Nur Ausgabe. Der Zeitstempel, der angibt, wann die Ressource erstellt wurde.

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30"

updateTime

string (Timestamp format)

Nur Ausgabe. Der Zeitstempel, der angibt, wann die Ressource zuletzt aktualisiert wurde. Wenn Nutzer Änderungen an der Ressource vornehmen, muss dieser Wert aktualisiert werden. Gleiches gilt bei Änderungen an der Ressource durch den Dienst.

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30"

satisfiesPzs

boolean

Nur Ausgabe. Gibt an, ob der Ressourcenstandort die Einschränkungen der Zonentrennung erfüllt. Standardmäßig auf „Falsch“ festgelegt.

satisfiesPzi

boolean

Nur Ausgabe. Gibt an, ob der Ressourcenstandort die Einschränkungen der Zonenisolation erfüllt. Standardmäßig auf „Falsch“ festgelegt.

UnitDependency

Eine Reihe von Abhängigkeiten für diese Einheit. Maximal 10.

JSON-Darstellung
{
  "alias": string,
  "unit": string
}
Felder
alias

string

Nur Ausgabe. Alias für den Namen der Abhängigkeit.

unit

string

Nur Ausgabe. Eine Referenz auf das Unit-Objekt.

MaintenanceSettings

Erfasst angeforderte Anweisungen für die Durchführung zukünftiger Wartungsarbeiten am Gerät. Dazu gehört eine Anfrage, die Wartung für einen bestimmten Zeitraum zu überspringen und die Einheit an die aktuelle Version zu binden, sowie Steuerelemente zum Verschieben von Wartungsarbeiten, die in Zukunft geplant sind.

JSON-Darstellung
{
  "pinnedUntilTime": string
}
Felder
pinnedUntilTime

string (Timestamp format)

Optional. Wenn angegeben, wird am Release für die Einheit bis zu einem bestimmten Zeitpunkt festgehalten. Das heißt, Änderungen am Feld „Release“ werden abgelehnt. Roll‑outs berücksichtigen dies ebenfalls, indem sie kein Upgrade anfordern.

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30".

UnitState

UnitState gibt den aktuellen Status der Einheit an.

Enums
UNIT_STATE_UNSPECIFIED Nicht angegebener Zustand.
UNIT_STATE_NOT_PROVISIONED Die Einheit wurde nicht bereitgestellt.
UNIT_STATE_PROVISIONING Die Einheit wird bereitgestellt.
UNIT_STATE_UPDATING Die Einheit wird aktualisiert. Das ist in der Regel der Fall, wenn eine Einheit auf ein neues Release aktualisiert wird oder einige der Eingabevariablen der Einheit geändert werden. Bestimmte Arten von Updates können dazu führen, dass das Gerät während des Updates nicht verwendet werden kann.
UNIT_STATE_DEPROVISIONING Die Einheit wird gelöscht.
UNIT_STATE_READY Das Gerät wurde bereitgestellt und kann verwendet werden
UNIT_STATE_ERROR Gerät hat einen Fehler, wenn es nicht bereit ist und ein Fehler auftritt

UnitCondition

UnitCondition beschreibt den Status einer Einheit. „UnitCondition“ sind einzelne Komponenten, die zu einem Gesamtstatus beitragen.

JSON-Darstellung
{
  "status": enum (Status),
  "type": enum (Type),
  "lastTransitionTime": string,
  "message": string,
  "reason": string
}
Felder
status

enum (Status)

Erforderlich. Status der Bedingung.

type

enum (Type)

Erforderlich. Typ der Bedingung.

lastTransitionTime

string (Timestamp format)

Erforderlich. Der Zeitpunkt der letzten Änderung der Bedingung von einem Status in einen anderen.

Verwendet RFC 3339, wobei die generierte Ausgabe immer Z-normalisiert ist und 0, 3, 6 oder 9 Nachkommastellen verwendet. Andere Offsets als „Z“ werden ebenfalls akzeptiert. Beispiele: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" oder "2014-10-02T15:01:23+05:30"

message

string

Erforderlich. Eine menschenlesbare Nachricht mit Details zur letzten Statusänderung.

reason

string

Erforderlich. Kurzer Grund für die letzte Statusänderung der Bedingung.

Status

Aufzählung der Status von Bedingungen.

Enums
STATUS_UNSPECIFIED Der Status der Bedingung ist nicht angegeben.
STATUS_UNKNOWN Die Bedingung ist unbekannt.
STATUS_TRUE Die Bedingung ist wahr.
STATUS_FALSE Die Bedingung ist falsch.

Typ

Aufzählung der Bedingungstypen.

Enums
TYPE_UNSPECIFIED Der Bedingungstyp ist nicht angegeben.
TYPE_READY Der Bedingungstyp ist bereit.
TYPE_UPDATING Der Bedingungstyp wird aktualisiert.
TYPE_PROVISIONED Der Bedingungstyp wird bereitgestellt.
TYPE_OPERATION_ERROR Der Bedingungstyp ist „operationError“. „True“, wenn der letzte Einheitenvorgang mit einem nicht ignorierbaren Fehler fehlgeschlagen ist.

ManagementMode

ManagementMode gibt an, wer für die Verwaltung der Einheit verantwortlich ist.

Enums
MANAGEMENT_MODE_UNSPECIFIED
MANAGEMENT_MODE_USER Der Lebenszyklus der Einheit wird vom Nutzer verwaltet.
MANAGEMENT_MODE_SYSTEM Das System entscheidet, wann die Bereitstellung der Einheit aufgehoben und die Einheit gelöscht wird. Nutzer können das Gerät weiterhin manuell entfernen oder löschen.

SystemManagedState

Enums
SYSTEM_MANAGED_STATE_UNSPECIFIED
SYSTEM_MANAGED_STATE_ACTIVE An die Einheit sind abhängige Elemente angehängt.
SYSTEM_MANAGED_STATE_INACTIVE Der Einheit sind keine Abhängigkeiten zugeordnet, aber ein Anhang ist zulässig.
SYSTEM_MANAGED_STATE_DECOMMISSIONED Der Einheit sind keine Abhängigkeiten zugeordnet und Anhänge sind nicht zulässig.

Methoden

create

Erstellen Sie eine neue Einheit.

delete

Einzelne Einheit löschen

get

Einzelne Einheit abrufen

list

Eine Sammlung von Einheiten abrufen

patch

Einzelne Einheit aktualisieren