Erkal Aslankara Sanallaştırma notlarım…

18Oca/170

VMware ortamlarında Oracle ürünlerinin çalıştırılması ve lisanslaması – Doğru bilinen yanlışlar

VMware ürünleri veri merkezlerine girdiğinden beri üzerinde çalışan her türlü yazılımın daha verimli çalışmasına, erişilebilirliğinin arttırılmasına, daha kolay yedeklenmesine, felaket kurtarma senaryolarının basitleştirilmesine ve çeşitli yönlerden maliyet avantajı sağlanmasına imkan tanımıştır. Oracle ürünleri de VMware platformu üzerinde yıllardır çalışmakta ve yukarıdaki tanımda verilen faydalardan yararlanmaktadır. Fakat gerek müşterilerimizin bu konudaki soruları gerekse bilgisiz (veya kötü niyetli) satış personellerinin mesnetsiz iddiaları beni bu yazıyı yazmaya itmiştir. Yazıda VMware ortamlarında Oracle ürünlerinin çalıştırılması ve lisanslanması ile ilgili sorulan tüm soruları ele alıp tek tek üreticilerin kaynaklarına dayandırarak cevaplamaya çalıştım. Gelin bu uzun yazıya bazı tanımları yaparak başlayalım.

VMware vSphere & vSAN Tanımları

Konuya girmeden önce makale boyunca bize lazım olacak aşağıdaki temel tanımları hatırlayalım.

  • VMware vSphere donanım ile işletim sistemini bir birinden ayıran bir sanallaştırma platformudur.
  • Esxi paravirtualized olmayan dolayısıyla sanal işletim sistemlerinin içinde herhangi bir değişiklik yapmadan çalışmasına olanak sağlayan tip1 bir hipervizördür.
  • VMware vSAN endüstrinin önde gelen yazılım tabanlı Hyper-Converged altyapı çözümüdür, üzerindeki sanal makinaların çalışacağı CPU kaynakları hakkında bir belirleyiciliği yoktur, bu nedenle herhangi bir CPU Core ya da Socket bazlı lisanslama yapan ürünün lisanslama yöntemini etkilemez.

VMware ortamlarında Oracle çalıştırmak

Bu konuda en sık karşılaştığımız iddialardan birisi Oracle ürünlerinin VMware ortamlarında desteği olmadığını düşüncesidir ve kesinlikle yanlıştır. Bu destek ile ilgili Oracle tarafından yayınlanan aşağıdaki dokümanlar incelenebilir. (Oracle hesabı gerektirir)

Note:942852.1 - VMWare Certification for Oracle Products
Note:249212.1 - Support Position for Oracle Products Running on VMWare Virtualized Environments

Aslında Oracle, işletim sistemi altındaki hiçbir katman için bir sertifikasyon yapmaz. Yani sahip olduğunuz Dell, HP ya da Lenovo sunucular Oracle tarafından sertifikalandırılmamıştır. Oracle sadece destekleyeceği Linux ve Windows işletim sistemleri için sertifikasyon yapar ve teknik olarak bu işletim sistemlerinin çalıştığı tüm platformlarda çalışması beklenir.

Bir diğer yanlış anlaşılma ise Oracle ürünlerinin VMware ortamına kurulduğunda ve bir sorun ile karşılaşıldığında Oracle tarafından destek alınamayacağıdır. Aslında gerçekten de Oracle destek notlarında VMware ortamlarında karşılaşılan sorunların eğer daha önce hiç karşılaşılmamış bir problem ise ve Oracle destek ekipleri bilindik yöntemlerle sorunun üstesinden gelemiyorlarsa aynı problemin fiziksel bir sunucuda da gösterilmesinin istenebileceğine dair bir bilgi notu bulunmaktadır. Ancak bu duruma şu bilgiler ışında bakmak daha doğru olacaktır;

  • Öncelikle yukarıda da belirtildiği gibi bu problemin daha önce hiç karşılaşılmamış bir problem olması ve Oracle destek ekiplerinin bilindik yöntemlerle sorunun üstesinden gelememesi durumunda böyle bir talep olabilmektedir.
  • Daha önemlisi VMware üzerinde Oracle kullanan müşterilerde bu güne kadar VMware ürünlerinden kaynaklı bir problem gözlenmemiştir. VMware teknolojileri işletim sistemlerinin yapısında ya da çekirdeğinde herhangi bir değişiklik yapmaz, işletim sistemleri fiziksel sunucuda nasıl çalışıyor ise sanal sunucuda da aynı şekilde çalışır.
  • Diyelim ki VMware üzerinde çalışan Oracle ürününüzle ilgili bir sorun yaşadınız. Bu durumda VMware destek ekipleri sizi yalnız bırakmaz. Destek talebinizi VMware'e bildirdiğiniz andan itibaren aşağıdaki başlıklarda yardım alabilirsiniz;
    • Açılan çağrının tüm sahipliğini VMware destek ekibi üzerine alır ve Oracle, VMware ve ilgili diğer tüm üreticilerle olan ilişkileri yürüterek en kısa sürede çözüme ulaşılmasını sağlar.
    • VMware destek ekibi içinde ayrıca bir Oracle DBA ekibi bulunmaktadır, bunlar Oracle veritabanlarınız ile ilgili problemlerin çözülmesi konusunda size destek olurlar.
    • Oracle DBA ekibi Oracle veritabanınız ile ilgili performans iyileştirmeleri ve best-practies'lerin uygulanması konusunda destek olabilir.
    • VMware Support ile Oracle Support arasında bulunan TSANet destek işbirliği anlaşması gereğince ortaklaşa çalışarak problemin hızlıca çözülmesine yardımcı olunur.
    • Gerektiğinde problemin sanallaştırmadan kaynaklanmadığı ile ilgili kanıtları Oracle Support'a iletebilir.
    • Gerektiğinde doğrudan Oracle Support ile iletişime geçerek çağrının hızlı tamamlanması için eskalasyon vs aksiyonları alabilir.
  • Son olarak problemin farklı bir fiziksel sunucuda tekrar gösterilmesi talebi Oracle destek anlaşmasına göre fizikselde çalışan ya da Oracle VM'de çalışan Oracle veritabanları için de geçerlidir. Örneğin Oracle destek ekibi fiziksel bir sunucuda çalışan Oracle veritabanınız ile ilgili sorun tespit eder ve bunu bilinen yöntemlerle çözemez ise bunun farklı bir fiziksel sunucuda tekrar denenmesini isteyebilir. Bu durumun doğrudan ve sadece VMware ortamları için olduğunu söylemek art niyet değilse bile en azından yanlıştır.

Ayrıca VMware de Oracle ürünlerinin kendi ortamında çalışmasını desteklemektedir ve hem ülkemizde hem dünyada yüzlerce belki binlerce müşteri yıllardır Oracle ürünlerini sanal ortamda sorunsuzca kullanmaktadırlar. Bu güne kadar Oracle satış ekiplerinin  “Destek alamazsınız!” tehditlerine rağmen çalışan ortamlarda destek ile ilgili sıkıntı yaşayan bir örnek de bulunmamaktadır.

Oracle'ın VMware ortamlarında çalışması konusunda genellikle yanlış bilinen bir konu da lisanslama konusudur. Şimdi bu konuya örneklerle açıklık getirelim.

Oracle Lisanslama Efsaneleri

Aşağıdaki konularda lisanslama efsaneleri etrafta dolaşmakta;

  • Oracle lisanslaması vCenter'a bağlı tüm hostların lisanslanmasını gerektirir.
  • Oracle lisanslaması Oracle sanal makinalarımızın bulunduğu birincil site'a bağlı tüm site'lardaki hostlarımızın lisanslanmasını gerektirir.

Bunlar genellikle aşırı hevesli satış ve lisanslama ekipleri tarafından ortaya atılmış iddialar olup Oracle lisanslaması hakkında bağlayıcılığı bulunan temel dokümanlara aykırı ifadelerdir.

Bu yanlış anlama Oracle sanal makinaların vMotion vs yöntemlerle taşınma ihtimali olan tüm sunucuların lisanslanması gerektiği gibi bir yanlış iddiaya dayanır. Eğer bu doğru olsaydı dünyadaki tüm veri merkezlerindeki tüm sunucuları lisanslamanız gerekirdi çünkü vCenter'ın ya da SSO domaninin farklı olması vMotion yapmaya engel bir durum değil.

Bu hatalı mantık ile hareket ederseniz aşağıdaki gibi güzel bir ada satın alabilecek kadar parayı boşa harcayabilirsiniz 🙂Island

Bu yazının amacı VMware vSphere ve vSAN ortamlarında Oracle lisanslaması ile ilgili gerçek bilgileri ortaya çıkarmak ve doğru lisanslama için gerekenleri aktarmaktır.

VMware vSphere üzerinde Oracle Lisanslama

VMware üzerinde Oracle lisanslama ile ilgili sunumlar bir çok büyük fuarda, etkinlikte (OIUG, VMworld, EMCWorld vs) ve webinarlarda anlatıldı ve herhangi bir şüpheye yer bırakmayacak şekilde açıklandı. Oracle lisanslaması ile ilgili bağlayıcılığı olan sadece 3 döküman bulunmaktadır.

  • Technical Support Policy
  • Processor Core Factor Table
  • Oracle License and Service Agreement (OLSA)  / Oracle Master Agreement(OMA)
    • OLSA/OMA Processor yani işlemciyi şu şekilde tanımlar; “Processor: Oracle programlarının kurulduğu ve/veya çalıştığı tüm işlemciler olarak tanımlanır” (“Processor: shall be defined as all processors where the Oracle programs are installed and/or running.”)

Ayrıca bunların dışında genellikle satış ve lisanslama ekipleri tarafından “Oracle Partitioning Policy” isimli bir doküman daha var ancak bu doküman kesinlikle bağlayıcılığı olan veya lisanslama sözleşmesiyle ilişkili bir doküman değil.

“Oracle Partitioning Policy” hakkında bilmemiz gereken iki nokta var;

  • “Oracle Partitioning Policy” OLSA/OMA içinde geçen veya refere edilen bir doküman değil bu nedenle herhangi bir lisanslama işleminde dikkate alınamaz.
  • Ayrıca ilgili dokümanın disclaimer (sorumluluk reddi) bölümünde geçen şu ifadeye dikkat edelim;  (“This document is for educational purposes only and provides guidelines regarding Oracle’s policies in effect as of April 5, 2016. It may not be incorporated into any contract and does not constitute a contract or a commitment to any specific terms“)

Capture

http://www.oracle.com/us/corporate/pricing/partitioning-070609.pdf

Bu dokümanın OLSA/OMA içinde geçmemesi ve zaten dokümanın içinde bizzat Oracle'ın bu dokümanın eğitim amaçlı olduğunu, herhangi bir lisanslama kontratına konu olamayacağını ve kendisinin de kontrat niteliği taşımadığını açıkça belirtmesi sebebiyle bu konudaki yersiz kaygıları bir tarafa bırakıp kontrat niteliği taşıyan asıl belgelere odaklanalım.

Bu konudaki kaynaklar ve lisanslama konusunda çalışan değerli VMware global iş ortaklarının (House of Bricks ve Licensing Consulting başta olmak üzere) çalışmaları incelendiğinde Oracle satış ekiplerinin “Bütün site'ı lisanslama“ veya “Galaksi Lisanslama“ diye tabir edebileceğimiz gülünç iddialarını güvenle göz ardı edebiliriz.

Oracle lisanslama ile ilgili temel kaynak olan OLSA/OMA incelendiğinde görülecektir ki Oracle lisanslaması iki türlüdür; Kullanıcı Bazlı Lisanslama(Named User Plus) ve İşlemci Bazlı Lisanslama(SE2 için soket bazlı, EE için core bazlı).

Bu konuda daha fazla bilgi için şu dokümanlara bakılabilir;

SOFTWARE INVESTMENT GUIDE
http://www.oracle.com/us/corporate/pricing/sig-070616.pdf

Database Licensing
http://www.oracle.com/us/corporate/pricing/databaselicensing-070584.pdf

Yani Oracle lisanslaması memory, storage, cluster, network veya vCenter bazlı değildir! Kullanıcı bazlıdır(Named User Plus) veya işlemci bazlıdır(SE2 için soket bazlı, EE için core bazlı).

Bu bilgiler ışığında Oracle lisanslaması yaparken storage segmentasyonu, network segmentasyonu veya memory segmentasyonu yapılmasına gerek yoktur. Yegane kontrat niteliği taşıyan doküman olan OLSA/OMA içinde böyle bir segmentasyon ihtiyacı ile ilgili herhangi bir bilgi bulunmamaktadır.

Bu yanlış lisanslama mantığını şöyle bir örnekle açıklayabiliriz. Bu bir otoparka girdiğimizde herhangi bir yere park edebilme ihtimalimize karşın otoparkçının tüm boş yerlerin parasını bizden istemesi gibidir. 🙂

HOB

VMware vSAN

Öncelikle belirtelim ki vSAN kullanımı Oracle lisanslamasını herhangi bir şekilde etkilememektedir. vSAN sadece sunucular üzerindeki depolama kaynaklarının merkezi kullanımı ile ilgili bir teknoloji olup Oracle lisanslaması ile herhangi bir alakası yoktur.

Oracle İş Yüklerinin VMware vSAN Üzerinde Çalıştırılması (Hybird/AllFlash)

Oracle iş yüklerinin vSAN ortamında çalışması desteklenmektedir. Oracle RAC'ın vSAN üzerinde tasarlanması, konfigüre edilmesi ve performansı ile ilgili bir referans mimari dokümanı daha önce VMware tarafından yayınlanmıştır.

https://blogs.vmware.com/apps/2015/12/oracle-real-application-clusters-on-vmware-virtual-san.html

vSAN 6.2 sürümü ile birlikte Checksum, Erasure Coding, Deduplication ve Compression gibi bir çok özellik eklenmiştir. Bu özelliklerin Oracle OLTP ve DSS iş yükleri için kullanılması ile ilgili yine bir doküman VMware tarafından yayınlanmıştır.

https://blogs.vmware.com/apps/2016/08/oracle-12c-oltp-dss-workloads-flash-virtual-san-6-2.html

Oracle İş Yüklerinin VMware vSAN Üzerinde Lisanslaması (Hybird/AllFlash)

Oracle lisanslaması sanal sunucuların klasik vSphere cluster'ları üzerinde mi yoksa vSAN gibi Hyper-Converged teknolojiler üzerinde mi çalıştığına göre değişmez. Oracle sanal makinaların işlemci kullanımında klasik vSphere clusterda ya da vSAN clusterda bir farklılık bulunmamaktadır. Daha önce de belirttiğimiz gibi Oracle lisanslaması sadece kullanıcı ya da işlemci bazlıdır.

Örnek Lisanslama 1: vSphere Cluster'ı Üzerinde Oracle Lisanslama

Örneğin diyelim ki Oracle iş yüklerimizi çalıştırmak için kullanacağımız 3 sunuculuk bir vSphere Cluster ortamımız var. Tüm sunucuları Oracle için kullanacağımızı varsayıyoruz. (İkinci örnekte cluster'daki tüm sunucuların Oracle için kullanılmayacağı bir senaryoya da geleceğiz) Her sunucuda 10 core'lu 2 şer adet Intel işlemci bulunuyor.

Oracle EE (Enterprise Edition) için gerekli lisans miktarına bakalım.

Gerekli lisans miktarı = Sunuculardaki toplam core sayısı * Processor Core çarpanı
= 3 sunucu * 2 işlemci * 10 core/işlemci * Processor Core çarpanı
= 60 * 0.5
= 30 (Bu ortamı lisanslamak için gerekli Oracle EE lisans adedi)

Burada bahsi geçen Processor Core çarpanı tablosu Oracle tarafından yayınlanmaktadır ve aşağıdaki adresten erişilebilir;

CoreFactor-300x231

http://www.oracle.com/us/corporate/contracts/processor-core-factor-table-070634.pdf

Böylelikle sunucular lisanslandıktan sonra bu üç sunucu üzerinde fiziksel kaynaklar yettiği ölçüde istenilen miktarda sanal Oracle sunucusu çalıştırılabilir.

Örnek Lisanslama 2: vSphere + vSAN Cluster'ı Üzerinde Oracle Lisanslama

Bu örnekte “vSANCluster” isimli bir vSphere + vSAN cluster'ımız olacak. İçinde 4 adet fiziksel sunucu olduğunu düşünelim. Ancak biz bu sunuculardan sadece iki tanesini Oracle sanal makineleri için kullanacağız.

vsan1

Cluster'daki her bir sunucu 2şer adet 16 core Intel işlemci bulunmakta.

vsan2

Oluşturulan Oracle sanal makineler Oracle lisanslaması nedeniyle belli bir ya da birkaç sunucuya sabitlenebilir. Şimdi bu işlemin nasıl yapılacağına bir bakalım.

Aşağıda göründüğü gibi bir VM/Host Group eşmesi yaratalım. Örnekteki grubun adı “OracleVM” ve içindeki sanal makinenin adı da “testoravm”. “OracleVM” grubu ile “testoravm” sanal makinesi arasında bire bir eşleme söz konusu.

vsan3

Şimdi “OracleVM-Host” isimli bir Host Group oluşturalım sonra da w2-pe-vsan-esx-029.eng.vmware.com ve w2-pe-vsan-esx-030.eng.vmware.com isimli iki sunucumuzu bu gruba dahil edelim.

vsan4

Şimdi de tüm bunları birleştirecek ve hangi sanal makinelerin hangi hostlarda çalışabileceğini tanımlayacak olan VM/Host kuralını tanımlayalım. Kuralımızın adı “OracleVM-Affinity” olsun ve içinde sanal makine grubu olarak “OracleVM” ve host grubu olarak da “OracleVM-Host” seçelim. Ayrıca bu sanal makinelerin başka sunucularda çalışmasını önlecek şekilde “must run on hosts in group” seçeneğini işaretleyelim.

vsan5

vsan6

Böylece bu vSphere cluster'ında “testoravm” isimli Oracle sanal makinesi sadece belirtilen sunucularda çalışabilir, dolayısıyla da sadece bu sunucuların lisanslanması yeterli olacaktır. Yukarıdaki senaryodaki gibi bir ortamı Oracle EE sürümüyle lisanslamak için;

Oracle sanal makinalarının çalışabileceği host sayısı : 2

Gerekli lisans miktarı = Sunuculardaki toplam core sayısı * Processor Core çarpanı
= 2 sunucu * 2 işlemci * 16 core/işlemci * Processor Core çarpanı
= 64 * 0.5
= 32 (Bu ortamı lisanslamak için gerekli Oracle EE lisans adedi)

Örnekte görüldüğü gibi sadece clusterdaki tüm sunucuların değil sadece üzerinde Oracle çalışabilecek sunucuların lisanslanması yeterlidir. Bu cümleye en büyük kanıt Oracle OLSA/OMA içindeki Processor yani işlemci tanımıdır. “Processor: Oracle programlarının kurulduğu ve/veya çalıştığı tüm işlemciler olarak tanımlanır” (“Processor: shall be defined as all processors where the Oracle programs are installed and/or running.”) Yukarıdaki örnekte Oracle sanal makinası sadece belirli iki sunucuda çalışabilir ve dolayısıyla Oracle yazılımı da sadece bu sunuculara kurulabilir.

Peki herhangi bir şekilde Oracle sanal makinelerinin bu sunuculardan başka bir yerde çalışmadığı raporlanabilir mi? Tabi ki evet!

Varsayılan olarak her sanal makina ile aynı dizinde vmware.log adlı bir log dosyası bulunur ve sanal makinanın tüm hareketleri buraya kaydedilir. İstenilen sanal makinanın log dosyasına bakılıp hangi sunucularda çalışmış görülebilir.

Ayrıca VMware Log Insight yazılım da yine bu amaçla kullanılabilir. Log Insight tarafından oluşturulan izleme dashboard'ları Oracle LMS ekiplerine bu sanal makinelerin sadece belirlenen fiziksel sunucular üzerinde çalıştığını ispat anlamında gösterilebilir. Aşağıdaki video Log Insight yazılımının Oracle Licence Complience amacıyla nasıl kullanılabileceğini göstermektedir.

https://www.youtube.com/watch?v=EHcT4xDyONc

Örnek Lisanslama 3: VMware üzerinde Oracle Lisanslama Avantajları

Yine bir örnek üzerinden lisanslama avantajlarına bakalım. Diyelim ki bir müşterimiz aşağıdaki bir ortamı Intel işlemcili fiziksel sunucularda lisanslamak istiyor.

2 x Prod Oracle DB  (her biri 16 Core - 64GB RAM)
4 x Test Oracle DB  (her biri 16 Core - 64GB RAM)
4 x Dev Oracle DB  (her biri 8 Core - 32GB RAM)

Fiziksel sunucularla gerekecek Oracle EE lisansı;
(2 x 16 + 4 x 16 + 4 x 8) * 0.5 = 64 tür.

Şimdi de tüm bu sunucuları sanallaştırdığımız düşünelim. Yeni nesil Intel sunucular terabaytlarca ram ve çok yüksek kapasiteli işlemciler barındırabilmektedir. Aynı sunucu üzerinden birçok müşterimiz için birden fazla sanal makineyi çalıştırmak hiç sorun olmayacaktır. Tabi ki burası sunucuların kullanacağı işlemci miktarına göre değişebilir ama hayali örneğimizde şöyle bir konfigurasyon uygun olacaktır.

3 adet fiziksel sunucu (her biri 2 x 16 core işlemciye ve 256GB RAM'a sahip) üzerinde yukarıda bahsi geçen 10 adet Oracle DB'yi sanal makine olarak çalıştıracağız.

Sanallaştırma ile gerekecek Oracle EE lisansı;
( 3 x 2 x 16 ) * 0.5 = 48 dir.

Sanallaştırmanın getireceği diğer birçok faydanın yanında görüldüğü gibi Oracle lisanslama maliyetlerinde de avantaj sağlanmaktadır.

Sonuç

Sonuç olarak şunu söylemeliyiz ki Oracle lisanslaması memory, storage, cluster, network veya vCenter bazlı değildir. Oracle lisanslaması iki türlüdür; Kullanıcı Bazlı Lisanslama (Named User Plus) ve İşlemci Bazlı Lisanslama (SE2 için soket bazlı, EE için core bazlı). Ayrıca geleneksel vSphere cluster olması ya da vSAN kullanımı Oracle lisanslamasını herhangi bir şekilde etkilememektedir. Önemli olan tek şey Oracle yazılımının hangi fiziksel sunucular/işlemciler üzerinde çalışacağıdır.

Tekrarlamak gerekirse, Oracle lisanslaması ile ilgili bağlayıcılığı olan sadece 3 döküman bulunmaktadır.

  • Technical Support Policy
  • Processor Core Factor Table
  • Oracle License and Service Agreement (OLSA)  / Oracle Master Agreement(OMA)
    • OLSA/OMA Processor yani işlemciyi şu şekilde tanımlar; “Processor: Oracle programlarının kurulduğu ve/veya çalıştığı tüm işlemciler olarak tanımlanır” (“Processor: shall be defined as all processors where the Oracle programs are installed and/or running.”)

vSphere üzerinde Oracle lisanslaması ile ilgili bu makalenin de altyapısını oluşturan aşağıdaki kaynaklara bakılabilir

NOT: Bu makaledeki bilgilerin bir kısmı en sondaki blog sayfasının Türkçe'ye çevrilmiş halidir.

 

Yorumlar (0) Geri izlemeler (0)

Yorum yapılmadı.


Leave a comment

Time limit is exhausted. Please reload CAPTCHA.

Geri izleme yok.