Archive for the '*nix' Category
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. |
![]() |
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. |
|
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
|
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, osmaniçin oldum olası pis işler statüsündedir.
İşte nasıl yapıldığı:
Henuz yorum yapilmamis.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.
Henuz yorum yapilmamis.Argument list too long…
FreeBSD’de, çok fazla sayıda dosya içeren bir dizinin içeriğini silmek istediğiniz zaman “/bin/rm: Argument list too long” şeklinde bir hata alabilirsiniz.
Bunun nedeni rm komutuna alabileceğinden çok daha fazla sayıda parametre verilmiş olmasından kaynaklanıyor. Sorunu çözmek için aşağıdaki komut ile önce find yapıp sonra silme işlemine gidebilirsiniz.
find . -type f -delete |
EnderUnix’in *nix ipuçlarına yer verdiği http://ipucu.enderunix.org/ adresinde konuyla ilgili bir kaç tane daha değişik yöntem mevcut. Detaylarla ilgili olarak oradan yararlanabilirsiniz.
Ayrıca find komutunun manuel sayfasından da yararlanabilirsiniz.
http://www.freebsdmanpage.com/man/find-1.html
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.
Henuz yorum yapilmamis.vi - find 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
Henuz yorum yapilmamis.Bandwidth Monitoring - Bandwidthd
Networkünüzdeki serverların ya da clientlerin 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ı librarie’lere 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.
Henuz yorum yapilmamis.



