Frontend/Central Server for Distributed Cacti Infrastructure
Moderators: Developers, Moderators
Frontend/Central Server for Distributed Cacti Infrastructure
Not sure if you'd want to put a feature/package together to do this or leave this to the end users to create:
We have 9 cacti servers monitoring different markets. We built a page on another server to give users a central place to get to each market (a quick image map). Company users can authenticate via LDAP to MS AD.
We're looking at giving our customers access to their monitored elements. We were thinking of creating a page that passes authentication through to the responsible server based on a lookup of the customer's id. That way we can give a generic address to our customers, regardeless of where on the map they reside, knowing that the front server will connect them to the correct instance of Cacti.
Has there been any thought to a central server/single point of authentication/lookup to allow Cacti to run in a tiered architecture w/ multiple servers? Perhaps even add additional fields to the user information model to include some sort of tag for Internal/Partner/Customer identifier.
Thanks
jw
We have 9 cacti servers monitoring different markets. We built a page on another server to give users a central place to get to each market (a quick image map). Company users can authenticate via LDAP to MS AD.
We're looking at giving our customers access to their monitored elements. We were thinking of creating a page that passes authentication through to the responsible server based on a lookup of the customer's id. That way we can give a generic address to our customers, regardeless of where on the map they reside, knowing that the front server will connect them to the correct instance of Cacti.
Has there been any thought to a central server/single point of authentication/lookup to allow Cacti to run in a tiered architecture w/ multiple servers? Perhaps even add additional fields to the user information model to include some sort of tag for Internal/Partner/Customer identifier.
Thanks
jw
-----
Its not a penalty unless the ref sees it!
Its not a penalty unless the ref sees it!
Cacti distribution
Are you sure you need a full fledged Cacti installation on each ?
I'd say the solution to your problem could be more to distribute the *poller* component of Cacti, and use a centralized database (with maybe several front-ends servers for load sharing purpose).
That way the only feature missing is just a mechanism for the cacti poller(s) to only pick a part of the polling targets.
I'd say the solution to your problem could be more to distribute the *poller* component of Cacti, and use a centralized database (with maybe several front-ends servers for load sharing purpose).
That way the only feature missing is just a mechanism for the cacti poller(s) to only pick a part of the polling targets.
Tufqi
You bring up a great point, but there is a limitation on the number of elements in a given level of the graph trees before some wackiness happens (http://www.raxnet.net/board/viewtopic.php?t=3242).
We're already hitting limits from the above, so we've got our elements across multiple servers. At some point we may even deploy the servers to their corresponding markets.
How would you expand the system to let the pollers know who each should poll? That would be a good enhancement to allow multiple pollers.
You bring up a great point, but there is a limitation on the number of elements in a given level of the graph trees before some wackiness happens (http://www.raxnet.net/board/viewtopic.php?t=3242).
We're already hitting limits from the above, so we've got our elements across multiple servers. At some point we may even deploy the servers to their corresponding markets.
How would you expand the system to let the pollers know who each should poll? That would be a good enhancement to allow multiple pollers.
-----
Its not a penalty unless the ref sees it!
Its not a penalty unless the ref sees it!
- TheWitness
- Developer
- Posts: 17007
- Joined: Tue May 14, 2002 5:08 pm
- Location: MI, USA
- Contact:
What would be a good interum would be for users to have permissions to only a subset of tree branches. This would then allow you to maintain the single server approach. This is pass one. There will come a point when the backend RRDGraph process will hit the wall on a given server.
Therefore, from a scalability perspective, two things have to happen:
1) Capability to poll from servers other than the database/web
2) Capability to distribute the RRDGraph and WebServer Operations
3) Capability to separate web from database.
I believe that 3) is already in place. Ian and I are working on 1) from a production perspective (many have done this independently) and 2) I haven't even thought about and really wouldn't know where to begin.
From the user having access to only specific tree branches, to rough in would be quite easy, to insure that integration is complete (aka what happens when you rename/delete/reorganize a tree) will take more time.
TheWitness
Therefore, from a scalability perspective, two things have to happen:
1) Capability to poll from servers other than the database/web
2) Capability to distribute the RRDGraph and WebServer Operations
3) Capability to separate web from database.
I believe that 3) is already in place. Ian and I are working on 1) from a production perspective (many have done this independently) and 2) I haven't even thought about and really wouldn't know where to begin.
From the user having access to only specific tree branches, to rough in would be quite easy, to insure that integration is complete (aka what happens when you rename/delete/reorganize a tree) will take more time.
TheWitness
True understanding begins only when we realize how little we truly understand...
Life is an adventure, let yours begin with Cacti!
Author of dozens of Cacti plugins and customization's. Advocate of LAMP, MariaDB, IBM Spectrum LSF and the world of batch. Creator of IBM Spectrum RTM, author of quite a bit of unpublished work and most of Cacti's bugs.
_________________
Official Cacti Documentation
GitHub Repository with Supported Plugins
Percona Device Packages (no support)
Interesting Device Packages
For those wondering, I'm still here, but lost in the shadows. Yearning for less bugs. Who want's a Cacti 1.3/2.0? Streams anyone?
Life is an adventure, let yours begin with Cacti!
Author of dozens of Cacti plugins and customization's. Advocate of LAMP, MariaDB, IBM Spectrum LSF and the world of batch. Creator of IBM Spectrum RTM, author of quite a bit of unpublished work and most of Cacti's bugs.
_________________
Official Cacti Documentation
GitHub Repository with Supported Plugins
Percona Device Packages (no support)
Interesting Device Packages
For those wondering, I'm still here, but lost in the shadows. Yearning for less bugs. Who want's a Cacti 1.3/2.0? Streams anyone?
- TheWitness
- Developer
- Posts: 17007
- Joined: Tue May 14, 2002 5:08 pm
- Location: MI, USA
- Contact:
Mika,
We will be supporting a mult/distributed poller officially in 0.8.7. Please stay tuned. Until then, 0.8.6 provides a significant boost to performance and will be released in the next few weeks.
The database can currently be hosted on another server. To do this, you must edit the following file <cacti_root>/include/config.php and change the appropriate lines in the file. Please see below:
$database_type = "mysql"; // your database type (don't know if others are supported)
$database_default = "cacti"; // your database name
$database_hostname = "localhost"; // your databases server
$database_username = "cactiuser"; // your database ID
$database_password = "cactil"; // your database password
Regards,
TheWitness
We will be supporting a mult/distributed poller officially in 0.8.7. Please stay tuned. Until then, 0.8.6 provides a significant boost to performance and will be released in the next few weeks.
The database can currently be hosted on another server. To do this, you must edit the following file <cacti_root>/include/config.php and change the appropriate lines in the file. Please see below:
$database_type = "mysql"; // your database type (don't know if others are supported)
$database_default = "cacti"; // your database name
$database_hostname = "localhost"; // your databases server
$database_username = "cactiuser"; // your database ID
$database_password = "cactil"; // your database password
Regards,
TheWitness
True understanding begins only when we realize how little we truly understand...
Life is an adventure, let yours begin with Cacti!
Author of dozens of Cacti plugins and customization's. Advocate of LAMP, MariaDB, IBM Spectrum LSF and the world of batch. Creator of IBM Spectrum RTM, author of quite a bit of unpublished work and most of Cacti's bugs.
_________________
Official Cacti Documentation
GitHub Repository with Supported Plugins
Percona Device Packages (no support)
Interesting Device Packages
For those wondering, I'm still here, but lost in the shadows. Yearning for less bugs. Who want's a Cacti 1.3/2.0? Streams anyone?
Life is an adventure, let yours begin with Cacti!
Author of dozens of Cacti plugins and customization's. Advocate of LAMP, MariaDB, IBM Spectrum LSF and the world of batch. Creator of IBM Spectrum RTM, author of quite a bit of unpublished work and most of Cacti's bugs.
_________________
Official Cacti Documentation
GitHub Repository with Supported Plugins
Percona Device Packages (no support)
Interesting Device Packages
For those wondering, I'm still here, but lost in the shadows. Yearning for less bugs. Who want's a Cacti 1.3/2.0? Streams anyone?
TheWitness,
In your described situation it would be only sql database seperated from rest of cacti aplication but I'd like to make web seperated from rest of cacti application.
I mean, I'd like to make web stuff on one server and polling stuff on other or even few others servers.
Am I right, that distributed poller will fulfill my expectations?
Thanks in advance,
Mika
In your described situation it would be only sql database seperated from rest of cacti aplication but I'd like to make web seperated from rest of cacti application.
I mean, I'd like to make web stuff on one server and polling stuff on other or even few others servers.
Am I right, that distributed poller will fulfill my expectations?
Thanks in advance,
Mika
- TheWitness
- Developer
- Posts: 17007
- Joined: Tue May 14, 2002 5:08 pm
- Location: MI, USA
- Contact:
Yes, because the poller can reside on separate distinct servers and not neccesarily the web server. You might even be able to "hack" it in today.
Understanding the code, I would have no problem making the change.
TheWitness
Understanding the code, I would have no problem making the change.
TheWitness
True understanding begins only when we realize how little we truly understand...
Life is an adventure, let yours begin with Cacti!
Author of dozens of Cacti plugins and customization's. Advocate of LAMP, MariaDB, IBM Spectrum LSF and the world of batch. Creator of IBM Spectrum RTM, author of quite a bit of unpublished work and most of Cacti's bugs.
_________________
Official Cacti Documentation
GitHub Repository with Supported Plugins
Percona Device Packages (no support)
Interesting Device Packages
For those wondering, I'm still here, but lost in the shadows. Yearning for less bugs. Who want's a Cacti 1.3/2.0? Streams anyone?
Life is an adventure, let yours begin with Cacti!
Author of dozens of Cacti plugins and customization's. Advocate of LAMP, MariaDB, IBM Spectrum LSF and the world of batch. Creator of IBM Spectrum RTM, author of quite a bit of unpublished work and most of Cacti's bugs.
_________________
Official Cacti Documentation
GitHub Repository with Supported Plugins
Percona Device Packages (no support)
Interesting Device Packages
For those wondering, I'm still here, but lost in the shadows. Yearning for less bugs. Who want's a Cacti 1.3/2.0? Streams anyone?
Who is online
Users browsing this forum: No registered users and 3 guests