1. Giriş
Son Güncelleme Tarihi: 04.05.2020
Bağlantı kurma
Birçok türde uygulama ve çerçeve bulunur. Bu codelab'de, dilediğiniz yerden Cloud SQL'e bağlanma konusunu ele alacağız. Bağlanma özelliği, açıkça bağlanmasına izin verilen IP'lerin yetkilendirilmesiyle etkinleştirilir. Cloud SQL veritabanına bağlanmak için muhtemelen en az güvenli olan bu seçenek, aynı zamanda kurulumu ve kullanmaya başlaması en kolay seçenektir.
Bazen bunu üretimde yapmak gerekir ancak bunu önleyebilirseniz daha güvenli bir alternatifi (ör. Cloud SQL Proxy'yi kullanma) tercih etmeniz gerekir. Bu kurulum, en iyi geliştirme ve test işlemleri için uygundur.
Oluşturacaklarınız
Bu codelab son derece minimalisttir. Buradaki amaç, uygulamanın kendisini çok fazla düşünmeden bağlantı parçasının somunları arasında size yol göstermektir. Mükemmel bir kullanım için Cloud SQL'e bağlanmak, bir SQL veritabanının diğer örneğine bağlanmaya benzer. Bu nedenle, bu codelab'de oluşturduğunuz öğeleri alıp herhangi bir üretim uygulamasına uygulayabilmeniz gerekir.
Talimatlar, hem GCP Console'da neler yapmanın adım adım açıklamalı kılavuzunu hem de CLI veya otomasyonda kullanmak üzere gcloud komutu eşdeğerlerini içerir.
Adımlar tek tek şunlardır:
- Cloud SQL örneği oluşturun (Bu eğitimde Postgres kullanılır ancak MySQL veya SQL Server için de benzer şekilde çalışır) ve buna bağlanmasına izin verilen belirli IP'leri yetkilendirin
Gerekenler
- API'leri etkinleştirme ve hizmet oluşturma izinlerine sahip olduğunuz bir GCP hesabı
- Bağlantıyı doğrulamak için yüklenen Postgres istemcisi (veya Postgres yerine MySQL kullanmak istiyorsanız MySQL istemcisi)
2. Cloud SQL örneğini oluşturma
Cloud SQL, sunduğumuz yönetilen ilişkisel veritabanlarıdır. MySQL, PostgreSQL ve SQL Server'ı destekler. Bu codelab için Postgres veritabanı oluşturacağız ancak üçü için de talimatlar benzerdir.
Konsolda
Cloud SQL sayfasına gidip düğmesini tıklayın.
Bahsettiğim gibi, bu codelab'in çoğu tüm SQL türlerine genel bir bakış sağlar ancak bu codelab'de PostgreSQL'i seçin.
- Örneğinize bir kimlik verin
- Bulunduğunuz yere yakın bir bölge seçin
- Varsayılan kullanıcı için bir şifre girin (kullanıcı adı, seçilen DB için varsayılan ayardır, ör. MySQL için
root
veya PostgreSQL içinpostgres
) - Aşağı kaydırın ve
show configuration options
simgesini tıklayın Connectivity
bölümünü genişletPublic IP
öğesinin vePrivate IP
öğesinin işaretli olmadığını onaylayındüğmesini tıklayın
- Bağlandığınız IP adresini alın. En kolay yöntem, "IP adresim nedir?" şeklinde bir Google araması yapmaktır ve arama sonuçlarında IP'nizin herkese açık olması gerekir.
- Ağ alanına IP spesifikasyonunu girin, isterseniz bir ad verin ve
New Network
kutusunda Bitti'yi tıklayın. - Sayfayı aşağı kaydırın ve Oluştur'u tıklayın.
Örneğin başlatılması genellikle birkaç dakika sürer.
Örnek oluşturulduktan sonra listede tıklayın ve genel bakış sayfasındaki Connect to this instance
başlığı altında, burada listelenen public IP address
değerini kopyalayın. Örnek tam olarak oluşturulmadan önce ayrıntıları tıklayabilirsiniz, ancak örnek tamamen oluşturulana kadar gerekli değildir.
gcloud'u kullanma
Öncelikle, Cloud SQL örneğine bağlanmak için yetkilendirmek istediğiniz IP adresini almanız gerekir. Bunu yapmanın en kolay yolu, bir tarayıcı açıp "IP adresim nedir?" ifadesini aramaktır. ve arama sonuçlarında, herkese açık IP adresiniz yer alır. Ancak, bu işlemi yaptığınız yerde tarayıcıyı açamıyorsanız dig
gibi bir yardımcı program kullanabilirsiniz.
dig @resolver1.opendns.com ANY myip.opendns.com +short -4
Cloud SQL örneğiniz için bulunduğunuz yere en yakın bölgeyi belirtmeniz gerekir. Aşağıdaki komutu çalıştırarak bölgelerin listesini görebilirsiniz:
gcloud sql tiers list
Her katman yalnızca belirli bölgelerde kullanılabilir. Eğiticinin gcloud bölümü için sadece bir mikro örnek oluşturuyoruz. Böylece, özel olarak çalıştırarak (grep yüklü olduğu sürece) bu katmanın kullanılabilir olduğu bölgeleri bulabilirsiniz:
gcloud sql tiers list | grep db-f1-micro
Örneği oluşturmak için kullanılacak komut aşağıdaki gibi görünür (<AUTHORIZED_IP> yerine tarayıcıdan veya özgeçmişten aldığınız IP'yi, <REGION> kısmını da size yakın bir tane ve "postgres" kök kullanıcısı için bir şifre ile değiştirmeyi unutmayın):
gcloud sql instances create sql-codelab-00 --database-version=POSTGRES_11 --tier=db-f1-micro --region=<REGION> --authorized-networks=<AUTHORIZED_IP> --root-password=<PASSWORD>
Bu işlemin tamamlanması birkaç dakika sürebilir.
İşlem tamamlandıktan sonra CLI'daki çıkışta, örneğin PRIMARY_ADDRESS
listelenir. Sonraki adım için bu mesajı kopyalayın.
3. Bağlantıyı ve süreci test edin.
Örneğin doğru şekilde kurulduğunu doğrulamak için girdiğiniz IP adresinden aşağıdaki komut satırını çalıştırabilirsiniz:
psql "host=<önceki adımdan kopyalandı> bağlantı noktası=5432 sslmode=devre dışı bırak user=postgres"
Ardından, Cloud SQL örneğini oluştururken ayarladığınız varsayılan kullanıcı şifresini belirtin.
Tebrikler! Her şey yolunda gittiyse Postgres istemi görüntülenir ve veritabanınızda komut çalıştırabilirsiniz.
Sırada ne var?
Bu codelab'lerden bazılarına göz atın...