Selain menggunakan S3 dari AWS, kita bisa menggunakan varian S3 (kompatibel dengan protocol S3) untuk menyimpan state Terraform. Pada tulisan kali ini kita akan membahas Backblaze R2
Membuat Bucket
Buka https://secure.backblaze.com/b2_buckets.htm, buat bucket baru, contoh dengan nama europe-terraform
, pastikan anda memilih Private
Membuat API Key
Buka https://secure.backblaze.com/app_keys.htm, menu Application Key
keyID
sama dengan AWS_ACCESS_KEY_ID
applicationKey
sama dengan AWS_SECRET_ACCESS_KEY
Sampai disini proses di Backblaze sudah selesai. Bagian selanjutnya dibagian code Terraform
Terraform Code
Bila anda belum memiliki project terraform bisa melihat contohnya disini.
Buat file baru dengan nama backend.tf
terraform { backend "s3" { skip_credentials_validation = true skip_metadata_api_check = true skip_region_validation = true endpoint = "s3.us-west-001.backblazeb2.com" region = "apt-southeast-3" bucket = "europe-terraform" key = "terraform.tfstate" } }
endpoint: dari bucket yang baru dibuat, contoh s3.us-west-001.backblazeb2.com
bucket: nama bucket yang baru dibuat
skip_credentials_validation: mandatory
skip_metadata_api_check: mandatory
skip_region_validation: mandatory
region: mandatory, nilainya bisa apapun.
key: nama file terraform state
Setelah semua selesai, copy keyID dan applicationKey dari Application Key yang kita buat sebelumnya.
export AWS_ACCESS_KEY_ID="" export AWS_SECRET_ACCESS_KEY="" terraform apply
output
hcloud_placement_group.app: Refreshing state... [id=364869] hcloud_ssh_key.default: Refreshing state... [id=22127137] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create ... ... Apply complete! Resources: 1 added, 0 changed, 0 destroyed.
Setelah berhasil di deploy, lihat kembali bucket yang dibuat