Plesk Module, Database Module

Folks,

Thinking out loud and looking for feedback…

One of the things we do a lot of is configure Parallels Plesk Panel. Virtually all of that configuration management is done by running Plesk command line tools or (occasionally) by poking values directly into MySQL tables. Both actions are 100% equivalent to the actions “normally” performed with the file module:

  • You can use a template to generate 100% of the configuration
  • You can set the configuration using either the Plesk tools or SQL statements
  • You can test the configuration using either the Plesk tools or SQL statements
  • Since you can set+test, you can make an idempotent module

Essentially, Plesk is ripe to be managed by an ansible module except it doesn’t use files.

This makes me think that I should write a Plesk module and, perhaps, a MySQL module (because there are a couple of things that need to be done right at the database level).

What do you think?

– Art Z.

Folks,

Thinking out loud and looking for feedback…

One of the things we do a lot of is configure Parallels Plesk Panel. Virtually all of that configuration management is done by running Plesk command line tools or (occasionally) by poking values directly into MySQL tables. Both actions are 100% equivalent to the actions “normally” performed with the file module:

  • You can use a template to generate 100% of the configuration
  • You can set the configuration using either the Plesk tools or SQL statements
  • You can test the configuration using either the Plesk tools or SQL statements
  • Since you can set+test, you can make an idempotent module

Essentially, Plesk is ripe to be managed by an ansible module except it doesn’t use files.

This makes me think that I should write a Plesk module and, perhaps, a MySQL module (because there are a couple of things that need to be done right at the database level).

What do you think?

Definitely.

A MySQL management module could be very interesting!

The Plesk module should hopefully be able to use plesk commands once the DB is up and not have to resort to SQL commands, which could be more tricky.

There is definitely a need for an accompanying playbook to tie everything together (and this would be great for that contrib repo I’m trying to resurrect too).

A MySQL management module could be very interesting!

Cool. In that case, I will be glad to contribute it once it is written.

The Plesk module should hopefully be able to use plesk commands once the DB is up and not have to resort to SQL commands, which could be more tricky.

I agree. Now if only Parallels would give us 100% control via their API and/or tools. For instance, if the IP address of the server changes (as it does on Amazon EC2 every time an instance restarts), it is darned near impossible to reconfigure Plesk via their supported tools. OTOH, it is trivial to update one line in one MySQL table and then run one Plesk command to update all of the Apache config files and restart Apache.

For the terminally curious: See http://forum.parallels.com/showthread.php?t=258029

There is definitely a need for an accompanying playbook to tie everything together (and this would be great for that contrib repo I’m trying to resurrect too).

I will certainly include some playbook examples. Our playbook will end up being very specific to our internal needs.

Cheers,
– Art Z.

Was there any progress made on a MySQL module? Before I start from scratch. :slight_smile:

  • Mark