İlk vService'imi kurmak için en temel adımlar nelerdir?
Kısa cevap
Önce vService'in dinleyeceği IP adresi Network → Interfaces ekranında bir arayüze eklenir. Ardından trafiğin gideceği sunucu Kurum Servisi olarak eklenir ve ona bir Health Checks profili seçilir; HTTPS yayını yapılacaksa sertifika SSL/TLS Certificates altına yüklenir. Son olarak vService oluşturulur: Frontend satırında bu IP, port ve protokol seçilir, sertifika bağlanır, Kurum Servisi Default Backend Services listesine eklenir ve kaydedilir. Kayıttan sonra alan adının DNS kaydı vService'in IP adresine yönlendirilir.
Sorun: Bir Uygulamayı TR7 Üzerinden Yayınlamak İçin Ne Gerekir?
Bir uygulamanın TR7 üzerinden yayınlanması dört parçanın birlikte tanımlanmasına bağlıdır: vService'in dinleyeceği IP adresi, trafiğin gideceği sunucu (Kurum Servisi), trafiği karşılayan vService ve HTTPS yayını için sertifika. vService formunda IP adresi yazılmaz, yalnızca TR7'nin arayüzlerine eklenmiş IP'ler arasından seçilir; IP eklenmemişse vService'in dinleyeceği adres listede çıkmaz. Parçalardan biri eksik kalırsa vService kaydedilse bile trafik sunucuya ulaşmaz ya da HTTPS bağlantısı kurulamaz. Parçalar birbirine bağlı olduğu için doğru sırayla oluşturulmaları kurulumu kısaltır.
Çözüm
HTTPS web uygulamasını HTTP vService ile yayınlama
- Nasıl çalışır vService, arayüze eklenen IP'de istemcinin HTTPS bağlantısını karşılar, TLS'i sonlandırır ve isteği Default Backend Services listesindeki sağlıklı Kurum Servisine iletir.
- Nerede açılırNetwork → Interfaces; Load Balancer → Backend Services ve Load Balancer vService List; sertifika için Certificates & PKI → SSL/TLS Certificates
- Gereksinim vService IP'sinin bulunacağı ağa bağlı bir TR7 arayüzü, TR7'nin Kurum Servisine IP üzerinden erişebilmesi, alan adı için geçerli bir sertifika
- vService tipi HTTP
- Kurum Servisi tarafı Değişiklik gerekmez; sunucu istekleri TR7'nin IP'sinden alır
Adım adım yapılandırma
Menülere sol alttaki TR7 logosuna tıklanarak açılan Configuration Menu üzerinden ulaşılır.
Network → Interfaces ekranında vService IP'sinin bulunacağı ağa bağlı arayüze sağ tıklanır ve Add IP seçilir (aynı form Actions → Add IP ile de açılır). vService'in dinleyeceği IP arayüzde zaten tanımlıysa 1–3. adımlar atlanır.
IP Interface alanında doğru arayüzün seçili olduğu kontrol edilir; form Actions menüsünden açıldıysa listenin ilk arayüzü seçili gelir. Ip Type tek cihazlı kurulumda Interface IP'dir; cluster kurulumunda vService'in yedekli yayınlanması için VIP seçilir (VIP nedir, ne zaman gerekir?). IP tablosuna adres (ör. 203.0.113.10) ve CIDR (varsayılan 24) yazılır; IP Status varsayılan Enabled kalır.
Add IP butonuna tıklanır. Adres arayüz listesinde önce kısa süre Absent in system (kırmızı), yapılandırma uygulanınca Up (yeşil) görünür.
Load Balancer → Backend Services → Add adımları izlenir.
Backend Service Name ve Address (IP adresi ya da alan adı ve port, ör. 192.0.2.11 : 80) girilir; diğer alanlar isteğe bağlıdır. Aynı hizmeti veren birden fazla sunucu varsa her biri ayrı Kurum Servisi olarak eklenir ya da tek bir Backend Group altında toplanır.
Aynı formdaki Health Check alanından bir profil seçilir. Varsayılan No Check'tir; bu durumda sunucu çökse bile trafik almaya devam eder. Uygun profil yoksa alanın yanındaki ekleme butonuyla formdan çıkmadan yeni profil oluşturulur: profil formunda Name girilir ve Check Type seçilir (web uygulamaları için HTTP (varsayılan) ya da HTTPS, yalnızca port kontrolü için TCP); tür kayıttan sonra değiştirilemez. Period, Timeout, Required Successes ve Required Failures varsayılan olarak 1 sn / 1 sn / 3 / 2 gelir.
Formun altındaki Add butonuna tıklanır.
HTTPS yayını yapılacaksa Certificates & PKI → SSL/TLS Certificates → Add adımları izlenir; sertifikaya bir ad verilir, Type seçilir ve kurumun sertifikası, özel anahtarı ve varsa ara sertifika zinciri girilir. Sertifika vService formunun içinden oluşturulamaz; bu yüzden vService'ten önce eklenir.
Formun altındaki Add butonuna tıklanır.
Frontend tablosuna (+) ikonuyla satır eklenir. Frontend IP listesinden 3. adımda eklenen IP seçilir, Port alanına 443 yazılır, Protocol alanında Encrypted (HTTPS) grubundan HTTP/1.1 ya da HTTP/2 seçilir. 80 portu için ikinci bir satır açılıp Redirect grubundaki HTTP → HTTPS seçilirse şifresiz gelen istekler HTTPS'e yönlendirilir. HTTPS satırı eklenince görünen Certificate alanından 9. adımda kaydedilen sertifika seçilir.
Default Backend Services listesine 7. adımda kaydedilen Kurum Servisi (ya da Backend Group) eklenir. Kurum Servisi henüz yoksa seçicideki Backend service butonuyla formdan çıkmadan oluşturulabilir. Algorithm varsayılan olarak Round Robin'dir.
Save butonuna tıklanır. Status Enabled ise vService, yapılandırma uygulanır uygulanmaz trafik almaya başlar; uygulamanın ilerlemesi ekranın sağ altındaki senkron göstergesinden (Syncing Traffic manager... → All synced) izlenir. Ardından alan adının DNS kaydı, 3. adımda eklenen IP adresine yönlendirilir.
Doğrulama
vService listesindeki Status dairesine ve Backend Services listesindeki Health göstergesine bakılır.
vService: yeşil · Kurum Servisi: OK, yeşilSite alan adıyla açılır; http:// ile girildiğinde HTTPS'e yönlendirildiği ve sertifikanın doğru göründüğü kontrol edilir. Trafik vService'in Dashboard ve Live Stats ekranlarından izlenir.
curl -I http://www.example.com/HTTP/1.1 301 · location: https://www.example.com/Sık Yapılan Hatalar
- IP'yi yanlış arayüze eklemek. IP ekleme formu Actions menüsünden açıldığında listenin ilk arayüzü seçili gelir; IP interface alanı kontrol edilmeden eklenen IP yanlış ağda tanımlanır ve trafik gelmez.
- Default Backend Services'i boş bırakmak. vService kaydedilir ama istekler bir Kurum Servisine gidemez; TR7 503 döner.
- Health check atamamak. Kurum Servisi No Check ile kalırsa çöktüğünde de trafik almaya devam eder.
- Sertifikayı sonraya bırakmak. Sertifika vService formunda oluşturulamaz; HTTPS için önce Certificates & PKI altında yüklenir.
- HTTPS protokolü seçip sertifika seçmemek. Kayıt engellenmez, ancak sertifikasız satır şifresiz HTTP olarak dinler ve HTTPS bağlantısı kurulamaz.
- vService'i kapatınca IP'nin de kapandığını sanmak. vService Disable edildiğinde IP ağda yanıt vermeye devam eder; IP'yi kaldırmak için Network → Interfaces ekranı kullanılır.
- Sunucu loglarında istemci IP'si beklemek. Sunucu varsayılan olarak TR7'nin IP'sini görür: Backend sunucularım neden tüm istekleri TR7'nin IP'sinden geliyormuş gibi görüyor?
Dokümantasyonda nasıl yapılır
İlgili sorular
