Production Checkpoints teknolojisinin çalışma mantığını kavrayabilmemiz için Snapshot teknolojisini bilmemiz gerekmektedir. Bu makalemiz içinde Hyper-V üzerinde bulunan Snapshot teknolojisi nedir, hangi ortamlar içinde kullanmalıyız ve kullanmamalıyız konularını paylaşacağız. Makale içeriğinde Windows Server 2016 ile birlikte gelen checkpoint yeteneklerini ve arasındaki farkları inceleyeceğiz. Odaklanacak olduğumuz konular aşağıda listelenmiştir.
- Checkpoint Disabled
- Checkpoint Production
- Checkpoint Standard
- Checkpoint Production Only
Snapshot, Hyper-v Sanal sunucuları için geliştirilmiş bir geri dönüş noktasıdır.
HyperV üzerinde çalışan bir sanal makinenin, herhangi bir zaman diliminde almış olduğumuz geri dönüş noktasına geri dönüşüdür. Bir Snapshot zamanı içinde sanal makinemizin anlık ekran görüntüsü, bulunmaktadır.
Bu geri dönüş noktası içinde; sanal makine konfigürasyonunu ve işletim sisteminin o anki anlık görüntüsü bulunmaktadır. Snapshot, yedekleme teknolojisi ile çok benzerlik göstermektedir ama teknik detaylar incelendiği zaman bir yedek olmadığı anlaşılmaktadır.
Hyper-V 1.0’dan beri süre gelen Sanapshot teknolojisi bir yedek değildir. Seneler içinde yaşamış olduğumuz birçok kötü tecrübe Snapshot un bir yedek olmadığını bizlere öğretti. Hyper-V teknolojisi ilk var oluş gününden itibaren bu teknolojiye sahipti ve ilk günden itibaren
“Snapshot u gerçek ortamlarınızda kullanmayın” uyarısı bulunmaktaydı.
Microsoft’ un Snapshot teknolojisi için önerisi
“Deneme ortamları, sınıf ortamları ve kritik olmayan sanal sunucular” için kullanılması önerilmektedir.
Running Domain Controllers in Hyper-V dökümanı içinde çok detaylı bir şekilde Snapshot teknolojisinin Domain Controller ve benzeşri iş kritik sunucular üzerinde uygulanmaması gerektiği anlatılmaktadır.
Domain Controller sunucuları, veri tabanına sahip olan sunucular ve Cluster Partneri olan sunucular üzerinde bu özellik kullanılmamalı, kullanılması durumunda yaşanılacak bir problemde “DESTEĞİNİN olmadığı” bilinmesi gerekmektedir.
Snapshot kaynaklı yaşanılan kötü tecrübeler sanallaştırma platformundan kaynaklı değildir. Bir sanal makinenin X zamanından Y zamanına geçişi süresi o kadar hızlı ki aktif çalışan bir sanal makine bu zaman diliminde geçişi algılayamıyor, geçiş süresi hızlı olduğu için birlikte çalıştığı partnerlerine durumu bildiremiyor ve zaman farklılığından kaynaklı olarak birçok problemler yaşanılıyor. Yaşanılan bu problemlerin çoğunluğu sanal sunucu kaynaklıdır.
Geçmiş zamanda birçok problem ile karşılaştık. Bizler, Snapshot özelliğini kapatmak için farklı operasyonlar yürüttük. Bir sanal makine yöneticisinin yanlışlıkla bir Snapshot almasını ve sanal makineyi bozmasını önlemek için birçok yönteme başvurduk.
Kimi zaman sanal makine konfigürasyonlarını değiştirdik ve Snapshot alınmasını engelledik ve sanal makine güvenliğini üst seviyeye çıkardık. Kimi zaman System Center yönetim ailesi içinde bulunan Virtual Machine Manager ile kullanıcı delegasyonu, self service portal yardımıyla checkpoint kullanımını yasakladık.
Windows Server 2016 işletim sistemine kadar HyperV tarafında kullanılan ismi Snapshot, Virtual Machine Manager tarafında kullanılan ismi Checkpoint dir. Kişiden kişiye söylemleri değişiklik göstermiştir ama her iki teknolojide aynıdır ve sadece platform bazlı isim değişikliği bulunmaktaydı. Teknik kullanımı aynı olan bu özellik için artık Snapshot ismini kullanmayacağız.
Hyper-V 3.0 üzerinde birçok iyileştirmeler olmuş olsa bile birçok kez sanal makine üzerinde uygulanan Checkpoint geri dönüşleri hatalar ile sonuçlanmıştır. Yukarıda bulunan Checkpoint Creation diyagramında bir Checkpoint alma işlemi sırasında sanal makine üzerinde oluşan değişiklikler gösterilmektedir.
Windows Server 2016 ile birlikte gelen Production Checkpoint ile Standart Checkpoint arasındaki fark nedir?
Enable ckeckpoints kutusunu kaldırdığımız zaman sanal sunucu seviyesinde checkpoint alımını durdurmuş olmaktayız. Benim için gelen en büyük yenilik ve kolaylık bu kutudur ve bu kutu sayesinde çok kolay bir şekilde Checkpoint Disabled özelliğini kullanabilmekteyiz.
Standard checkpoints teknolojisi uygulanan sanal makine üzerinde sanal makinenin anlık durumunu ve sanal bilgisayar donanım bilgisini içeren bir anlık resim almaktadır.
Production checkpoints teknolojisi Standart checkpoints teknolojisine ek olarak sanal makine işletim sisteminde çalışan Volume Shadow Copy Service (VSS) servisini kullanmaktadır. Standart checkpoints sadece sanal makinenin geçici belleğinde bulunan verileri saklarken production checkpoins ek olarak sanal makinenin VSS servisinden yararlanmaktadır.
Production Checkpoints sanal makine üzerinde Volume Shadow Copy (VSS) servisinin çalışmasını istemektedir. Bu gereksinimi göz önüne aldığımız zaman Production checkpoints özelliği sadece Windows işletim sistemine sahip sanal sunucular için desteklemektedir. Linux işletim sistemlerinde sadece Standard Checkpoints özelliğini kullanabilmekteyiz.
Production Checkpoints özelliğini aktif duruma getirmiş olduğumuz bir sanal sunucu üzerinde dikkat etmemiz gerekli olan iki bölüm vardır. Sanal makinenin sahip olduğu integration services bölümünde Backup (volueme shadow copy) özelliğinin aktif olması ve sanal sunucu üzerinde VSS servinin çalışıyor olması. Bu iki özellik sağlıklı çalıştığı zaman Production Checkpoints özelliği başarılı bir şekilde çalışmaktadır.
Production Checkpoints özelliğini aktif duruma getirdiğimiz zaman Create standard checkpoints if it’s not possible to cretae a production checkpoint seçeneği aktifleşmektedir. Bu özelliği seçersek sanal makine üzerinde öncelikle Production Checkpoint alınmasını istiyoruz. Yukarıda bahsetmiş olduğumuz iki seçenek sağlıklı çalışmıyorsa eskiden kullanmış olduğumuz standard checkpoints in alınmasını opsiyonel olarak sanal makineye sunmuş oluyoruz.
Bu özelliği kapalı duruma getirirsek Checkpoint Production Only özelliğini kullanmış oluyoruz.
Sanal sunucu üzerinde almış olduğumuz Production Check Point ile Standart Checkpoint leri aynı Checkpoints Tree altında görebilmekteyiz.
Yukarıdaki ekran görüntüsü Production Checkpoint alınmış bir sanal bilgisayar görülmektedir. Kırmızı ile işaretlemiş olduğumuz bölüm, checkpoints geri dönüş yapılırsa eğer sanal sunucunun hizmet etmeye başlayacak olduğu zaman dilimi görülmektedir. Production Checkpoint geri dönüş yaptığımız zaman sanal sunucularımız kapalı durumda beklemektedir ve geri dönüş zamanına dönüş yaptıktan sonra el-ile açmamızı beklemektedir.
Standart checkpoint ise sanal sunucularımız ekran görüntüsünün alınmış olduğu zaman diliminde beklemektedir. Bu ekran görüntüsü yaşamış olduğumuz Checkpoint problemlerini neden yaşadığımızı bizlere göstermektedir.
“Production checkpoints özelliğini kritik seviyede bulunan sanal sunucularımız üzerinde kullanabilir miyiz? Production checkpoint özelliğinin kullanmış olduğu Hyper-V host üzerinde çalışmakta olan sanal makinenin yedeğini almış olabilir miyiz? Yeni nesil Checkpoint teknolojisini bir yedekleme ürünü gibi kullanabilir miyiz?” soruları sorulmaya devam edecek.
Kişisel düşüncem, Production checkpoint özelliğinin bu denli sağlıklı çalışmasına rağmen değişmemiştir. Microsoft un belirttiği gibi Sınıf ortamları, iş geliştirme ortamları ve kritik seviyede bulunmayan sunucular üzerinde kullanılması gerektiğini bir kez daha hatırlamak istiyorum ve bu konuda gelişimlere çok açık olmadığımı belirtip yedek almak her zaman için garanti çözüme bir adım daha yakındır.