Sanal sunucu, fiziksel bir makinenin işlemci, bellek ve disk kaynaklarının sanallaştırma katmanıyla paylara bölünmesi sonucu ortaya çıkan, kendi işletim sistemine ve kendi yönetici erişimine sahip bağımsız bir sunucu ortamıdır. Paylaşımlı barındırmadan ayrıldığı yer öncelikle hız değil, kontrol ve izolasyondur. Paylaşımlı bir hesapta hazır kurulmuş bir sistemin içine yerleşirsiniz; sanal sunucuda sistemi baştan siz kurarsınız.
Geçiş kararı da çoğu zaman trafik rakamıyla değil, ihtiyacın türüyle gelir. Çalıştırmak istediğiniz şey barındırma paketinin izin verdiği yazılım listesinin dışına çıkıyorsa, arka planda sürekli açık kalması gereken bir süreç varsa veya performansın aynı makinedeki diğer hesaplara bağlı olmasını istemiyorsanız, paylaşımlı ortam projeniz için doğru zemin olmaktan çıkar.
Sanallaştırma tek makineden birden fazla sunucuyu nasıl çıkarır
Sanallaştırma, donanımın üzerine yerleşen bir yazılım katmanının fiziksel kaynakları paylara ayırmasıyla çalışır. Bu katmana hipervizör denir. Her paya bir sanal makine düşer ve bu makine, kendine ayrılmış çekirdek sayısı, belleği ve disk alanı ile ayrı bir bilgisayar gibi davranır. Üzerinde çalışan işletim sistemi, altındaki donanımı başka sanal makinelerle paylaştığını bilmeden görevini yapar.
Pratik sonuç şudur: sunucuyu yeniden başlatmak yalnızca sizin ortamınızı etkiler, kurduğunuz sürüm yalnızca sizi ilgilendirir ve sistem düzeyinde yaptığınız ayar başka hesaplara sorulmadan uygulanır. Root veya yönetici erişimi de buradan doğar. Bu yetki paylaşımlı barındırmada teknik olarak verilemez, çünkü orada tek bir işletim sistemi çok sayıda hesabın ortak zeminidir ve bir hesabın sistem ayarını değiştirmesi diğerlerinin kurulumunu bozar.
Ayrılmış olmanın kapsamını bilmek de karar aşamasında işe yarar. Çekirdek, bellek ve disk alanı pakete göre size tahsis edilir; buna karşılık disk okuma yazma kapasitesi ve ağ bağlantısı aynı fiziksel makinenin ve aynı ağın üzerinden geçmeye devam eder. Bu yüzden paket sayfasında yalnızca bellek ve disk boyutuna değil, disk tipine ve ağ portu kapasitesine de bakmak gerekir. Sanal sunucunun sağladığı izolasyon paylaşımlı barındırmaya göre çok daha nettir, ancak tek kiracılı bir fiziksel makineyle birebir aynı olduğunu söylemek doğru olmaz.
Paylaşımlı barındırmayla arasındaki fark nerede başlar
Paylaşımlı barındırma, tek bir sunucu üzerinde çok sayıda hesabın aynı işletim sistemini ve aynı servis yığınını kullanmasıdır. Sağlayıcı sistemi kurar, günceller ve bakımını üstlenir; siz dosyalarınızı, veritabanınızı ve alan adı ayarlarınızı yönetirsiniz. Bu model standart bir web sitesi için sade ve yeterli bir zemindir. Asıl sınır, standart olmayan istekler başladığında görünür hale gelir.
Güncel barındırma panelleri hesap başına işlemci, bellek ve eşzamanlı süreç limitleri uygular. Bu limitler tek bir hesabın makinenin tamamını yavaşlatmasını büyük ölçüde engeller, ancak kaynağın ortak havuzdan geldiği gerçeğini değiştirmez. Sanal sunucuda pay baştan ayrılır ve o payın içinde ne çalıştıracağınıza siz karar verirsiniz. Aradaki fark tek bir kriterde değil, birkaç boyutta birden ortaya çıkar.
|
Kriter |
Paylaşımlı barındırma |
Sanal sunucu |
|
Kaynak modeli |
Ortak havuzdan hesap başına limit |
Pakete göre ayrılmış çekirdek, bellek ve disk |
|
Erişim seviyesi |
Barındırma paneli ve dosya yönetimi |
Root veya yönetici erişimi |
|
Yazılım kurulumu |
Sağlayıcının hazır yığını |
Kendi seçtiğiniz servisler ve sürümler |
|
Sürekli çalışan süreç |
Genellikle kısıtlı |
Paket sınırları içinde serbest |
|
Sistem bakımı |
Sağlayıcıda |
Büyük ölçüde kullanıcıda |
|
Tipik kullanım |
Tanıtım sitesi, blog, küçük katalog |
Özel yazılım, oyun sunucusu, bot, uzak masaüstü |
VDS ile VPS arasındaki fark bir standarda mı dayanıyor
Bu iki kısaltma sık sık aynı şeyin iki adı gibi kullanılır ve büyük ölçüde de öyledir. VPS “sanal özel sunucu”, VDS ise “sanal ayrılmış sunucu” karşılığıdır. Türkiye pazarında VDS adı çoğunlukla işlemci payının pakete tahsis edildiği yapılar için, VPS adı ise daha genel bir sanal sunucu ailesi için kullanılır. Bu ayrımı zorunlu kılan ortak bir teknik standart yoktur; adlandırma sağlayıcıdan sağlayıcıya değişebilir.
Bu nedenle karşılaştırma yaparken kısaltmaya değil, paket sayfasındaki birkaç satıra bakmak daha güvenli bir yöntemdir: çekirdek sayısı ve çekirdeğin tahsisli mi paylaşımlı mı verildiği, bellek miktarı ve tipi, diskin SSD mi NVMe mi olduğu, ağ portunun kapasitesi. Aynı adı taşıyan iki paket bu satırlarda birbirinden tamamen ayrılabilir. Kısaltma bir vaat değil, yalnızca bir etikettir.
2018 yılından bu yana oyun sunucusu kiralama, sanal sunucu kiralama ve web barındırma hizmetlerini aynı çatı altında yürüten Saganetwork, sanal sunucu tarafını Ekonomik, Premium ve Performans olmak üzere üç seviyeye ayırıyor. Paketlerde bellek 2 GB ile 32 GB, çekirdek sayısı 2 ile 6 arasında değişiyor; hangi seviyenin projeye oturduğunu görmek için vds paketlerinin bu iki satırını yan yana okumak çoğu zaman yeterli oluyor. Sunucular Vodafone Veri Merkezi'nin kurumsal altyapısında barındırılmaktadır ve ağ portu 1 Gbps olarak belirtiliyor.
Hangi projeler sanal sunucudan gerçekten yararlanır
Sanal sunucu ihtiyacı genellikle üç başlıktan birinde doğar. Birincisi sürekli çalışan süreçlerdir. Oyun sunucuları, bot ve otomasyon işleri, kuyruk işleyicileri ve zamanlanmış görevler paylaşımlı barındırmanın izin verdiği sınırların dışında kalır. Saganetwork'ün Premium seviyesini yüksek çekirdekli ve bot çalıştırmaya uygun paket olarak tanımlaması da tam olarak bu ihtiyaç grubuna karşılık gelir.
İkincisi yazılım kontrolüdür. Belirli bir dil sürümünü, kendi veritabanı ayarlarınızı, önbellek servisinizi veya kendi derleme ortamınızı kurmanız gerekiyorsa hazır yığın bir noktadan sonra yetmez. Üçüncüsü kaynak izolasyonudur. E-ticaret sitesi, kurumsal uygulama veya yoğun sorgu üreten bir yönetim paneli çalıştırıyorsanız kaynağın ortak havuzdan gelmesi denetleyemediğiniz bir değişken yaratır. Uzak masaüstü ihtiyacı da bu gruba yakın durur: kendi bilgisayarınız kapalıyken açık kalması gereken bir çalışma ortamına sanal sunucu dışında ulaşmak zordur.
Paylaşımlı barındırmada kalmak ne zaman daha mantıklıdır
Sanal sunucu her projeyi iyileştiren bir yükseltme değildir. Statik bir tanıtım sitesi, kişisel blog, küçük ürün kataloğu veya standart bir içerik yönetim sistemi kurulumu paylaşımlı barındırmada sorunsuz çalışır. Üstelik bu ortamda sistem güncellemesi, güvenlik yaması ve servis yapılandırması sizin işiniz olmaz. Sunucu yönetimiyle ilgilenecek zamanı veya teknik ekibi olmayan bir yapı için bu, kağıt üstünde küçük görünen ama pratikte belirleyici bir avantajdır.
Sanal sunucuya geçiş teknik sorumluluğun da devri anlamına gelir. Güncellemeyi kim yapacak, güvenlik duvarını kim yapılandıracak, bir servis durduğunda kim müdahale edecek sorularının cevabı yoksa daha güçlü bir sunucu daha iyi bir sonuç üretmez. Bu sorumluluğu üstlenecek biri yoksa paylaşımlı barındırmada kalmak veya sunucu yönetimini bilen birinin destek verdiği bir düzen kurmak daha sağlıklı bir tercihtir.
Geçiş zamanının geldiğini gösteren belirtiler
Karar anını genellikle tek bir büyük olay değil, birikmiş küçük engeller belirler. Aşağıdaki maddelerden birkaçı aynı anda geçerliyse paylaşımlı barındırma projenin önünde durmaya başlamış demektir.
• Kurmak istediğiniz eklenti, kütüphane veya servis barındırma paketinde desteklenmiyor
• Çalıştırmanız gereken iş arka planda sürekli açık kalmayı gerektiriyor ve panel buna izin vermiyor
• Yoğun saatlerde yavaşlama yaşıyorsunuz ve nedeni kendi kodunuzda görünmüyor
• Veritabanı sorguları hesap limitine takılıyor, sorgu iyileştirmesi bu duvarı aşmaya yetmiyor
• Birden fazla projeyi birbirinden ayrı yapılandırmanız gerekiyor
• Kendi güvenlik kurallarınızı, port ayarlarınızı veya zamanlanmış görevlerinizi tanımlamanız gerekiyor
• Bir sürüm yükseltmesini sağlayıcının takvimine göre değil, kendi takviminize göre yapmak istiyorsunuz
Geçişten önce darboğazın kaynağını doğrulamak
Belirtiler geçiş yönünde birikiyor olsa bile taşınmadan önce cevaplanması gereken bir soru kalır: yavaşlığın kaynağı gerçekten platform mu. Bu ayrımı yapmadan geçen projelerde sunucu değişir, sorun aynı yerde durur. Barındırma panelindeki kaynak kullanım grafikleri ve limit aşımı kayıtları bu soruya çoğu zaman yeterli cevabı verir.
Kaba bir ayrım şöyle kurulabilir. Kullanım grafiği gün boyu tavana yapışıyor, limit aşımı düzenli olarak kaydediliyor veya kurmak istediğiniz bileşen paketin kapsamı dışında kalıyorsa sınır platformdadır ve sanal sunucu gerçek bir çözümdür. Buna karşılık yavaşlık tek bir sayfada, tek bir raporda veya tek bir sorguda toplanıyorsa ve genel kaynak kullanımı düşük seyrediyorsa sorun büyük olasılıkla uygulamanın kendisindedir. İkinci durumda daha güçlü bir sunucu aynı gecikmeyi yalnızca daha geniş bir zeminde tekrarlar.
Karar vermeden önce sırayla cevaplanacak sorular
Sanal sunucu seçimini kolaylaştıran şey paket karşılaştırmasından önce ihtiyacın netleşmesidir. Aşağıdaki sıra çoğu projede işe yarar ve cevaplar yazıldıkça hangi seviyenin gerektiği kendiliğinden görünür hale gelir.
1. Bu proje sürekli çalışan bir sürece mi ihtiyaç duyuyor, yoksa yalnızca istek geldikçe mi çalışıyor
2. Kurulacak yazılımların sürümünü kimin belirlemesi gerekiyor
3. Bellek ve işlemci ihtiyacı ortalama değil, yoğun saatteki tepe değeri üzerinden ne kadar
4. Sistem bakımını kim üstlenecek ve bir arıza anında kim müdahale edecek
5. Projenin birkaç ay sonraki büyüme beklentisi bugün seçilecek pakete sığıyor mu
6. Kullanıcıların çoğunluğu hangi bölgeden bağlanıyor
Bu soruların cevabı her projede aynı çıkmadığı için herkese uyan tek bir sunucu yapısı da yoktur. Doğru yapı, projenin bugünkü yükü ile yakın gelecekteki büyüme beklentisinin kesiştiği yerde belirlenir. Aynı içerik yönetim sistemini kullanan iki site bile farklı eklenti setleri ve farklı ziyaretçi davranışı yüzünden birbirinden ayrı sonuçlar verir.
Sık sorulan sorular
Ziyaretçi sayısı kaça ulaşınca sanal sunucuya geçilir
Herkes için geçerli bir ziyaretçi eşiği yoktur. Aynı ziyaretçi sayısı sade bir blogda hiçbir sınırı zorlamazken, her sayfada çok sayıda dinamik sorgu üreten bir mağazada paketin limitlerini doldurabilir. Kararı üreten şey ziyaretçi rakamı değil, hesap limitlerinin düzenli olarak dolması ve barındırma paketinin karşılayamadığı bir yazılım ihtiyacının ortaya çıkmasıdır.
Sanal sunucuya geçince sitem otomatik olarak hızlanır mı
Hayır. Sanal sunucu size ayrılmış kaynak ve tam kontrol verir; bu kaynağın nasıl yapılandırıldığı hız sonucunu belirler. Yanlış yapılandırılmış bir sanal sunucu, iyi ayarlanmış bir paylaşımlı barındırma hesabından daha yavaş çalışabilir. Hız kazancı çoğunlukla doğru servis seçimi, önbellekleme ve veritabanı ayarlarıyla birlikte gelir.
Sanal sunucu ile fiziksel sunucu arasındaki fark nedir
Fiziksel sunucuda donanımın tamamı tek bir kiracıya aittir ve araya sanallaştırma katmanı girmez. Sanal sunucuda ise aynı donanım birden fazla ayrılmış ortama bölünür. Fiziksel sunucu, kaynak ihtiyacı bir makinenin tamamını dolduran veya donanım düzeyinde özel gereksinimi olan projeler için anlam kazanır. Bu eşiğin altındaki projelerde sanal sunucu daha esnek bir zemin sunar.
Mevcut siteyi taşırken kesinti olur mu
Kısa bir kesinti olasılığı vardır ve bu büyük ölçüde alan adı yönlendirmesinin hangi aşamada değiştirildiğine bağlıdır. Yaygın yöntem, yeni sunucuda kurulumu tamamlayıp siteyi test ettikten sonra yönlendirmeyi değiştirmek ve eski hesabı bir süre daha açık tutmaktır. Bu sırada veritabanının en son halinin taşındığından emin olmak gerekir.