MultiGLPi Specifications » History » Version 6
walid, 05/24/2011 10:28 PM
1 | 1 | walid | h1. MultiGLPi Specifications |
---|---|---|---|
2 | 1 | walid | |
3 | 1 | walid | h2. Dependancies |
4 | 1 | walid | |
5 | 2 | walid | This plugin will needs the following softwares to work : |
6 | 1 | walid | * GLPI 0.80 and higher |
7 | 1 | walid | * WebServices plugin version 1.1.0 and higher |
8 | 1 | walid | |
9 | 1 | walid | h2. Uses cases |
10 | 1 | walid | |
11 | 1 | walid | * Unidirectionnal synchronization between one central and several local GLPI |
12 | 1 | walid | * Bidirectionnal synchronization between or more GLPI |
13 | 1 | walid | |
14 | 6 | walid | For each source GLPI, it'll be possible to choose with items to synchronize. |
15 | 6 | walid | |
16 | 5 | walid | h2. Synchronization protocol |
17 | 5 | walid | |
18 | 5 | walid | It'll be possible to choose which protocol to use : |
19 | 5 | walid | * SOAP |
20 | 5 | walid | * XML-RPC |
21 | 5 | walid | * REST |
22 | 5 | walid | |
23 | 1 | walid | h2. Workflow |
24 | 1 | walid | |
25 | 1 | walid | h2. Tables |
26 | 1 | walid | |
27 | 3 | SphynXz | |
28 | 3 | SphynXz | h3. GLPI items |
29 | 3 | SphynXz | |
30 | 3 | SphynXz | |
31 | 3 | SphynXz | list of GLPI items to synchronise for each slave server |
32 | 3 | SphynXz | |
33 | 3 | SphynXz | <pre> |
34 | 3 | SphynXz | DROP TABLE IF EXISTS `glpi_plugin_multiglpi_items`; |
35 | 4 | SphynXz | CREATE TABLE IF NOT EXISTS `glpi_plugin_multiglpi_items` ( |
36 | 3 | SphynXz | `id` int(11) NOT NULL auto_increment, |
37 | 3 | SphynXz | `item` varchar(255) collate utf8_unicode_ci default NULL, |
38 | 3 | SphynXz | `type` ENUM('core','plugin') NOT NULL default 'core', |
39 | 3 | SphynXz | `is_active` TINYINT NOT NULL default '0', //Activate or not this slave |
40 | 3 | SphynXz | `multiglpi_servers_id` TINYINT NOT NULL default '1', |
41 | 3 | SphynXz | PRIMARY KEY (`id`) |
42 | 3 | SphynXz | ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; |
43 | 3 | SphynXz | </pre> |
44 | 3 | SphynXz | |
45 | 3 | SphynXz | |
46 | 3 | SphynXz | |
47 | 1 | walid | h3. Slave GLPI servers |
48 | 1 | walid | |
49 | 1 | walid | <pre> |
50 | 1 | walid | DROP TABLE IF EXISTS `glpi_plugin_multiglpi_servers`; |
51 | 1 | walid | CREATE TABLE IF NOT EXISTS `glpi_plugin_multiglpi_servers` ( |
52 | 1 | walid | `id` int(11) NOT NULL auto_increment, |
53 | 1 | walid | `name` varchar(255) collate utf8_unicode_ci default NULL, |
54 | 1 | walid | `host` varchar(255) collate utf8_unicode_ci default NULL, |
55 | 1 | walid | `url` varchar(255) collate utf8_unicode_ci default NULL, |
56 | 1 | walid | `ws_user` varchar(50) collate utf8_unicode_ci default NULL, |
57 | 1 | walid | `ws_pass` varchar(50) collate utf8_unicode_ci default NULL, |
58 | 1 | walid | `glpi_user` varchar(50) collate utf8_unicode_ci default NULL, |
59 | 1 | walid | `glpi_pass` varchar(50) collate utf8_unicode_ci default NULL, |
60 | 1 | walid | `is_active` TINYINT NOT NULL default '0', //Activate or not this slave |
61 | 1 | walid | `protocols_id` TINYINT NOT NULL default '1', |
62 | 1 | walid | `entities_id_base` TINYINT NOT NULL default '0', //Source entity ID |
63 | 1 | walid | `is_deflate` TINYINT NOT NULL default '0', |
64 | 1 | walid | `session` varchar(255) collate utf8_unicode_ci default NULL, |
65 | 1 | walid | `comment` text collate utf8_unicode_ci, |
66 | 1 | walid | PRIMARY KEY (`id`) |
67 | 1 | walid | ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; |
68 | 1 | walid | </pre> |
69 | 1 | walid | |
70 | 1 | walid | h3. Changelog table |
71 | 1 | walid | |
72 | 1 | walid | This table logs all changes in the local GLPI. Will be used by a remote GLPI to get changes since last synchronization. |
73 | 1 | walid | |
74 | 1 | walid | <pre> |
75 | 1 | walid | DROP TABLE IF EXISTS `glpi_plugin_multiglpi_logs`; |
76 | 1 | walid | CREATE TABLE IF NOT EXISTS `glpi_plugin_multiglpi_logs` ( |
77 | 1 | walid | `id` int(11) NOT NULL auto_increment, |
78 | 1 | walid | `items_id` int(11) NOT NULL auto_increment, |
79 | 1 | walid | `itemtype` varchar(50) collate utf8_unicode_ci default NULL, |
80 | 1 | walid | `change_type` varchar(50) collate utf8_unicode_ci default NULL, //[add|update|delete|purge] |
81 | 1 | walid | `change_date` datetime NOT NULL, |
82 | 1 | walid | PRIMARY KEY (`id`) |
83 | 1 | walid | ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; |
84 | 1 | walid | </pre> |
85 | 1 | walid | |
86 | 1 | walid | h3. Links table |
87 | 1 | walid | |
88 | 1 | walid | This table link an unique object in the source and remote GLPI |
89 | 1 | walid | <pre> |
90 | 1 | walid | DROP TABLE IF EXISTS `glpi_plugin_multiglpi_links`; |
91 | 1 | walid | CREATE TABLE IF NOT EXISTS `glpi_plugin_multiglpi_links` ( |
92 | 1 | walid | `id` int(11) NOT NULL auto_increment, |
93 | 1 | walid | `masters_id` int(11) NOT NULL auto_increment, //ID in the master GLPI |
94 | 1 | walid | `slaves_id` int(11) NOT NULL auto_increment, //ID in the slave GLPI |
95 | 1 | walid | `itemtype` varchar(50) collate utf8_unicode_ci default NULL, //Object's itemtype |
96 | 1 | walid | PRIMARY KEY (`id`) |
97 | 1 | walid | ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci; |
98 | 1 | walid | </pre> |