Терраформ Провидерс

Terraform Providers



Један од популарних алата за инфраструктуру као код отвореног кода је Терраформ. Омогућава програмерима да декларативно дефинишу и управљају вашом инфраструктуром. Омогућава им да креирају, управљају и модификују инфраструктурне ресурсе користећи једноставну и доследну синтаксу, без обзира на основну платформу у облаку или добављача услуга.

Овај чланак говори о томе како да користите и конфигуришете различите провајдере за интеракцију са различитим платформама и услугама у облаку.

Увод у Терраформ провајдере

Терраформ провајдери су додаци који нам омогућавају интеракцију са различитим платформама и услугама у облаку користећи Терраформ. Ови провајдери су одговорни за превођење Терраформ конфигурације у АПИ позиве који су неопходни за управљање ресурсима на одређеној платформи или услузи у облаку.







Типови провајдера у Терраформу

У Тераформни регистар , можемо видети три типа провајдера:



Званични провајдери

Званичне провајдере одржава компанија ХасхиЦорп која поседује Терраформ. Ови провајдери су најбоља доступна опција ако су нам потребни добро документовани и ажурирани провајдери.



АВС, Мицрософт Азуре и Гоогле Цлоуд Платформ добављачи могу бити примери званичних добављача у Терраформ-у.





Партнер Провидерс

Организације треће стране одржавају ове провајдере и удружиле су се са ХасхиЦорп-ом како би пружиле званичну подршку за њихове услуге.

ГитЛаб, МонгоДБ и ЦлоудФларе добављачи су неки партнерски провајдери који су доступни корисницима.



Цоммунити Провидерс

Провајдере заједнице обично креирају појединци или организације Терраформ заједнице који желе да управљају ресурсима на платформи у облаку или услузи коју не подржава званични или партнерски провајдер.

Неки примери провајдера заједнице су приказани на следећој слици:

Како користити Терраформ провајдера

Да бисмо користили Терраформ провајдера, морамо да укључимо блок провајдера у нашу конфигурациону датотеку који наводи провајдера којег желимо да користимо и све потребне конфигурационе параметре као што су акредитиви или регион.

Када је провајдер конфигурисан, можемо да користимо ресурсе и изворе података које пружа провајдер у нашој Терраформ конфигурацији за управљање ресурсима на платформи или услузи у облаку.

Хајде да направимо једноставну Терраформ конфигурациону датотеку која креира ЕЦ2 инстанцу на АВС платформи у облаку.

провајдера 'авс' {

верзија = '~> 3.0'

регион = 'ус-исток-2'

}

ресурс 'авс_инстанце' 'миЕЦ2' {

који = 'ами-0а561б65214а47цац'

инстанце_типе = 'т3. мали'

ознаке = {

Име = 'нова инстанца'

}

}

Прво дефинишемо блок провајдера, наводећи АВС провајдера и регион у коме су ресурси креирани. Затим дефинишемо наш блок ресурса који се састоји од авс_инстанце као типа ресурса, „миЕЦ2“ као имена ресурса и „ами“, „инстанце_типе“ и „тагова“ као атрибута. Тип ресурса се може поделити на два дела: Провајдер и Ресурс. У овом случају, „авс“ је добављач, а „инстанца“ је ресурс. Такође, ако неко треба да обезбеди десет ЕЦ2 инстанци, атрибут „цоунт” се може користити са десет као вредност.

Сада можемо да извршимо Терраформ ток који укључује извршавање команди инит терраформ, план терраформ и терраформ аппли да креирамо ресурс који смо дефинисали.

Користећи Терраформ АВС провајдер, можемо приступити АВС платформи у облаку и ефикасно комуницирати са њеним услугама без коришћења АВС конзоле за управљање.

Коришћење више добављача у Терраформу

Уместо да користимо једног провајдера, Терраформ нам омогућава да користимо више провајдера у оквиру исте Терраформ конфигурационе датотеке за интеракцију са различитим врстама услуга и платформама у облаку.

За ваше разумевање, дајте пример где примењујемо рачунарски механизам на Гоогле Цлоуд Платформу, спремиште у ГитХуб-у и С3 канту на АВС цлоуд платформи.

провајдера 'гоогле' {

пројекат = 'први пројекат'

регион = 'ус-запад1'

}

провајдера 'гитхуб' {

токен = „ИОУР_ГИТХУБ_ТОКЕН“

}

провајдера 'авс' {

верзија = '~> 3.0'

регион = 'ус-запад-2'

}

ресурс „гоогле_цомпуте_инстанце“ 'гцпИнстанце' {

име = 'нова инстанца'

машина_тип = 'н1-стандард-1'

зона = 'ус-вест1-а'

боот_диск {

инитиализе_парамс {

слика = 'дебиан-цлоуд/дебиан-10'

}

}

}

ресурс 'гитхуб_репоситори' 'гитРепо' {

име = 'нови-репо'

опис = 'Ово је моје ново спремиште'

}

ресурс 'авс_с3_буцкет' 'авсБуцкет' {

буцкет = 'нова кофа'

ацл = 'приватни'

}

Као први корак, дефинишемо наше блокове добављача да бисмо навели добављаче (Гоогле, ГитХуб и АВС) и потребне информације као што су регион, назив пројекта, итд. Затим декларишемо наше ресурсе користећи три блока ресурса: „гцпИнстанце“, „ гитРепо“ и „авсБуцкет“.

Прво, креирамо рачунарски механизам у Гоогле Цлоуд Платформу са „нев-инстанце“ као именом, „н1-стандард-1“ као типом машине и „ус-вест1-а“ као зоном доступности. Користи Дебиан као главни ОС. Затим креирамо ГитХуб спремиште под називом „нев-репо“ и одговарајући опис. Коначно, С3 буцкет је направљен са 'нев-буцкет' као именом и 'привате' као АЦЛ (Листа контроле приступа) вредности.

Са та три Терраформ провајдера, можемо лако да комуницирамо са платформама у облаку и њиховим услугама.

Најбоље праксе за рад са добављачима Терраформ

Провајдер Версионинг

Требало би да наведемо верзију провајдера јер то помаже да се обезбеди доследност и избегава неочекивано понашање због кршења промена у новијим верзијама.

Аутентификација добављача

Можемо да користимо безбедне механизме аутентификације као што су АПИ кључеви и токени за приступ да бисмо потврдили аутентичност и овластили Терраформ за интеракцију са одговарајућом платформом или услугом у облаку.

Документација добављача

Провајдери често имају специфичне опције конфигурације, функције и ограничења. Разумевање овог водича нам помаже да ефикасно користимо провајдера и избегнемо уобичајене замке.

Ажурирања провајдера

Провајдери могу објавити исправке грешака, побољшања перформанси и нове функције. Бити у току омогућава нам да искористимо најновија побољшања и одржимо компатибилност са екосистемом добављача.

Подршка заједнице

Можемо да користимо форуме на мрежи, форуме за дискусију и канале заједнице да решимо свакодневне изазове са којима се сусрећемо током коришћења провајдера.

Руковање грешкама и решавање проблема

Добра је пракса да се упознамо са порукама о грешкама, евиденцијама и техникама отклањања грешака добављача како би нам то помогло у ефикаснијем дијагностиковању и решавању проблема.

Закључак

Кратко смо се упознали са добављачима Терраформа. Разговарали смо о томе како да их користимо и конфигуришемо за интеракцију са различитим платформама и услугама у облаку и како да користимо више провајдера за управљање ресурсима на различитим платформама и услугама у облаку кроз примере који су лаки за разумевање.