SurGATE Yeni Özellikler ve Performans İyileştirmeleri #1

AR-GE ekibimiz ile SurGATE 2.1′de çok kullanışlı özellikler(feature) elde ettik.  Şu anda onlarca  yeni özellik ve ciddi performans artışlarının olacağı 2.2 sürümünü kodluyoruz.

En önemli özellikleri şu şekilde sıralayabiliriz.

  • Gelen/giden mailler ve sonucuna ek olarak tüm internal loglar arayüzde gösterilecek.
  • Çok esnek  ve zengin raporlama özelliği.
  • Karantina webmail özelliği. (Son kullanıcılar istedikleri zaman webmail tarzı bir ekran ile karantinalarını yönetebilecek)
  • Vmware imajı.

En büyük performans artışı ise veritabanı işlemleri tarafında yapıldı. Ar-GE ekibimizin geliştirdiği “SurGATE DB Connectivity Framework” modülü sayesinde veritabanına kayıt ekleme performansı katlanarak arttı.   Aynı framework’ün “db caching” modülü sayesinde de engine modülleri, veritabanındaki kullanıcı profilleri ve sistem ayarlarına minimum CPU ve I/O maliyeti ile erişebilmektedir.  Tüm bu iyileştirmeler ile CPU kullanımı yüksek oranda düştü. Bu sayede aynı anda çok daha fazla maili işleyebiliyoruz. Aşağıda framework’a ait örnek bir kaydı görebilirsiniz.


@400000004bb3709b3b7926ac 31/03/10 18:56:01: [1410] inserted    59 rows    0.016 secs
@400000004bb370a10145d804 31/03/10 18:56:07: [1410] inserted    47 rows    0.013 secs
@400000004bb370a6038494d4 31/03/10 18:56:12: [1410] inserted    72 rows    0.027 secs
@400000004bb370aa047cbc2c 31/03/10 18:56:16: [1410] inserted    34 rows    0.010 secs
@400000004bb370ae05c9ba44 31/03/10 18:56:20: [1410] inserted    44 rows    0.015 secs
@400000004bb370b207d5d624 31/03/10 18:56:24: [1410] inserted    64 rows    0.025 secs
@400000004bb370b709b96334 31/03/10 18:56:29: [1410] inserted    61 rows    0.022 secs
@400000004bb370bc0b94fd1c 31/03/10 18:56:34: [1410] inserted    63 rows    0.024 secs
@400000004bb370c10cb0488c 31/03/10 18:56:39: [1410] inserted    37 rows    0.011 secs

Tripwire Log and Event Management ürünü çıkardı.

Tripwire firması Tripwire Enterprise change audit & configuration assesment ürününden sonra Tripwire Log Center isimli Log & Event Management ürünü çıkardı.

Ürün ile ilgili detaylı bilgiye http://www.endersys.com.tr/urunler/tripwire/tripwire.html adresinden ulaşabilirsiniz.

Yazılım geliştirme araçları

Endersys olarak yazılım mutfağında kullandığımız araçlardan oldukça memnunuz. Bu araçları tanıtarak yaygınlaşmalarına katkıda bulunmak istiyoruz.

Mantis

Bütün işleri ilk önce Mantis karşılar. Hata veya özellik isteği olsun hepsi ilk olarak Mantis’e girilir. Mantis bütün geliştiricilerimizin aşina olduğu tek araçtır. Mantis’e kayıt girmekte geliştiricileri kısıtlayan tek şeyin hayal gücü olduğunu her zaman vurguluyoruz.

DokuWiki

Wiki‘yi uygulama öncesi ve sonrası belgelemeler için kullanıyoruz. Mantis’e girilen yeni özellik istekleri için wiki’de bir tasarım belgesi açılır. Burada ilgili geliştiriciler tasarımı tamamlar. Uygulama tamamlandıktan sonra da kullanım belgeleri yine wiki’de yazılır.

Subversion

Her bir ürün için SVN deposunda bir veya daha fazla modül vardır. Bir SVN modülünde sürümlerin yerleşimi aşağıdaki gibidir:

/branches
-- 1.0
-- feature1
-- feature2
/tags
-- 1.0.0
-- 1.0.1
-- 1.0.2
/trunk

Yeni özellikler trunk‘ta geliştirilir. Test süreci branches altındaki sürüm numaralı dizinlerde takip edilir. Test sürecini başarıyla geçen branch’ler tags altında saklanır. Deneysel özellikler olgunlaşana kadar feature branch’lerinde geliştirilir.

Hudson

Hudson her bir ürünün desteklenen tüm sürümlerini periyodik olarak SVN deposundan alır, derler ve sanal test makinalarına gönderir. Yapılan bir değişiklik SVN deposuna gönderildikten 10 dk sonra ilgili test makinasında yerini alır.

VMware

Sanallaştırma ile ilgili daha önce bir yazı yayımlamıştık. Oradan ayrıntıları okuyabilirsiniz.

Akademik Bilişimde LPI Sunumu

10-12 Şubat 2010 tarihinde Muğla Üniversitesinde gerçekleşecek olan Akademik Bilişim etkinliği kapsamında LPI Türkiye olarak LPI tanıtım sunumu yapacağız.  Sunum 11 Şubat’da 14:00-15:30 arasında F numaralı salonda yapılacaktır.

Akademik bilişim ile ilgili detaylı programa http://ab2010.mugla.edu.tr/detay_program.html adresinden ulaşabilirsiniz.

LPI Türkiye faaliyetleri başladı

Endersys olarak LPI sertifikasyonunun Türkiye’de yaygınlaşması için yoğun bir şekilde çalışmalara başladık.

Yapılan bu işbirliği ile Endersys, LPI’ın Türkiye’de tanıtımını, eğitimlerinin verilmesini ve sertikasyon sınavlarının düzenlenmesini koordine edecek  Bu kapsamda bilişim eğitimi veren eğitim kurumları ile işbirlikleri kurulacak LPI sertifikalı eğitimler verilmesi sağlanacak.

Özetle LPI Türkiye,  sadece LPI eğitimi veren bir kurum değildir. Birincil görevi firma ve üniversitelerle iş birliği yaparak bu kurumların “LPI uyumlu”  sertifikaya hazırlık kurslarının açılmasını sağlamaktır.   Sertifikasyon için herhangi bir kursa katılma zorunluluğu yoktur.  Linux konusundaki tecrübelerinize güveniyorsanız sadece LPI hazırlık kitapları veya dökümanları okuyarak doğrudan sertifika sınavlarına girebilirsiniz.

Firmalar kalifiye GNU/Linux sistem yöneticisi eksikliğini çok derinden yaşamaktalar. Kariyer sitelerinden ilgili pozisyonlara başvuran kişilerin büyük çoğunluğu Linux konusunda yetersiz. Bu yüzden çok fazla kişiyle ön görüşme yapılmakta ama bir sonuç elde edilememektedir.

LPI sertifikasyonunu Türkiye’de başarı ile uygulayabilirsek uluslararası standartlarda bilgi sahibi olan Linux sistem yöneticileri sayısı artacaktır. Bu sayede hem firmalar aradıkları özelliklere sahip çalışanları daha rahat bulacaktır, hem de iş arayanlar kendilerini daha rahat ispatlayacaklardır.

LPI sınav soruları sürekli kontrol edilmekte ve ihtiyaçlara göre yenilenmektedir.  Sınav konuları sadece belli kişilerin kanaatlerine göre hazırlanmamaktadır.  Konusunda uzman bir çok kimsenin önerileri ortak bir havuzda toplanarak hepsinin kesişimi olan bir iş analizi ortaya çıkmaktadır. Bu analiz sonucuna göre sorular oluşturulmaktadır.

Tüm dünyadaki LPI sınavları tek merkezden değerlendirilmektedir. Eğer bir soruyu herkes cevaplamış ise veya hiç kimse cevaplamamış ise o soru bir sonraki sınavda çıkartılıyor. Kısacası LPI sınavları uluslararası geçerliliği olan canlı bir mekanizmadır.

Şu anda sınava hazırlık için  LPI uyumlu Türkçe kaynak oluşturma çabasındayız.

LPI sınav ücretleri?
LPI’ın amacı, sınavları mümkün olduğunca düşük fiyatlarla yapmaktır. 01 Ocak 2009 tarihinden itibaren geçerli olmak koşuluyla, aşağıda sınav isimlerini de görebileceğiniz fiyat listesi, bilginize sunulmuştur.
LPI 101, 102, 201, 202, 302, 303 US$ 160 (her biri)
LPI 301 US$ 260
LPI 199 (Ubuntu 199) US$ 155

Diğer sık sorulan sorular için: http://www.lpi-turkey.com/sss.html

Cloud/Utility Computing ve Grid Computing

Bu iki kavram her zaman çok rahat karıştırılabiliyor. Aslında her ikisi de benzer donanım altyapısını kullansa da arasında birkaç ufak tefek var var.

Grid Computing’te resource sharing veya kullanıcı bazında ücretlendirme diye birşey yoktur. Herkese bir resource verilir ve herkes o resource içinde işini görmeye çalışır. Ayrıca kullanıcıların kullandığı kaynaklar ücretlendirilmeye tabi tutulmaz. Fakat Cloud Computing’te ise şu farklar mevcuttur:

  1. Resource On-Demand: İstediğiniz zaman yeni bir sistem kaynağı verilebilir. İsteğinize ve ihtiyacınıza göre yeni cpu/memory/IO alabilirsiniz.
  2. Alınan resourceların (kaynakların) ne kadar kullanıldığı ölçülebilir. Buna göre ücretlendirme ve SLA şartları sağlanır. Ayrıca Cloud Computing’te mutlaka bir ücretlendirme arabirimi olmalıdır.

Cloud/Utility Computing ve Grid Computing arasındaki benzerlikler ise:

  1. Her ikisinde de kullanılan kaynakları sağlayan donanımı yönetme işi servisi alan kullanıcılardan bağımsızdır.
  2. Her ikisinde de birden fazla donanım kullanıcı tarafından kullanılabilir.

I2I: IMAP to IMAP Data Transfer

Mevcut e-posta sunucunuzu tamamen farklı bir e-posta sunucuya taşırken kullanıcılarınızın e-postalarını da aktarmak isterseniz bunu en kolay IMAP dizinlerini iki sunucuda eşleyerek yapabilirsiniz.

Müşterimizin altyapısında böyle bir değişiklik yapmak için imapsync programını kullandık. Fakat mevcut e-posta sunucusunun imap sunucu özelliklerindeki bazı kısıtlamalardan dolayı(komutların büyük-küçük harf duyarlılığı vs)  müşterimizden usta MS Windows yazılımcısı Atakan Eser I2I programını yazdı. Bu program sayesinde müşterimizin eski mail sistemini surgate  gateway + surgate mail sunucu modülüne kullanıcıların tüm e-postalar  ile birlikte sorunsuz bir şekilde taşıdık.

I2I MS Windows masaüstü programı olup, http://code.google.com/p/i2i/ adresinden GPL olarak dağıtılmaktadır.  Ekran görüntüleri:

icap(tm) packet capture engine reaches zero packet loss at satured 1 Gbps

The new release of our next generation packet capturing engine, used in our products voitap(tm) and itap(tm), has made 6 packet loss per 10.000 packets, reaching nearly zero packet loss at a satured 1 Gbps ethernet link.

These recent numbers have confirmed our plans and projections for the ongoing 10 Gigabit version, that the design and methodology is correct, and that we are on the right way.

Solaris 10 ve SMC ile Servis Yönetimi

Solaris’in önceki sürümlerinde bir servisi açıp/kapamak için  diğer çoğu UNIX dağıtımlarında olduğu gibi /etc/init.d altındaki scriptler kullanılırdı. Solaris 10 ile birlikte buna ek olarak Service Management Facility (SMF) adı verilen bir yöntem geldi.

Açık servisleri listelemek için svcs komutu verilir. –a parametresi verilirse aktif/pasif tüm servisler listenir.

# svcs

STATE          STIME    FMRI
legacy_run     16:40:13 lrc:/etc/rcS_d/S50sk98sol
legacy_run     16:41:47 lrc:/etc/rc2_d/S10
lulegacy_run     16:41:55 lrc:/etc/rc2_d/S20sysetup
legacy_run     16:41:56 lrc:/etc/rc2_d/S40llc2
legacy_run     16:41:57 lrc:/etc/rc2_d/S42ncakmod
legacy_run     16:41:58 lrc:/etc/rc2_d/S47pppd
legacy_run     16:41:58 lrc:/etc/rc2_d/S70uucp
legacy_run     16:41:59 lrc:/etc/rc2_d/S72autoinstall
legacy_run     16:42:00 lrc:/etc/rc2_d/S73cachefs_daemon
legacy_run     16:42:01 lrc:/etc/rc2_d/S81dodatadm_udaplt
legacy_run     16:42:01 lrc:/etc/rc2_d/S89PRESERVE
legacy_run     16:42:01 lrc:/etc/rc2_d/S94ncalogd
legacy_run     16:42:02 lrc:/etc/rc2_d/S98deallocate
online         16:37:38 svc:/system/svc/restarter:default
online         16:37:43 svc:/network/pfil:default
online         16:37:44 svc:/network/tnctl:default
online         16:37:45 svc:/network/loopback:default
online         16:37:45 svc:/system/filesystem/root:default
online         16:38:00 svc:/system/scheduler:default
online         16:38:07 svc:/system/boot-archive:default
online         16:38:07 svc:/system/installupdates:default

svcs –p parametresi ile ilgili servisin çalışan prosesleri hakkında bilgi alınabilir.

# svcs -p network/smtp:sendmail

STATE          STIME    FMRI
online         16:41:43 svc:/network/smtp:sendmail
16:41:43      550 sendmail
16:41:43      555 sendmail

# ps -fp 550,555

UID   PID  PPID   C    STIME TTY         TIME CMD
smmsp   550     1   0 16:41:43 ?           0:00 /usr/lib/sendmail -Ac -q15m
root   555     1   0 16:41:44 ?           0:01 /usr/lib/sendmail -bd -q15m

-d parametresi ile ilgili servisin bağımlı olduğu servisleri, -D ile de bu servise bağımlılığı olan servisleri görebilirsiniz.  –l parametresi ile ise belirtilen servisle ilgili detaylı bilgi alınabilir.

# svcs -d network/smtp:sendmail

STATE          STIME    FMRI
online         16:40:10 svc:/system/identity:domain
online         16:40:15 svc:/system/filesystem/local:default
online         16:40:18 svc:/network/service:default
online         16:40:19 svc:/milestone/name-services:default
online         16:41:30 svc:/system/filesystem/autofs:default
online         16:41:39 svc:/system/system-log:default

# svcs -D network/smtp:sendmail

STATE          STIME    FMRI
online         16:42:03 svc:/milestone/multi-user:default

# svcs ssh

STATE          STIME    FMRI
online         16:41:32 svc:/network/ssh:default

# svcs -l ssh

fmri         svc:/network/ssh:default
name         SSH server
enabled      true
state        online
next_state   none
state_time   January  2, 2010  4:41:32 PM EET
logfile      /var/svc/log/network-ssh:default.log
restarter    svc:/system/svc/restarter:default
contract_id  64
dependency   require_all/none svc:/system/filesystem/local (online)
dependency   optional_all/none svc:/system/filesystem/autofs (online)
dependency   require_all/none svc:/network/loopback (online)
dependency   require_all/none svc:/network/physical (online)
dependency   require_all/none svc:/system/cryptosvc (online)
dependency   require_all/none svc:/system/utmp (online)
dependency   require_all/restart file://localhost/etc/ssh/sshd_config (online)

1.1.1      SMF Çalışma mantığı

SMF ile çalıştırılan her bir servis için ayrı bir xml yapılandırma dosyası vardır.  Bu dosyalar /var/svc/manifest/ altında tutulmaktadır. Örneğin ssh servisinin FMRI(Fault Management Resource Identifier) yukarıda svc:/network/ssh olarak gözükmektedir. Bu servisin yapılandırma dosyası /var/svc/manifest/network/ altındaki ssh.xml dosyasıdır.

# more /var/svc/manifest/network/ssh.xml

<?xml version=”1.0″?>

<!DOCTYPE service_bundle SYSTEM “/usr/share/lib/xml/dtd/service_bundle.dtd.1″>

<!–

Copyright 2004 Sun Microsystems, Inc.  All rights reserved.         Use is subject to license terms.
ident   “@(#)ssh.xml    1.7     04/12/09 SMI”

NOTE:  This service manifest is not editable; its contents will
be overwritten by package or patch operations, including
operating system upgrade.  Make customizations in a different
file.
–>
<service_bundle type=’manifest’ name=’SUNWsshdr:ssh’>
<service
name=’network/ssh’
type=’service’
version=’1′>
<create_default_instance enabled=’false’ />
<single_instance />
<dependency name=’fs-local’
grouping=’require_all’
restart_on=’none’
type=’service’>
<service_fmri
value=’svc:/system/filesystem/local’ />
</dependency>

<exec_method
type=’method’
name=’start’
exec=’/lib/svc/method/sshd start’
timeout_seconds=’60′/>

1 Gbps trafikte sıfır paket kaybı

i-tap ve voitap projelerinin alt yapısında kullandığımız paket yakalama motorunun yeni sürümünde, 1 Gbps trafikte 10.000 pakette 18 adet paket kaybı ile neredeyse sıfıra yakın performansa ulaştık.

Bu gelişme, devam eden 10 Gigabit ve üstü paket yakalama performansı beklediğimiz yeni jenerasyon ürününlerimiz konusunda Ar-Ge ekibimizin doğru plan ve projeksiyon içinde olduğunu teyit etti.