Bu yazımızda , Google Cloud Platform (GCP) kullanarak bir HTTP(S) Load Balancer oluşturmayı ve ardından iki sunucu arasında veritabanı eşitleme işlemini gerçekleştirmeyi göreceğiz. Örneğimizde, hasanaylas.com
adlı bir web sitesi için yüksek kullanılabilirlik ve veritabanı senkronizasyonu sağlamak istiyoruz. bu altın bilgiler için lütfen yazımızı paylasarak bizlere destek olmayı unutmayınız
Adım 1: HTTP(S) Load Balancer Oluşturma
- Google Cloud Console’a Giriş:
- Google Cloud Console sayfasına gidin.
- Yük Dengeleyiciyi Oluşturma:
- “Navigation menu” > “Networking” > “Load balancing” yolunu izleyin.
- “Create a load balancer” düğmesine tıklayın ve “HTTP(S) Load Balancing” seçeneğini seçin.
- Load balancer’a
hasanaylas.com
adını verin ve ileri butonuna tıklayın.
- Backend Hizmeti Oluşturma:
- “Create a backend service” seçeneğini seçin.
- Backend service adı verin.
- “Backend type” olarak “Instance group” seçeneğini seçin ve hedef sunucuların bulunduğu instance group’ları oluşturun.
- Host ve Path Kurallarını Ayarlama:
- “Host and path rules” seçeneğine geçin.
- “Add host and path rule” düğmesine tıklayarak host ve path kurallarını ayarlayın.
hasanaylas.com
domainini ekleyin.
- Frontend Konfigürasyonunu Ayarlama:
- “Create a new frontend IP and port” seçeneğini seçin.
- “Name” alanına bir ad verin.
- “IP Version” olarak “IPv4” seçeneğini seçin.
- “Port” alanına “80” girin ve “Done” düğmesine tıklayın.
- SSL Sertifikası Eklemek (Opsiyonel):
- SSL kullanmak istiyorsanız, “Frontend configuration” bölümünde “Create a new frontend IP and port” seçeneğini kullanarak SSL ayarlarını ekleyin.
- Review ve Oluştur:
- Oluşturduğunuz ayarları gözden geçirin ve “Create” düğmesine tıklayın.
Adım 2: Veritabanı Eşitleme
- İki Sunucu İçin PostgreSQL Replikasyonu Kurma:
- Birinci sunucuda PostgreSQL için
streaming replication
kurun.İkinci sunucuyu birinci sunucuya replikasyon için bağlayın.
recovery.conf
dosyası (PostgreSQL 13 ve önceki sürümler için): - Birinci sunucuda PostgreSQL için
standby_mode = on
primary_conninfo = 'host=first_server_ip_address port=5432 user=replication_user password=replication_password'
- PostgreSQL 13 ve sonraki sürümler için,
recovery.conf
yerinepostgresql.auto.conf
dosyasını kullanın. - DNS Ayarlarını Güncelleme:
hasanaylas.com
için Google Domains üzerinden DNS ayarlarınızı güncelleyin.- İlk A kaydına birinci sunucunun IP adresini, ikinci A kaydına ise ikinci sunucunun IP adresini ekleyin.
Artık hasanaylas.com
domaininiz, oluşturduğunuz yük dengeleyici tarafından iki farklı sunucuya yönlendirilecek ve PostgreSQL replikasyonu ile veritabanınız otomatik olarak senkronize olacaktır. Bu sayede hem yüksek kullanılabilirlik hem de veritabanı eşitleme sağlamış olacaksınız.