mirror of
https://github.com/Pardus-LiderAhenk/ahenk
synced 2024-11-22 07:22:17 +03:00
Created Changelog (markdown)
parent
e4e2de077b
commit
8fd436a77a
1 changed files with 54 additions and 0 deletions
54
Changelog.md
Normal file
54
Changelog.md
Normal file
|
@ -0,0 +1,54 @@
|
|||
### Debian Paket Yapısına Uygun Çekirdek ve Eklenti Paketleri
|
||||
Ahenk ve Ahenk için geliştirilen eklentiler Debian sistemler için paketlenebilir, kurulabilir ve kullanılabilir projeler olarak tasarlanmıştır. Tek komutla deb uzantılı paketler oluşturulabilir ve tek bir komutla kurulabilir. Paket bazında bağımlılıklar, kurulum öncesi/sonrası betikleri, kaldırma öncesi/sonrası betikleri düzenlenebilir. Eklenti paketleri Ahenk'i bir bağımlılık olarak görür.
|
||||
|
||||
### Servis
|
||||
Ahenk kurulduğundan itibaren sistem üzerinde servis olarak çalışır ve yalnızca sistem yöneticisi tarafından müdahale edebilir.
|
||||
|
||||
### Sürekli Bağlı Kalma
|
||||
Varsayılan iletişim protokolü olarak kullanılan XMPP'nin client'ını barındıran Ahenk, XMPP server iletişim kesintisi gerçekleşmesi durumunda tekrar bağlantı kurar. Bağlantının kopması Ahenk servisi üzerinde duraksamaya neden olmaz, Ahenk servisini durdurmaz.
|
||||
|
||||
### Çekirdek ve Eklentilerin Bağımsızlaştırılması ve Yalıtılması
|
||||
Ahenk, eklentiler için bir servis altyapısı oluşturur. Bu alt yapı, eklentilerin birbirinden bağımsız olarak çalışmasını sağlar ve temel servislerin bu alt yapı aracılığıyla eklentiler tarafından tüketilmesine olanak sağlar. Ahenk üzerine yükelenen her eklentinin farklı thread kuyrukları olduğundan bir eklenti farklı bir eklentiyi ya da Ahenk servisini etkileyemez.
|
||||
|
||||
### Bileşen ve Teknolojiden Bağımsız Ahenk Servisleri
|
||||
Ahenk ayağa kalkarken kendisine ve eklentilere altlık oluşturabilecek ve tüketilebilecek servisler oluşturur. Bu servisler bir birinden bağımsızdır ve modülerdir; Ahenk ayakta iken yeniden yüklenebilirler. Servislerden beklenen aksiyonlar spesifiktir, işin nasıl yapıldığı ile ilgilenilmez. Arka planda çalışan teknolojinin değişmesi Ahenk'in çalışma yöntemini etkilemez; sadece o servisin mekaniklerini bağlar.
|
||||
|
||||
### Komut Desteği
|
||||
Ahenk temel betiği çeşitli komutları harici olarak destekler. Komutun tipine göre Ahenk çalışırken ya da kapalı iken çalışabilir. Örneğin Ahenk çalışır vaziyette iken eklenti ekleme-kaldırma, Ahenk servisi üzerinden mesaj gönderme, ...; Ahenk açık ya da kapalı iken kayıtları sıfırlama gibi
|
||||
|
||||
### Eksik Eklenti İsteme
|
||||
Çalıştırılması gereken görev ya da politikanın gerektirdiği eklentinin Ahenk'te bulunmadığı durumlarda Lider'den eksik eklenti istenir, kurulur ve Ahenk'e yüklenerek bekletilen görev/politika çalıştırılır. Eğer eklenti kurulamazsa, ilgili eklenti kurulana kadar görev/politika muhafaza edilir.
|
||||
|
||||
### Dinamik Eklenti Yükleme-Yenileme-Kaldırma
|
||||
Ahenk çalışmaya devam ederken eklentileri yükleyebilir, kaldırabilir veya yeniden yükleyebilir. Bu hem manuel hem de otomatik şekilde gerçekleşebilir. Manuel olarak Ahenk komut desteği parametreler ile belirtilen eklentiler yönetilebilir. Otomatik olarak kurulan Ahenk eklentisi tanımlanıp, dosya yapısı onaylandıktan sonra sisteme yüklenir.
|
||||
|
||||
### Bağımsız Yapılandırma Dosyası
|
||||
/etc/ahenk/ dizini altında yapılandırma dosyası bulunur. Bu dosyada bağlantı bilgileri, öntanımlı dizinler ve zaman sayaçları gibi temel işlevlere ilişkin parametreler bulunur. Bu yapılandırma dosyasında hiç bir eklentiye ait bilgi bulunmaz, sadece Ahenk çekirdeğine ilişkin değerler bulunur.
|
||||
|
||||
### Eklenti Geliştirmeyi Kolaylaştıran Servisler
|
||||
Ahenk çekirdeği, temel işlevlerin gerçekleştirimini sunduğu Util servisini ve sistem bilgilerinin sağladığı System servislerini eklentilere sunar. Böylece eklenti geliştirilme süresinin kısalmasına yardımcı olur. Eklenti geliştirme yönergeleri ve ipuçları belgeleri hazırlanmıştır.
|
||||
|
||||
|
||||
### Otomatik Kayıt
|
||||
Ahenk yeni kurulduğunda temel sistem bilgileri ile birlikte Lidere kayıt olma isteğini otomatik olarak göndererek Lider'e kendini tanıtır. Lider'den gelen olumlu cevap ile birlikte Lider Ahenk ekosistemine dahil olur. Bu kayıt yöntemi sırasında alınabilecek bilgiler Lider kayıt protokolüne göre genişletilebilir.
|
||||
|
||||
|
||||
### Farklı Mimari ve Sistem Bileşenlerine Uyumluluk
|
||||
Ahenk işlevleri olabildiğince python3+ yetenekleri kullanılarak geliştirilmiştir. Eklentilerin farklı işletim sistemi, bileşen veya mimarilerde farklı yöntemlerle işlemleri gerçekleştirme ihtiyacı olabilir. Bu durum ile ilgili bilgiyi Ahenk, System servisi üzerinden eklentiye sunar. Eklenti geliştirme belgelerinde bu gibi durumlardaki en uygun eklenti yapısına ilişkin öneriler belirtilmiştir. Ayrıca System servisinin yetersiz kalabileceği durumlar için (yaygın kullanılmayan bilşenler, populer olmayan sürümler, vs...) Ahenk yapılandırma dosyası üzerinden mimari/bileşen tipi tanımlayıcı parametreler sağlanır.
|
||||
|
||||
### Çevrimdışı Çalışma
|
||||
Politika çalıştırma yeteneği Ahenk, Lider ile iletişime geçemediği durumlarda en son gönderilmiş politika bilgileri kullanılarak çalıştırılır. Bu durum Lider ile iletişim sağlanıp güncel politika bilgileri alınana kadar devam eder.
|
||||
|
||||
### Zamanlı Çalıştırma
|
||||
Ahenk, zamanlı çalıştırmayı destekler; gönderilen görevin ileri çalıştırma zamanı varsa, belirtilen zaman gelince görev çalıştırılır.
|
||||
|
||||
### Güvenli Bağlantı Desteği
|
||||
Varsayılan olarak kullanılan XMPP bağlantısı, XMPP server desteklediği sürece, SSL/TLS ile kullanılır. Bu durum için yapılandırma dosyası kullanılır.
|
||||
|
||||
### Sistem Güncesi
|
||||
Ahenk ve Eklentiler bazında gerçekleştirilen olayları, erişilen mesajları, sistem harekerlerini vs... çoklu kademeli olarak kayıt altına alır. Bu kayıtlar Ahenk servisi kapatıldığında kaybolmaz.
|
||||
|
||||
### Hareket Bildirimleri
|
||||
Ahenk kullanıcı giriş çıkış hareketlerini, sistemin açılış/kapanışını algılar ve ilgili servislerine bunları bildirir. Lidere bu harekerlerle ilgili mesaj atar.
|
||||
|
||||
|
Loading…
Reference in a new issue