Oracle Java Lisanslama Rehberi: JDK Maliyet Optimizasyonu
Oracle Java (JDK) lisanslamada kurumsal rehber: hangi kullanım ücretli, çalışan bazlı abonelik modeli ne anlama geliyor, OpenJDK dağıtımlarına (Temurin, Corretto) geçiş ve denetim hazırlığı.
Oracle Java kullanmak ücretli mi?
Cevap 'hangi dağıtımı, hangi sürümü, hangi koşulda kullandığınıza' bağlıdır — ve bu belirsizlik, kurumların en pahalı bilgi eksiklerinden biridir. Kritik ayrım şudur: Java'nın kendisi (OpenJDK kaynak tabanı) özgür ve ücretsizdir; Oracle'ın kendi JDK dağıtımının kurumsal kullanımı ise sürüm ve koşullara göre ücretli abonelik gerektirebilir. Bu rehber, envanterden karar ve geçişe uzanan yolu kurar. Önemli not: lisans koşulları Oracle tarafından zaman içinde değiştirilmiştir ve değişebilir — buradaki çerçeve karar sürecinizi yapılandırır; nihai değerlendirme güncel sözleşme metinleri ve gerekirse lisans uzmanıyla yapılmalıdır.
Kısa tarih: kural neden bu kadar karıştı?
Kafa karışıklığının kaynağı, kuralların birkaç kez değişmesidir. Uzun yıllar Oracle JDK kurumsal kullanımda fiilen serbestken, 2019'da ticari kullanım abonelik şartına bağlandı; ardından Oracle, bazı güncel sürümler için daha serbest bir ücretsiz kullanım lisansı (NFTC) tanıttı — ama bu serbestlik sürüm ve süreyle sınırlıdır ve süre dolduğunda güncelleme almaya devam etmek ücretli tarafa geçer; 2023'te ise abonelik modeli 'çalışan bazlı' (employee-based) yapıya taşındı. Sonuç: aynı kurumda farklı sunucularda farklı lisans rejimlerine tabi JDK kopyaları bir arada yaşayabilir — ve çoğu kurum hangi kopyanın hangi rejimde olduğunu bilmez.
Çalışan bazlı model: neden bu kadar önemli?
Eski modeller kullanım ölçeğine (işlemci/kullanıcı) bakarken, çalışan bazlı abonelik toplam çalışan sayınız üzerinden fiyatlanır — Java'yı kaç sunucuda, kaç kişinin kullandığından bağımsız olarak. Pratik sonucu serttir: tek bir dahili uygulamada Oracle JDK kullanan büyük bir kurum, teoride tüm organizasyon ölçeğinde abonelik yükümlülüğüyle karşılaşabilir. Bu model, 'küçük bir yerde kalsın, sorun olmaz' yaklaşımını ortadan kaldırır ve kararı ikili hale getirir: ya bilinçli olarak Oracle aboneliği (desteğiyle birlikte) satın alınır, ya Oracle JDK ayak izi tamamen temizlenir. Arada kalmak, en riskli pozisyondur.
Dağıtım seçenekleri: aynı Java, farklı paketler
Dağıtım | Karakter | Değerlendirme notu |
|---|---|---|
Oracle JDK | Oracle'ın ticari dağıtımı | Abonelikle destek + uzun yama süresi; koşullar sürüme göre değişken |
Eclipse Temurin | Topluluk (Adoptium) dağıtımı | Yaygın kurumsal tercih; ücretsiz, düzenli güncelleme |
Amazon Corretto | Amazon'un ücretsiz dağıtımı | Uzun destek taahhüdü; AWS içinde/dışında kullanılabilir |
Azul Zulu ve diğerleri | Ücretsiz temel + ücretli destek seçenekleri | Ticari destek isteyen ama Oracle istemeyen kurumlar için |
Teknik gerçek: bu dağıtımların tamamı aynı OpenJDK kaynak tabanından derlenir ve TCK uyumluluk testlerinden geçer — uygulama davranışı pratikte aynıdır. Karar teknik değil ticaridir: destek ihtiyacı, yama süresi ve lisans riski.
Envanter: kararın ön koşulu
Sağlıklı karar, eksiksiz envanterle başlar — ve Java envanteri sanıldığından geniştir: sunucu uygulamaları, geliştirici makineleri, CI ajanları, konteyner imajları (base image'ın içindeki JDK!), üçüncü parti ürünlerin gömülü Java'ları (ETL araçları, uygulama sunucuları, izleme ajanları) ve masaüstü istemciler. Tarama pratik olarak üç kaynaktan beslenir: yapılandırma yönetimi/varlık envanteri, dosya sistemi taraması (java -version otomasyonu) ve konteyner registry analizi. Çıktı tablosu net olmalıdır: nerede, hangi dağıtım, hangi sürüm, hangi lisans rejimi, iş kritikliği.
Geçiş: düşük riskli ama disiplinli
OpenJDK tabanlı dağıtıma geçiş, Java modernizasyonu içindeki en düşük riskli operasyonlardan biridir — çünkü davranış uyumluluğu yüksektir. Yine de disiplin ister: test ortamında dağıtım değişimi + regresyon/yük testi; JDK sürümü aynı tutularak yalnızca dağıtımın değiştirilmesi (iki değişkeni aynı anda oynatmamak); kriptografi/sertifika yapılandırmaları ile karakter seti gibi ortam ayrıntılarının doğrulanması; konteyner base image'larının ve CI hattının güncellenmesi; ve üçüncü parti ürünlerin destek matrislerinin kontrolü (bazı ticari ürünler belirli dağıtımları şart koşar). Legacy modernizasyon yazımızdaki fazlı yaklaşım burada da geçerlidir: kritik olmayan sistemlerden başlanır, dalga dalga ilerlenir.
Denetim hazırlığı: belge, envanter, süreç
Yazılım lisans denetimleri (Oracle dahil) kurumsal hayatın gerçeğidir. Hazırlıklı kurumun üç varlığı vardır: güncel envanter (yukarıdaki tablo, tarih damgalı), indirme/kullanım politikası (kim, hangi kaynaktan JDK indirebilir — geliştiricinin alışkanlıkla oracle.com'dan indirdiği tek kopya, temiz envanteri kirletebilir) ve geçiş kanıtları (Oracle JDK'dan çıkışın tarihli kayıtları). Denetim iletişimi ise hukuk/satın alma koordinasyonunda yürütülmelidir; teknik ekip veriyi sağlar, taahhüdü sözleşme sahipleri verir.
İş etkisi: risk kalemi, bütçe kalemine dönüşür
Bu çalışmanın çıktısı iki senaryodan biridir ve ikisi de sağlıklıdır: bilinçli Oracle aboneliği (destek değeriyle gerekçeli, bütçelenmiş) veya tam OpenJDK geçişi (lisans riski sıfırlanmış, yama süreci topluluk/alternatif destekle planlanmış). Sağlıksız olan tek durum bugünkü yaygın durumdur: envantersiz, rejimi belirsiz, denetimde sürprize açık kullanım. Orta-büyük ölçekli kurumlarda bu belirsizliğin fiyatı, çalışan bazlı model nedeniyle organizasyon ölçeğinde hesaplanır — geçiş projesinin maliyetiyse tipik olarak bunun küçük bir kesridir.
Sık sorulan sorular
OpenJDK üretim için yeterince güvenilir mi?
Evet — 'referans uygulama' OpenJDK'nın kendisidir; büyük bulut sağlayıcıları ve kurumlar üretimde OpenJDK tabanlı dağıtımlar çalıştırır. Soru güvenilirlik değil, yama/destek kanalınızın planlı olmasıdır.
Hangi durumda Oracle aboneliği rasyoneldir?
Oracle destek kanalına gerçek ihtiyaç (kritik vaka desteği), çok eski sürümlere uzun yama ihtiyacı veya Oracle ürün paketleriyle birlikte gelen ticari koşullar. Karar 'korkudan' değil, bu değerlerin fiyat karşılaştırmasından çıkmalıdır.
GraalVM bu tablonun neresinde?
Ayrı bir ürün ailesidir ve kendi sürüm/lisans yapısı vardır (topluluk ve ticari biçimler). Native imaj kullanıyorsanız, lisans değerlendirmesine ayrı satır olarak eklenmelidir.
Sadece geliştirici makinelerinde Oracle JDK varsa risk var mı?
Çalışan bazlı modelin mantığı gereği 'küçük istisna' kavramı zayıflamıştır; politika netliği (geliştiriciler dahil tüm makinelerde standart dağıtım) hem denetim hem tutarlılık açısından doğru pratiktir.
Java lisans kontrol listesi
Tam JDK envanteri çıkarıldı (sunucu, CI, konteyner, gömülü, masaüstü)
Her kopyanın dağıtım + sürüm + lisans rejimi işaretlendi
Karar verildi: bilinçli abonelik veya tam OpenJDK geçişi
Geçiş dalgaları planlandı; regresyon/yük testleri tanımlı
Konteyner base image ve CI hatları güncellendi
İndirme politikası yayınlandı; envanter süreci sürekli hale getirildi
Denetim dosyası hazır: envanter + politika + geçiş kanıtları
SSH Yazılım, Java envanter çıkarımı, lisans riski değerlendirmesi ve OpenJDK geçiş projelerini uçtan uca yürütür. Java maliyetinizi birlikte kontrol altına alalım.