Terraform modülünde programlanabilir AWS Landing Zone ile tanışın

Herkese selam! Aralık ayında OTUS yeni bir kurs başlatıyor - Bulut Çözüm Mimarisi. Bu kursun başlamasını beklerken sizinle konuyla ilgili ilginç materyallerin çevirisini paylaşıyoruz.

Terraform modülünde programlanabilir AWS Landing Zone ile tanışın

AWS Giriş Bölgesi müşterilerin en iyi uygulamalara dayalı olarak güvenli, çok hesaplı bir AWS ortamını hızlı bir şekilde kurmasına yardımcı olan bir çözümdür.

Beş yılı aşkın süredir Mitoc Group'taki ekibimiz, büyük kuruluşların dijital ayak izlerini başarılı bir şekilde dijital olarak dönüştürmelerine ve oluşturmalarına veya AWS bulutuna taşımalarına yardımcı olmak için yorulmadan çalıştı. Başka bir deyişle, AWS'deki arkadaşlarımızdan alıntı yapacak olursak: "Müşterilerimiz AWS ile kendilerini yeniden keşfediyor." Müşteriler adına mekaniği yeniden icat etmek ve basitleştirmek hiç bitmeyen bir çabadır ve AWS, karmaşık sorunları öğrenmesi kolay çözümlerle çözme konusunda harika bir iş çıkarır.

Terraform modülünde programlanabilir AWS Landing Zone ile tanışın
AWS Giriş Bölgesi (kaynak)

AWS Giriş Bölgesi nedir?

Resmi bir kaynaktan alınan bilgiye göre:

AWS Landing Zone, müşterilerin AWS'nin en iyi uygulamalarına dayalı olarak birden fazla hesapla güvenli bir AWS ortamını hızlı bir şekilde kurmasına yardımcı olan bir çözümdür. Bu kadar çok seçenek varken, çok hesaplı bir ortam oluşturmak zaman alıcı olabilir, birden fazla hesabın ve hizmetin yapılandırılmasını gerektirebilir ve AWS hizmetlerinin derinlemesine anlaşılmasını gerektirebilir.

AWS Landing Zone, farklı müşterilere sunulan benzer tasarım modellerinin karmaşıklığını ve tutarlılığını önemli ölçüde azalttı. Öte yandan ekibimiz bazı CloudFormation bileşenlerini otomasyonda daha fazla kullanabilmek için Terraform bileşenleri olarak yeniden yapılandırmak zorunda kaldı.

Bu yüzden kendimize şu soruyu sorduk: Neden AWS Landing Zone çözümünün tamamını Terraform'da oluşturmuyoruz? Bunu yapabilir miyiz ve müşterilerimizin sorunlarını çözebilir miyiz? Spoiler: Öyle olacak ve zaten karar veriyor! 🙂

AWS Landing Zone'u ne zaman kullanmamalısınız?

Bir veya iki AWS hesabındaki normal bulut hizmetleri ve bulut kaynaklarıyla uğraşıyorsanız bu önlemler aşırıya kaçabilir. Bu konuyla ilgisi olmayanlar okumaya devam edebilir :)

Çalışmaya başlamadan önce nelere dikkat etmelisiniz?

Birlikte çalıştığımız büyük kuruluşların çoğunda halihazırda bir çeşit bulut stratejisi mevcut. Şirketler, net bir vizyon ve beklentiler olmadan bulut hizmetlerini başarılı bir şekilde uygulamakta zorlanıyor. Lütfen stratejinizi tanımlamaya zaman ayırın ve AWS'nin bu stratejiye nasıl uyduğunu anlayın.

Başarılı AWS Landing Zone müşterileri bir strateji belirlerken aktif olarak aşağıdakilere odaklanır:

  • Otomasyon kesinlikle bir seçenek değildir. Bulut yerel otomasyon tercih edilir.
  • Ekipler, bulut kaynaklarını sağlamak için sürekli olarak aynı mekanizmaları aynı araçlarla kullanır. Terraform'u kullanmak daha iyidir.
  • En üretken bulut kullanıcıları, yeniden kullanılabilir süreçler oluşturma ve bunları yeniden kullanılabilir kod yerine yeniden kullanılabilir hizmetler olarak sunma becerisine sahiptir. Sunucusuz mimari tercih edilmiştir.

AWS Landing Zone için Terraform Modülünün Tanıtımı

Birkaç ay süren sıkı çalışmanın ardından size sunmaktan mutluluk duyuyorum AWS Landing Zone için Terraform modülü. Kaynak kodu GitHub'da depolanır ve kararlı sürüm sürümleri Terraform Modül Kayıt Defteri'nde yayınlandı.

Başlamak için açmanız yeterli main.tf kodunuza:

module "landing_zone" {
  source     = "TerraHubCorp/landing-zone/aws"
  version    = "0.0.6"
  root_path  = "${path.module}"
  account_id = "${var.account_id}"
  region     = "${var.region}"
  landing_zone_components = "${var.landing_zone_components}"
}

Not: Etkinleştirdiğinizden emin olun variables.tf ve ihtiyacınız olabilecek her şey outputs.tf.

Anlaşılmasını kolaylaştırmak için varsayılan değerleri ekledik. terraform.tfvars:

account_id = "123456789012"
region = "us-east-1"
landing_zone_components = {
  landing_zone_pipeline_s3_bucket = "s3://terraform-aws-landing-zone/mycompany/landing_zone_pipeline_s3_bucket/default.tfvars"
  [...]
}

Bu, bu modülü kullanırken terraform İhtiyacınız olacak:

  1. Değişim değerleri account_id и region AWS Kuruluşundaki verilere karşılık gelen kendinize ait veriler;
  2. Değişim değerleri landing_zone_components AWS Landing Zone kullanım durumunuzla eşleşenler;
  3. Değiştirmek s3://terraform-aws-landing-zone/mycompany senin bloğuna S3 ve anahtar öneki S3dosyaları nerede saklayacaksınız .tfvars (veya dosyalara giden mutlak yol .tfvars yerel depolama alanınızda).

Bu modül onlarca, yüzlerce veya binlerce konuşlandırılabilir bileşene sahip olabilir, ancak bunların hepsinin konuşlandırılması gerekmez veya dağıtılmayacaktır. Çalışma zamanında değişken haritasının parçası olmayan bileşenler landing_zone_components görmezden gelinecek.

Sonuç

Müşterilerimizin bulut yerel otomasyon oluşturmasına yardımcı olma çabalarımızın meyvelerini paylaşmaktan heyecan ve gurur duyuyoruz. AWS Landing Zone için Terraform modülü, kuruluşların AWS'nin en iyi uygulamalarına dayalı olarak birden fazla hesapla güvenli bir AWS ortamını hızlı bir şekilde kurmasına yardımcı olan başka bir çözümdür. AWS'nin inanılmaz derecede hızlı büyüdüğünün farkındayız ve aynı zamanda tüm temelleri kapsayan ve aynı zamanda diğer AWS üretim çözümleriyle entegre olan bir dünyasal çözümü de hızla geliştirmeye kararlıyız.

Bu kadar. Yorumlarınızı bekliyor ve sizi davet ediyoruz ücretsiz web semineri içinde bulunduğumuz Cloud Landing Zone etki alanı mimarisinin tasarımını inceleyeceğiz ve ana etki alanlarının mimari kalıplarını ele alacağız.

Kaynak: habr.com

Yorum ekle