Tag archive: Performans

vCenter Performans Serisi – JVM Ayarları

vCenter sadece işimizi kolaylaştırmakla kalmayan neredeyse tüm sanal alt yapımızı yönetebilmemiz için şart olan bir uygulamadır. Doğal olarak bu kadar kritik bir servisin süreklilik, güvenlik ve performansının mümkün olduğu kadar yüksek olmasını isteriz. Genelde vCenter, kurulumu esnasında kaynak ihtiyaçları konusunda bizi yönlendirse de bazı durumlarda daha iyi performans sağlamak ve memory yönetimini daha iyi yapabilmek için JVM heap size’ı değiştirmemiz gerekebilir.

Continue reading

ESXI Memory Yönetimi ve Teknikleri

Performans yönetimi bir IT operasyonunun en kritik görevlerinden biridir. Kullanıcılarımıza sunmuş olduğumuz hizmetlerin SLA’lere uygun olmasını ve kullanıcı tecrübesinin hep en iyi noktada olmasını isteriz. Performans bu kadar kritik bir noktadayken ESXI’ın VM’lerin kaynaklarını ve performanslarını nasıl yönettiğini anlamamız ve bunu nasıl mevcut yapımıza uygun olarak kullanacağımızı bilmemiz gerekiyor.

ESXI’ın VM’lere tanımlı olan memory değerlerini nasıl yönettiğini anlamamız performan yönetimi açısından kritik noktalardan biridir. Bu sayede doğru VM sizing yapabileceğimiz gibi ihtiyaç duyacağımız host sayısını da tam anlamıyla görebiliriz.

Continue reading

Vsphere Kaynak Yönetimi Ve Yöntemleri

Bu yazımda daha önce ki iki yazım olan DRS ve sDRS’i tamamlar nitelikte olacak olan vsphere kaynak yönetimi ve yöntemleri üzerine konuşmak istedim.Eğer yüksek bir iş yüküne sahip sanallaştırma ortamınız varsa, VM’lerinizin over-commitment olması çok normaldir.  Sanallaştırmanın bize sunduğu bir nimet olan over-commitment kaynak ihtiyacımızı ciddi anlamda azaltmış olsa da her zaman istediğimiz performans ve sonucu alamayabiliriz.  Belli servislerde oluşan anlık talepler sürekli kullanılan ve kritik servislerin ihtiyacı olan kaynakları kullanmasının önüne geçebilir.

Vmware vsphere ortamlarında bu durumun önüne geçilmesi için bazı yöntemler uygulanabilir. Bu yöntemler aşağıda ki gibidir.

  • Reservations
  • Shares
  • Limits
  • Resource Pools

Continue reading

vSphere DRS Kullanımı

Bir vSphere ortamı yönetiyorsanız VM’lerinizin yarattığı yüklerin homojen bir şekilde fiziksel sunucular arasında dağılmasını isteriz. Tabii ki bu dağıtımı manüel olarak yapmamız hem bizim için zor olacak hem de istediğimizi homojenliği tam olarak yakalayamayabiliriz.

Bu özellikleri kullanabilmeniz için bazı ön şartlar vardır. DRS vs sDRS kapsamında ki tüm fiziksel sunucuların aynı cluster içerisinde olması, aynı network/storage network ayarlarına sahip olması ve aynı datastore’lara erişebilmelidirler.  Bu saydıklarıma ek olarak sunucular ve datastore’lar arasında ki taşınma vMotion ve Storage vMotion ile olacağı için bu özellikleri de kullanabiliyor olmamız gerekmektedir. Son olarak en az vSphere Enterprise veya üstü bir lisansa ihtiyacımız var. Bu yazımda DRS üzerinde duracağım bir sonra ki yazımda da sDRS ve son olarak da  bunları vCO ve PowerCLI ile nasıl kontrol edebileceğimizi tartışacağız.

Peki, bu homojen yapıyı nasıl oluşturuyor?

Continue reading

IOPS ve Throughput Nedir?

Hiçbir son kullanıcı ne kadar teknoloji harikası olursa olsun yavaş, sürekli çöken ve bir işlemlerin yarısında kapanan yazılımlarla çalışmak istemezler. Doğal olarak bir sistem veya proje planlarken performans bizim için önemli bir etkendir. Sunucu ve servislerde oluşan dar boğazları incelediğiniz zaman büyük bir kısmının yetersiz kaynak atamasından dolayı oluştuğunu görürsünüz, hal böyleyken sorunun çözümü kolay gibi gözükmektedir. Memory yetmiyorsa Ram artırımı işlemci yetmiyorsa CPU artırımına gidilir. Sanallaştırma sayesinde minimum kesintiyle hatta çoğu durumda kesintiye bile ihtiyacımız olmadan kaynakları değiştirebiliriz ama durum her zaman böyle olmayabilir. Özellikle disk performansında oluşan sorunların çözümü bu kadar kolay olmuyor. Bunun için mimariyi oluştururken ilk seferde üzerinde çalışacak servisleri ve yükü doğru tahmin etmeli ve buna göre sistemler hazırlamalıyız.

Birçok sistem yöneticisi bir servisi veya sistemi devreye alırken disk’le ilgili ihtiyaçlarını düşünürken sadece kapasite öngörüsünde bulunurlar. Doğal olarak orta ve uzun vadede yük artıkça dar boğazlar oluşmaya ve performans kaybı gözlemlenir. Bunun yegane sebebi sistemin ihtiyaç duyacağı toplam IOPS ve Throughput doğru öngörülememesi veya hiç hesaba katılmamasıdır.

Peki nedir bu değerler ve ne işe yararlar. IOPS(Input/output operations per second) adından da anlaşılacağı gibi bir diskin saniyede yapabileceği maksimum yazma veya okuma sayısıdır. Throughput is belli bir zaman aralığında yapılan işi temsil eder storage için konuşursak 1 saniyede kaç MB yazdığı veya okuyabildiği değerdir. Genelde insanlar IOPS’a odaklanır ve Throughput’u önemsemez veya aynı şey olduğunu düşünür. Durum maalesef böyle değil ve size iki farklı senaryoyla durumu anlatmak istiyorum. İlk senaryoda kullanıcıların arşiv olarak kullandıkları bir dosya sunucusunun throughput’unu hesaplarken ikinci senaryoda aynı diskler ile bir yoğun yazma oranına sahip bir log arşivininkini hesaplayacağız.

Öncelikle  Throughput hesaplama formülümüz tek disk için şudur.

MB/s = IOPS * <KB per IO> / 1024

Burada ki “KB per IO” disk üzerindeki block size’larıdır.Her iki örnek içinde 128KB olarak aldım.

İlk önce dosya sunucumuzu ele alalım. Bu sunucunun toplam iş yükünün %80’i okuma, %20’si yazma olsun ve güvenlik sebebiyle de RAID-5 yapalım. 4 adet 175IOPS’a sahip disk takalım.

Öncelikle toplam IOPS’u hesaplamamız gerekiyor.

Toplam IOPS = 4 * 175

Raid yaptığımız için Raid’den kaynaklı bir “IO penalty” bulunmaktadır. Bunun sebebi Raid 0 haricinde tüm Raid yapılarında verinin birden fazla diske yazılmasıdır. Yazının sonunda “raid penalty” tablosunu bulabilirsiniz.Raid 5 için bu değer “4”.

Fonksiyonal IOPS’u hesaplarsak

Fonksiyonal IOPS = ((Toplam IOPS *yazma yüzdesi)/(Raid penalty ))+(Toplam IOPS*okuma yüzdesi)

Dosya sunucusunun fonksiyonal IOPS ve Throughput’u
Yazma için 35 IOPS ve Throughput’u yaklaşık olarak 4,5MB/s
Okumak içinse 560 IOPS ve Throughput’u yaklaşık olarak 70MB/s

Logları tuttuğumuz sunucu Raid-6 ile kurulmuş olsun. Geri kalan tüm özellikleri bire bir aynı olduğunu varsayalım. Raid-6’nın penalty değeri 6’dır. Bu durumda,

Yazma için yaklaşık IOPS 94 ve Throughput’u yaklaşık olarak 11,75 MB/s
Okumak içinse yaklaşık IOPS 140 ve Throughput’u yaklaşık olarak 17,5 MB/s

Gördüğünüz üzere aynı diskler farklı raid yapıları ve okuma ve yazma oranlarıyla tamamen farklı sonuçlar vermektedir. Tasarımınızı yaparken mutlaka ihtiyacınızı iyicene analiz edip karar verin. Peki kullanıcı sayınızı ve her kullanıcının yaklaşık olarak yaratacağı yükü biliyorsunuz diyelim. Bu durumda

Gerekli Disk Sayısı = ((Read IOPS) + (Write IOPS*Raid Penalty))/ Disk IOPS

Formülünü kullanarak ihtiyacınız olan disk sayısını bulabilirsiniz. Gereken minimum disk sayısını bilmek performansın yanında kapasite planlaması yaparken de size yardımcı olacaktır.

Yazımı bitirmeden önce küçük bir tiyo vermek istiyorum : Diskin block size’ını değiştirerek throughput’da artış sağlayabilirsiniz ama bu deduption oranınızı ciddi anlamda etkileyecektir.

raidpenalties