GNU/Linux >> Belajar Linux >  >> Linux

Buat Bucket S3 di AWS menggunakan Terraform

Dalam artikel ini, saya akan menunjukkan cara menggunakan Terraform untuk membuat bucket S3 di AWS. Sebelum melanjutkan, saya berasumsi bahwa Anda sudah familiar dengan S3 bucket jika belum maka Anda dapat mengklik di sini untuk melihat langkah-langkah membuat bucket S3 dari konsol AWS.

Prasyarat

  1. Pemahaman dasar tentang Terraform.
  2. Terraform terpasang di sistem Anda.
  3. Akun AWS (Buat jika Anda belum memilikinya).
  4. 'access_key' &'secret_key' dari Pengguna AWS IAM. (Klik di sini untuk belajar membuat pengguna IAM dengan 'access_key' &'secret_key' di AWS, )

Apa yang akan kami lakukan

  1. Tulis file konfigurasi Terraform untuk Bucket S3.
  2. Buat Bucket S3 menggunakan file konfigurasi Terraform.
  3. Hapus Bucket S3 yang dibuat menggunakan Terraform.

Tulis file konfigurasi Terraform untuk Bucket S3

Buat direktori khusus tempat Anda dapat membuat file konfigurasi terraform.

Gunakan perintah berikut untuk membuat direktori dan mengubah direktori kerja Anda saat ini ke direktori tersebut.

mkdir terraform
cd terraform/

Saya menggunakan "vim" sebagai editor untuk menulis dalam file, Anda dapat menggunakan editor pilihan Anda dan salin tempel konfigurasi berikut untuk membuat variabel.tf, terraform.tfvars, dan  main.tf

Buat 'main.tf' yang bertanggung jawab untuk membuat Bucket S3 di AWS. Main.tf ini akan membaca nilai variabel dari variabel.tf dan terraform.tfvars.

vim main.tf
provider "aws" {
      region     = "${var.region}"
      access_key = "${var.access_key}"
      secret_key = "${var.secret_key}"
}

resource "aws_s3_bucket" "this" {
  bucket                               = "${var.bucket_name}"
  force_destroy                        = "${var.force_destroy}"
  region                               = "${var.region}"
  tags                                 = "${merge(var.tags, map("Name", format("%s", var.bucket_name)))}"
}

Here,

  • bucket:  Nama ember. Jika dihilangkan, Terraform akan memberikan nama unik yang acak.
  • force_destroy: Boolean yang menunjukkan semua objek harus dihapus dari bucket agar bucket dapat dimusnahkan tanpa kesalahan.
  • region : Wilayah AWS tempat bucket ini seharusnya berada.
  • tags: Peta tag untuk ditetapkan ke ember.

Ubah nilai "wilayah" jika Anda ingin membuat Bucket di beberapa wilayah selain yang telah saya tentukan.

Buat 'variables.tf' yang berisi deklarasi dan definisi variabel.

vim variables.tf
variable "access_key" {
     description = "Access key to AWS console"
}
variable "secret_key" {
     description = "Secret key to AWS console"
}
variable "region" {
     description = "Region of AWS VPC"
}

variable "bucket_name" {
  description = "(Required) Creates a unique bucket name"
  type        = "string"
  default     = "test-bucket-rahul-delete"
}

variable "force_destroy" {
  description = "(Optional) A boolean that indicates all objects should be deleted from the bucket so that the bucket can be destroyed without error"
  type        = "string"
  default     = true
}

variable "tags" {
  description = "(Optional) A mapping of tags to assign to the bucket"
  type        = "map"
  default     = {"env": "test"}
}

Setelah Anda membuat 'variables.tf', jangan lupa untuk mengubah nilai yang ditetapkan ke variabel. Anda harus mengubah nilai yang disorot karena ini khusus untuk lingkungan saya. Anda dapat menyimpan variabel lainnya apa adanya.

Buat 'terraform.tfvars' yang berisi definisi variabel access_key dan secret_key yang didefinisikan dalam file di atas bersama dengan variabel "region".

Kunci berikut perlu diubah dengan kunci pengguna IAM Anda.

vim terraform.tfvars
region = "eu-west-3"
access_key = "AKIAQ6GAIA5XFLXF6HOV"
secret_key = "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"

Sekarang, Anda harus memiliki 3 file, yaitu, variabel.tf, terraform.tfvars dan  main.tf

Buat Bucket S3 menggunakan file konfigurasi Terraform

Sebelum Anda menjalankan perintah berikut, pastikan Anda telah mengonfigurasi access_key dan secret_key yang valid.

Perintah pertama yang digunakan adalah 'terraform init'. Perintah ini mengunduh dan menginstal plugin untuk penyedia yang digunakan dalam konfigurasi. Dalam kasus kami ini adalah AWS.

 terraform init

Perintah kedua yang akan digunakan adalah 'rencana terraform'. Perintah ini digunakan untuk melihat perubahan yang akan terjadi pada infrastruktur.

 terraform plan

Perintah 'terraform apply' akan membuat sumber daya pada AWS yang disebutkan dalam file main.tf. Anda akan diminta untuk memberikan masukan untuk membuat sumber daya.

terraform apply

Saat Anda menjalankan perintah di atas, setelah berhasil diselesaikan, Anda dapat melihat bahwa 1 resource baru telah ditambahkan dan 0 telah dihancurkan.

Anda dapat membuka konsol AWS S3 untuk memverifikasi apakah Bucket S3 dibuat atau tidak.

Hapus S3 Bucket menggunakan Terraform

Jika Anda tidak lagi memerlukan sumber daya yang Anda buat menggunakan konfigurasi yang disebutkan dalam file main.tf, Anda dapat menggunakan perintah "terraform destroy" untuk menghapus semua sumber daya tersebut. Di sini, bucket S3 akan dihapus setelah menjalankan perintah berikut.

terraform destroy

Pada tangkapan layar di atas, Anda dapat melihat bahwa sumber daya telah dihancurkan.

Kesimpulan

Pada artikel ini, kita melihat langkah-langkah untuk membuat Bucket S3 menggunakan Terraform. Kami juga melihat bagaimana Bucket yang kami buat dapat dihapus hanya dalam satu perintah.


Linux
  1. Buat Virtual Private Cloud (VPC) di AWS menggunakan Terraform

  2. Cara membuat instans RDS di AWS menggunakan Terraform

  3. Cara membuat Peran IAM di AWS menggunakan Terraform

  1. Cara Meluncurkan Instans AWS EC2 Menggunakan Terraform

  2. Buat instans EC2 di AWS menggunakan Terraform

  3. Cara membuat Pengguna Linux Menggunakan Ansible

  1. Cara membuat modul Terraform

  2. Kelola Topik SNS AWS menggunakan aws-cli

  3. Kelola AWS VPC menggunakan aws-cli