Perşembe, Haziran 28, 2007

First Kiss ! İlk Deneyim ! (Solaris 10)

Sonunda gerçek ortamda çalışacak ilk Solaris 10 makinamı kurdum. Biraz zahmetli ve uzun bir çalışma olduğunu söyleyebilirim ama her zaman dediğim gibi gerçek ortamda “test” yapmak gibisi yok J İnsan ne kadar hızlı şekilde ve ihtiyaca yönelik spesifik bilgiler öğreniyor inanamazsınız…

Bu kurulum sırasında Windows ortamından kazandığım hız ve deneyim haliyle Solaris dünyamda olmadığı için, zaman zaman çok sinirlendiğim ve sabrımın taştığı anlar oldu. Zaman zaman da acemiliğimle çok eğlendim. Bir kurulum sırasında bu kadar çok kere “keşfetme” duygusunu yaşamayalı çok olmuştu doğrusu…

Özel bir belge yönetim ve iş akışı uygulaması için Intel tabanlı bir sunucuya üzerinde Oracle 10g çalışacak bir Solaris 10 kurulumu yapmam istendi. Bu iş için seçilen HP DL580 sunucunun RAID konfigurasyonunu yaparken ilk sürprizimi yaşadım. HP Smart Start CD’si Windows ve Linux’da olanın aksine Solaris için “assisted installation” yapmıyormuş L. Üç gün once de VMware Server’ın (ücretsiz ürün) Solaris ortamını “Host OS” olarak kullanamadığını öğrenmiştim. Ardından bu, iki oldu.

Smart Start’ın keyfine alışmış olanlar onunla kurulumun ne kadar kolay olduğunu bilirler. Olmayınca elimiz kolumuz bağlanmıyor ama kolaylığı da inkar edilemez.

Solaris DVD’sini sunucuya takınca ikinci sürprizi yaşadım. Solaris 11/6 Smart Array RAID kartını tanımadığı için diskleri görmüyordu. Küçük bir araştırmadan sonra HP’nin sayfasında gerekli sürücüleri buldum ve ISO dosyasını indirdim.

HP Driver Update (DU) for Solaris (x86) 10

http://h18023.www1.hp.com/support/files/server/us/download/26717.html

Ancak hem ISO dosyası hem de sürücü olarak vardı. Sürücüyü bir mini-shell açıp elle yükleyecek kadar henüz bu işten anlamadığım için ISO dosyasını diskette yazıp kullanmaya karar verdim. J Tahmin edebileceğiniz gibi sunucunun disket sürücüsü yoktu. Ben de USB bir sürücü kullandım. Ama yine tahmin edebileceğiniz gibi USB disket sürücüsünü Mount etmekte zorluk yaşadım. Edemedim :)

İnat edip USB disketi nasıl mount edeceğimi yarım saat kadar araştırdıktan sonra, inadın peşine takılıp hedeften uzaklaştığıma karar verip J ISO’yu CD’ye yazdım ve sunucuya taktım. DVD’den açılış sırasında menüden 5.Update drivers seçeneğini seçerek RAID kartının sürücülerini okuttum ve voila ! Sistem diskleri tanıdı.

Kurulum gerçekten çok eğlenceli geçti diyebilirim. Karar verme gel-gitlerim sonucunda toplamda 4 kere kurulum yaptım. Aslında haksızlık etmeyeyim kendime, mantıklı düşüncelerim ve sorularım vardı. O yüzden de bu kadar kurulumun çok da beklenmedik bir durum olduğunu düşünmüyorum.

Kurulum sırasında canımı sıkan bir nokta, sunucu rolünün seçiminde oldu. Fedora ve bildiğim bazı Linux dağıtımlarında olduğu gibi role uygun paket yükleme şablonlarını seçmek gibi bir şans yok. Örneğin, sistemi Workstation, Server vb. göreve yönelik özel şablonlarla kuramıyorsunuz. Ben de bu durumda tam paketi seçtim. Elbette özelleştirmeyi denedim ama paket bağımlılıkları (dependencies) konusunda yeterince bilgili olmadığımdan çok da iyi bir ayarlama yaptığımı sanmıyorum. Yalnızca basit fikirler yürüterek, örneğin “veritabanı sunucusunda Star Office’e ne gerek var ?” gibi sorularla bazı paketleri kaldırdım. Bence burada bir yardım / yönlendirme eksiği bulunuyor Solaris’in.

2 x 76 GB (RAID1) + 3 x 140 GB (RAID5)’ ten oluşan bir disk grubu ve 8 Gbyte belleği olan x64 bir makinaya kurulumu tamamladığımda ilk sorunumu yaşadım.

UNIX camiasında ne kadar geçerlidir, adetten midir bilmemekle birlikte yine de Windows alemindeki sevdiğim alışkanlıklardan birini burada da uygulamak istedim. DVD’den Solaris kurulum dosyalarını /yedek adında bir klasör açıp kopyalayayım dedim. Heyhat ! Bırakıp gittiğimde her şey yolundaydı ama döndüğümde kopyalama durmuştu ve “disk full” mesajı veriyordu. “Ama nasıl olur, 80 Gbyte alanım varken nasıl dolar disk ? “ filan diye söylenirken biraz kurcalayınca ne olduğunu anladım.

/ (root) bölmesi 4 Gbyte görünüyordu. Halbuki c0t0d0s0 ve c1t0d0s0 disklerini elle ayarlamış, hatta ve hatta 280 Gbyte’lık RAID5 alanını “oracle” adında bir bolme oluşturup ayrıca mount etmek gibi "tricky" fikirler filan geliştirmiştim. J

Ama disk yöneticisi bölmeleri ayarlarken / için bu kadar alanı uygun görmüş, kalanı da /export/home için bonkörce ayırmıştı.

Haliyle yeniden kurmaya başladım. Bu arada ilk kurulumumun da “test” kurulumu olduğunu ve yukarıdakinin aslında 2.kurulum olduğunu da belirteyim.

Bu sefer dikkatliydim. Disk alanlarını daha dikkatli dağıttım. Ancak eğitim kitaplarından ve belgelerden gördüğüm ama gerçek hayatta benim hiç uygulamadığım bazı davranışlar olduğunu ve bu konularda bilgi sahibi olmadan vermek zorunda olduğum kararlar olduğunu gördüm. Şöyle ki ;

Aynı sunucu üzerinde (aynı fiziksel disk üzerinde olsa bile) farklı “file system”lar ya da Windows deyimiyle “partition”lar oluşturulup çalışıldığını görmüştüm. Örneğin ; /export/home klasörünü deminki örnekte sistem kendisi otomatik olarak böyle ayırmıştı. /tmp’yi ayıranlar, /opt için aynısını yapanlar, /var/mail ya da (atıyorum) print server kurarken /var/spool’ u ayıranlar vardı. Yani amaca uygun olarak özel disk ayarları yapılıyordu. Bunun ne işe yaradığını biliyordum. Sürekliliği sağlamak için bazı noktalarda bakım yaparken o disk bölmelerini tüm sistemi durdurmadan unmount etmek güzel tabi. Ama ben hayatım boyunca ilk ciddi UNIX serverımı kuruyordum üstelik hiç Oracle kurulumu yapmamıştım. Aklım ve çalışma reflekslerim de daima Windows ortamına uygun davranışlarda bulunmuştu. (Bkz : yedek klasörünün oluşturulması)

O nedenle de açıkçası koca 80 Gbyte’lık diski tek file system olarak ayarlamak bana hiç de garip gelmiyor. (Şimdilik). Aynı şekilde ihtiyaçları ve genel kabul görmüş UNIX davranışlarını henüz bilmediğim için 280 Gbyte’ı da tek file system olarak /oracle adıyla kurdum.

Bu konuyu araştırmaya devam edeceğim. İleride bulduklarımı veya bu sunucudaki deneyimlerimi paylaşmaya devam ediyor olacağım.

Kurulum sırasında Solaris’in tavsiyesine uyarak yalnızca SSH servisi açık kalacak şekilde güvenli kurulumu tercih ettim. Evet, evet… Bunun da sonuçlarını bilmiyorum ama ne kadar güvenli o kadar iyi :P

Mesela henüz sonuçlarını bilmediğim bir kararım da, 8 Gb belleği olan makinada Solaris kurulumunun sözünü dinleyip swap alanını 512 mb olarak bırakmak oldu. Nasıl sonuçları olacak şimdiden kestirmek zor. Sunucunun alacağı işlem yükü bize bunu gösterecek.

Bu arada Solaris üzerinde Oracle kurulumuna dair çok sağlam belgeler buldum.

http://www.dbspecialists.com/presentations/oracle10gsolaris.html#prepare

Kurulum bittikten sonra sunucumu kayıt etmeyi ve yamaları yüklemeyi de unutmadım. J

Bu arada bir not ; Oracle kullanabilmek için bir GUI’ye gerek olduğundan GNOME ve X ‘i yüklemek zorunda kaldım. Nereden bu bilgiyi aldığımı hatırlamıyorum ama umarım yanlış okumamışımdır. Boşu boşuna X yüklemiş olmak istemiyorum. J

Tüm “ilk” ayarlar bitip de uzaktan bağlanmaya sıra gelince, okuduğum ama unuttuğum temel bir kural daha çıktı karşıma. Putty kullanarak uzaktan root ile SSH bağlantısı yapamıyordum. :(

Remote ssh root logins are forbidden http://groups.google.com/group/comp.sys.sun.admin/browse_thread/thread/989dddbb5b60aafe

Küçük araştırmamdan sonra öğrendim ki bu varsayılan bir ayar ve değiştirmek yersiz. Herkesin yaptığı gibi ben de kendime bir sıradan bir de admin kullanıcı açtım ve bununla bağlandıktan sonra ‘su’ ile root’a geçiş yaptım. (Bu arada her seferinde akılsız başın cezasını ayaklar çekiyor ve sistem odasına inmek zorunda kalıyorum, hatırlatırım J )

Beraber eğitim aldığımız ve benden once Solaris’le ilgilenmeye başlayan arkadaşımın uzaktan X bağlantısı yaptığını görmüştüm. Bu iş için Xmanager2 2.0 adında bir yazılım kullanıyordu. Ben de denemeye karar verdim.

Ancak bir türlü bağlantıyı sağlayamadım. Yarım günümü acaba konfigurasyon hatası mı yaptım vs. diye araştırmaya verdim. Sunucu üzerinde kapattığım network servislerini tekrar açtım.

# netservices limited
# netservices open

http://docs.sun.com/app/docs/doc/819-6764/6n8onr7pd?a=view

Ancak yine çalışmadı. Her seferinde “xstart x connection to localhost: 10.0 broken” hatası alıyordum. Oysa XP’nin güvenlik duvarında gereken istisnaları açmıştım. Sunucuda da doğru davrandığımı sanıyordum (vay vay, bu ne güven ! J ). Sonunda arkadaşıma telefon açmaya karar verdim. Evet, bir kere daha sonuca ulaşma merakı, araştırmacı gazeteciliğe galip gelmişti.

5 dk’da sorunu çözdük. L Ben, bağlantı kaydını oluştururken Xstart’I kullanmış ve bir xterm (Solaris) bağlantısı yaratmıştım. O ise bir XDCMP ( O nedir yahu ? ) oturumu oluşturarak anında bağlantı sağladı.

Ancak bu sefer de X window’da console root ile bağlanamıyordum. Yine arkadaşımın yardımına başvurdum. /etc/default/login dosyasında “CONSOLE=/dev/console” satırı comment (#) edilince bu sorun da giderildi.

Bu sunucudaki maceram şimdilik bu kadar. Yeni bilgiler edindikçe yazmaya devam edeceğim.

Hiç yorum yok: