mirror of
https://github.com/Pardus-LiderAhenk/lider-ahenk-docs.git
synced 2024-11-10 18:12:28 +03:00
120 lines
7.1 KiB
Markdown
120 lines
7.1 KiB
Markdown
|
## Veritabanı
|
|||
|
|
|||
|
Lider Ahenk veritabanı olarak MariaDB 10.x kullanılmakta ve veritabanı katmanı olarak Lider içerisinde OpenJPA kullanılmaktadır.
|
|||
|
Veritabanına ait EER diagramına [bu adresten](http://agem.com.tr/liderahenk/liderdb.mwb) erişebilirsiniz.
|
|||
|
|
|||
|
Lider Ahenk (görev işletimi, politika uygulama, Ahenk kaydı gibi) süreçlerinde sıklıkla kullanılan bazı veritabanı tabloları
|
|||
|
ve açıklamaları aşağıdaki gibidir:
|
|||
|
|
|||
|
### C_COMMAND
|
|||
|
|
|||
|
```
|
|||
|
+-------------------+--------------+------+-----+---------+-------+
|
|||
|
| Field | Type | Null | Key | Default | Extra |
|
|||
|
+-------------------+--------------+------+-----+---------+-------+
|
|||
|
| COMMAND_ID | bigint(20) | NO | PRI | NULL | |
|
|||
|
| ACTIVATION_DATE | date | YES | | NULL | |
|
|||
|
| COMMAND_OWNER_UID | varchar(255) | YES | | NULL | |
|
|||
|
| CREATE_DATE | datetime | NO | | NULL | |
|
|||
|
| DN_LIST | text | YES | | NULL | |
|
|||
|
| DN_TYPE | int(11) | YES | | NULL | |
|
|||
|
| POLICY_ID | bigint(20) | YES | MUL | NULL | |
|
|||
|
| TASK_ID | bigint(20) | YES | MUL | NULL | |
|
|||
|
+-------------------+--------------+------+-----+---------+-------+
|
|||
|
```
|
|||
|
|
|||
|
İşletilen her bir görev veya uygulanan her bir politikaya karşılık C_COMMAND tablosunda yeni bir kayıt oluşturulur. Yapılan
|
|||
|
işlemin (görev yada politika) LDAP üzerinde hangi ögeler (DN_LIST) üzerinde çalıştırıldığı, bu ögelerden hangilerinin dikkate
|
|||
|
alınması gerektiği (DN_TYPE) ve işlemin kim tarafından yapıldığını kayıt altına alır. Söz konusu her bir kayıt C_TASK veya C_POLICY
|
|||
|
tablosuna referans vermektedir.
|
|||
|
|
|||
|
### C_TASK
|
|||
|
|
|||
|
```
|
|||
|
+-----------------+--------------+------+-----+---------+-------+
|
|||
|
| Field | Type | Null | Key | Default | Extra |
|
|||
|
+-----------------+--------------+------+-----+---------+-------+
|
|||
|
| TASK_ID | bigint(20) | NO | PRI | NULL | |
|
|||
|
| COMMAND_CLS_ID | varchar(255) | YES | | NULL | |
|
|||
|
| CREATE_DATE | datetime | NO | | NULL | |
|
|||
|
| CRON_EXPRESSION | varchar(255) | YES | | NULL | |
|
|||
|
| DELETED | bit(1) | YES | | NULL | |
|
|||
|
| MODIFY_DATE | datetime | YES | | NULL | |
|
|||
|
| PARAMETER_MAP | longblob | YES | | NULL | |
|
|||
|
| PLUGIN_ID | bigint(20) | NO | MUL | NULL | |
|
|||
|
+-----------------+--------------+------+-----+---------+-------+
|
|||
|
```
|
|||
|
|
|||
|
İşletilen her bir görev için C_TASK tablosunda yeni bir kayıt oluşturulmaktadır ve görev işletimi sırasında Lider Arayüz üzerinden
|
|||
|
gönderilen görev parametrelerini içermektedir.
|
|||
|
|
|||
|
### C_POLICY
|
|||
|
|
|||
|
```
|
|||
|
+----------------+--------------+------+-----+---------+-------+
|
|||
|
| Field | Type | Null | Key | Default | Extra |
|
|||
|
+----------------+--------------+------+-----+---------+-------+
|
|||
|
| POLICY_ID | bigint(20) | NO | PRI | NULL | |
|
|||
|
| ACTIVE | bit(1) | YES | | NULL | |
|
|||
|
| CREATE_DATE | datetime | NO | | NULL | |
|
|||
|
| DELETED | bit(1) | YES | | NULL | |
|
|||
|
| DESCRIPTION | varchar(255) | YES | | NULL | |
|
|||
|
| LABEL | varchar(255) | NO | | NULL | |
|
|||
|
| MODIFY_DATE | datetime | YES | | NULL | |
|
|||
|
| POLICY_VERSION | varchar(255) | YES | | NULL | |
|
|||
|
+----------------+--------------+------+-----+---------+-------+
|
|||
|
```
|
|||
|
|
|||
|
Kaydedilen her bir politika için C_POLICY tablosunda bir kayıt oluşturulmakta ve her bir kayıt ilgili politikaya
|
|||
|
dair politika adı, açıklaması, oluşturulma tarihi ve sürümü gibi bilgileri tutmaktadır. Diğer belgelerde açıklandığı gibi bir
|
|||
|
politika bir veya birden fazla profil kaydından oluşmaktadır ve politikaya ait herhangi bir profilin değiştirilmesi durumunda
|
|||
|
politika üzerindeki sürüm değeri bir arttırılmaktadır. Bu sürüm değeri Ahenk'in politika sorguladığı durumlarda bir politikanın
|
|||
|
değişip değişmediğinin anlaşılması için kullanılmaktadır.
|
|||
|
|
|||
|
### C_COMMAND_EXECUTION
|
|||
|
|
|||
|
```
|
|||
|
+----------------------+--------------+------+-----+---------+-------+
|
|||
|
| Field | Type | Null | Key | Default | Extra |
|
|||
|
+----------------------+--------------+------+-----+---------+-------+
|
|||
|
| COMMAND_EXECUTION_ID | bigint(20) | NO | PRI | NULL | |
|
|||
|
| CREATE_DATE | datetime | NO | | NULL | |
|
|||
|
| DN | varchar(255) | YES | | NULL | |
|
|||
|
| DN_TYPE | int(11) | YES | | NULL | |
|
|||
|
| COMMAND_ID | bigint(20) | NO | MUL | NULL | |
|
|||
|
+----------------------+--------------+------+-----+---------+-------+
|
|||
|
```
|
|||
|
|
|||
|
İşletilen her bir görev ve uygulanan her bir politika için C_COMMAND tablosunda bir kayıt oluşturulduğundan bahsetmiştik. Yapılan
|
|||
|
bu işlemde kaç tane LDAP ögesi var ise, her biri için C_COMMAND_EXECUTION tablosunda birer kayıt oluşturulmaktadır. Örneğin; LDAP
|
|||
|
ağacında 3 adet Ahenk ögesi seçilerek 'ekran görüntüsü al' görevi işletildiğinde, 1 adet C_COMMAND kaydı altında (her bir Ahenk
|
|||
|
DN değerine karşılık) 3 adet C_COMMAND_EXECUTION kaydı oluşturulur.
|
|||
|
|
|||
|
### C_COMMAND_EXECUTION_RESULT
|
|||
|
|
|||
|
```
|
|||
|
+-----------------------------+------------+------+-----+---------+-------+
|
|||
|
| Field | Type | Null | Key | Default | Extra |
|
|||
|
+-----------------------------+------------+------+-----+---------+-------+
|
|||
|
| COMMAND_EXECUTION_RESULT_ID | bigint(20) | NO | PRI | NULL | |
|
|||
|
| AGENT_ID | bigint(20) | YES | | NULL | |
|
|||
|
| CONTENT_TYPE | int(11) | YES | | NULL | |
|
|||
|
| CREATE_DATE | datetime | NO | | NULL | |
|
|||
|
| RESPONSE_CODE | int(11) | NO | | NULL | |
|
|||
|
| RESPONSE_DATA | longblob | YES | | NULL | |
|
|||
|
| RESPONSE_MESSAGE | text | YES | | NULL | |
|
|||
|
| COMMAND_EXECUTION_ID | bigint(20) | NO | MUL | NULL | |
|
|||
|
+-----------------------------+------------+------+-----+---------+-------+
|
|||
|
```
|
|||
|
|
|||
|
Detay tablo olarak görev yapan C_COMMAND_EXECUTION_RESULT tablosu işletilen her bir görev veya uygulanan her bir politika
|
|||
|
ait sonuç mesajların saklanması için kullanılmaktadır. Buna göre daha önceki örnekten devam edersek, LDAP ağacında 3 adet
|
|||
|
Ahenk ögesi seçilerek 'ekran görüntüsü al' görevi işletildiğinde, 1 adet C_COMMAND kaydı altında 3 adet C_COMMAND_EXECUTION
|
|||
|
kaydı ve her bir C_COMMAND_EXECUTION kaydı altında 1 adet C_COMMAND_EXECUTION_RESULT kaydı oluşturulur.
|
|||
|
|
|||
|
Bu tablonun detay tablo olarak yaratılması, görev veya politika sonucu olarak birden fazla sonucun döndürülebilmesine olanak sağlar.
|
|||
|
Buna göre; örneğin (CPU, disk, RAM bellek gibi) sistem kaynaklarının belirli aralıklarla dinlendiği ve eşik değerin aşılmasıyla
|
|||
|
uyarı mesajı döndürüldüğü bir görev işletilirken, eşik değer her geçildiğinde gönderilen görev sonucu bir C_COMMAND_EXECUTION_RESULT
|
|||
|
kaydı olarak veritabanında tutulmaktadır.
|
|||
|
|