Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature request] Percona #51

Closed
bertho-zero opened this issue Aug 31, 2020 · 9 comments
Closed

[Feature request] Percona #51

bertho-zero opened this issue Aug 31, 2020 · 9 comments

Comments

@bertho-zero
Copy link
Contributor

It would be great if we could choose Percona as the server type in addition to MySQL or MariaDB.

And to have a "Monitoring" checkbox which sets up or not a Percona PMM server.

What do you think ?

@bertho-zero bertho-zero changed the title {Feature request] Percona [Feature request] Percona Aug 31, 2020
@sych74
Copy link
Collaborator

sych74 commented Aug 31, 2020

Hello!
We are considering adding auto-clustering support for the Percona template. What type of replication do you expect to be available? Are asynchronous master/slave replication and Percona XtraDB Cluster with ProxySQL as a balancer by analogy with MariaDB Galera cluster options for you?
Do you use clustered Percona at the moment? If yes, could you describe in more details the specifics?
Please tell us more about the monitoring solutions you prefer for your cases.
Thanks,

@bertho-zero
Copy link
Contributor Author

I am currently using MySQL with Master-Master replication. I haven't tested with Percona yet but would like to try.


For monitoring I use Percona PMM, I have added a group of Docker Engine CE nodes to install Percona PMM by following this guide https://www.percona.com/doc/percona-monitoring-and-management/2.x/install/docker.html, the Docker image https://hub.docker.com/r/percona/pmm-server does not work directly with the Jelastic system, I don't know why.

Then I followed this guide to add sudo access to each MySQL instance: https://www.infomaniak.com/en/support/faq/2346/jelastic-cloud-launching-commands-with-root-access-to-any-container

I installed the client which takes care of recovering data from MySQL servers:

sudo yum install https://repo.percona.com/yum/percona-release-latest.noarch.rpm
sudo yum install pmm2-client -y

On each instance I created a MySQL user that I called pmm-agent so as not to pollute the logs, it allows filtering on the interface:

$> mysql -u${DB_USER} -p${DB_PASS}
mysql> CREATE USER 'pmm-agent'@'127.0.0.1' IDENTIFIED WITH mysql_native_password BY '${PMM_AGENT_PWD}';
mysql> GRANT SELECT, PROCESS, SUPER, REPLICATION CLIENT, RELOAD ON *.* TO 'pmm-agent'@'127.0.0.1';

I had to adjust some MySQL variables to optimize the log feed (from https://www.percona.com/doc/percona-monitoring-and-management/2.x/manage/conf-mysql-slow-log.html):

$> mysql -u${DB_USER} -p${DB_PASS}
mysql> SET GLOBAL slow_query_log = 1; SET PERSIST slow_query_log = 1;
mysql> SET long_query_time = 0; SET GLOBAL long_query_time = 0; SET PERSIST long_query_time = 0;
mysql> SET GLOBAL log_slow_extra = 1; SET PERSIST log_slow_extra = 1;
mysql> SET GLOBAL log_queries_not_using_indexes = 1; SET PERSIST log_queries_not_using_indexes = 1;
mysql> SET GLOBAL log_throttle_queries_not_using_indexes = 100; SET PERSIST log_throttle_queries_not_using_indexes = 100;

Then I connect the clients to the server:

sudo pmm-admin config --server-insecure-tls --server-url=https://admin:${PMM_SERVER_PWD}@${IP_PMM}:443 --force ${DB_NODE_IP} generic mysql-${DB_NODE_ID}
pmm-admin register --server-insecure-tls  --server-url=https://admin:${PMM_SERVER_PWD}@${IP_PMM}:443 --force ${DB_NODE_IP}
pmm-admin add mysql --query-source=slowlog --username=pmm-agent --password=${PMM_AGENT_PWD} mysql-${DB_NODE_ID}-slowlog 127.0.0.1:3306

And that's it, you don't need more to have quality monitoring :)

PMM agent can also connect to ProxySQL instead or in addition to MySQL, not sure which is better.

@sych74
Copy link
Collaborator

sych74 commented Aug 31, 2020

I'd like to hear more about why you want to switch from MariaDB to Percona? Do you have any issues you are trying to solve?

@bertho-zero
Copy link
Contributor Author

I use MySQL without any particular problem, I would especially like to test the Percona solution which replaces MySQL.

I would like to compare performance, see memory restoration...

https://www.percona.com/software/mysql-database/percona-server/feature-comparison

Some big companies use it and on paper it looks better in every way.

@sych74
Copy link
Collaborator

sych74 commented Aug 31, 2020

Ok, got your point. Thanks for sharing your thoughts. Might that be an option for you to compare performance of your application based on standalone nodes - MySQL vs Percona? That exercise will be easier for you and the results will be easier to compare.

@bertho-zero
Copy link
Contributor Author

It's an option to see that Percona is better, but I already know the result and it doesn't really interest me. The end goal is rather to replace MySQL with Percona without losing functionality.

I would like to have horizontal and vertical scalability which is done automatically, like with MySQL.

@sych74
Copy link
Collaborator

sych74 commented Sep 1, 2020

The request is accepted and thank you for all the information you have provided

@sych74 sych74 closed this as completed Sep 1, 2020
@GabrielGallagher
Copy link

Was this ever shipped?

@sych74
Copy link
Collaborator

sych74 commented Oct 21, 2022

The Percona-cluster release is scheduled for the first quarter of the next year.
Thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants