İçeriğe atla

Chef (yazılım)

Chef
Geliştirici(ler)Chef
Güncel sürüm1.9.2 / 30 Mart 2015
Programlama diliRuby (istemci) ve Ruby/Erlang (sunucu)
İşletim sistemiGNU/Linux, AT&T Unix, MS Windows, FreeBSD, Mac OS X, IBM AIX illumos
TürYapılandırma yönetimi, Sistem yönetimi, Ağ yönetimi, Bulut bilişim, Sürekli iletim
LisansApache Lisansı
Resmî sitesichef.io
Kod deposu Bunu Vikiveri'de düzenleyin

ChefRuby ve Erlang programlama dilleri kullanılarak yazılmış bir yapılandırma yönetimi aracı ve aynı adlı bir şirkettir. Sistem yapılandırma "tariflerini" yazmak için saf Ruby tabanlı özel amaçlı bir programlama dili kullanır. Chef bir şirketin sunucularının yapılandırma ve bakımını düzene sokma görevini yerine getirir ve yeni cihazları gözden geçirmek ve yapılandırmak için Google Cloud Platform, Amazon EC2, OpenStack, Microsoft Azure, Rackspace, Internap ve SoftLayer gibi bulut tabanlı platformlarla bütünleşebilir. Chef tamamen ücretsiz olarak yayınlanan ve Apache Lisansı'na sahip bir özgür yazılımdır. Bunun yanında firma olarak küçük ve büyük sistemlere hitap eden ve bu yönde fiyatlandırmalar sunan çözümleri vardır.

Özellikler

Kullanıcı Chef'in sunucu uygulamalarını ve yan uygulamalarını (örneğin Apache HTTP Sunucusu, MySQL veya Hadoop gibi) nasıl tanımlayacağını anlatmak ve nasıl yapılandırılacaklarını belirlemek için "tarif"ler kullanır. Tariflerin daha kolay yönetim amacıyla gruplandırılmış haline "yemek kitabı" adı verilir. Bu tarifler bir kaynak dizisini tanımlamak amacıyla belirli bir durumda bulunabilir: yüklenmesi gereken paketler, çalışması gereken hizmetler veya yazılması gereken dosyalar. Bunun gibi çeşitli kaynaklar belirli bir yazılım sürümünün çalıştırılması yönünde yapılandırılabilir ve aynı yazılımın doğru bir şekilde ve tüm bağımlılıklarıyla birlikte kurulmuş olduğunu garantilemek için kullanılabilir. Chef her bir kaynağın düzgün şekilde yapılandırıldığından emin olup istenilen durumda olmayan kaynaklarda gerekli düzeltmeleri yapar.[1] Chef istemci-sunucu kipinde veya tek başına "chef-solo" adlı bir yapılandırmada çalışabilir. İstemci-sunucu kipinde Chef istemcisi düğüm hakkındaki çeşitli nitelikleri Chef sunucusuna gönderir. Sunucu Solr kullanarak bu nitelikleri dizinler ve istemcilerin bu bilgiyi sorgulamaları için bir API sağlar. Chef tarifleri bu nitelikleri sorgulayabilir ve elde ettiği sonuçları düğümü yapılandırmaya yardımcı olması için kullanabilir.

Geleneksel olarak Chef Linux'ü yönetmek için kullanılmıştır ancak sonraki sürümler Microsoft Windows'u da desteklemektedir.[2]

CFEngine, Bcfg2 ve Puppet gibi benzerleriyle birlikte Linux üzerindeki en büyük dört yapılandırma yönetimi programından biridir.[3][4]

Tarihçe

Chef ilk adımda Adam Jacob tarafından iş modelinin uçtan uca sunucu ve dağıtım araçları üretmek olduğu kendi danışmanlık şirketi için oluşturduğu bir araç olarak yola başlamıştır. Jacob daha sonra Chef'i Jesse Robbins'e göstermiş ve o da Amazon'da gerçekleştirdiği faaliyetlerden sonra potansiyelinin farkına varmıştır. Sonrasında Barry Steinglass, Nathen Haneysmith ve Joshua Timberman ile birlikte yeni bir şirket kurarak Chef'i bir ürün haline dönüştürülmüştür.[5] Proje ilk olarak "marionette (kukla)" olarak adlandırılmış ancak bu ismin hem uzun hem de yazımının karmaşık olması ve modüllerin hazırlandığı biçimin adının "tarif" olarak adlandırılması sebebiyle sonradan "Chef (şef)" olarak yeniden isimlendirilmiştir.[5]

Şubat 2013'te Opscode Chef'in 11. sürümünü çıkarmıştır. Bu sürümdeki değişiklikler çekirdek API'nin Erlang'da yazılması gibi birçok yenilik içermiştir.[6]

Platform desteği

Chef birçok istemci ve sunucu ürününde desteklenmektedir.[7] İstemci için bilinen büyük platform destekleri AIX, RHEL/CentOS, FreeBSD, OS X, Solaris, Microsoft Windows ve Ubuntu'dur. Diğer istemci platformları arasında ArchLinux, Debian, Fedora ve diğerleri vardır. Chef sunucusu RHEL/CentOS/Oracle Linux ve Ubuntu üzerinde desteklenmektedir.

Kullanıcılar

Chef Airbnb, Mozilla, Expedia, Facebook,[8] HP Public Cloud,[9] Prezi,[10] Ancestry.com,[11] Rackspace,[12] Get Satisfaction, IGN, Marshall Üniversitesi, Socrata, Minnesota Üniversitesi, Pennsylvania Üniversitesi Wharton Okulu, Bonobos, Splunk, Citi, Cheezburger ve başka birçok kurum ve firma tarafından kullanılmaktadır.[13]

Kaynakça

  1. ^ "Chef - Code Can | Chef". 15 Ekim 2015 tarihinde kaynağından arşivlendi. Erişim tarihi: 4 Temmuz 2015. 
  2. ^ Metz, Cade (26 Ekim 2011). ""The Chef, the Puppet, and the Sexy IT Admin"". Wired. 17 Ekim 2015 tarihinde kaynağından arşivlendi. Erişim tarihi: 4 Temmuz 2015. 
  3. ^ Alan, Sharp-Paul (4 Mart 2013). "Puppet vs. ". 8 Eylül 2015 tarihinde kaynağından arşivlendi. 
  4. ^ Lueninghoener, Cory (28 Mart 2011). ""Getting Started with Configuration Management"" (PDF). 4 Mart 2016 tarihinde kaynağından (PDF) arşivlendi. Erişim tarihi: 4 Temmuz 2015. 
  5. ^ a b "History of Chef: What's in a Name? (Youtube Video)". YouTube. 2 Ocak 2016 tarihinde kaynağından arşivlendi. 
  6. ^ Bryan McLellan (2013-02-04).
  7. ^ "Supported Platforms". 26 Eylül 2015 tarihinde kaynağından arşivlendi. Erişim tarihi: 16 Ekim 2015. 
  8. ^ "Facebook uses a seasoned Chef to keep servers simmering". pcadvisor.co.uk. 24 Mayıs 2015 tarihinde kaynağından arşivlendi. Erişim tarihi: 6 Ocak 2014. 
  9. ^ "ChefConf Readout: Chef to Enable the Full Continuous Deployment Pipeline". HPCloud.com. 4 Mart 2014 tarihinde kaynağından arşivlendi. Erişim tarihi: 25 Haziran 2012. 
  10. ^ "How Chef Enables the DevOps Culture at Prezi - Zsolt Dollenstein (Youtube Video)". YouTube. 9 Mart 2016 tarihinde kaynağından arşivlendi. 
  11. ^ "Creating a Culture for Continuous Delivery - John Esser". YouTube. 8 Aralık 2015 tarihinde kaynağından arşivlendi. 
  12. ^ "DEVOPS". 11 Ekim 2015 tarihinde kaynağından arşivlendi. 
  13. ^ "Success Stories". 21 Aralık 2014 tarihinde kaynağından arşivlendi. 

Dış bağlantılar

İlgili Araştırma Makaleleri

<span class="mw-page-title-main">Linux</span> Bir işletim sistemi çekirdeği

Linux ; Linux çekirdeğine dayalı, açık kaynak kodlu, Unix benzeri bir işletim sistemi ailesidir. GNU Genel Kamu Lisansı versiyon 2 ile sunulan ve Linux Vakfı çatısı altında geliştirilen bir özgür yazılım projesidir. Linux ismi ilk geliştiricisi olan Linus Torvalds tarafından 1991 yılında verilmiştir. Günümüzde süper bilgisayarlarda, akıllı cihazların ve internet altyapısında kullanılan cihazların işletim sistemlerinde yaygın olarak kullanılmaktadır. Bunlardan en popüler olanı Google tarafından geliştirilen Android işletim sistemidir.

Linux dağıtımı ; Linux çekirdeği, GNU araçları ve bir masaüstü ortamının bir araya gelmesiyle, bu birlikteliği sürdürülebilir şekilde yönetecek bir yapılandırma araçları seti, yazılım güncelleme araçları vb. ile oluşturularak tam teşekküllü bir işletim sistemi haline gelen uygulamalar bütününü ifade eder.

<span class="mw-page-title-main">Sunucu (bilişim)</span> bilgisayar ağlarında, diğer ağ bileşenlerinin (kullanıcıların) erişebileceği, kullanımına ve/veya paylaşımına açık kaynakları barındıran bilgisayar birimi

Sunucu, bilişim alanında "istemci" denilen diğer program ve cihazlara çeşitli işlevler sunan bilgisayar donanımları veya yazılımlarıdır. Bu mimariye istemci-sunucu modeli denir. Sunucular, istemciler arasında veri veya kaynak paylaşımı, bir istemci için hesaplama yapma gibi çeşitli işlevleri yerine getirebilirler. Bu işlevlere genellikle "servis" veya "hizmet" denir. Tek bir sunucu çok sayıda istemciye hizmet verebilir, tek bir istemci de çok sayıda sunucudan hizmet alabilir. İstemci ve sunucu aynı cihaz üzerinde çalışabileceği gibi, istemci ağ üzerinden farklı bir cihazdaki sunucuya da bağlanabilir. Tipik sunucular arasında veritabanı sunucuları, dosya sunucuları, e-posta sunucuları, yazdırma sunucuları, web sunucuları, oyun sunucuları ve uygulama sunucuları sayılabilir.

<span class="mw-page-title-main">Apache HTTP Sunucusu</span>

Apache, açık kaynak kodlu ve özgür bir Web sunucu programıdır. Apache Yazılım Vakfı tarafından geliştirilmektedir.

<span class="mw-page-title-main">Red Hat Enterprise Linux</span>

Red Hat Enterprise Linux (RHEL), Red Hat şirketi tarafından üretilen kurumsal amaçlı işletim sistemi. Pek çok çeşidi ve türevi vardır.

<span class="mw-page-title-main">Steam Machine</span>

Steam Machine, oyun konsolu benzeri bir deneyim sağlamak için Valve'ın SteamOS'sini çalıştırmak üzere tasarlanmış bir dizi önceden oluşturulmuş küçük form faktörlü oyun bilgisayarıydı. Birkaç bilgisayar satıcısı, kendi Steam makineleri sürümlerini perakende satış için geliştirmek üzere Valve ile anlaştı ve Valve'ın gereksinimlerine ek olarak Microsoft Windows ile çift önyükleme seçenekleri ve bilgisayarı yükseltme yeteneği gibi ek seçenekler sundu. Tüketiciler, Steam OS'de yer alan Valve'ın aynı adı taşıyan popüler Steam mağazası aracılığıyla Steam Makineleri dijital olarak video oyunları satın alabilirler.

ownCloud Özgür bulut dosya depolama hizmeti

ownCloud, genel bir terimle dosya barındırma hizmeti hizmeti sunan bir yazılım sistemidir. Yaygın kullanılan Dropbox, Google Drive hizmetlerinin aksine özgür ve açık kaynak kodlu bir yazılımdır. Kullanıcılar ownCloud'u bir özel sunucu içerisine kurarak hiçbir ücret ödemeden ve depolama miktarında veya bağlanan istemci sayısında sınır olmaksızın kullanabilir.

Sunucu Adı Göstergesi (SNI) bir TLS protokolü uzantısı. Güvenli SSL bağlantısı oluşturulurken el sıkışma (handshake) sürecinin başlagıcında, istek içerisinde geçen sunucu adının (hostname) dijital sertifikasını doğrular. SNI teknolojisi aynı IP adresi ve TCP portu üzerinden birden fazla güvenli web sitesi için doğrulama işlemini gerçekleştirdiğinden, daha önceden SSL kullanmak için gerekli olan sabit IP zorunluluğunu ortadan kaldırır.

<span class="mw-page-title-main">Puppet</span>

Programcılıkta, Puppet bir açık kaynak yapılandırma yönetimi aracıdır. Birçok Unix benzeri sistemde ve Microsoft Windows'ta çalışır ve sistem yapılandırmasını tanımlamak için kendi bildirimsel programlama dilini kullanır. Puppet, 2005 yılında Luke Kanies tarafından kurulmuş olan Puppet Labs tarafından üretilmiştir. Ruby programlama dilinde yazılmış ve 2.7.0 sürümüne kadar GNU Genel Kamu Lisansı (GPL) ile ve sonraki sürümlerde de Apache Lisansı 2.0 ile özgür yazılım olarak yayınlanmıştır.

<span class="mw-page-title-main">Ansible</span>

Ansible bilgisayarları yapılandırmak ve yönetmek için kullanılan bir özgür yazılım platformu. Çok uçlu yazılım dağıtımını, özel amaçlı görev yürütmeyi ve yapılandırma yönetimini birleştirir. Uçları SSH veya PowerShell üzerinden yönetir ve üzerlerinde Python kurulmuş olmasına ihtiyaç duyar. Modüller JSON ve standart çıktı üzerinde çalışır ve herhangi bir programlama dilinde yazılabilir. Sistemlerin yeniden kullanılabilir kaynaklarını ifade etmek için YAML kullanılır.

Open Computer and Software Inventory Next Generation kullanıcılarına bilişim varlıklarının envanterini tutmayı sağlayan bir özgür yazılımdır. OCS-NG, OCS istemci programını çalıştıran ağ üzerinde toplanmış cihazlardaki donanım ve yazılımlar hakkında bilgi toplar. OCS bir web arayüzüyle envanteri görselleştirebilir. Bunun yanında arama kriterlerine dayanarak bilgisayarlar üzerinde uygulama dağıtımı yapabilme yeteneğine de sahiptir. Aracı tarafındaki IpDiscover tüm ağ üzerindeki bilgisayarları ve cihazları keşfetmeyi sağlar.

<span class="mw-page-title-main">AirPrint</span>

AirPrint Apple Inc.'in Wireless LAN (Wi-Fi) üzerinden baskı için, ya doğrudan AirPrint uyumlu veya Microsoft Windows, Linux ya da OS X çalıştıran bir bilgisayar yoluyla paylaşılan yazıcılara uyumlu olmayan yazıcılar için OS X ve iOS işletim sistemlerinin bir özelliğidir. AirPrint yazıcıya özel sürücü gerektirmez. Sadece Wifi ağı üzerinden bağlanır ve böylece bir Wi-Fi erişim noktası gerekir. Cihaz ve yazıcı arasında Wi-Fi Direct bağlantısı, varsayılan olarak desteklenmez, ancak 'HP ePrint Kablosuz Doğrudan AirPrint' özelliği olarak ortaya çıkmıştır.

<span class="mw-page-title-main">MacOS Server</span>

macOS Server, Apple tarafından üretilen ve ayrı piyasaya çıkarılan add-on bir işletim ve sunucu sistemidir, macOS işletim sistemi için ek sunucu programları, idaresi ve yönetimi araçları sağlar. Mac OS X Server İngilizce, Japonca, Fransızca, Almanca, Basitleştirilmiş Çince, Hollandaca, İtalyanca, Almanca, İspanyolca ve Geleneksel Çince mevcuttur.

<span class="mw-page-title-main">Bonjour (yazılım)</span> Bilgisayar ağı teknolojisi

Bonjour Apple'nin hizmet bulma, adres ataması ve ana bilgisayar adı çözümlemesi içeren bir grup teknoloji olan sıfır yapılandırma ağı (zeroconf) uygulamasıdır. Bonjour, yazıcılar, diğer bilgisayarlar ve bu cihazların her yöne yayın Etki Alanı Adı Sistemi (mDNS) hizmet kayıtlarını kullanarak yerel alan ağında sunduğu hizmetler gibi cihazları bulur.

<span class="mw-page-title-main">Skype for Business Server</span>

Skype for Business Server gerçek zamanlı iletişim sunucusu yazılımıdır. Üçüncü şahıs ağ geçidi veya SIP ana hat üzerinden kurumsal anlık mesajlaşma, VoIP, geçici ve yapılandırılmış konferanslar ve PSTN bağlantısı için altyapı sağlar. Bu özellikler insanlar arasında, kuruluşlar arasında, kamuya açık internet veya standart telefonlarda harici kullanıcılar tarafından kullanılabilir. Skype for Business Server 31 Temmuz 2021 tarihinde Skype for Business ile birlikte kullanımdan kaldırılmıştır.

<span class="mw-page-title-main">OpenEmbedded</span>

OpenEmbedded, gömülü sistemler için Linux dağıtımları oluşturmak için kullanılan bir yapı otomasyonu çerçevesi ve çapraz derleyiciler ortamıdır. OpenEmbedded çerçeve 2003 yılında resmen kurulan OpenEmbedded topluluğu tarafından geliştirilmiştir. OpenEmbedded, ticari şirketlere gömülü ürünler için Linux tabanlı sistem geliştirilmesine yardımcı olan ve Linux Foundation çalışma grubu olan Yocto Projesinin önerilen yapı sistemidir.

<span class="mw-page-title-main">SELinux</span>

Security-Enhanced Linux (SELinux) Linux çekirdeği güvenlik modülüdür. Amerika Birleşik Devletleri Savunma Bakanlığı tarzı zorunlu erişim denetimleri (MAC) de dahil olmak üzere erişim denetimi güvenlik ilkelerini desteklemek için bir mekanizma sunmaktadır.

<span class="mw-page-title-main">Android Debug Bridge</span>

Android Debug Bridge, Android tabanlı cihazlarda hata ayıklamak için kullanılan bir programlama aracıdır. Android cihazındaki arka plan programı, ana bilgisayardaki sunucuya USB veya TCP üzerinden son kullanıcı tarafından kullanılan istemciye bağlanan TCP üzerinden bağlanır. 2007'den beri Google tarafından Apache Lisansı altında açık kaynaklı yazılım olarak sunulan özellikler arasında bir kabuk ve yedekleme yapma imkanı bulunmaktadır. adb yazılımı; Windows, Linux ve macOS ile uyumludur. Botnet'ler ve RSA kimlik doğrulaması ve cihaz beyaz listeye alma gibi azaltıcı etkenlerin geliştirildiği diğer kötü amaçlı yazılımlar tarafından kötüye kullanılmıştır.

<span class="mw-page-title-main">Oracle Linux</span>

Oracle Linux, Oracle tarafından paketlenmiş ve ücretsiz olarak dağıtılan bir Linux dağıtımıdır ve 2006'nın sonlarından bu yana kısmen GNU GPL altında mevcuttur. Red Hat markasını Oracle'ınkiyle değiştiren Red Hat Enterprise Linux (RHEL) kaynak kodundan derlenmiştir. Ayrıca Oracle Cloud ve Oracle Exadata ve diğerleri gibi Oracle Engineered Systems tarafından da kullanılır.

OpenVPN, yönlendirilmiş veya köprülenmiş konfigürasyonlarda ve uzaktan erişim tesislerinde güvenli noktadan noktaya veya siteden siteye bağlantılar oluşturmak için teknikler uygulayan bir sanal özel ağ (VPN) sistemidir. Hem istemci hem de sunucu uygulaması olarak mevcuttur.