Crossplane Vocabulary: English for Control Plane as Code Discussions (англійською)

Освоєння англійської лексики і фраз, які використовують інженери під час обговорення Crossplane, XRs, композицій і інфраструктури керуючих площин.

Коли ви приєднуєтесь до інженерної команди платформи, яка використовує Crossplane, ви швидко усвідомлюєте, що словник щільний — і що навіть досвідчені інженери іноді борються, щоб пояснити ці поняття чітко англійською. Ця стаття присвячена англійській мові, яка вам потрібна: точні терміни, природні колокації і фрази, які ваші колеги використовують у обговореннях архітектури і перегляді коду.

Основні твори: «Блоки»

Композитний ресурс (XR)

** Складений ресурс ** (скорочено до ** XR **) є шаром абстракції, який поєднує декілька керованих ресурсів в один ресурс вищого рівня, який можуть використовувати команди програм.

«Ми виставили композитний ресурс під назвою XPostgresInstance, щоб команди розробників не мали торкатися базових конфігурацій RDS і груп безпеки безпосередньо»

У розмові інженери часто говорять « XR » або « композит ». Ви почуєте такі фрази, як « визначити XR », « стверджувати XR » і « XR примиряється »

Claim

** Заява ** — це те, що розробник програми надсилає для запитів на складні ресурси. Заява має обсяг простору імен, у той час як XR має обсяг кластера — ця відмінність має значення для того, як ви пояснюєте архітектуру.

“Команда по обслуживанию только что подала заявку на новую базу данных. Як тільки композиція примириться, вони автоматично отримають свій секретний зв’язок»

Зауважте дієслово file a claim — запозичене з страхової/юридичної англійської, воно часто використовується в контекстах інженерії платформ.

Composition

** composition ** — це шаблон, який визначає, як Crossplane має створювати складний ресурс — які керовані ресурси створювати, як їх налаштовувати і як латити значення між ними.

“Ми оновили склад, щоб залатати регіон з претензії до всіх трьох керованих ресурсів. Це зайняло деякий час, щоб отримати правильну логіку латів»

Ключові дієслова: write a composition, update the composition, the composition defines, patch values.

Керування ресурсами

** Керований ресурс ** це нетиповий ресурс Kubernetes, який представляє один зовнішній об’єкт інфраструктури — контейнер S3, підмережа VPC, роль IAM. Провайдер Crossplane контролює його життєвий цикл.

«Кожен керований ресурс відображається один-до-одного на об’єкт в AWS. Якщо ви вилучаєте керований ресурс, Crossplane вилучає фактичний контейнер.”

Фраза ** maps one- to- one ** дуже корисна тут для пояснення зв’ язку у оглядах архітектури.

Provider

** provider ** — це пакунок Crossplane, який знає, як спілкуватися з певним зовнішнім API — AWS, GCP, Azure, Helm тощо. Цей файл встановлює CRD і логіку контролера.

«Ми запускаємо AWS-провайдера на версії 0.47. Перед тим, як ми оновили, нам потрібно перевірити, чи змінилися будь-які керовані ресурси API. ”

Інженери кажуть встановити провайдера, налаштувати провайдера, провайдер здоровий/погіршився.

Літак управління

Площина керування у контексті Crossplane означає кластер Kubernetes (або управляючу площину керування), на якому запускається Crossplane і який діє як джерело правди для вашої інфраструктури.

“Ми розглядаємо наш кластер управління як джерело правди тільки для читання. Ніхто не застосовує ресурси вручну — все проходить через Git і Crossplane»

Примирення

Основним механізмом є цикл примирення: Crossplane постійно порівнює * бажаний стан * (те, що вказано у вашому YAML) з * спостереженим станом * (те, що насправді існує у хмарі), і діє, щоб закрити будь- який проміжок.

«Перетвірка петлі негайно виявила дрейф — хтось змінив групу безпеки в консолі, і Crossplane відновив її протягом 30 секунд»

Поширені колокації: ** цикл виявив дрейф **, ** прирівнювання зазнало невдачі **, ** ресурс прирівнюється **, ** застряг у прирівнюванні **.

Інформаційні технології: інженерні системи, що використовують інформацію

Ось деякі з фраз, які ви зустрінете — і вам слід використовувати — у розмовах щодо інженерних розробок платформи:

** У обговореннях архітектури: **

    • “Заявка абстрагує всі деталі реалізації від розробника.” *
  • “Ми складаємо три керовані ресурси під цим XR — підмережу, групу безпеки і екземпляр RDS.”
    • “Композиція використовує латки для розповсюдження значень зі специфікації заперечення на кожен керований ресурс.” *

** В обзорах коду: **

    • “Цій композиції бракує перевірки готовності — XR покаже готовність до того, як база даних стане доступною.” *
    • “Вам слід використовувати тут FromCompositeFieldPath, а не тверде значення. Таким чином регіон залишається конфігурованим.”*

В результате вскрытия:

    • “Провайдер втратив свої улікові дані, і цикл примирення почав беззвучно зазнавати невдачі. Ми не ловили дрейф протягом двох годин.”*
    • “Ми виявили, що у композиції була помилка у логіці латку — вона перезаписувала розмір пам’ яті типовим розміром кожного разу, коли запускалася петля.” *

Ключові слова

Вивчення слів і фраз парами робить їх швидшими:

CollocationMeaning
expose a composite resourcemake an XR available for teams to claim
file / submit a claimrequest infrastructure via a claim object
the composition reconcilesCrossplane applies the template and syncs state
managed resource driftsreal infra diverges from desired YAML state
install / configure a providerset up the Crossplane package for a cloud API
detect / correct driftfind and fix differences between desired and actual state
the loop is stuckreconciliation is not making progress
patch a fieldcopy a value from one resource spec to another

H3: Пояснення Crossplane для неплатформових інженерів

Однією з найпоширеніших проблем є пояснення моделі Crossplane розробникам, які знають тільки Terraform або простий Kubernetes. Ось два корисні шаблони англійської мови:

** Аналогія: **

“Мислите про Crossplane як про Terraform, але замість запуску terraform apply з вашого ноутбука, кластер керування польотами завжди запускає його для вас — безперервно.”

** Взірець шарів: **

“Є два шари. Платформні інженери пишуть композиції, які визначають, як побудована інфраструктура. Розробники програм виставляють заявки, в яких зазначають, що їм потрібно. Два шари навмисно роз’єднані.»

Practice

Виберіть одну з концепцій з цього повідомлення, наприклад, цикл примирення або композиція, і напишіть коротке повідомлення Slack (3- 4 речення), у якому ви поясните цю концепцію новому розробнику сервера, який приєднається до вашої команди. Сфокусуватись на використанні природної колокації, а не перекладати слово в слово з української. Потім спробуйте написати коментар перегляду коду у вигляді одного речення, у якому буде правильно використано цей термін у контексті. Цей вид навмисної практики в реальних IT-форматах набагато ефективніший, ніж читання лише визначень.

Використання мови програмування C#: словник та практичне застосування

Crossplane сама по собі є потужною концепцією - але справжнє розблокування її цінності походить від розуміння * як * говорити про це ефективно. Це не просто технічний жаргон; це про чітке спілкування з вашою командою, документування рішень і, врешті-решт, про успішні розгортання інфраструктури як коду. Цей розділ зосереджений на вдосконаленні цього спілкування, особливо для тих, хто новий у світі XRs (розширені ресурси) і композицій - всі основні елементи в межах планки управління Crossplane.

Будьмо чесними, багато початкових дискусій навколо Crossplane можуть здатися абстрактними. Люди говорять про «статусні набори», «декларативну інфраструктуру» і «композіційну архітектуру», не завжди пов’язуючи їх з реальними результатами. Ключовим є переклад цих концепцій на мову, яка резонує з всі задіяні - від розробників, що будують застосунки до команд управління операціями, що управляють розгортанням. Поширеною помилкою є занурення в надто технічні деталі, що призводить до непорозумінь і затримок. Ясне спілкування про * чому * - чому робиться певна зміна, яку проблему вона вирішує, і як вона збігається з загальними бізнес-целями - є надзвичайно важливим. Крім того, пам’ятайте, що термінологія розвивається; активний пошук пояснень, коли це необхідно, запитуючи «Чи можете ви пояснити це простішими словами?», Завжди більш продуктивний, ніж мовчазне змагання зрозуміти концепцію.

Розглянемо реалістичний сценарій: Сара, розробник, створює новий PR для композиції Crossplane, що розгортає базу даних. Вона пише опис PR так: «Ця PR додає новий PostgreSQL XR до нашої композиції «Data Lake». Він використовує декларативний підхід до забезпечення і керування ресурсами бази даних, відповідаючи нашій ширшій стратегії автоматизації розгортання інфраструктури. Ми використовуємо [Specific Kubernetes label] для цільового призначення і реалізували моніторинг через Prometheus»

Тепер уявіть, що Девід, інженер-оператор, читає це опис. Він може бути збентежений такими термінами, як “декларативний підхід”, не розуміючи основоположних наслідків. Або він може не відразу зрозуміти зв’язок між мітками Kubernetes і фактичним процесом розгортання. Ефективнішим описом PR може бути: « Цей PR додає нову базу даних PostgreSQL до нашого « Data Lake » Composition, автоматизуючи її створення відповідно до визначених специфікацій. Це скоротить час підготовки на [оцінений відсоток] у порівнянні з ручними методами. Ми націлюємо цю базу даних з [Specific Kubernetes label], забезпечуючи її правильну інтеграцію з існуючими системами моніторингу з використанням Prometheus. ”

Цей переглянутий опис використовує простішу мову і явно пов’ язує технічні деталі з їх перевагами - швидшим забезпеченням і інтеграцією з існуючим моніторингом. Вона також більш орієнтована на дії, зосереджуючись на тому, * що * досягається, а не тільки на тому, * як *.

Ось простий приклад kubectl apply, який показує, як Crossplane керує ресурсом:

apiVersion: crossplane.io/v1alpha1
kind: Secret
metadata:
  name: my-secret
spec:
  parameters:
    username: "myuser"
    password: "mypassword"
  # This example doesn't actually create a resource - it demonstrates the format of how Crossplane manages secrets

Цей простий приклад ілюструє основний принцип - Crossplane * керує * життєвим циклом ресурсів, а не ви безпосередньо створюєте їх в Kubernetes. Команда kubectl apply використовується для того, щоб вказати Crossplane як виконувати це управління. Зрозуміти це розрізнення є ключовим для ефективного спілкування і співпраці в середовищі Crossplane.

Поширені запитання

Про що ця стаття "Crossplane Vocabulary: English for Control Plane as Code Discussions (англійською)"?

Освоєння англійської лексики і фраз, які використовують інженери під час обговорення Crossplane, XRs, композицій і інфраструктури керуючих площин.

Чи безкоштовна ця стаття?

Так. Усі статті на CoderSlingo, включно з цією, доступні безкоштовно без реєстрації.

Скільки часу займає читання "Crossplane Vocabulary: English for Control Plane as Code Discussions (англійською)"?

Приблизно 9 min.