Merkezi Supervisor Web Arayüzü



Benzer belgeler
AKINSOFT. Eofis NetworkAdmin. AKINSOFT EOfis NetworkAdmin Kurulumu Bilgi Notu. Doküman Versiyon : Tarih : Copyright 2008 AKINSOFT

Linux işletim sistemlerinde dosya hiyerarşisinde en üstte bulunan dizindir. Diğer bütün dizinler kök dizinin altında bulunur.

Linux Kurulumu (Sürüm 1.52) İçindekiler

MaestroPanel Kurulum

INTERRA SIP SERVER KULLANIM KLAVUZU

İnternet Yapılandırma Gereksinimleri. PC lerin Yapılandırılması. Windows XP altında ayar yapılması

BitTorrent İstemci Kullanımı

Veri Tabanı-I 5.Hafta

SQL 2005 SQL STUDIO MANAGER ACP YAZILIMI KURULUM KILAVUZU

Opera V2 Kurulum Klavuzu V0.01

Mpuantor 2.7 Client Kurulumu

Fiery Command WorkStation 5.8 ile Fiery Extended Applications 4.4

Analiz Raporu. Projenin amacının, konusunun, işlevinin ne olacağı, hangi yazılımlar kullanılacak gibi parametrelerin belirlenmesi.

WebInstaller. 1. Kurulum Đçin Gereksinimler

INTERNET BAĞLANTISININ KURULMASI İÇİN GEREKLİ YÖNLENDİRİCİ AYARLARI

EBA Dosya Uygulaması Kullanıcı Kılavuzu ( W eb)

MOBILEPAX ENTERPRISE API (WEB SERVİS)

Veritabanı Sızma Testleri Türk Standardları Enstitüsü Yazılım Test ve Belgelendirme Dairesi Başkanlığı

İŞLETİM SİSTEMLERİ. (Operating Systems)

Primavera ve Doküman Yönetim Sistemi

Kullanıcı Ayarları. Resim 89. United Security. Kullanici Adi Seviye Etkin. No.

PERKON PDKS Kurulum ve hızlı başlangıç rehberi

Kurumsal Güvenlik ve Web Filtreleme

BIND ile DNS Sunucu Kurulumu

Hesapların Belirlenmesi Bölümünde Kayıtlı Gelen Entegrasyon Tablosu Dosyaları Listesi

Yedek Almak ve Yedekten Geri Dönmek

Kurumsal Güvenlik ve Web Filtreleme

TL-WPS510U PRINT SERVER KURULUM DÖKÜMANI

Siteye girişte kullanıcı adı ve parola soran bir ekran karşına gelecektir.

DESTEK DOKÜMANI. Ürün : Tiger Enterprise/ Tiger Plus/ Go Plus/Go Bölüm : Kurulum İşlemleri

Bu makalede 2003 sunucu, Windows 2003 Server anlamına gelmektedir. Aşağıda yapılan işlemler 2003 R2 sunucu üzerinde denenmiş ve çalıştırılmıştır.

İÇERİK YÖNETİM SİSTEMİ (CMS) Bir web sitesi yayınlamak için yapılması gerekenler:

BlackBerry Admin Service

Turquaz Windows kurulum dökümanı. ftp://ftp.mirror.ac.uk/sites/ftp.postgresql.org/binary/v7.3.1/windows/pgsql731wina1.exe

Smoothwall URL Filter Kurulumu

Üst Düzey Programlama

Medisoft E-Reçete Bildirimleri Kullanım Kılavuzu

License. Veri Tabanı Sistemleri. Konular büyük miktarda verinin etkin biçimde tutulması ve işlenmesi. Problem Kayıt Dosyaları

Windows Live ID ve parolanızı giriniz.

Quedra L MON Log Yönetim ve Güvenli Kayıt Yazılımı

Cisco 881 Router ve AirLink ES4X0, WAN Failover Tanımı

ORACLE TNS (TRANSPARENT NETWORK SUBSTRATE) LISTENER YAPILANDIRMASI

Elektronik Belge Yönetim Sistemi Kullanım Kılavuzu

Web Servis-Web Sitesi Bağlantısı

1 LOGGER Yapılandırma Kılavuzu

Q-Biz İş Zekası 5.1. Versiyon Yenilikleri

MATRİKS E-BROKER ELEKTRONİK İŞLEM PLATFORMU MATRİKS TRADER VE JAVA MATRİKS ENTEGRASYONLARI

Ders Tanıtım Sunumu. Database Managegement II. Elbistan Meslek Yüksek Okulu Güz Yarıyılı. Öğr. Gör. Murat KEÇECĠOĞLU

AKINSOFT Tahsilex. Yardım Dosyası. Doküman Versiyon : Tarih : Sayfa-1. Copyright 2010 AKINSOFT

Bilgi ve İletişim Teknolojileri (JFM 102) Ders 7. LINUX OS (Sistem Yapısı) BİLGİ & İLETİŞİM TEKNOLOJİLERİ. LINUX Yapısı

Linux Temelli Zararlı Yazılımların Bulaşma Teknikleri, Engellenmesi ve Temizlenmesi

MOBİLTEG MİKRO DEPO OTOMASYONU

BQ101 GSM Access Kontrol Ünitesi Windows Programı. Kullanım Kılavuzu. Doküman Versiyon: BQTEK

KolayOfisHukukOfis OtomasyonSistemleri

Websense Web Servislerini Durdurup Başlatmak

Kurumsal Grup E-Posta Eğitim Dokümanı

Web Uygulama Güvenliği Kontrol Listesi 2010

iphone & ipad için e-posta hesabı kurulumu

Sistem Yöneticiliği Seti

MERAK MAIL SERVER ACTIVE DIRECTORY ENTEGRASYONU

Uzak Masaüstü Lisans Server ı Aktive Etme

Linux Dosya ve Dizin Yapısı

Bay.t Destek. İnternetten Uzak Erişim. Kullanım Klavuzu

ecyber Kullanıcı Kılavuzu 1 / 1 1. ecyber hakkında Sistem gereksinimleri:... 2 Donanım:... 2 Yazılım: Kullanım Rehberi...

Bilgi ve Olay Yönetim Sistemi

e-imzatr Kurulum Klavuzu

adresine tıklayarak kayıt ekranına giriş yapınız.

INTERRA KONSIYAJ SERVER KULLANIM KLAVUZU

E-İMZA OTOMATİK KURULUM PAKETİ DÖKÜMANI

1. VERİ TABANI KAVRAMLARI VE VERİ TABANI OLUŞTUMA

Kets DocPlace LOGO Entegrasyonu

VET ON KULLANIM KLAVUZU

Aktif Dizin Logon/Logoff Script Ayarları Versiyon

MAT213 BİLGİSAYAR PROGRAMLAMA I DERSİ Ders 1: Programlamaya Giriş

Bilindik engelleme yöntemlerinin dışında olan, kurumsal web filitreleri nasıl aşılır?

CHAPTER 9. DHCP Server

Scream! e gelen veri akışlarından bazılarını diğer bir kurum yada bilgisayarla paylaşmak için kullanılabilir.

Fstab Rehberi. Ceren Çalıcı. Nisan, 2012

Virtualmin'e Yeni Web Sitesi Host Etmek - Domain Eklemek

Uzaktan Kurulum Kılavuzu

MOBILEPAX XML PRODUCT API KULLANIM ŞEKLİ

VERİTABANI KURULUMU SQL 2005 EXPRESS EDITION KURULUMU

Asp.Net Veritabanı İşlemleri

PROGRAMLAMA TEMELLERİ

Güvenlik. Kullanıcı Kılavuzu

TUİK Netsis Erp Paketi Entegrasyonu ve Yıllık İş İstatistikleri Sanayi ve Hizmet Araştırması (YSHİ) Anketi

İçindekiler 1. ConnectProf a Geçiş Entegrasyon Adımları... 3 a. Paket Seçimi... 3 b. Link Ekleme ve Analiz... 4 c. Analiz Sonucu ve Alan

CHAPTER 3. ZAMANLANMIŞ GÖREVLER (Automated Tasks)

TecCom TecLocal Programı Kurulum ve Yapılandırma Rehberi

TachoMobile Web Uygulaması v1.00.

FABREKA YAZILIM ELEKTRONİK DANIŞMANLIK TİC. LTD. ŞTİ.

2. SCADA PROGRAMI. TEOS' un size sunduğu bir çok hizmet içerisinde en önemlilerini şöyle sıralayabiliriz:

OTURUM AÇMA ADLARI. Tavsiye Edilen Önhazırlık Enterprise Manager'i kullanabilmek.

Uzaktan Eğitim Uygulama ve Araştırma Merkezi

EFe Event Management System

UZAKTAN EĞİTİM MERKEZİ

V-Ray Lisanslama Sistemi

BONASUS. Ertuğrul AKBAS [ANET YAZILIM]

Ortamınızda A.D. veya LDAP sistemi var ise aşağıdaki linkten KoruMail LDAP-AD isimli dokümanı inceleyebilirsiniz.

Transkript:

Merkezi Supervisor Web Arayüzü Gülşah Köse 1, Kaan Özdinçer 2 1 Çanakkale Onsekiz Mart Üniversitesi, Bilgisayar Mühendisliği Bölümü, Çanakkale 2 Gamegos, Sistem Yöneticisi, İstanbul gulsah.1004@gmail.com, kaanozdincer@gmail.com Özet: Çok sayıda sürecin çalıştığı sistemlerde süreçlerin yönetilmesi ve kontrol altında tutulması zordur. Supervisor tam olarak bu iş için yazılmış bir araçtır. Süreçler bir yapılandırma dosyasında tanımlanarak Supervisor'a tanıtılır. Süreç durursa otomatik başlatılabilir, önceliği belirlenebilir. Supervisor süreç yönetim sistemini kullanmak için varsayılan olarak iki araç paket ile birlikte gelmektedir. Biri supervisorctl komut satırı aracı diğeri bir web arayüzdür. Web arayüzü sadece supervisor hangi makinenin üzerinde kuruluysa o makinenin süreçlerini yönetme imkanı sağlamaktadır. Bu çalışma web arayüzünün merkezileştirilmesi yani uzak makinelerdeki supervisor süreçlerinin de yönetilebilmesini ve süreçleri farklı parametrelere göre gruplayarak kullanılabilirliğin arttırılmasını içeren bir özgür yazılım projesini tanımlamaktadır. Anahtar Sözcükler: supervisor, merkezi, web, arayüz. Centarlized Supervisor Interface (CESI) Abstract: Managing and checking the processes are difficult on systems that processes running a lot of. Supervisor is exactly tool written for business. By defining processes in a configuration file, we introduce processes to supervisor. We can defination like if a process stops it must start automatically, the priority of the process... By default, to use the Supervisor process management system has two tool: supervisorctl command-line tool and a web interface. This web interface provides managing supervisor processes which is installed on the machine that only the supervisor. This study defines a centralized web interface that free software project provides managing supervisor processes on remote machines and improve usability by grouping according to different parameters that supervisor proceses. Keywords: supervisor, centarlize, web, interface.

1. Giriş Eğer az miktarda sürecin çalışmasından sorumlu olunursa bunun bir araç kullanmadan yapılması bir sorun oluşturmaz. Ama kontrol edilmesi gereken süreç sayısı arttığında bu işin elle yapılması için çok vakit harcamak gerekir. Bu işlemi otomatikleştirmek hem insan olarak yapabilecek hataların önüne geçer hem de büyük zaman kazandırır. Supervisor[1] bu iş için kullanılan süreç bir kontrol sistemidir. Supervisordaki bu süreç kavramı çalışmasını kontrol altında tutmak istediğimiz -çalıştırılabilir- bir dosya, yani program çalıştırıldığında bu programın çalışması için arka planda çalışan, bir süreç numarası olan işe karşılık gelmektedir. Burada kastedilen süreçler unix/linux süreçleridir. Örneğin wsgi betikleri, art alan süreçleri (daemon), mail kuyruğu işleri supervisor ile kontrol edilebilicek işlere örnek olabilir. Supervisorun yapılandırma dosyasında örnek bir süreç tanımlaması: [program:apple] ; sürece vereceğimiz isim command=/usr/local/bin/apple.sh ;çalışmasını kontrol etmek istediğimiz dosyanın yolu autostart=true ; supervisor çalıştığında otomatik başlatılıp başlatılmayacağı autorestart=true; otomatik yeniden başlatılıp başlatılmayacağı stderr_logfile=/var/log/apple.err.log ;standart hata çıktısının yazılacağı dosyanın yolu stdout_logfile=/var/log/apple.out.log ; standart çıktısının yazılacağı dosyanın yolu Paket ile birlikte gelen varsayılan iki kullanım aracı vardır: supervisorctl komut satırı aracı veya web arayüzü. Supervisor kullanan herkes konsol ekranı açıp komut yazmayı bilmek zorunda değildir. Web arayüzü bu yüzden vardır. Varsayılan olarak kullanılan web arayüzünün en büyük eksikliği sadece kurulu olduğu makine üzerindeki süreçleri yönetme imkanı sağlamasıdır. Uzak makinelerde yönetimi sağlamak için yazılmış ve supervisor un sayfasında tanıtılmış üçüncü parti yazılımlar mevcuttur.[2] Bunların biri haricindekilerin -nodevisor-[3] en önemli problemi supervisorun gelişimi hızla devam ederken bu araçların gelişmelerinin durmasıdır. İkinci problemleri yapılandırma dosyalarının biçim olarak yapılandırma yönetimi yapmaya uygun olmamasıdır. Üçüncü problem ise tek bir kullanıcı tipi olması ve o kullanıcının arayüzde herhangi bir kısıtlamaya tabi tutulamamasıdır. Bu çalışmaya başlanıldığında nodevisor[3] da bu çalışmaya paralel olarak gelişmiştir bu çalışmanın sağladığı bazı imkanları sağlar hale gelmiştir. Bu çalışmada supervisor için merkezi yönetimi sağlayan ve süreçlerin arasından istenilen seçimi yapmak için diğerlerinden daha fazla seçeneği olan yeni web arayüzün yapısı kurulumu ve kullanımı anlatılacaktır. Çalışmanın adı CESI'dir (CEntralized Supervisor Interface)[4]. 2 Genel tasarım ve sistem CESI Linux tabanlı işletim sistemlerinde çalışabilen bir web arayüzdür Varsayılan web arayüzüne ya da komut satırı aracına bir alternatif değildir. İkisinin de yapamadığı merkezi yönetim mekanizmasını gerçekleştirir. Proje python-flask web çatısı kullanılarak yazılmıştır. Görünümün ekran boyutundan bağımsızlığını sağlamak için bootstrap kullanılmıştır. Supervisor'un sağladığı API nin yetenekleri çerçevesinde çalışan bir programdır. Yapılan isteklerde ve gelen cevaplarda sayfa güncellemesine ihtiyaç varsa sayfanın tamamen yeniden çağırılması yerine sadece değişen kısımın çağırılması için jquery-ajax metodu çalışır. Böylece yapılmış değişikliğin ekranda görülme süresi kısaltılmıştır. CESI'nin kullanıcı parola bilgileri sqlite3 veritabanında saklanmaktadır. Merkezi olma özelliğini yapılandırma dosyasında bağlanmak istenilen uzak makinelerin supervisor kullanıcı adı, parolası, supervisor servisinin verildiği host ve port bilgisini yazarak sağlarız. Uzak makineler

için örnek bir yapılandırma şu şekilde yapılmakadır (/etc/cesi.conf): [node:uzak_makinenin_ismi] username = user ;supervisorun kullanıcı adı password = 123 ;supervisorun parolası host = 82.165.57.10 ;supervisor servisinin verildiği host adresi port = 9001 ; supervisor servisinin verildiği bağlantı noktası CESI bu yapılandırma dosyasını okuyarak bağlantıyı oluşturur. Bağlantıda sorun oluşursa arayüzde bu diğerlerinden farklı (seçilemez) bir simgeyle ifade edilir. [*] testing ve product adında iki adet environment tanımlanmıştır Bu environmentlardan birini seçtiğimizde karşımıza üye olan nodelarından istediklerimizi seçme imkanı verir. [*] Node ismi virtual olan makinede bağlantı sorunu vardır Bağlanılan her makine bir düğümdür ve makineler arayüzde node seçeneği altında listelenir. CESI'de varsayılan web arayüzünden ve diğer üçüncü parti yazılımlardan farklı olarak environment seçeneği mevcuttur. Bu seçenek var olan nodelar arasından istediğimiz süreci bulmayı kolaylaştıran bir özelliktir. Environmentler nodeların gruplanmasıyla oluşur. Yapılandırma dosyasında basitçe şöyle tanımlanır: [environment:environmenta_verilecek_isim1] members = node1, node2, node3,... [environment:environmenta_verilecek_isim2] members = node5, node2, [*] product environmentina üye nodelar colors ve animals İstediğimiz süreci bulmayı kolaylaştıran bir diğer özellik ise süreçlere özel grup atayabilmektir. Grup özelliği environment ve node gibi yeni eklenmiş bir özellik değildir. Supervisor'da süreçler zaten gruplanabilir ama varsayılan web arayüzde grup özelliği kullanılarak bir kolaylık sağlanmamıştır. Üçüncü parti yazılımlardan olan nodevisor da benzer bir özelliğe sahiptir. Ancak CESI'nin diğer üçüncü parti yazılımlardan farkı grup özelliğini environment özelliğiyle birlikte kullanabiliyor olmasıdır. Böylece grubu x

environmeti y olan süreçleri hakkında işlem yapılmasına olanak tanır. CESI'nin diğer üçüncü parti yazılımlarından ve varsayılan web arayüzünden başka bir farkı görüntüleyebildiği her süreç grubu için süreçlerin başlarındaki kutucukları işaretleyerek istenildiği kadar alt seviyede toplu durdurma başlatma gibi imkanları sağlamasıdır. parolası admin dir. Admin sisteme istediği tipte kullanıcı ekleyebilir istediği kullanıcıyı silebilir süreçlerle ilgili istediği işlemi gerçekleştirebilir. Standart User Kullanıcı ekleme silme dışında adminin yaptığı her işlemi gerçekleştirebilir. [*] Fruits noduna ait süreçlerin içinden 3 süreç seçilmiştir. Sağ üstteki turuncu düğmeler kullanılarak üçü için tek seferde işlem yapılabilir. CESI'nin varsayılan web arayüzünden ve diğer üçüncü parti yazılımlardan bir diğer farkı ise kullanıcıları seviyelendirebilmesidir. Varsayılan web arayüzünde arayüzü görebilen herkes orada gördüğü herşeyi kullanabilir durumdadır. CESI kullanıcıları 4 farklı seviye altında gruplar. Kullanıcılar admin tipindeki bir kullanıcı tarafından eklenir. Her kullanıcı sisteme giriş yaptığında kendi parolasını değiştirebilir. [*] Admin ve standart user tipi kullanıcıların giriş yaptıklarında görecekleri ekran görüntüsü Only Log Süreçleri durdurup başlatamaz kullanıcı ekleyip çıkartamaz. Sadece süreç loglarını okuyabilir. [*] only log tipi kullanıcıların giriş yaptıklarında görecekleri ekran görüntüsü Read Only [*] Kullanıcı adı gulsah ve kullanıcı tipi only log olan bir kullanıcının hesabıyla ilgili görebildiği seçenekler. Kullanıcı Tipleri: Admin Only Log tipi kullanıcıdan farklı olarak süreçlerin loglarını dahi okuyamaz. Sadece süreç hakkında genel bilgiyi görüntüler. Sürecin çalışma durumunu, ne zamandır ayakta olduğunu, süreç numarasını, adını, grubunu gibi. Varsayılan kullanıcıdır. Program ilk kurulduğunda kullanıcı tipi, kullanıcı adı ve

4- Proje içindeki web.py python dosyası çalıştırılmalı. Artık cesi bir web tarayıcısı aracılığıyla kullanılabilir. CESI'yi kullanmak için çalıştırdığımız makine üzerinde bir supervisor çalışmasına ihtiyaç yoktur. Yani CESI supervisordan bağımsız haldedir. [*] read only tipi kullanıcıların giriş yaptıklarında görecekleri ekran görüntüsü Varsayılan web arayüzden son farkı kullanıcıların arayüzde gerçekleştirdiği her olayın logunu tutabiliyor ve bir kısmını tail -f gibi arayüzde görüntülüyor olmasıdır. [*] Kullanıcı loglarını, çalışan durmuş süreç sayılarını bağlanmış bağlı olmayan node sayısını, environment sayısını görebilceğimiz dashboard. 3 Tasarım ve Uygulama Linux tabanlı işletim sistemlerinde kullanılabilir. Kurulumu adımları şöyledir: 0- Kurulum bağımlılıkları sqlite3 python python-flask sisteme kurulmalıdır. 1- Proje linkten[4] CESI'yi kurmak istediğiniz bilgisayara indirilmeli. 2- İndirdiğimiz dizin içindeki yapılandırma dosyası /etc dizini altına taşınmalı, gerekli yapılandırma bilgileri dosya içine yazılmalı. 4 Sonuç Bu çalışma sonucunda supervisorctl ve varsayılan web arayüzün sağlayamadığı birden çok uzak makinenin süreçlerini aynı arayüzden görüntüleme ve yönetme imkanı sağlanmıştır. Diğer üçüncü parti merkezi araçların ve varsayılan web arayüzün sağlamadığı environment özelliği tanımlanmış ve kullanılmış, süreçlerin farklı parametreleri birlikte kullanarak aranılan bir süreci daha kolay bulma imkanı sağlanmış, kullanıcı yetkilendirme seviyeleri eklenmiştir. GPLv3 ile lisanslanmış bir özgür yazılım projesidir. 5 Referanslar [1] Supervisor, http://supervisord.org/, [2] Supervisord plugins, http://supervisord.org/plugins.html, [3] Nodevisor, https://github.com/takealot/nodervisor,, [4] CESI, https://github.com/gamegos/cesi, 3- İndirdiğimiz dosya içindeki sql komutu çalıştırılmalı. Böylece varsayılan kullanıcı (admin) oluşturulmuş olur.