Genel Bakış
Amacı Nedir?
Amacı Nedir?
DevOps Otomasyonu
Credential Yönetimi
Proje Bazlı İzolasyon
Etkin/Pasif Yönetim
Çalışma Prensibi
Çalışma Prensibi
Bağlantı Başlatma
Connection Pool Yönetimi
Kimlik Doğrulama
Veri İletişimi
Bağlantı Yönetimi
Hata Yönetimi
Kullanım Alanları
Kullanım Alanları
Deployment Otomasyonu
Log ve Metrik Toplama
Sistem Sağlık Kontrolü
Güvenlik Yönetimi
Teknik Özellikler ve Yetenekler
Temel Özellikler
Temel Özellikler
SSH Üzerinden Betik Tetikleme
Anlık Çıktı ve Hata Toplama
Proje Bazlı İzolasyon
Ortam Bazlı Yapılandırma
Enable/Disable Kontrolü
İleri Düzey Özellikler
İleri Düzey Özellikler
Dinamik Değişken Enjeksiyonu
Connector Entegrasyonu
Merkezi Olay Kaydı
Connection Test Özelliği
Export/Import Özelliği
Connection Monitoring
Connection Parametreleri
Zorunlu Parametreler
Zorunlu Parametreler
Name
Örnek Değer:
Production_LinuxScriptNotlar: Boşlukla başlamaz, özel karakterler kullanılmamalı
Host Name
Örnek Değer:
ops-runner-01.apmz.localNotlar: DNS çözümlemesi yapılabilir olmalı, ilgili worker’dan erişilebilir olmalı
SSH Port
Örnek Değer:
22Notlar: Varsayılan 22; güvenlik nedeniyle farklı port kullanılıyorsa Network/Firewall’da açılmalıdır
Username
Örnek Değer:
deploysvcNotlar: Yalnızca gerekli klasör/script izinlerine sahip kısıtlı kullanıcı olmalı
Password
Örnek Değer: (Şifrelenmiş değer)
Notlar: UI’de zorunlu; kayıttan önce test bağlantısında doğrulanır
İsteğe Bağlı Parametreler
İsteğe Bağlı Parametreler
Description
Varsayılan Değer: (Boş)
Önerilen Değer: Görev, sunucu ve risk bilgisi eklenmeli
Deploy To Worker
Varsayılan Değer:
trueÖnerilen Değer: Sadece kullanılacağı worker havuzlarına dağıtılması önerilir
Environment (Ortam)
Varsayılan Değer:
DevelopmentÖnerilen Değer: Ortama uygun credential seçimi yapılmalı
Timeout ve Connection Pool Parametreleri
Connection Timeout
Varsayılan: 5000 ms
Min: 1000 ms | Max: 30000 ms
Request Timeout
Varsayılan: 60000 ms
Min: 5000 ms | Max: 180000 ms
Pool Size
Varsayılan: 5
Min: 1 | Max: 20
SSH KeepAlive Interval
Varsayılan: 30000 ms
Min: 5000 ms | Max: 60000 ms
Kullanım Senaryoları
Canlı Deployment Sonrası Servis Restart
Çözüm: Host name olarak servis düğümünü, script olarak systemctl restart komutlarını tanımla, SSH Port 22
Beklenen Sonuç: Betik başarıyla çalışır, servisler sırasıyla yeniden başlatılır
Log Arşivleme
Çözüm: Script içinde tar ve scp komutları kullanılır, kullanıcıya ilgili klasör izni verilir
Beklenen Sonuç: Loglar toplanır, transfer tamamlandığında Connector çıktısında dosya yolu döner
Güvenlik Yaması Kontrolü
Çözüm: Scheduled Job’da bu connection seçilir, script yum check-update çıktısını döner
Beklenen Sonuç: Rapor Integration Flow üzerinden SIEM’e aktarılır
Konfigürasyon Drift Tespiti
Çözüm: Script sha256sum çıktısını üretir, sonuç JSON olarak işlenir
Beklenen Sonuç: Drift tespit edilen dosyalar uyarı loguna düşer
Olağanüstü Durum Testi
Çözüm: Host cluster’ları için ayrı connection kopyaları oluşturulur, her biri health-check.sh çalıştırır
Beklenen Sonuç: Başarılı sonuçta DR koşulları onaylanır, hata halinde süreç durdurulur
Yüksek Kaynak Kullanımı (Opsiyonel)
Çözüm: Script top çıktısını analiz edip servisleri yeniden başlatır
Beklenen Sonuç: Eşik aşıldığında otomatik düzeltme yapılır, connector logu ayrıntı içerir
Connection Yapılandırma
Yeni Linux Script Oluşturma

Yapılandırma Adımları
Oluşturma Sayfasına Gitme
- Sol menüden Connection → Linux Script bölümüne gidin.
- Sağ üstteki [+ Create] butonuna tıklayın.
Temel Bilgileri Girme
- Toggle ile aktif/pasif durumu ayarlayın. Yeni connection’lar varsayılan olarak aktiftir.
- Örnek:
Production_LinuxScript - Benzersiz isim girin, boşlukla başlamaz.
- Sistem otomatik kontrol eder. Yeşil tik: kullanılabilir. Kırmızı çarpı: mevcut isim.
- Örnek: “Prod node restart betikleri”
- Maks. 1000 karakter.
- Connection’ın amacını açıklayın.
Environment (Ortam) Seçimi
- Dropdown menüden ortam seçin: Development, Test, veya Production.
- Her ortam için farklı connection parametreleri tanımlanabilir.
Linux Sunucu Parametreleri
- Host Name: Betiğin çalışacağı Linux sunucusunu tam etki alanı (FQDN) veya IP ile girin.
- SSH Port: Varsayılan 22’dir; güvenlik politikası farklıysa yeni portu yazın ve firewall’da açıldığından emin olun.
- Host erişimi worker’dan test edilmelidir; erişilemeyen sunucular kayıt sırasında hata verir.
Kimlik ve Betik Yetkileri
- Username: Sadece gerekli dizin/script izinlerine sahip servis kullanıcısı kullanın.
- Password: Şifre alanı kaydetmeden önce test edilir ve veritabanında şifrelenerek saklanır.
- Kullanıcıya hedef scriptler üzerinde yürütme (execute) izni verildiğinden emin olun.
Timeout ve Connection Pool Ayarları
- Connection timeout, request timeout ve pool size değerlerini workload’a göre ayarlayın.
- Uzun süren komutlar için keep-alive aralığını düşürerek SSH oturumunun kapanmasını engelleyin.
Güvenlik ve Authentication Ayarları
- Kimlik bilgilerini secret manager veya environment variable üzerinden doldurun.
- SSL/TLS tünellemesi gerekiyorsa bastion host üzerinden port yönlendirmesi yapılandırın.
- Root hesap kullanmayın; sadece gerekli yetkiye sahip servis kullanıcısı tanımlayın.
Test Connection
- [Test Connection] butonuna tıklayın.
- Bağlantı parametrelerinin doğru olup olmadığını test edin.
- Başarılı: Yeşil onay mesajı
- Başarısız: Hata detayları gösterilir
Kaydetme
- Sağ üstteki [Save and Deploy] butonuna tıklayın.
- Benzersiz isim
- Zorunlu alanlar dolu
- Test connection başarılı (önerilir)
- Connection listeye eklenir
- Integration Flow ve Connector adımlarında kullanılabilir hale gelir
- Ortama göre aktif olur
Connection’ı Silme
Connection’ı silmek için:Yöntem 1: Liste Ekranından
- Connection listesinde satır sonundaki ⋮ menüsünden Delete seçeneğini tıklayın.
- Onay dialogunda silme işlemini onaylayın.
Silme İpuçları
- Integration Flow veya Connector adımlarında kullanılıyor olabilir.
- Gerekirse alternatif bir connection atayın.
- Silmeden önce Export ile yedek alın.
Alternatif: Deaktif Etme
- Silmek yerine connection’ın aktif durumunu pasif hale getirin.
- Connection pasif olur ancak silinmez.
- Gerektiğinde aktif hale getirerek yeniden kullanabilirsiniz.
Connection’ı Dışa/İçe Aktarma
Dışa Aktarma (Export)
Dışa Aktarma (Export)
Yöntem 1: Liste Ekranından
- Connection listesinde satır sonundaki ⋮ menüsünden Export seçeneğini tıklayın.
- ZIP dosyası otomatik olarak indirilir.
Dosya Formatı
{Date}-linux-integration-{ConnectionName}-export.zipÖrnek:
13 Nov 2025-linux-integration-Production_LinuxScript-export.zipZIP İçeriği
- Connection JSON dosyası
- Metadata bilgileri
- Bağımlılık bilgileri (örneğin sertifikalar, key store)
Kullanım Alanları
- Yedekleme
- Ortamlar arası taşıma (Test → Prod)
- Versiyonlama
- Ekip veya proje bazlı paylaşım
İçe Aktarma (Import)
İçe Aktarma (Import)
İçe Aktarma Adımları
- Ana listede [Import Linux Script] butonuna tıklayın.
- İndirilen ZIP dosyasını seçin.
- Sistem kontrolleri: Format geçerli mi? İsim çakışması var mı? Bağımlılıklar mevcut mu?
- Ardından [Import] butonuna tıklayın.
İçe Aktarma Senaryoları
Connection’ın Kullanım Alanları
Connection Oluşturma ve Aktif Etme
- Connection’ı oluşturun
- Test Connection ile bağlantıyı doğrulayın
- Save and Deploy ile kaydedin ve etkinleştirin
- Connection’ın Enabled durumda olduğundan emin olun.
Integration / Connector Adımlarında Kullanım
Scheduled Job Kullanımı
Test Amaçlı Kullanım
Best Practices
Yapılması Gerekenler ve En İyi Uygulamalar
Yapılması Gerekenler ve En İyi Uygulamalar
SSH Kullanıcı Yönetimi
İyi: Her ekip için ayrı servis kullanıcısı oluşturmak
En İyi: Asgari yetki prensibine göre sudoers dosyasında yalnızca gerekli komutlara izin vermek
Komut Versiyonlama
İyi: Script içeriğini VCS’de saklamak ve Connector’a kopyalamak
En İyi: Scripti pipeline sırasında otomatik olarak güncelleyen IaC süreçleri kullanmak
Çıktı Yönetimi
İyi: Kritik satırları filtrelemek
En İyi: Çıktıyı JSON formatında standartlaştırıp Integration Flow içindeki sonraki adımlara parametre olarak geçirmek
Kaynak Tüketimi
İyi: Erişimi zamanlanmış job’larla yaymak
En İyi: Pool size ve keep-alive değerlerini trafiğe göre sürekli izleyip ayarlamak
Ortam Yönetimi
İyi: Her ortam için ayrı connection oluşturmak
En İyi: Environment seçeneğini kullanarak tek connection’da tüm ortamları yönetmek, ortamlar arası geçişte sadece environment değiştirmek
Connection Test
İyi: Kaydetmeden önce Test Connection ile doğrulamak
En İyi: Her parametre değişikliğinden sonra test etmek, production’a geçmeden önce test ortamında tam entegrasyon testi yapmak
Güvenlik En İyi Uygulamaları
Güvenlik En İyi Uygulamaları
Kimlik Bilgisi Rotasyonu
Bastion Host Kullanımı
Komut Yetkilendirmesi
Kimlik Bilgileri Yönetimi
SSL/TLS Kullanımı
Erişim Kontrolü
Kaçınılması Gerekenler
Kaçınılması Gerekenler
Paylaşılan Root Hesabı
Alternatif: Roller bazlı servis kullanıcılar tanımlayın
Firewall Kısıtlarını Göz Ardı Etme
Alternatif: Network ekibinden host/port için açılış onayı alın ve izleme kurun
Betik Çıktısını Doğrulamama
Alternatif: Çıktıyı parse edip Integration Flow içinde koşullu adımlar ekleyin
Production Connection'ı Test Ortamında Kullanma
Alternatif: Her ortam için ayrı connection oluşturun, environment parametresini kullanın, connection isimlerini ortama göre prefix ekleyerek ayırın (Test_, Prod_)
Çok Düşük Timeout Değerleri
Alternatif: Gerçek kullanım senaryolarına göre timeout değerlerini ayarlayın, network latency’yi ölçün ve timeout’ları buna göre belirleyin
Connection Pool Kullanmama
Alternatif: Connection pool aktif edin, pool size’ı trafik hacmine göre ayarlayın, pool monitoring kurun
Performans İpuçları
Performans İpuçları
Script Sürelerinin İzlenmesi
Etki: Uzayan betikler erken tespit edilir, ölçeklendirme yapılır
Çıktı Boyutu Kontrolü
Etki: Payload küçülür, Gateway hafızası optimize edilir
Paralel İstek Planlama
Etki: Sunucu kaynakları dengeli kullanılır, SSH kuyrukları oluşmaz
Connection Pool Optimizasyonu
Etki: Bağlantı açma maliyeti %80 azalır, yanıt süreleri düşer, kaynak kullanımı optimize edilir
Timeout Değerleri Optimizasyonu
Etki: Gereksiz beklemeler önlenir, hızlı fail-over sağlanır, kullanıcı deneyimi iyileşir
Connection Monitoring
Etki: Sorunlar proaktif tespit edilir, performans darboğazları erken belirlenir, kesinti süresi azalır
Sorun Giderme (Troubleshooting)
Betik Çalışıyor Ancak Çıktı Boş
Betik Çalışıyor Ancak Çıktı Boş
Script Güncelleme
JSON Doğrulama
Output Key Kontrolü
SSH Yetki Hatası
SSH Yetki Hatası
Kullanıcı İzinleri
Sudoers Ayarları
Host Fingerprint
Connection Timeout
Connection Timeout
Network Kontrolü
Sistem Sağlığı
Timeout Ayarları
Log İnceleme
Authentication Failed
Authentication Failed
Kimlik Bilgileri
Kullanıcı Durumu
Yetki Kontrolü
Sertifika Kontrolü
Pool Exhausted
Pool Exhausted
Pool Size
Connection Kontrolü
Idle Timeout
Metrik İzleme
Connection Test Başarılı Ama Entegrasyon Akışı Hata Veriyor
Connection Test Başarılı Ama Entegrasyon Akışı Hata Veriyor
Enable Toggle
Connection Seçimi
Connection Deploy
Flow/Job Deploy
Log Kontrolü
Sık Sorulan Sorular (SSS)
Aynı Linux Script bağlantısını farklı projeler paylaşabilir mi?
Aynı Linux Script bağlantısını farklı projeler paylaşabilir mi?
Betik başarısız olduğunda otomatik tekrar deneme yapılır mı?
Betik başarısız olduğunda otomatik tekrar deneme yapılır mı?
Şifreler nasıl saklanıyor?
Şifreler nasıl saklanıyor?
Test Connection hangi komutu çalıştırıyor?
Test Connection hangi komutu çalıştırıyor?
Script çıktısını başka adımlarda nasıl kullanırım?
Script çıktısını başka adımlarda nasıl kullanırım?
Aynı connection'ı birden fazla Integration Flow'da kullanabilir miyim?
Aynı connection'ı birden fazla Integration Flow'da kullanabilir miyim?
Connection pool kullanmak zorunlu mudur?
Connection pool kullanmak zorunlu mudur?
Test ve Production için farklı connection'lar mı oluşturmalıyım?
Test ve Production için farklı connection'lar mı oluşturmalıyım?
Test Connection başarılı ama Integration Flow'da çalışmıyor, neden?
Test Connection başarılı ama Integration Flow'da çalışmıyor, neden?
- Connection enable toggle’ı pasif olabilir
- Integration adımında farklı bir connection seçili olabilir
- Connection deploy edilmemiş olabilir
- Integration Flow henüz redeploy edilmemiş olabilir

