'*nix' Kategori'sine ait arşiv.


Fusion-io ile Yüksek I/O Kapasitesi

Yüksel kapasiteli sunucular için en büyük sorunun disk I/O olduğunu söylersem zannedersem abartmış olmam. Gerçekten de bugüne kadar yüksek işlem hacmi olan sunucularda karşılaştığım darboğazların nedeni hemen herseferinde disklerin yoğun kullanım sırasında, yazma ve okuma işlemlerine yeterince süratli bir şekilde cevap veremiyor olmasından kaynaklanmıştır.

Herhangi bir sistemle ilgili yaşanan sorun, disk I/O yetersizliğinden kaynaklandığı zaman yapabileceğiniz yegane şey yeni diskler alarak, disk kümenize (örneğin raid10’a) dahil etmek ve I/O kapasitesini belli oranda yukarıya çekmektir. Elbette alınacak disklerin maliyeti ve bu işlem sırasında oluşabilecek herhangi veri kaybı riski göz önüne alındığı zaman sorunu çözmek için epey terlemeniz gerektiğini kabul etmemiz gerekiyor.

fusion-io iodrive

Yüksek işlem hacminin varolduğu hemen her alanda I/O sıkıntısının yaşanıyor olması harddisk teknolojisinin, diğer konularda yaşanan oranlarda gelişim kaydedemiyor oluşundan kaynaklanıyor. Harddisk’lerin halen mekanik cihazlar olması ve rpm hızlarının yetersiz kalışı bu konudaki sıkıntılara neden oluyor.
Yazinin devami icin tiklayin.


FreeBSD Ports Reinstall – FORCE_PKG_REGISTER

Üzerinde FreeBSD çalışan sisteminizde, daha önceden ports collection üzerinden kurmuş olduğunuz bir paketin ek bir modülünü, eski kuruluma ait dosyaları silmeden üzerine yazmak sureti ile devreye almak isteyebilirsiniz. Bunun için gerekli düzenlemeleri yapıp ilgili ports dizininde “make install” komutunu çalıştırdığınız zaman aşağıdaki hatayı almanız muhtemeldir.

FreeBSD

An older version of lang/php5-extensions is already installed (php5-extensions)
      You may wish to ``make deinstall'' and install this port again
      by ``make reinstall'' to upgrade it properly.
      If you really wish to overwrite the old port of lang/php5-extensions
      without deleting it first, set the variable "FORCE_PKG_REGISTER"
      in your environment or the "make install" command line.
*** Error code 1

Yazinin devami icin tiklayin.


MySQL Replication durumunu bir script ile check etmek

Bugün, HowtoForge‘da, Mysql master to master replication uygulamasının düzgün çalışıp çalışmadığını tespit edip durumu mail ile bildiren bir script uygulamasına ait güzel bir yazıya rastladım.

Eğer, Mysql sereverlarınız arasında master to master çalışan bir replikasyon uygulamanız varsa sürekli gözlem altında tutmak epey iyi bir fikirdir. Zira db replikasyon işleri, için oldum olası pis işler statüsündedir.

İşte nasıl yapıldığı:

Yazinin devami icin tiklayin.


Linux’larda SSH Key Saldırısı

Bilindiği gibi, *nix tabanlı işletim sistemlerine güvenli bir şekilde uzaktan erişmek için kullanılan SSH (Secure Shell), telnet ve rlogin gibi alternatiflerin tersine, bağlantı sırasında her türlü veri trafiğini şifreleyerek güvenliği had safhaya çıkarıyor. Bu nedenle de hemen her sistem yöneticisi remote erişim için SSH’ı tercih ediyor.

Bir SSH bağlantısını, bağlanılmak istenen sisteme direk olarak kullanıcı adı ve şifre göndermek sureti ile gerçekleştirebildiğimiz gibi bağlantıyı SSH Key-Based Authentication isimli yöntemle kullanıcı adı ve şifreye gerek kalmaksızın sağlayabiliyoruz. Yönetiminden sorumlu olduğunuz birden çok *nix tabanlı serverınız olması durumunda Key-Based kimlik doğrulama yöntemi elbette işleri epey kolaylaştırıyor.

Yazinin devami icin tiklayin.


Capistrano

Özellikle büyük ölçekli portal yazılımları için ruby kullanılarak geliştirilmiş capistrano isimli güzel bir auto deployment aracı var. Benim de geçenlerde haberim olan bu araçtan biraz bahsetmek istiyorum.

Diyelim ki, büyük ölçekli bir portal yazılımının sistem adminliğini yapıyorsunuz ve günün birinde portalın yeni versiyonu yazılarak uygulamaya konulma aşamasına getirildi ve sistemsel değişikliklerin yapılması için top size atıldı. Ve diyelim ki sisteminiz, içerisinde onlarca ve hatta yüzlerce serverdan oluşan karmaşık bir server farmdan oluşuyor.

Hadi buyrun deployment’a.

Normalde, yeni versiyonun yayına geçirilmesi için sistem tarafında yapılan deployment çalışmaları; web serverlara yeni kodların atılması, sql serverlarda yeni versiyon databaselerinin oluşturulması, eski versiyon datasının yeni versiyon db’sine convert’ü gibi işlerden oluştuğu gibi eski versiyonda olmayan herhangi yeni bir özelliğin devreye alınmasıyla ilgili implementasyonlar, dns kayıtlarında eklemeler, çıkarmalar, smtp altyapısında değişiklikler gibi muhtelif işleri de beraberinde getirebiliyor.

Söz konusu olan sistem bir çok sunucu üzerinde parça parça koşan bir yapı olduğundan dolayı bir sistem admininin böylesi durumlarda epey ter dökeceği aşikardır değil mi ?

İşte Capistrano da, sistem adminleri ter dökmesin, işleri nispeten kolaylaşsın da şu deployment işini kolaycana yapabilsinler diye düşünülmüş bir uygulama.

Yazinin devami icin tiklayin.


vi – search and replace komutu

Nix tabanlı herhangi bir serverda, bir text içeriğinde vi ile find and replace yapmak için aşağıdaki komutu kullanabilirsiniz.

:%s/Search_String/Replacement_String 

Mesela içerisinde Armut kelimesi geçen bir text dosyasını vi ile editleyip aşağıdaki komutu verirseniz; tüm Armutlar  Ayva ile replace edilecektir.

:%s/Armut/Ayva

Bu komuta çok fazla işim düşmediğinden ne zaman lazım olsa unutmuş oluyorum. Bu nedenle tarihe not düşeyim dedim .

Daha fazla bilgi için bkz: http://unix.t-a-y-l-o-r.com/VBsr.html


Bandwidth Monitoring – Bandwidthd

Networkünüzdeki sunucu ya da istemcilerin ne kadar trafik yaptıklarını ip bazlı ve web tabanlı olarak gözlemleyebilmek için kullanılan bandwidthd gerçekten güzel bir yazılım. Bu yazılımı, gateway olarak çalışan bir FreeBSD server üzerine kurup deneme şansım oldu. Sonuç olarak şimdi networkün bantgenişiliğini takip etmek için kendisini kullanıyorum :)

Yazılımın live demo’suna http://bandwidthd.sourceforge.net/demo/ adresinden ulaşabilirsiniz.

FreeBSD için kurulum notları şöyle; (Aslında yazılımı bir çok şekilde kullanmak mümkün; mesela SQL loglama yapabiliyorsunuz. Ancak ben default kurulum yaptım. Kurulum seçenekleri ile ilgili detay README dosyasında mevcut.)

Bandwidthd, çalışabilmek için bazı kütüphanelere ihtiyaç duyuyor. Dolayısı ile kurulumdan önce sisteme bu paketleri yüklemeniz gerekiyor: libpcap, libgl, ve libpng.

Ayrıca, web tabanlı raporlama yaptığı için elbette apache’ye ihtiyaç duyuyor.

Yazinin devami icin tiklayin.


IPFIREWALL ve Snort_Inline ile IPS – Part 2: Snort_Inline Kurulumu

IPFW ve Snort_Inline ile IPS uygulaması ile ilgili olarak http://www.syslogs.org/2008/07/ipfirewall-kurulumu/ linkinden ulaşabileceğiniz bir önceki yazımda IPFIREWALL kurulumuna ait notları paylaşmıştım. IPS uygulaması için ikinci bölüm olan bu yazıda ise Snort ve doğal olarak snort_inline’la ilgili kurulum notlarını bulabilirsiniz.

SNORT NEDİR ?


Snort, açık kaynak kodlu olarak geliştirilen, network tabanlı bir saldırı tespit ve önleme (network intrusion prevention and detection system) yazılımıdır. Adından da anlaşılacağı üzere kullanım amacı, herhangi bir networke dışarıdan yapılan sızma girişimlerini testip etmek ve önlemektir. Offical dökümanlarında yaptığı temel işleri şu şekilde sıralamışlar:

Yazinin devami icin tiklayin.

« Onceki SayfaSonraki Sayfa »