Pembekal dan Sumber
Fahami cara Terraform berinteraksi dengan pelbagai pembekal awan dan perkhidmatan, serta cara mentakrifkan komponen infrastruktur individu sebagai sumber.
Pembekal dan Sumber ialah pelajaran Kem Intensif DevOps percuma di CoddyKit. Ini ialah pelajaran 1 daripada 4. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Kem Intensif DevOps, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Kem Intensif DevOps merangkumi sejumlah 4 pelajaran.
Blok Binaan Teras Terraform
Selamat datang! Terraform membantu anda mengurus infrastruktur awan menggunakan kod. Tetapi bagaimanakah Terraform berhubung dengan penyedia awan dan mentakrifkan perkara yang ingin anda bina?
Pelajaran ini memperkenalkan dua konsep asas: Penyedia dan Sumber. Kedua-duanya ialah blok binaan asas bagi setiap konfigurasi Terraform dan penting untuk memahami cara IaC berfungsi.
Apakah Penyedia Terraform?
Anggap Penyedia sebagai pemalam yang membolehkan Terraform berinteraksi dengan perkhidmatan atau API luaran. Ini boleh berupa penyedia awan seperti AWS, Azure atau Google Cloud, malah perkhidmatan seperti GitHub, Kubernetes atau Datadog.
- Setiap penyedia memahami panggilan API khusus yang diperlukan oleh perkhidmatannya.
- Penyedia menterjemahkan infrastruktur yang anda kehendaki kepada tindakan yang boleh dilakukan oleh perkhidmatan tersebut.
- Anda mengkonfigurasi penyedia untuk memberitahu Terraform perkhidmatan yang hendak digunakan dan cara membuat pengesahan.
Mengisytiharkan Blok Penyedia
Untuk menggunakan penyedia, anda mengisytiharkannya dalam fail konfigurasi Terraform menggunakan blok provider. Blok ini menentukan nama penyedia dan sebarang tetapan konfigurasi yang diperlukan, seperti rantau bagi penyedia awan.
Berikut ialah contoh lazim untuk penyedia AWS:
terraform {
required_providers {
aws = {
source = "hashicorp/aws"
version = "~> 5.0"
}
}
}
provider "aws" {
region = "us-east-1"
}terraform {
required_providers {
aws = {
source = "hashicorp/aws"
version = "~> 5.0"
}
}
}
provider "aws" {
region = "us-east-1"
}Sumber dan Versi Penyedia
Bahagian required_providers dalam blok terraform adalah penting. Bahagian ini memberitahu Terraform tempat untuk mencari penyedia (source) dan version yang hendak digunakan. Ini memastikan keseragaman dan mengelakkan tingkah laku yang tidak dijangka.
- Sumber: Menentukan laluan daftar untuk penyedia (contohnya,
hashicorp/aws). - Versi: Mengunci versi penyedia dan menghalang perubahan yang merosakkan daripada keluaran baharu.
- Blok
provider "aws"kemudiannya mengkonfigurasi tetapan khusus, sepertiregionAWS untuk semua sumber yang diurus oleh penyedia ini.
Apakah Sumber Terraform?
Sumber ialah blok yang menerangkan satu komponen infrastruktur. Komponen ini boleh berupa mesin maya (VM), rangkaian, pangkalan data, baldi storan atau akaun pengguna.
- Setiap jenis sumber diurus oleh penyedia tertentu (contohnya,
aws_s3_bucketdiurus oleh penyedia AWS). - Anda mengisytiharkan keadaan sumber yang dikehendaki, lalu Terraform berusaha mencapai keadaan tersebut.
- Sumber mempunyai hujah yang menentukan sifatnya (contohnya, saiz, nama dan lokasi).
Mengisytiharkan Blok Sumber
Anda mentakrifkan sumber menggunakan blok resource. Blok ini memerlukan dua rentetan:
- Jenis sumber (contohnya,
aws_s3_bucket). - Nama setempat (contohnya,
my_first_bucket) yang unik dalam konfigurasi anda.
Jenis memberitahu Terraform jenis komponen infrastruktur tersebut, manakala nama memberikan pengecam unik untuk dijejaki oleh Terraform.
resource "aws_s3_bucket" "my_first_bucket" {
# Arguments go here to define its properties
}resource "aws_s3_bucket" "my_first_bucket" {
# Arguments go here to define its properties
}Hujah dan Sifat Sumber
Di dalam blok resource, anda menentukan hujah. Hujah ini ialah pasangan kunci-nilai yang mentakrifkan sifat dan konfigurasi komponen infrastruktur. Hujah yang tersedia bergantung pada jenis sumber dan penyedia yang menguruskannya.
- Bagi baldi AWS S3, hujah mungkin termasuk
bucket(nama unik),acl(senarai kawalan akses) atautagsuntuk pelabelan. - Terraform menggunakan hujah ini untuk mencipta atau mengemas kini sumber agar sepadan dengan keadaan yang anda kehendaki dalam awan.
Menggabungkan Penyedia & Sumber
Berikut ialah konfigurasi Terraform yang ringkas dan lengkap. Konfigurasi ini mengisytiharkan penyedia AWS, kemudian menggunakannya untuk mencipta baldi S3 asas. Satu fail ini sahaja sudah mencukupi untuk anda mula mentakrifkan infrastruktur!
terraform {
required_providers {
aws = {
source = "hashicorp/aws"
version = "~> 5.0"
}
}
}
provider "aws" {
region = "us-east-1"
}
resource "aws_s3_bucket" "my_unique_bucket" {
bucket = "my-coddykit-demo-bucket-12345" # Must be globally unique!
acl = "private"
tags = {
Environment = "Development"
Project = "CoddyKit"
}
}terraform {
required_providers {
aws = {
source = "hashicorp/aws"
version = "~> 5.0"
}
}
}
provider "aws" {
region = "us-east-1"
}
resource "aws_s3_bucket" "my_unique_bucket" {
bucket = "my-coddykit-demo-bucket-12345" # Must be globally unique!
acl = "private"
tags = {
Environment = "Development"
Project = "CoddyKit"
}
}Hubungan Aliran Kerja Terraform
Apabila anda melaksanakan perintah Terraform, penyedia dan sumber memainkan peranan penting:
terraform init: Memuat turun pemalam penyedia yang diperlukan.terraform plan: Menggunakan penyedia untuk berkomunikasi dengan API awan dan menentukan perubahan yang diperlukan bagi mencapai keadaan sumber yang dikehendaki.terraform apply: Mengarahkan penyedia untuk membuat perubahan tersebut pada infrastruktur awan sebenar anda.
Kedua-duanya ialah titik interaksi teras untuk mengurus infrastruktur anda.
Semakan Pantas: Peranan Penyedia
Anda telah mempelajari tentang Penyedia dan Sumber. Mari lihat sama ada anda boleh mengenal pasti peranan kedua-duanya dengan betul.
Ulang Kaji: Penyedia & Sumber
Syabas! Dalam pelajaran ini, anda memperoleh pemahaman asas tentang dua konsep paling penting dalam Terraform:
- Penyedia: Pemalam penting yang membolehkan Terraform berinteraksi dengan pelbagai perkhidmatan awan dan API. Anda mengkonfigurasinya untuk menentukan perkhidmatan yang hendak digunakan dan cara membuat pengesahan.
- Sumber: Komponen infrastruktur individu yang anda isytiharkan dalam konfigurasi. Sumber mempunyai jenis dan hujah untuk menentukan keadaan yang dikehendaki.
Kedua-dua elemen ini bekerjasama untuk membolehkan anda mentakrifkan dan mengurus infrastruktur sebagai kod dengan cekap!
Pelajari Kem Intensif DevOps dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 142
- Pelajaran
- 568
Soalan Lazim
Adakah pelajaran “Pembekal dan Sumber” percuma?
Ya — sebanyak 3 pelajaran dalam laluan pembelajaran Kem Intensif DevOps, termasuk “Pembekal dan Sumber”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus Kem Intensif DevOps merangkumi sejumlah 4 pelajaran.
Apakah yang akan saya pelajari dalam “Pembekal dan Sumber”?
Fahami cara Terraform berinteraksi dengan pelbagai pembekal awan dan perkhidmatan, serta cara mentakrifkan komponen infrastruktur individu sebagai sumber. Anda berlatih Kem Intensif DevOps menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Kem Intensif DevOps?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Kem Intensif DevOps di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 1 daripada 4.
Berapa lamakah pelajaran “Pembekal dan Sumber” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Kem Intensif DevOps ini?
Ya. Setiap pelajaran Kem Intensif DevOps menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.