LeaseCandidate v1alpha1

LeaseCandidate визначає кандидата для об'єкта Lease.

apiVersion: coordination.k8s.io/v1alpha1

import "k8s.io/api/coordination/v1alpha1"

LeaseCandidate

LeaseCandidate визначає кандидата для обʼєкта Lease. Кандидати створюються таким чином, щоб координований вибір лідера вибрав найкращого лідера з переліку кандидатів.


LeaseCandidateSpec

LeaseCandidateSpec є специфікацією Lease.


  • leaseName (string), обовʼязково

    LeaseName — це імʼя Lease, за який цей кандидат змагається. Це поле є незмінним.

  • preferredStrategies ([]string), обовʼязково

    Atomic: буде замінено під час злиття

    PreferredStrategies вказує на список стратегій для вибору лідера у координованому виборі лідера. Список упорядкований, і перша стратегія переважає всі інші стратегії. Цей список використовується координованим вибором лідера для прийняття рішення про остаточну стратегію виборів. Це передбачає:

    • Якщо всі клієнти мають стратегію X як перший елемент у цьому списку, буде використана стратегія X.
    • Якщо кандидат має стратегію [X], а інший кандидат має стратегію [Y, X], Y переважає X, і буде використана стратегія Y.
    • Якщо кандидат має стратегію [X, Y], а інший кандидат має стратегію [Y, X], це є помилкою користувача, і вибір лідера не буде здійснюватися до вирішення проблеми.

    (Альфа) Для використання цього поля потрібно увімкнути функціональну можливість CoordinatedLeaderElection.

  • binaryVersion (string)

    BinaryVersion — це бінарна версія. Вона повинна бути у форматі semver без початкової v. Це поле є обовʼязковим, коли стратегія "OldestEmulationVersion".

  • emulationVersion (string)

    EmulationVersion —це версія емуляції. Вона повинна бути у форматі semver без початкової v. EmulationVersion повинна бути менше або дорівнювати BinaryVersion. Це поле є обовʼязковим, коли стратегія є "OldestEmulationVersion".

  • pingTime (MicroTime)

    PingTime — це останній час, коли сервер запитував LeaseCandidate на продовження. Це виконується лише під час вибору лідера, щоб перевірити, чи стали якісь LeaseCandidates недійсними. Коли PingTime оновлюється, LeaseCandidate відповідає, оновлюючи RenewTime.

    MicroTime — це версія Time з точністю до мікросекунд.

  • renewTime (MicroTime)

    RenewTime — це час, коли LeaseCandidate був востаннє оновлений. Щоразу, коли Lease потребує вибору лідера, поле PingTime оновлюється, щоб сигналізувати LeaseCandidate про необхідність оновлення RenewTime. Старі обʼєкти LeaseCandidate також видаляються, якщо пройшло кілька годин з моменту останнього оновлення. Поле PingTime регулярно оновлюється, щоб запобігти видаленню ще активних LeaseCandidates.

    MicroTime — це версія Time з точністю до мікросекунд.

LeaseCandidateList

LeaseCandidateList — перелік обʼєктів Lease.


Operations


get отримати вказаного LeaseCandidate

HTTP запит

GET /apis/coordination.k8s.io/v1alpha1/namespaces/{namespace}/leasecandidates/{name}

Параметри

  • name (в шляху): string, обовʼязково

    імʼя LeaseCandidate

  • namespace (в шляху): string, обовʼязково

    namespace

  • pretty (в запиті): string

    pretty

Відповідь

200 (LeaseCandidate): OK

401: Unauthorized

list перелік або перегляд обʼєктів типу LeaseCandidate

HTTP запит

GET /apis/coordination.k8s.io/v1alpha1/namespaces/{namespace}/leasecandidates

Параметри

Відповідь

200 (LeaseCandidateList): OK

401: Unauthorized

list перелік або перегляд обʼєктів типу LeaseCandidate

HTTP запит

GET /apis/coordination.k8s.io/v1alpha1/leasecandidates

Параметри

Відповідь

200 (LeaseCandidateList): OK

401: Unauthorized

create створення LeaseCandidate

HTTP запит

POST /apis/coordination.k8s.io/v1alpha1/namespaces/{namespace}/leasecandidates

Параметри

Відповідь

200 (LeaseCandidate): OK

201 (LeaseCandidate): Created

202 (LeaseCandidate): Accepted

401: Unauthorized

update заміна вказаного LeaseCandidate

HTTP запит

PUT /apis/coordination.k8s.io/v1alpha1/namespaces/{namespace}/leasecandidates/{name}

Параметри

  • name (в шляху): string, обовʼязково

    name of the LeaseCandidate

  • namespace (в шляху): string, обовʼязково

    namespace

  • body: LeaseCandidate, обовʼязково

  • dryRun (в запиті): string

    dryRun

  • fieldManager (в запиті): string

    fieldManager

  • fieldValidation (в запиті): string

    fieldValidation

  • pretty (в запиті): string

    pretty

Відповідь

200 (LeaseCandidate): OK

201 (LeaseCandidate): Created

401: Unauthorized

patch часткове оновлення вказаного LeaseCandidate

HTTP запит

PATCH /apis/coordination.k8s.io/v1alpha1/namespaces/{namespace}/leasecandidates/{name}

Параметри

  • name (в шляху): string, обовʼязково

    name of the LeaseCandidate

  • namespace (в шляху): string, обовʼязково

    namespace

  • body: Patch, обовʼязково

  • dryRun (в запиті): string

    dryRun

  • fieldManager (в запиті): string

    fieldManager

  • fieldValidation (в запиті): string

    fieldValidation

  • force (в запиті): boolean

    force

  • pretty (в запиті): string

    pretty

Відповідь

200 (LeaseCandidate): OK

201 (LeaseCandidate): Created

401: Unauthorized

delete видалення LeaseCandidate

HTTP запит

DELETE /apis/coordination.k8s.io/v1alpha1/namespaces/{namespace}/leasecandidates/{name}

Параметри

  • name (в шляху): string, обовʼязково

    name of the LeaseCandidate

  • namespace (в шляху): string, обовʼязково

    namespace

  • body: DeleteOptions

  • dryRun (в запиті): string

    dryRun

  • gracePeriodSeconds (в запиті): integer

    gracePeriodSeconds

  • pretty (в запиті): string

    pretty

  • propagationPolicy (в запиті): string

    propagationPolicy

Відповідь

200 (Status): OK

202 (Status): Accepted

401: Unauthorized

deletecollection видалення колекції LeaseCandidate

HTTP запит

DELETE /apis/coordination.k8s.io/v1alpha1/namespaces/{namespace}/leasecandidates

Параметри

Відповідь

200 (Status): OK

401: Unauthorized

Змінено September 06, 2024 at 4:29 PM PST: upstream sync (b8cab2cff8)