Terraform

Ano ang Terraform?

Ang Terraform ay infrastructure-as-code na tool mula sa HashiCorp. Inilalarawan ninyo ang mga server, network at cloud service sa mga configuration file, at ang Terraform ang gumagawa o nagbabago ng tunay na imprastraktura para tumugma rito.

Makipag-usap sa isang engineer Knowledge base
Mga server cabinet sa isang data center hall na may raised tile floor

Ano ito

Kung walang ganitong tool, ang imprastraktura ay binubuo sa pamamagitan ng pag-click sa web console, at walang makapagsasabi pagkatapos kung ano mismo ang itinakda. Sa Terraform, ang engineer ay nagsusulat ng mga file na nagsasaad kung ano ang dapat umiral: dalawang virtual machine na may takdang laki, isang pribadong network, isang firewall rule, isang storage bucket.

Nakikipag-usap ang Terraform sa bawat platform sa pamamagitan ng provider, isang plugin na nakakaalam ng API ng platform na iyon. May mga provider para sa AWS, Microsoft Azure, Google Cloud, mga DNS service at marami pang iba, kasama ang mga provider na pinapanatili ng komunidad para sa Proxmox VE. Maaaring sakupin ng isang configuration ang ilan sa mga ito.

Plan, apply at state

  • Plan: inihahambing ng Terraform ang mga file sa kung ano ang umiiral at inililista kung ano ang gagawin, babaguhin o buburahin nito. Wala pang ginagalaw.
  • Apply: matapos basahin ng isang tao ang plan, gagawin lang ng Terraform ang mga pagbabagong iyon.
  • State: nag-iingat ang Terraform ng state file na nagtatala kung aling mga tunay na resource ang kabilang sa aling bahagi ng configuration. Maaari itong maglaman ng mga password at iba pang sensitibong halaga, kaya iniimbak ito sa protektado at shared na lugar, hindi sa isang laptop.

Ano ang nakukuha ng isang negosyo rito

  • Talaan ng imprastraktura: ipinapakita ng mga file, na nakatago sa Git, kung ano ang umiiral at kung bakit ginawa ang bawat pagbabago.
  • Walang sorpresa sa araw ng pagbabago: ipinapakita ng plan kung ano mismo ang mangyayari bago may mabura.
  • Maaaring ulitin na mga kapaligiran: ang test setup o pangalawang site ay mabubuo mula sa parehong mga file ng production.

Terraform at Ansible

Ang Terraform ang gumagawa ng imprastraktura: ang mga makina, network at cloud service. Ang Ansible ang nagko-configure ng tumatakbo sa mga makinang iyon kapag umiiral na ang mga ito. Maraming team ang gumagamit ng pareho.

Lisensya at OpenTofu

Noong 2023, inilipat ng HashiCorp ang Terraform mula sa open-source na lisensya patungo sa Business Source License, na naglilimita sa paggamit sa mga produktong kakumpitensya ng HashiCorp. Bilang tugon, sinimulan ang OpenTofu bilang open-source na fork at isa na itong proyekto ng Linux Foundation. Binabasa nito ang parehong configuration language. Nakumpleto ng IBM ang pagbili sa HashiCorp noong 2025.

Paano nakikipagtulungan ang KawaConnect sa infrastructure as code

Iniingatan namin ang imprastraktura bilang code sa version control, pinapatakbo ang Kubernetes gamit ang GitOps, at bumubuo ng mga Proxmox VE cluster at Microsoft Azure setup. Ang paglalarawan ng imprastrakturang iyon sa mga file ay nagpapahintulot na maulit ang isang build at masubaybayan ang bawat pagbabago.

Mga kaugnay na serbisyo

Cloud na imprastraktura

Azure, mga hybrid setup, mga paglipat at pagpaplano ng recovery.

Proxmox consulting

Mga cluster, high availability at mga paglipat mula sa VMware.

Kubernetes consulting

Mga cluster na binabago sa pamamagitan ng Git gamit ang GitOps.

Alamin ang higit pa

  • Dokumentasyon ng TerraformMga gabay at reference ng HashiCorp para sa configuration language at command line.
  • Terraform RegistryAng pampublikong katalogo ng mga provider at magagamit muling module, na may dokumentasyon para sa bawat isa.
  • OpenTofuAng open-source na fork ng Terraform, na pinapanatili sa ilalim ng Linux Foundation.
  • Terraform sa WikipediaIsang neutral na pangkalahatang-ideya ng tool, kasaysayan nito at ng pagbabago ng lisensya noong 2023.

Imprastrakturang binuo sa pamamagitan ng pag-click?

Sabihin sa amin kung saan tumatakbo ang inyong mga server at cloud service. Ipaliliwanag namin kung ano ang kailangan para ilarawan ang mga ito sa mga file at ano ang magbabago para sa inyo.

Magsimula ng usapan