Bu codelab hakkında
1. Genel Bakış
Son Güncelleme Tarihi: 23.07.2020
Cloud Spanner nedir?
Google Cloud Spanner; replika, parçalama ve işlem işlemlerini otomatik olarak gerçekleştiren, küresel olarak dağıtılan ve ACID uyumlu bir veritabanıdır. Böylece her türlü kullanım kalıbına uyacak şekilde hızlıca ölçeklendirme yapabilir ve ürünlerinizin başarılı olmasını sağlayabilirsiniz.
Temel Özellikler
- Ölçeklendirme için tasarlanmış ilişkisel veritabanı: Şemalar, SQL sorguları ve ACID işlemleri gibi ilişkisel bir veritabanından bekleyebileceğiniz her şey çalışma koşullarında test edilmiş ve küresel olarak ölçeklenmeye hazırdır.
- % 99,999 kullanılabilirlik: Cloud Spanner, çok bölgeli örnekler için sektör lideri% 99,999 kullanılabilirlik sunar (dört dokuza göre 10 kat daha az kapalı kalma süresi) ve bölge ile çok bölgeli yapılandırmalarda şeffaf ve eşzamanlı çoğaltma sağlar.
- Otomatik parçalama: Cloud Spanner, verileri istek yüküne ve verilerin boyutuna göre otomatik olarak parçalayarak performansı optimize eder. Böylece, veritabanınızı nasıl ölçeklendireceğiniz konusunda endişelenmeye daha az zaman harcayıp bunun yerine işletmenizi ölçeklendirmeye odaklanabilirsiniz.
Neler öğreneceksiniz?
- Google Cloud Terraform sağlayıcısı nasıl kullanılır?
- Cloud Spanner örnekleri ve veritabanları oluşturmak için Terraform'u kullanma.
- Cloud Spanner kaynaklarını değiştirmek için Terraform'u kullanma.
- Cloud Spanner kaynaklarını silmek için Terraform'u kullanma.
2. Kurulum ve Gereksinimler
Kendi hızınızda ortam kurulumu
Google Hesabınız (Gmail veya Google Apps) yoksa bir hesap oluşturmanız gerekir. Google Cloud Platform konsolunda oturum açın ( console.cloud.google.com) ve yeni bir proje oluşturun:
Tüm Google Cloud projelerinde benzersiz bir ad olan proje kimliğini unutmayın (yukarıdaki ad zaten alınmış ve size uygun olmayacaktır!). Bu kod, bu codelab'in ilerleyen bölümlerinde PROJECT_ID olarak adlandırılacaktır.
Sonraki adımda, Google Cloud kaynaklarını kullanmak için Cloud Console'da faturalandırmayı etkinleştirmeniz gerekir.
Bu codelab'i kullanmanın maliyeti birkaç dolardan fazla olmayacaktır. Ancak daha fazla kaynak kullanmaya karar verirseniz veya bu kaynakları çalışır durumda bırakırsanız daha yüksek ücret ödemeniz gerekebilir (bu belgenin sonundaki "temizlik" bölümüne bakın).
Yeni Google Cloud Platform kullanıcıları 300 ABD doları değerinde ücretsiz denemeden yararlanabilir.
Kimlik Doğrulama
Daha önce yapmadıysanız lütfen gcloud komut satırı aracını yükleyin. gcloud yüklendikten sonra terminalinizde aşağıdaki komutu çalıştırarak Uygulama Varsayılan Kimlik Bilgilerini etkinleştirin:
$ gcloud auth application-default login
Terraform
Terraform'u daha önce yüklemediyseniz Terraform'u yükleyin.
3. Google Cloud Terraform Sağlayıcısı
Google Cloud Terraform Sağlayıcısı, dört Cloud Spanner kaynağı sağlar:
- google_spanner_instance
- google_spanner_database
- google_spanner_instance_iam
- google_spanner_database_iam
Bu codelab'de Cloud Spanner örnekleri ve veritabanlarını oluşturup yöneteceğiz.
Ortam
Geliştirme ortamınızda, Terraform yapılandırma dosyalarınız için yeni bir dizin oluşturun.
$ mkdir ~/terraform-spanner $ cd ~/terraform-spanner
Ardından, "main.tf" adında bir dosya oluşturun. PROJECT_ID'yi kendi Google Cloud proje kimliğinizle değiştirin:
$ cat >> main.tf <<'EOF' provider "google" { project = "PROJECT_ID" } EOF
Codelab'in bu geri kalanında bu dosyayı değiştirecek ve değişiklikleri uygulayacağız.
4. Örnekler ve Veritabanları Oluşturma
Yeni bir Cloud Spanner örneği eklemek için main.tf dosyasını aşağıdaki içerikle değiştirin:
provider "google" { project = "PROJECT_ID" } resource "google_spanner_instance" "main" { config = "regional-us-central1" display_name = "first-terraform-instance" num_nodes = 3 }
Değişiklikleri uygulamak için aşağıdaki komutu çalıştırın:
$ terraform apply # ... Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes # ... Apply complete! Resources: 1 added, 0 changed, 0 destroyed.
Değişiklikler uygulandıktan sonra örneği Google Cloud Console'da görebilirsiniz. Örnek oluşturulduktan sonra bölgesel yapılandırmanın değiştirilemeyeceğini lütfen unutmayın.
Örneği oluşturduktan sonraki adımlarda veritabanı oluşturacağız. main.tf dosyasını şu içeriklerle değiştirin:
provider "google" { project = "PROJECT_ID" } resource "google_spanner_instance" "main" { config = "regional-us-central1" display_name = "first-terraform-instance" num_nodes = 3 } resource "google_spanner_database" "database" { instance = google_spanner_instance.main.name name = "my-first-database" }
Değişiklikleri uygulamak için aşağıdaki komutu tekrar kullanın:
$ terraform apply # ... Apply complete! Resources: 0 added, 1 changed, 0 destroyed.
İşlem başarılı olursa ilk veritabanım örnek altında kullanılabilir:
5. Örnekleri Değiştirme
Önceki bölümde belirtildiği gibi, örneklerin tüm özellikleri değiştirilemez. Ancak örnek tarafından kullanılan kaynakları ayarlamak için düğüm sayısını artırabilir/azaltabilirsiniz. Oluşturulan örnek 3 düğüme sahiptir. main.tf dosyasını değiştirerek düğüm sayısını 5'e çıkaracağız:
provider "google" { project = "PROJECT_ID" } resource "google_spanner_instance" "main" { config = "regional-us-central1" display_name = "first-terraform-instance" num_nodes = 5 } resource "google_spanner_database" "database" { instance = google_spanner_instance.main.name name = "my-first-database" }
Bir sonraki adım, değişiklikleri uygulamaktır:
$ terraform apply # ... Apply complete! Resources: 0 added, 1 changed, 0 destroyed.
İşlem başarılı olduğunda örnek 5 düğüm kullanır.
6. Veritabanı Silme
Artık ihtiyaç duymadığınız bir veritabanını kalıcı olarak silebilirsiniz. Veritabanını main.tf'den kaldırıp değişiklikleri uygulamanız yeterlidir.
provider "google" { project = "PROJECT_ID" } resource "google_spanner_instance" "main" { config = "regional-us-central1" display_name = "first-terraform-instance" num_nodes = 5 }
$ terraform apply # ... Apply complete! Resources: 0 added, 0 changed, 1 destroyed.
İşlem tamamlandığında veritabanı kalıcı olarak silinir.
7. Örnekleri Silme
Artık ihtiyaç duymadığınız bir örneği kalıcı olarak silebilirsiniz. Örneği main.tf dosyasından kaldırıp değişiklikleri uygulamanız yeterlidir.
provider "google" { project = "PROJECT_ID" }
$ terraform apply # ... Apply complete! Resources: 0 added, 0 changed, 1 destroyed.
İşlem başarılı olduğunda örnek kalıcı olarak silinir.
8. Tebrikler!
Terraform kullanarak Cloud Spanner kaynakları oluşturdunuz, değiştirdiniz ve sildiniz.
İşlediklerimiz
- Google Cloud Terraform sağlayıcısı nasıl kullanılır?
- Cloud Spanner örnekleri ve veritabanları oluşturmak için Terraform'u kullanma.
- Cloud Spanner kaynaklarını değiştirmek için Terraform'u kullanma.
- Cloud Spanner kaynaklarını silmek için Terraform'u kullanma.
Daha Fazla Bilgi
- Google Cloud Spanner belgelerini görüntüleyin.
- Google Cloud Spanner Terraform kaynağı hakkında bilgi edinin.
- Örnekler ve veritabanları için IAM kuralları belirleme hakkında bilgi edinin.