1. Genel Bakış
Başka bir proje veya VPC ağından özel Cloud SQL örneğine bağlanmak için çeşitli seçenekler vardır. Özel bağlantılar üzerinden Google ve üçüncü taraf hizmetlerinin dahili IP adreslerine ulaşmak için özel hizmet erişimini (PSA) kullanabilirsiniz. Veritabanına erişimi genişletmek için artık Private Service Connect'i (PSC) de etkinleştirebilirsiniz.
Private Service Connect (PSC), hizmet üreticilerinin hizmetlerini hizmet ekleri aracılığıyla kullanıma sunmasına olanak tanır. Tüketiciler, bu ekleri kullanarak ortamlarında PSC uç noktaları ve/veya PSC arka uçları oluşturabilir. Bu PSC uç noktaları aracılığıyla, kullanıcı tarafından belirtilen özel bir IP üzerinden üretici hizmetlerine bağlanabilirler.
Bu laboratuvarda seçeneği yapılandırabilir ve test edebilirsiniz.
Bu laboratuvarda, CloudSQL ile PSA ve PSC uç nokta erişiminin kullanımını gösteren basit bir mimari oluşturacaksınız.
Şekil 1.

Bu laboratuvar için iki projeye veya aynı projede ayrı VPC'lere ihtiyacınız vardır.
Hedefler
Bu laboratuvarda, aşağıdaki görevi nasıl gerçekleştireceğinizi öğreneceksiniz:
- Hizmet ağı oluşturmayı etkinleştirme
- PSA'yı ayarlama
- PSA ile Cloud SQL örneği oluşturma
- PSC hizmet ekini etkinleştirin.
- Cloud SQL veritabanına bağlanmak için tüketici VPC'sinde bir PSC uç noktası oluşturun.
- Hem üretici hem de tüketici VPC'lerinde test sanal makinelerinden SQL veritabanına erişimi doğrulayın.
2. Kurulum ve Gereksinimler
Yönlendirmesiz ortam kurulumu
- Google Cloud Console'da oturum açın ve yeni bir proje oluşturun veya mevcut bir projeyi yeniden kullanın. Gmail veya Google Workspace hesabınız yoksa hesap oluşturmanız gerekir.



- Proje adı, bu projenin katılımcıları için görünen addır. Google API'leri tarafından kullanılmayan bir karakter dizesidir. Bu bilgiyi istediğiniz zaman güncelleyebilirsiniz.
- Proje kimliği, tüm Google Cloud projelerinde benzersizdir ve sabittir (ayarlandıktan sonra değiştirilemez). Cloud Console, benzersiz bir dizeyi otomatik olarak oluşturur. Genellikle bu dizenin ne olduğuyla ilgilenmezsiniz. Çoğu codelab'de proje kimliğinize (genellikle
PROJECT_IDolarak tanımlanır) başvurmanız gerekir. Oluşturulan kimliği beğenmezseniz başka bir rastgele kimlik oluşturabilirsiniz. Dilerseniz kendi adınızı deneyerek kullanılabilir olup olmadığını kontrol edebilirsiniz. Bu adım tamamlandıktan sonra değiştirilemez ve proje süresince geçerli kalır. - Bazı API'lerin kullandığı üçüncü bir değer olan Proje Numarası da vardır. Bu üç değer hakkında daha fazla bilgiyi belgelerde bulabilirsiniz.
- Ardından, Cloud kaynaklarını/API'lerini kullanmak için Cloud Console'da faturalandırmayı etkinleştirmeniz gerekir. Bu codelab'i tamamlamak neredeyse hiç maliyetli değildir. Bu eğitimin ötesinde faturalandırılmayı önlemek için kaynakları kapatmak üzere oluşturduğunuz kaynakları veya projeyi silebilirsiniz. Yeni Google Cloud kullanıcıları 300 ABD doları değerinde ücretsiz deneme programından yararlanabilir.
Cloud Shell'i başlatma
Google Cloud, dizüstü bilgisayarınızdan uzaktan çalıştırılabilir ancak bu codelab'de Cloud'da çalışan bir komut satırı ortamı olan Google Cloud Shell'i kullanacaksınız.
Google Cloud Console'da sağ üstteki araç çubuğunda Cloud Shell simgesini tıklayın:

Ortamın temel hazırlığı ve bağlanması yalnızca birkaç dakikanızı alır. İşlem tamamlandığında aşağıdakine benzer bir ekranla karşılaşırsınız:

Bu sanal makine, ihtiyaç duyacağınız tüm geliştirme araçlarını içerir. 5 GB boyutunda kalıcı bir ana dizin sunar ve Google Cloud üzerinde çalışır. Bu sayede ağ performansı ve kimlik doğrulama önemli ölçüde güçlenir. Bu codelab'deki tüm çalışmalarınızı tarayıcıda yapabilirsiniz. Herhangi bir şey yüklemeniz gerekmez.
3. 1. görev: Veritabanı projesi için ortamı ayarlama (Terraform ile)
Veritabanı projesinde hizmet ağı oluşturmayı etkinleştirecek, bir VPC oluşturacak, bir PSA aralığı oluşturacak, bir hizmet ağı eşlemesi oluşturacak ve güvenlik duvarı kuralları oluşturacağız. Cloud Console'u açın ve veritabanı için kullanacağınız projeyi seçin.
- Konsolunuzun sağ üst kısmında bulunan Cloud Shell'i açın, Cloud Shell'de veritabanı projesi için veritabanı proje kimliğini gördüğünüzden emin olun ve erişime izin vermek için tüm istemleri onaylayın.

- terraform-db-psc adlı bir klasör oluşturun ve bu klasöre gidin.
mkdir terraform-db-psc && cd terraform-db-psc
- main.tf, variable.tf, nat-vm.tf ve database.tf dosyası oluşturun.
touch main.tf variable.tf nat-vm.tf database.tf
- Cloud Shell Düzenleyici görünümüne geçin. Düzenleyici'yi seçin ve arayüzün yüklenebilmesi için gerekli istemlere izin verin.
- Yüklendikten sonra File > Open Folder'a (Dosya > Klasörü Aç) gidin ve /home/your-user-name/terraform-db-psc'ye gidip Ok'u (Tamam) seçerek klasörü düzenleyicide açın.

- variable.tf dosyasını seçin ve aşağıdakileri ekleyin.
your-database-project-id-heremetnini, tırnak işaretleri içinde gerçek veritabanı projesi kimliğinizle değiştirin.your-consumer-project-id-heremetnini, tırnak işaretleri içinde gerçek proje kimliği ile değiştirin.
variable "project_id" {
type = string
default = "your-database-project-id-here"
}
variable "project_id_consumer" {
type = set(string)
default = ["your-consumer-project-id-here"]
}
variable "network_id" {
type = string
default = "database-net"
}
variable "region_id" {
type = string
default = "us-east1"
}
variable "db_password" {
type = string
default = "cloudsql24"
}
- Ardından, main.tf dosyasını açın. Aşağıda açıklandığı gibi çeşitli işlemleri gerçekleştirmek için bazı Terraform kodları ekleyeceğiz.
API'leri etkinleştirme |
|
VPC oluşturma |
|
Güvenlik duvarı kuralları ekleme |
|
PSA aralığı oluşturma |
|
Eşleme oluşturma |
|
- Aşağıdakileri kopyalayıp main .tf dosyasına yapıştırın.
resource "google_project_service" "default" {
for_each = toset([
"compute.googleapis.com",
"servicenetworking.googleapis.com",
"sqladmin.googleapis.com",
"cloudresourcemanager.googleapis.com"
])
service = each.value
disable_on_destroy = false
}
resource "google_compute_network" "default" {
project = var.project_id
name = var.network_id
auto_create_subnetworks = true
mtu = 1460
routing_mode = "GLOBAL"
}
resource "google_compute_global_address" "psa_range" {
name = "psa-range-${google_compute_network.default.name}"
project = var.project_id
purpose = "VPC_PEERING"
address_type = "INTERNAL"
prefix_length = 20
address = "172.18.0.0"
network = google_compute_network.default.id
}
resource "google_service_networking_connection" "private_connection" {
network = google_compute_network.default.self_link
service = "servicenetworking.googleapis.com"
reserved_peering_ranges = [
google_compute_global_address.psa_range.name,
]
}
resource "google_compute_firewall" "allow_icmp" {
name = "allow-icmp-${google_compute_network.default.name}"
network = google_compute_network.default.id
project = var.project_id
allow {
protocol = "icmp"
}
source_ranges = ["0.0.0.0/0"]
target_tags = ["allow-icmp"]
}
resource "google_compute_firewall" "allow_ssh" {
name = "allow-ssh-${google_compute_network.default.name}"
network = google_compute_network.default.id
project = var.project_id
allow {
protocol = "tcp"
ports = ["22"]
}
source_ranges = ["0.0.0.0/0"]
target_tags = ["allow-ssh"]
}
resource "google_compute_firewall" "allow_sql" {
name = "allow-sql-${google_compute_network.default.name}"
network = google_compute_network.default.id
project = var.project_id
allow {
protocol = "tcp"
ports = ["3306"]
}
source_ranges = ["0.0.0.0/0"]
}
resource "google_compute_firewall" "allow_internal" {
name = "allow-internal-${google_compute_network.default.name}"
network = google_compute_network.default.id
project = var.project_id
allow {
protocol = "icmp"
}
allow {
protocol = "tcp"
ports = ["0-65535"]
}
allow {
protocol = "udp"
ports = ["0-65535"]
}
source_ranges = ["10.128.0.0/9", "172.18.0.0/20"] # Include PSA range
}
- Cloud Shell terminaline geri dönün, terraform-db-psc dizininde olduğunuzdan emin olun
cd terraform-db-pscve aşağıdaki komutları çalıştırın.
terraform init
Çalışma dizinini başlatır. Bu adımda, söz konusu yapılandırma için gerekli sağlayıcılar indirilir.
terraform plan
Terraform'un altyapınızı dağıtmak için hangi işlemleri yapacağını gösteren bir yürütme planı oluşturur.
- Şimdi kaynakları oluşturmak için
terraform applykomutunu çalıştırın ve çalıştırmak içinyesyazın.
4. 2. görev: PSA ile Cloud SQL örneği oluşturma (Terraform)
Bağlantıya izin vermek için PSA seçeneğiyle Cloud SQL örneği oluşturmak üzere Terraform'u kullanalım. Bu yapılandırmayı veritabanı projesinde tamamlayın.
- Cloud Shell Düzenleyici görünümüne geçin.
terraform-db-pscklasöründe olduğunuzdan emin olun.database.tfdosyasını seçin ve aşağıdakileri ekleyin.
resource "google_sql_database_instance" "default" {
name = "psc-psa-sql-db"
region = var.region_id
database_version = "MYSQL_8_0"
settings {
tier = "db-f1-micro"
availability_type = "REGIONAL"
backup_configuration {
enabled = true
binary_log_enabled = true
}
ip_configuration {
ipv4_enabled = "false"
private_network = google_compute_network.default.id
}
}
deletion_protection = false
}
resource "google_sql_user" "users" {
name = "testsql"
instance = google_sql_database_instance.default.name
password = var.db_password
}
- Cloud Shell terminaline geri dönün ve terraform-db-psc dizininde olduğunuzdan emin olun. Şimdi kaynakları oluşturmak için
terraform applykomutunu çalıştırın ve çalıştırmak içinyesyazın. PSA ile Cloud SQL örneği oluşturma işlemi 15 dakikadan uzun sürebilir.
Veritabanını doğrulama
- İşlem tamamlandıktan sonra konsolda SQL'e gidin ve yeni oluşturulan psc-psa-sql-db veritabanı örneğini seçin.
- Sol tarafta SQL seçenekleri kaydırma panelini genişletin ve Bağlantılar'ı seçin.
- Özet sekmesinde bağlantıyla ilgili bilgileri görebilirsiniz.
- Dahili IP adresini kopyalayın ve sisteminizde bir yere kaydedin. Gördüğünüz gibi, ayırdığımız aralıktan bir adres atanmış.
- 3. görevin 5. adımını tamamlamak için bu IP'ye ihtiyacınız olacaktır.

- Sol tarafta SQL seçenekleri açılır menüsünü genişletin ve Kullanıcılar'ı seçin.
- testsql adlı kullanıcının şifresi cloudsql24 olmalıdır (Bu şifre, daha sonra veritabanına erişmek için kullanılacaktır).
5. 3. görev: Test sanal makinesi oluşturma ve veritabanı projesinden SQL örneğine bağlanma (Terraform)
Test VM'si ve NAT ağ geçidi oluşturmak için Terraform'u kullanalım. Bu yapılandırmayı veritabanı projesinde tamamlayın.
- Cloud Shell Düzenleyici görünümüne geçin.
terraform-db-pscklasöründe olduğunuzdan emin olun.nat-vm.tfdosyasını seçin ve aşağıdakileri ekleyin.
resource "google_compute_router" "default" {
name = "outbound-nat"
region = var.region_id
network = google_compute_network.default.id
bgp {
asn = 64514
}
}
resource "google_compute_router_nat" "default" {
name = "outbound-nat-gw"
router = google_compute_router.default.name
region = google_compute_router.default.region
nat_ip_allocate_option = "AUTO_ONLY"
source_subnetwork_ip_ranges_to_nat = "ALL_SUBNETWORKS_ALL_IP_RANGES"
log_config {
enable = true
filter = "ERRORS_ONLY"
}
}
resource "google_compute_instance" "sql_net_vm" {
name = "db-vm-test"
machine_type = "e2-medium"
zone = "${var.region_id}-b"
project = var.project_id
boot_disk {
initialize_params {
image = "debian-cloud/debian-11"
}
}
network_interface {
network = google_compute_network.default.self_link
}
# No external IP address
network_performance_config {
total_egress_bandwidth_tier = "DEFAULT"
}
tags = ["allow-icmp", "allow-ssh", "allow-internal", "allow-health-check"]
# Install MariaDB at startup
metadata_startup_script = <<EOF
#!/bin/bash
apt-get update
apt-get install -y mariadb-server
systemctl enable mariadb
EOF
}
- Cloud Shell terminaline geri dönün ve terraform-db-psc dizininde olduğunuzdan emin olun. Şimdi kaynakları oluşturmak için
terraform plan, then terraform applykomutunu çalıştırın ve çalıştırmak içinyesyazın. Bu işlem, MariaDB'nin yüklü olduğu bir NAT ağ geçidi ve sanal makine oluşturur.
Veritabanını doğrulama
Bu işlemi tüketici projesinde tamamlayın
- Sanal Makine Örneği'ne gidin. db-vm-test'i seçin.
- Sanal makineye bağlanmak için SSH seçeneğini belirleyin.
- Aşağıdaki komutla daha önce kopyaladığınız yerel IP aracılığıyla DB'ye bağlanın:
mysql --host=172.18.0.2 --user=testsql --password=cloudsql24
Not: Bağlanması için IP adresini gerçek IP'nizle değiştirin.
- Bağlantı kurulduktan sonra aşağıdaki localvpcsqldb ile bir veritabanı oluşturun.
CREATE DATABASE localvpcsqldb;
- İşlem tamamlandığında bağlantıdan çıkmak için exit yazın. Sanal makineyi kapatmak için tekrar exit yazın.
6. 4. görev: Cloud SQL örneğinde PSC'yi etkinleştirme
Bağlantıya izin vermek için PSC seçeneğini etkinleştirmek üzere gcloud komutlarını kullanalım. Bu yapılandırmayı veritabanı projesinde tamamlayın.
- Cloud Shell görünümüne geçin.
- Cloud Shell'de aşağıdaki komutu çalıştırın.
- Ensure
YOUR_DB_PROJECT_HEREifadesini veritabanı projesi kimliğiyle değiştirin. - Ensure
YOUR_CONSUMER_PROJECT_HEREkısmını tüketici projesi kimliğiyle değiştirin.
project_id=YOUR_DB_PROJECT_HERE
allowed_project=YOUR_CONSUMER_PROJECT_HERE
gcloud beta sql instances patch psc-psa-sql-db \
--project=$project_id \
--enable-private-service-connect \
--allowed-psc-projects=$allowed_project
- Bu işlem, mevcut veritabanını PSC ekiyle günceller. Bu işlem biraz zaman alır (10 dakika veya daha uzun).
Zaman aşımı bekleme hatası alırsanız ilerlemeyi görmeye devam etmenizi sağlayacak komut da verilir. "`gcloud beta sql operations wait –project komutunu çalıştırarak işlemin tamamlanmasını beklemeye devam edebilirsiniz." gibi bir mesaj gösterilir.
Lütfen PSA ve PSC'nin etkin olduğu yeni bir veritabanını başlangıçtan itibaren dağıtabileceğinizi unutmayın.
Veritabanını doğrulama
- İşlem tamamlandıktan sonra konsolda SQL'e gidin ve psc-psa-sql-db veritabanı örneğini seçin.
- Sol tarafta SQL seçenekleri kaydırma panelini genişletin ve Bağlantılar'ı seçin.
- Özet sekmesinde bağlantıyla ilgili bilgileri görebilirsiniz.
- Hizmet eki adresini kopyalayın ve sisteminizde bir yere kaydedin.
- Bir sonraki görev olan 5. adımın 8. bölümünü tamamlamak için bu bilgiye ihtiyacınız olacaktır.

7. 5. görev: Tüketici projesi için ortamı ayarlama (Terraform)
Tüketici projesinde,güvenlik duvarı kuralları ve alt ağ içeren özel bir VPC oluşturacağız. Cloud Console'u açın ve kullanacağınız projeyi seçin.
- Konsolunuzun üst kısmında, sağ tarafta Google Cloud simgesinin yanındaki açılır listeyi tıklayın ve tümü sekmesini seçin.


- Devam etmek için listelenen projelerden tüketici projesi kimliğinizi seçin.
- Konsolunuzun sağ üst kısmında bulunan Cloud Shell'i açın, Cloud Shell'de tüketici proje kimliğini gördüğünüzden emin olun ve erişime izin vermek için tüm istemleri onaylayın.
- terraform-consumer-psc adlı bir klasör oluşturun ve bu klasöre gidin.
mkdir terraform-consumer-psc && cd terraform-consumer-psc
- main.tf, variable.tf ve psc.tf dosyası oluşturun.
touch main.tf variable.tf psc.tf
- Tüketici projesi kimliği için Cloud Shell düzenleyici görünümüne geçin. Düzenleyici'yi seçin ve arayüzün yüklenebilmesi için gerekli istemlere izin verin.
- Yüklendikten sonra File > Open Folder'a (Dosya > Klasör Aç) gidin ve /home/your-user-name/terraform-consumer-psc'ye gidip Ok'u (Tamam) seçerek klasörü düzenleyicide açın.

- variable.tf dosyasını seçin ve aşağıdakileri ekleyin.
your-consumer-project-id-heremetnini tırnak işaretleri içinde gerçek tüketici proje kimliğinizle değiştirin.your-psc-attachment-id-heremetnini tırnak işaretleri içinde psc eki adresinizle değiştirin. Bu, görev 4 bölüm 5-7'de kopyaladığınız kimliktir.
variable "project_id" {
type = string
default = "your-consumer-project-id-here"
}
variable "psc_attachment_id" {
type = string
default = "your-psc-attachment-id-here"
}
variable "network_id" {
type = string
default = "psc-endpoint-vpc"
}
variable "region_id" {
type = string
default = "us-east1"
}
- Ardından, main.tf dosyasını açın. Aşağıda açıklandığı gibi çeşitli işlemleri gerçekleştirmek için bazı Terraform kodları ekleyeceğiz.
API'leri etkinleştirme |
|
VPC oluşturma |
|
NAT ağ geçidi oluşturma |
|
Güvenlik duvarı kuralları ekleme |
|
- Aşağıdakileri kopyalayıp main .tf dosyasına yapıştırın.
resource "google_project_service" "default" {
for_each = toset([
"compute.googleapis.com",
"cloudresourcemanager.googleapis.com"
])
service = each.value
disable_on_destroy = false
}
resource "google_compute_network" "default" {
project = var.project_id
name = var.network_id
auto_create_subnetworks = false
mtu = 1460
routing_mode = "GLOBAL"
}
resource "google_compute_subnetwork" "vm_subnet_pc" {
name = "vm-net"
ip_cidr_range = "192.168.80.0/24"
region = var.region_id
network = google_compute_network.default.name
project = var.project_id
}
resource "google_compute_subnetwork" "psc_subnet_ip" {
name = "psc-subnet"
ip_cidr_range = "192.168.100.0/24"
region = var.region_id
network = google_compute_network.default.name
project = var.project_id
}
resource "google_compute_router" "default" {
name = "outbound-nat"
region = var.region_id
network = google_compute_network.default.id
bgp {
asn = 64514
}
}
resource "google_compute_router_nat" "default" {
name = "outbound-nat-gw"
router = google_compute_router.default.name
region = google_compute_router.default.region
nat_ip_allocate_option = "AUTO_ONLY"
source_subnetwork_ip_ranges_to_nat = "ALL_SUBNETWORKS_ALL_IP_RANGES"
log_config {
enable = true
filter = "ERRORS_ONLY"
}
}
resource "google_compute_firewall" "allow_icmp" {
name = "allow-icmp-${google_compute_network.default.name}"
network = google_compute_network.default.id
project = var.project_id
allow {
protocol = "icmp"
}
source_ranges = ["0.0.0.0/0"]
}
resource "google_compute_firewall" "allow_ssh" {
name = "allow-ssh-${google_compute_network.default.name}"
network = google_compute_network.default.id
project = var.project_id
allow {
protocol = "tcp"
ports = ["22"]
}
source_ranges = ["0.0.0.0/0"]
target_tags = ["allow-ssh"]
}
resource "google_compute_firewall" "allow_internal" {
name = "allow-internal-${google_compute_network.default.name}"
network = google_compute_network.default.id
project = var.project_id
allow {
protocol = "icmp"
}
allow {
protocol = "tcp"
ports = ["0-65535"]
}
allow {
protocol = "udp"
ports = ["0-65535"]
}
source_ranges = ["192.168.0.0/16"]
}
- Cloud Shell terminaline geri dönün, tüketici projesindeki terraform-consumer-psc dizininde olduğunuzdan emin olun
cd terraform-consumer-pscve aşağıdaki komutları çalıştırın.
terraform init
Çalışma dizinini başlatır. Bu adımda, söz konusu yapılandırma için gerekli sağlayıcılar indirilir.
terraform plan
Terraform'un altyapınızı dağıtmak için hangi işlemleri yapacağını gösteren bir yürütme planı oluşturur.
- Şimdi kaynakları oluşturmak için
terraform applykomutunu çalıştırın ve çalıştırmak içinyesyazın.
8. 6. görev: Tüketici projesinde SQL DB eki için PSC uç noktası oluşturma ve sanal makineyi test etme (Terraform)
Bu yapılandırmayı tüketici projesinde tamamlayın.
- Cloud Shell düzenleyiciye geri dönün, terraform-consumer-psc dizinini açın ve
psc.tfdosyasını seçin. Aşağıdaki Terraform kodunu dosyaya ekleyin. Bu işlemle statik dahili IP, PSC uç noktası ve Maria DB'nin yüklü olduğu bir test sanal makinesi oluşturulur.
resource "google_compute_address" "default" {
name = "psc-ip-1"
region = var.region_id
address_type = "INTERNAL"
subnetwork = google_compute_subnetwork.psc_subnet_ip.name
address = "192.168.100.100"
}
resource "google_compute_forwarding_rule" "default" {
name = "psc-sql-endpoint"
region = var.region_id
network = google_compute_network.default.name
ip_address = google_compute_address.default.self_link
load_balancing_scheme = ""
target = var.psc_attachment_id
}
resource "google_compute_instance" "sql_test_vm" {
name = "remote-sql-test-vm"
machine_type = "e2-medium"
zone = "${var.region_id}-b"
project = var.project_id
boot_disk {
initialize_params {
image = "debian-cloud/debian-11"
}
}
network_interface {
subnetwork = google_compute_subnetwork.vm_subnet_pc.name
}
# No external IP address
network_performance_config {
total_egress_bandwidth_tier = "DEFAULT"
}
tags = ["allow-icmp", "allow-ssh", "allow-internal", "allow-health-check"]
# Install MariaDB at startup
metadata_startup_script = <<EOF
#!/bin/bash
apt-get update
apt-get install -y mariadb-server
systemctl enable mariadb
EOF
}
- Cloud Shell terminaline geri dönün, tüketici projesindeki terraform-consumer-psc dizininde olduğunuzdan emin olun
cd terraform-consumer-pscve aşağıdaki komutları çalıştırın.
terraform plan
Terraform'un altyapınızı dağıtmak için hangi işlemleri yapacağını gösteren bir yürütme planı oluşturur.
- Şimdi kaynakları oluşturmak için
terraform applykomutunu çalıştırın ve çalıştırmak içinyesyazın.
9. 7. görev: PSC IP adresi üzerinden sanal makineden uç nokta bağlantısını doğrulama
Bu işlemi tüketici projesinde tamamlayın
- Sanal Makine Örneği'ne gidin. remote-sql-test-vm'yi seçin.
- Sanal makineye bağlanmak için SSH seçeneğini belirleyin.
- Aşağıdaki bilgilerle uç nokta üzerinden DB'ye bağlanın:
mysql --host=192.168.100.100 --user=testsql --password=cloudsql24
- Bağlantı kurulduktan sonra aşağıdaki psc-sql-db ile bir veritabanı oluşturun.
CREATE DATABASE remotepscpsasqldb;
- İşlem tamamlandığında bağlantıdan çıkmak için exit yazın. Sanal makineyi kapatmak için tekrar exit yazın.
10. 8. görev: Veritabanı girişini doğrulama
Bu doğrulamayı veritabanı projesinde tamamlayın.
- Konsolunuzun üst kısmında, sağ tarafta Google Cloud simgesinin yanındaki açılır listeyi tıklayın ve tümü sekmesini seçin.


- Devam etmek için listelenen projelerden veritabanı proje kimliğinizi seçin.
- SQL'e gidin, psc-psa-sql-db veritabanını seçin, SQL seçeneklerini genişletin ve Veritabanları'nı seçin. Tüketici projesi sanal makinesinden remotepscpsasqldb adlı yeni oluşturduğunuz veritabanını ve veritabanı projesi sanal makinesinden localvpcsqldb adlı veritabanını görmeniz gerekir.**
.**

11. Temizleme
Bu işlemi tüketici projesinde tamamlayın
- Tüketici projesi kimliğini seçin
- Cloud Shell'e gidin ve tüketici proje kimliğini gördüğünüzden emin olun.
- terraform-consumer-psc dizinine gidin
cd terraform-consumer-pscve aşağıdaki komutu çalıştırınterraform destroyveyesyazın. Tüketici projenizde Terraform ile oluşturduğunuz tüm kaynaklar kaldırılacak.
Bu işlemi Veritabanı projesinde tamamlama
- Veritabanı proje kimliğini seçin
- Cloud Shell'e gidin ve veritabanı proje kimliğini gördüğünüzden emin olun.
- terraform-db-psc dizinine gidin
cd terraform-db-pscve aşağıdaki komutu çalıştırınterraform destroy.yesyazın. Terraform ile veritabanı projenizde oluşturduğunuz kaynakların çoğu kaldırılır. Hizmet ağı silinemeyebilir ve hata verebilir. - Ardından, terraform-db-psc klasöründeki aşağıdaki dosyaları silin.
rm -r terraform.tfstate terraform.tfstate.backup
- Ardından konsolda VPC ağları'na gidin.
- database-net VPC'yi seçin, PRIVATE SERVICES ACCESS'i seçin, Allocated IP Ranges for Services (Hizmetler İçin Ayrılan IP Aralıkları) bölümünde psa-range-database-net'i seçin ve Release (Yayınla) seçeneğini belirleyin.

- Ardından VPC NETWORK PEERING'i,servicenetworking-googleapis-com'u ve Sil seçeneğini belirleyin.

- Ardından VPC ağını sil 'i seçin.

12. Tebrikler
Tebrikler, PSA ve PSC ekiyle bir Cloud SQL örneğini başarıyla yapılandırdınız ve başka bir VPC'de Private Service Connect uç noktası oluşturdunuz.
Daha fazla bilgi
Private Service Connect ve Cloud SQL hakkında daha fazla bilgi edinebilirsiniz.
Diğer ilgili codelab: https://codelabs.developers.google.com/codelabs/cloudsql-psc-terraform