1. Giriş
Bu kod laboratuvarında, Hizmet Üretici olarak Private Service Connect ile dağıtılan Cloud SQL'e güney bağlantısı gerçekleştireceksiniz.
Özel Hizmet Bağlantısı, Google Cloud ağ iletişiminin, tüketicilerin yönetilen hizmetlere VPC ağlarının içinden özel olarak erişmesine olanak tanıyan bir özelliğidir. Benzer şekilde, yönetilen hizmet üreticilerinin bu hizmetleri kendi ayrı VPC ağlarında barındırmasına ve tüketicilerine özel bir bağlantı sunmasına olanak tanır. Örneğin, Looker'a erişmek için Private Service Connect'i kullandığınızda Şekil 1'de belirtildiği gibi hizmet tüketicisi siz olursunuz ve Google hizmet üreticisi olur.
Ters PSC olarak da bilinen Güneye doğru erişim, Tüketici'nin, Looker'ın şirket içi, VPC'de, yönetilen hizmetlere ve internete erişmesine izin vermek için Üretici olarak Yayınlanan Hizmet oluşturmasına olanak tanır. Güneye doğru bağlantılar, Şekil 2'de belirtildiği gibi Looker PSC'nin dağıtıldığı yerden bağımsız olarak herhangi bir bölgede dağıtılabilir.
Neler öğreneceksiniz?
- Private Service Connect Cloud SQL örneği üretici hizmeti oluşturma
- Hizmet tüketicisi olarak Looker'da Private Service Connect uç noktası oluşturma
Gerekenler
- Sahibi izinlerine sahip Google Cloud projesi
- Mevcut Looker PSC Örneği
2. Ne oluşturacaksınız?
Hizmet Üretici olarak dağıtılan ve Hizmet Tüketicisi olarak Looker PSC ile ilişkilendirilmiş bir Cloud SQL PSC örneği oluşturursunuz.
Aşağıdaki işlemler, Producer hizmetine erişimi doğrular:
- Looker'da üretici hizmet eki ile ilişkili bir PSC uç noktası oluşturma
- Cloud SQL PSC ile veritabanı bağlantısı oluşturmak için Looker Console'u kullanma
- Önceden tanımlanmış bir şemada kimlik doğrulaması yaparak ve bu şemaya erişerek Cloud SQL PSC bağlantısını test etme
3. Codelab topolojisi
4. Kurulum ve Gereksinimler
Kendine ait tempoda ortam oluşturma
- 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ının görünen adıdır. Google API'leri tarafından kullanılmayan bir karakter dizesidir. Dilediğiniz zaman güncelleyebilirsiniz.
- Proje kimliği, tüm Google Cloud projelerinde benzersizdir ve değiştirilemez (ayarlandıktan sonra değiştirilemez). Cloud Console, benzersiz bir dize otomatik olarak oluşturur. Bu dizenin ne olduğu genellikle önemli değildir. Çoğu kod laboratuvarında proje kimliğinize (genellikle
PROJECT_ID
olarak tanımlanır) referans vermeniz gerekir. Oluşturulan kimliği beğenmezseniz rastgele başka bir kimlik oluşturabilirsiniz. Alternatif olarak, kendi anahtarınızı deneyerek kullanılabilir olup olmadığını görebilirsiniz. Bu adımdan sonra değiştirilemez ve proje boyunca geçerli kalır. - Bazı API'lerin kullandığı üçüncü bir değer (Proje Numarası) olduğunu belirtmek isteriz. Bu üç değer hakkında daha fazla bilgiyi dokümanlar bölümünde bulabilirsiniz.
- Ardından, Cloud kaynaklarını/API'lerini kullanmak için Cloud Console'da faturalandırmayı etkinleştirmeniz gerekir. Bu codelab'i çalıştırmak çok pahalı değildir. Bu eğitimden sonra faturalandırılmamak için kaynakları kapatmak istiyorsanız oluşturduğunuz kaynakları veya projeyi silebilirsiniz. Yeni Google Cloud kullanıcıları 300 ABD doları değerindeki ücretsiz deneme programına uygundur.
Cloud Shell'i başlatma
Google Cloud, dizüstü bilgisayarınızdan uzaktan çalıştırılabilir olsa da bu kod laboratuvarında bulutta ç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 sağlanıp bağlantı kurulabilmesi için birkaç saniye beklemeniz gerekir. İşlem tamamlandığında aşağıdakine benzer bir ekran görürsünüz:
Bu sanal makinede ihtiyacınız olan tüm geliştirme araçları yüklüdür. 5 GB boyutunda kalıcı bir ana dizin sunar ve Google Cloud üzerinde çalışır. Bu sayede ağ performansını ve kimlik doğrulamayı büyük ölçüde iyileştirir. Bu codelab'deki tüm çalışmalarınızı tarayıcıda yapabilirsiniz. Hiçbir şey yüklemeniz gerekmez.
5. Başlamadan önce
API'leri etkinleştir
Cloud Shell'de proje kimliğinizin ayarlandığından emin olun:
gcloud config list project
gcloud config set project [YOUR-PROJECT-ID]
project=[YOUR-PROJECT-ID]
region=[YOUR-REGION]
echo $project
echo $region
Gerekli tüm hizmetleri etkinleştirin:
gcloud services enable compute.googleapis.com
6. Looker PSC projesini tanımlama
Cloud SQL PSC örneği oluşturmak için izin verilen PSC projelerinin tanımlanması gerekir. Bu nedenle, Looker PSC kiracı projesi Cloud SQL örneği oluşturulurken sağlanmalı veya mevcut bir örnek kullanılıyorsa güncellenmelidir.
gcloud'u kullanarak Looker PSC projesini belirleme
Cloud Shell'de, Looker PSC proje kimliğini almak için [INSTANCE_NAME] değerini Looker PSC örnek adınızla güncelleyin:
gcloud looker instances describe [INSTANCE_NAME] --region=$region --format=json | grep -i lookerServiceAttachmentUri
Örnek çıkışta t7ec792caf2a609d1-tp, Looker PSC projesidir:
gcloud looker instances describe looker-psc-instance --region=us-central1 --format=json | grep -i lookerServiceAttachmentUri
"lookerServiceAttachmentUri": "projects/t7ec792caf2a609d1-tp/regions/us-central1/serviceAttachments/looker-psc-f51982e2-ac0d-48b1-91bb-88656971c183",
Cloud Console'u kullanarak Looker PSC projesini belirleme
Cloud Console'da şuraya gidin:
Looker → Looker PSC Örneği
7. Üretici Cloud SQL örneği oluşturma
Aşağıdaki bölümde, izin verilen PSC projesi listesinde Looker PSC projesini belirten önceden tanımlanmış bir şifreyle dağıtılan, test amacıyla kullanılan bir Cloud SQL PSC örneği oluşturacaksınız.
Cloud SQL PSC oluşturma
Cloud Shell'de bir örnek oluşturun ve Private Service Connect'i etkinleştirin, [INSTANCE_PROJECT] değerini Looker PSC proje kimliğinizle güncelleyin.
gcloud sql instances create cloud-sql-psc-demo \
--project=$project \
--region=$region \
--enable-private-service-connect \
--allowed-psc-projects=[INSTANCE_PROJECT] \
--availability-type=regional \
--no-assign-ip \
--cpu=2 --memory=4GB \
--database-version=MYSQL_8_0 \
--enable-bin-log \
--root-password=password123
Örnek:
gcloud sql instances create cloud-sql-psc-demo \
--project=$project \
--region=$region \
--enable-private-service-connect \
--allowed-psc-projects=t7ec792caf2a609d1-tp \
--availability-type=regional \
--no-assign-ip \
--cpu=2 --memory=4GB \
--database-version=MYSQL_8_0 \
--enable-bin-log \
--root-password=password123
Cloud SQL Hizmet Eki'ni alma
Private Service Connect'in etkin olduğu bir Cloud SQL örneği oluşturduktan sonra, Looker'da Private Service Connect uç noktasını oluşturmak için sonraki bir adımda kullanılacak hizmet eki URI'sini alın.
Cloud Shell'de aşağıdakileri yapın:
gcloud sql instances describe [INSTANCE_NAME] --project=$project | grep -i pscServiceAttachmentLink
Örnek çıkışta hizmet eki URI'si oluşturulur:
projects/o6222fa10e2a50865p-tp/regions/us-central1/serviceAttachments/a-39d809aaecae-psc-service-attachment-127fc34733744155
gcloud sql instances describe cloud-sql-psc-demo --project=$project | grep -i pscServiceAttachmentLink:
pscServiceAttachmentLink: projects/o6222fa10e2a50865p-tp/regions/us-central1/serviceAttachments/a-39d809aaecae-psc-service-attachment-127fc34733744155
Cloud Console'dan Cloud SQL PSC Hizmet Eki'ni alabilirsiniz:
Cloud Console'da şuraya gidin:
SQL → SQL Örneği → Bağlantılar
8. Looker'da PSC uç noktası bağlantısı oluşturma
Aşağıdaki bölümde, Cloud Shell'de tek bir alan için –psc-service-attachment işaretlerini kullanarak Cloud SQL Üretici Hizmet Eki'ni Looker Core PSC ile ilişkilendireceksiniz.
Cloud Shell'de, aşağıdaki parametreleri ortamınızla eşleşecek şekilde güncelleyerek psc ilişkilendirmesini oluşturun:
- INSTANCE_NAME: Looker (Google Cloud çekirdeği) örneğinizin adı.
- DOMAIN_1: sql.database1.com
- SERVICE_ATTACHMENT_1: Cloud SQL PSC örneği açıklanırken yakalanan URI
- REGION: Looker (Google Cloud Core) örneğinizin barındırıldığı bölge
Cloud Shell'de aşağıdakileri yapın:
gcloud looker instances update INSTANCE_NAME \
--psc-service-attachment domain=DOMAIN_1,attachment=SERVICE_ATTACHMENT_URI_1 \
--region=REGION
Örnek:
gcloud looker instances update looker-psc-instance \
--psc-service-attachment domain=sql.database1.com,attachment=projects/o6222fa10e2a50865p-tp/regions/us-central1/serviceAttachments/a-39d809aaecae-psc-service-attachment-127fc34733744155 \
--region=us-central1
Cloud Shell'de, serviceAttachments bağlantı durumunun "ACCEPTED" olduğunu doğrulayın. Looker PSC INSTANCE_NAME ile güncellediğinizden emin olun:
gcloud looker instances describe [INSTANCE_NAME] --region=$region --format=json
Örnek:
gcloud looker instances describe looker-psc-instance --region=$region --format=json
Örnek:
user@cloudshell$ gcloud looker instances describe looker-psc-instance --region=$region --format=json
{
"adminSettings": {},
"createTime": "2024-08-23T00:00:45.339063195Z",
"customDomain": {
"domain": "looker.cosmopup.com",
"state": "AVAILABLE"
},
"encryptionConfig": {},
"lookerVersion": "24.14.18",
"name": "projects/project/locations/us-central1/instances/looker-psc-instance",
"platformEdition": "LOOKER_CORE_ENTERPRISE_ANNUAL",
"pscConfig": {
"allowedVpcs": [
"projects/project/global/networks/looker-psc-demo",
"projects/project/global/networks/looker-shared-vpc"
],
"lookerServiceAttachmentUri": "projects/t7ec792caf2a609d1-tp/regions/us-central1/serviceAttachments/looker-psc-f51982e2-ac0d-48b1-91bb-88656971c183",
"serviceAttachments": [
{
"connectionStatus": "ACCEPTED",
"localFqdn": "sql.database1.com",
"targetServiceAttachmentUri": "projects/o6222fa10e2a50865p-tp/regions/us-central1/serviceAttachments/a-39d809aaecae-psc-service-attachment-127fc34733744155"
}
]
},
"pscEnabled": true,
"state": "ACTIVE",
"updateTime": "2024-09-04T14:40:05.613026012Z"
}
Cloud Console'da PSC uç noktasını doğrulama
Cloud Console'dan PSC bağlantısını doğrulayabilirsiniz
Cloud Console'da şuraya gidin:
Looker → Looker Örneği → Ayrıntılar
9. Looker PSC'yi Cloud SQL PSC ile entegre etme
Aşağıdaki bölümde, Cloud SQL PSC örneğiyle veritabanı bağlantısı oluşturmak için Looker Console'u kullanacaksınız.
YÖNETİCİ → VERİTABANLARI → BAĞLANTILAR'a gidin. BAĞLANTI EKLE'yi seçin.
Aşağıdaki ekran görüntüsüne göre bağlantı ayrıntılarını doldurun, BAĞLA'yı seçin.
Bağlantı yapılandırıldı
10. Looker bağlantısını doğrulama
Aşağıdaki bölümde, Looker'ın "test" işlemini kullanarak Cloud SQL PSC örneğiyle bağlantısını nasıl doğrulayacağınızı öğreneceksiniz.
Veri Bağlantısı'na gidin YÖNETİCİ → VERİ TABANI → BAĞLANTILAR → cloud-sql-psc-demo → Test
Test seçildikten sonra Looker, aşağıdaki gibi postgres veritabanına bağlanır:
Temizleme
Tek bir Cloud Shell terminalinden laboratuvar bileşenlerini silme
gcloud sql instances delete cloud-sql-psc-demo -q
11. Tebrikler
Tebrikler. Private Service Connect tarafından desteklenen Looker Console'u kullanarak Cloud SQL PSC bağlantısını başarıyla yapılandırıp doğruladınız.
Üretici hizmeti ve Üretici hizmetine bağlanmaya izin veren Looker PSC uç noktası olarak Cloud SQL PSC örnekleri oluşturdunuz.
Cosmopup, codelab'lerin harika olduğunu düşünüyor.
Sırada ne var?
Bu codelab'lerden bazılarına göz atın...
- Hizmetleri yayınlamak ve kullanmak için Private Service Connect'i kullanma
- Private Service Connect ve dahili TCP Proxy yük dengeleyici kullanarak karma ağ üzerinden şirket içi hizmetlere bağlanma
- Yayınlanan tüm Private Service Connect kod laboratuvarlarına erişim