Tá soláthraí oifigiúil Terraform seolta againn chun oibriú le Selectel. Ligeann an táirge seo d’úsáideoirí bainistíocht acmhainní a chur i bhfeidhm go hiomlán trí mhodheolaíocht Bonneagair de réir Cóid.
Tacaíonn an soláthraí le bainistíocht acmhainní seirbhíse faoi láthair "Scamall príobháideach fíorúil" (dá ngairtear VPC anseo feasta). Sa todhchaí, tá sé beartaithe againn bainistíocht acmhainní a chur leis le haghaidh seirbhísí eile a sholáthraíonn Selectel.
Mar is eol duit cheana féin, tá an tseirbhís VPC tógtha ar OpenStack. Mar sin féin, mar gheall ar an bhfíric nach soláthraíonn OpenStack uirlisí dúchais chun freastal ar an scamall poiblí, chuireamar an fheidhmiúlacht atá ar iarraidh i bhfeidhm i sraith de API breise a shimplíonn bainistiú rudaí ilchodacha casta agus a dhéanann an obair níos áisiúla. Tá cuid den fheidhmiúlacht atá ar fáil in OpenStack dúnta ó úsáid dhíreach, ach tá sé ar fáil tríd ár API.
Áiríonn soláthraí Selectel Terraform anois an cumas na hacmhainní VPC seo a leanas a bhainistiú:
tionscadail agus a gcuótaí;
úsáideoirí, a róil agus comharthaí;
folíonta poiblí, lena n-áirítear tras-réigiúnach agus VRRP;
ceadúnais bogearraí.
Úsáideann an soláthraí ár leabharlann poiblí Téigh chun oibriú leis an VPC API. Is foinse oscailte iad an leabharlann agus an soláthraí féin, agus déantar a bhforbairt ar Github:
Chun acmhainní scamall eile a bhainistiú, mar shampla meaisíní fíorúla, dioscaí, braislí Kubernetes, is féidir leat an soláthraí OpenStack Terraform a úsáid. Tá doiciméadú oifigiúil don dá sholáthraí ar fáil ag na naisc seo a leanas:
Chun tús a chur leis, ní mór duit Terraform a shuiteáil (is féidir treoracha agus naisc le pacáistí suiteála a fháil ag láithreán gréasáin oifigiúil).
Chun oibriú, teastaíonn eochair API Selectel ón soláthraí, a chruthaítear i painéil rialaithe cuntais.
Cruthaítear léirithe le haghaidh oibriú le Selectel ag baint úsáide as Terraform nó ag baint úsáide as sraith samplaí réamhdhéanta atá ar fáil inár stór Github: terraform-samplaí.
Tá an stór le samplaí roinnte ina dhá eolaire:
modúil, ina bhfuil modúil bheaga in-athúsáidte a ghlacann sraith paraiméadair mar ionchur agus a bhainistíonn sraith bheag acmhainní;
samplaí, ina bhfuil samplaí de shraith iomlán modúl idirnasctha.
Tar éis Terraform a shuiteáil, eochair API Selectel a chruthú agus eolas a chur ar na samplaí, déanaimis bogadh ar aghaidh go dtí samplaí praiticiúla.
I gcomhad vars.tf déantar cur síos ar na paraiméadair go léir a úsáidfear nuair a ghlaonn tú modúil. Tá luachanna réamhshocraithe ag cuid acu, mar shampla, cruthófar an freastalaí sa chrios ru-3a leis an gcumraíocht seo a leanas:
Más gá, is féidir eochair phoiblí eile a shonrú. Ní gá an eochair a shonrú mar chonair comhaid; is féidir leat an luach a chur leis mar theaghrán freisin.
Sa chomhad seo seoltar na modúil tionscadal_le_úsáideoir и server_local_root_diosca, a bhainistíonn na hacmhainní riachtanacha.
Breathnaímid ar na modúil seo níos mine.
Tionscadal a chruthú agus úsáideoir a bhfuil ról aige
Beidh an t-úsáideoir cruthaithe in ann logáil isteach go OpenStack agus a chuid acmhainní a bhainistiú. Tá an modúl simplí agus ní bhainistíonn sé ach trí aonán:
selectel_vpc_project_v2,
selectel_vpc_user_v2,
roghnaigh_vpc_ról_v2.
Freastalaí fíorúil a chruthú le diosca áitiúil
Déileálann an dara modúl le bainistiú a dhéanamh ar rudaí OpenStack, atá riachtanach chun freastalaí a chruthú le diosca áitiúil.
Ba cheart duit aird a thabhairt ar chuid de na hargóintí atá sonraithe sa mhodúl seo don acmhainn openstack_compute_instance_v2:
Argóint neamhaird_athruithe ligeann duit neamhaird a dhéanamh d'athruithe tréithe id don íomhá a úsáidtear chun an meaisín fíorúil a chruthú. Sa tseirbhís VPC, déantar an chuid is mó d’íomhánna poiblí a nuashonrú go huathoibríoch uair sa tseachtain agus ag an am céanna a gcuid id athruithe freisin. Tá sé seo mar gheall ar shainiúlachtaí na comhpháirte OpenStack - Glance, ina mbreathnaítear ar íomhánna mar aonáin neamh-inmharthana.
Má tá tú ag cruthú nó ag modhnú freastalaí nó diosca atá ann cheana féin a bhfuil mar argóint aige íomhá_id a úsáidtear id íomhá phoiblí, ansin tar éis an íomhá sin a thabhairt cothrom le dáta, ag rith an léiriú Terraform arís athchruthóidh an freastalaí nó diosca. Ag baint úsáide as argóint neamhaird_athruithe ligeann duit a leithéid de chás a sheachaint.
Nóta: argóint neamhaird_athruithe le feiceáil in Terraform i bhfad ó shin: tarraingt#2525.
Argóint neamhaird_resize_confirmation ag teastáil chun diosca áitiúil, croíleacáin nó cuimhne an fhreastalaí a athrú go rathúil. Déantar athruithe den sórt sin tríd an gcomhpháirt OpenStack Nova ag baint úsáide as iarratas Athraigh. Réamhshocrú Nova tar éis iarratas Athraigh cuireann an freastalaí i stádas fíoraigh_athraigh méid agus fanann sé le deimhniú breise ón úsáideoir. Mar sin féin, is féidir an iompar seo a athrú ionas nach mbeidh Nova ag fanacht le gníomhartha breise ón úsáideoir.
Ceadaíonn an argóint shonraithe Terraform gan fanacht leis an stádas fíoraigh_athraigh méid don fhreastalaí agus a bheith ullamh don fhreastalaí a bheith i stádas gníomhach tar éis dó a pharaiméadair a athrú. Tá an argóint ar fáil ó leagan 1.10.0 den soláthraí OpenStack Terraform: tarraingt#422.
Acmhainní a Chruthú
Sula ndéantar na manifests a rith, tabhair faoi deara go seolfar dhá sholáthraí éagsúla inár sampla, agus braitheann an soláthraí OpenStack ar acmhainní an tsoláthraí Selectel, mar gan úsáideoir a chruthú sa tionscadal, tá sé dodhéanta na rudaí a bhaineann leis a bhainistiú. . Ar an drochuair, ar an gcúis chéanna ní féidir linn an t-ordú a rith terraform i bhfeidhm taobh istigh dár sampla. Ní mór dúinn a dhéanamh ar dtús iarratas a dhéanamh le haghaidh modúl tionscadal_le_úsáideoir agus ina dhiaidh sin do gach rud eile.
Nóta: Níl an cheist seo réitithe fós i Terraform, is féidir leat leanúint leis an bplé ar Github ag eisiúint#2430 и eisiúint#4149.
Tosaigh muid na modúil ag baint úsáide as an ordú:
$ terraform init
Léiríonn an t-aschur go n-íoslódálann Terraform na leaganacha is déanaí de na soláthraithe a úsáideann sé agus seiceálann sé na modúil go léir a thuairiscítear sa sampla.
Ar dtús cuirimis an modúl i bhfeidhm tionscadal_le_úsáideoir. Éilíonn sé seo luachanna a rith de láimh le haghaidh athróga nach bhfuil socraithe:
sel_cuntas le d'uimhir chuntais Selectel;
sel_token le d'eochair le haghaidh Selectel API;
úsáideora_phasfhocal le pasfhocal don úsáideoir OpenStack.
Ní mór na luachanna don chéad dá athróg a thógáil ó painéil rialaithe.
Maidir leis an athróg dheireanach, is féidir leat teacht suas le haon phasfhocal.
Chun an modúl a úsáid ní mór duit na luachanna a athsholáthar SEL_ACCOUNT, SEL_TOKEN и USER_PASSWORD ag rith an ordaithe:
Tar éis an t-ordú a rith, taispeánfaidh Terraform na hacmhainní atá sé ag iarraidh a chruthú agus iarrfaidh sé deimhniú:
Plan: 3 to add, 0 to change, 0 to destroy.
Do you want to perform these actions?
Terraform will perform the actions described above.
Only 'yes' will be accepted to approve.
Enter a value: yes
Nuair a bheidh an tionscadal, an t-úsáideoir agus an ról cruthaithe, is féidir leat tosú ar na hacmhainní atá fágtha a chruthú:
Is féidir leat oibriú leis an meaisín fíorúil cruthaithe trí SSH ag baint úsáide as an IP sonraithe.
Acmhainní Eagarthóireachta
Chomh maith le hacmhainní a chruthú trí Terraform, is féidir iad a mhodhnú freisin.
Mar shampla, déanaimis líon na gcroí agus an chuimhne dár bhfreastalaí a mhéadú trí na luachanna do na paraiméadair a athrú freastalaí_vcpus и freastalaí_ram_mb i gcomhad samplaí/vpc/server_local_root_disk/main.tf:
Inár stórtha shamplacha Is féidir leat manifests a fheiceáil freisin chun meaisíní fíorúla a chruthú le tiomántáin líonra.
Sampla de bhraisle Kubernetes a chruthú
Sula bhogaimid ar aghaidh go dtí an chéad sampla eile, glanfaimid na hacmhainní a chruthaigh muid níos luaithe. Chun seo a dhéanamh i an fhréamh an tionscadail terraform-samplaí/samplaí/vpc/server_local_root_disk Rithfimid an t-ordú chun oibiachtaí OpenStack a scriosadh:
Sa dá chás, beidh ort a dheimhniú go scriosadh gach réad:
Do you really want to destroy all resources?
Terraform will destroy all your managed infrastructure, as shown above.
There is no undo. Only 'yes' will be accepted to confirm.
Enter a value: yes
Cruthaíonn an sampla seo tionscadal, úsáideoir a bhfuil ról aige sa tionscadal, agus ardaíonn sé braisle Kubernetes amháin. I gcomhad vars.tf is féidir leat luachanna réamhshocraithe a fheiceáil, mar shampla líon na nóid, a saintréithe, leagan Kubernetes, etc.
Chun acmhainní cosúil leis an gcéad sampla a chruthú, ar an gcéad dul síos cuirfimid tús le modúil a thosú agus acmhainní modúil a chruthú tionscadal_le_úsáideoiragus ansin gach rud eile a chruthú:
Déanfaimid cruthú agus bainistiú braislí Kubernetes a aistriú tríd an gcomhpháirt OpenStack Magnum. Is féidir leat tuilleadh eolais a fháil faoi conas oibriú le braisle i gceann dár ailt roimhe seo, chomh maith le bonn eolais.
Agus an braisle á ullmhú, cruthófar dioscaí agus meaisíní fíorúla agus cuirfear na comhpháirteanna riachtanacha go léir isteach. Tógann an t-ullmhúchán thart ar 4 nóiméad, agus le linn an ama seo taispeánfaidh Terraform teachtaireachtaí mar:
module.kubernetes_cluster.openstack_containerinfra_cluster_v1.cluster_1: Still creating... (3m0s elapsed)
Nuair a bheidh an tsuiteáil críochnaithe, léireoidh Terraform go bhfuil an braisle réidh agus taispeánfaidh sé a ID:
Chun braisle cruthaithe Kubernetes a bhainistiú tríd an bhfóntas cubectl ní mór duit an comhad rochtana braisle a fháil. Chun seo a dhéanamh, téigh go dtí an tionscadal a cruthaíodh trí Terraform i liosta na dtionscadal i do chuntas:
Ansin, lean an nasc cosúil le xxxxx.selvpc.ruatá le feiceáil faoi bhun ainm an tionscadail:
Le haghaidh faisnéise logáil isteach, bain úsáid as an ainm úsáideora agus pasfhocal a chruthaigh tú trí Terraform. Más rud é nach bhfuil tú cheated vars.tf nó príomh.tf mar shampla, beidh an t-ainm ag an úsáideoir tf_úsáideoir. Ní mór duit luach na hathróige a úsáid mar an focal faire TF_VAR_úsáideoir_focal faire, a sonraíodh ag am tosaithe terraform i bhfeidhm níos luaithe.
Taobh istigh den tionscadal ní mór duit dul go dtí an cluaisín Kubernetes:
Seo an áit a bhfuil an braisle a cruthaíodh trí Terraform suite. Íoslódáil an comhad le haghaidh cubectl is féidir leat ar an táb “Rochtain”:
Tá na treoracha suiteála suite ar an gcluaisín céanna. cubectl agus úsáid a bhaint as an íoslódáil cumraíochta.yaml.
Tar éis seoladh cubectl agus an t-athróg timpeallachta a shocrú KUBECONFIG is féidir leat Kubernetes a úsáid:
Nuair a athraíonn líon na nóid, fanfaidh an braisle ar fáil. Tar éis nód a chur leis trí Terraform, is féidir leat é a úsáid gan cumraíocht bhreise:
$ kubectl get nodes
NAME STATUS ROLES AGE VERSION
tf-cluster-rz6nggvs4va7-master-0 Ready,SchedulingDisabled master 8m v1.12.4
tf-cluster-rz6nggvs4va7-minion-0 Ready <none> 8m v1.12.4
tf-cluster-rz6nggvs4va7-minion-1 Ready <none> 8m v1.12.4
tf-cluster-rz6nggvs4va7-minion-2 Ready <none> 3m v1.12.4
Conclúid
San Airteagal seo fuaireamar eolas ar na príomhbhealaí le bheith ag obair leo "Scamall príobháideach fíorúil" trí Terraform. Beidh áthas orainn má úsáideann tú an soláthraí Terraform oifigiúil Selectel agus má thugann tú aiseolas.
Is féidir aon fhabhtanna a fhaightear sa soláthraí Selectel Terraform a thuairisciú trí Saincheisteanna Github.