Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

proxysql-admin Alternativas - ClusterControl ProxySQL GUI

ProxySQL é um proxy muito popular em ambientes MySQL. Ele vem com um bom conjunto de recursos, incluindo divisão de leitura/gravação, cache de consulta e reescrita de consulta. O ProxySQL armazena sua configuração no banco de dados SQLite, as alterações de configuração podem ser aplicadas em tempo de execução e são realizadas através de comandos SQL. Isso aumenta a curva de aprendizado e pode ser um bloqueador para algumas pessoas que gostariam de apenas instalá-lo e executá-lo.

Esta é a razão pela qual existem algumas ferramentas que podem ajudá-lo a gerenciar o ProxySQL. Vamos dar uma olhada em um deles, proxysql-admin, e compará-lo com os recursos disponíveis para ProxySQL no ClusterControl.

proxysql-admin

Proxysql-admin é uma ferramenta que vem incluída no ProxySQL quando instalada a partir de repositórios Percona. Ele é dedicado a facilitar a configuração do Percona XtraDB Cluster no ProxySQL. Você pode definir a configuração no arquivo de configuração (/etc/proxysql-admin.cnf) ou através de argumentos para o comando proxysql-admin. É possível:

  1. Configurar grupos de hosts (leitor, gravador, gravador de backup, offline) para PXC
  2. Criar usuário de monitoramento em ProxySQL e PXC
  3. Criar usuário de aplicativo em ProxySQL e PXC
  4. Configurar o ProxySQL (máximo de conexões em execução, máximo de transações por trás)
  5. Sincronizar usuários entre PXC e ProxySQL
  6. Sincronizar nós entre PXC e ProxySQL
  7. Criar regras de consulta predefinidas (divisão R/W) para usuários importados do PXC
  8. Configurar SSL para conexões do ProxySQL aos bancos de dados de back-end
  9. Defina um único escritor ou acesso round robin ao PXC

Como você pode ver, esta não é uma ferramenta complexa, ela se concentra na configuração inicial. Vejamos alguns exemplos.

[email protected]:~# proxysql-admin --enable



This script will assist with configuring ProxySQL for use with

Percona XtraDB Cluster (currently only PXC in combination

with ProxySQL is supported)



ProxySQL read/write configuration mode is singlewrite



Configuring the ProxySQL monitoring user.

ProxySQL monitor user name as per command line/config-file is proxysql-monitor



The monitoring user is already present in Percona XtraDB Cluster.



Would you like to enter a new password [y/n] ? n



Monitoring user 'proxysql-monitor'@'10.%' has been setup in the ProxySQL database.



Configuring the Percona XtraDB Cluster application user to connect through ProxySQL

Percona XtraDB Cluster application user name as per command line/config-file is proxysql_user



Application user 'proxysql_user'@'10.%' already present in PXC.



Adding the Percona XtraDB Cluster server nodes to ProxySQL



Write node info

+------------+--------------+------+--------+

| hostname   | hostgroup_id | port | weight |

+------------+--------------+------+--------+

| 10.0.0.152 | 10           | 3306 | 1000   |

+------------+--------------+------+--------+



ProxySQL configuration completed!



ProxySQL has been successfully configured to use with Percona XtraDB Cluster



You can use the following login credentials to connect your application through ProxySQL



mysql --user=proxysql_user -p --host=localhost --port=6033 --protocol=tcp

Acima mostra a configuração inicial. Como você pode ver, um modo singlewriter (padrão) foi usado, monitoramento e usuários de aplicativos foram configurados e toda a configuração do servidor foi preparada.

[email protected]:~# proxysql-admin --status



mysql_galera_hostgroups row for writer-hostgroup: 10

+--------+--------+---------------+---------+--------+-------------+-----------------------+------------------+

| writer | reader | backup-writer | offline | active | max_writers | writer_is_also_reader | max_trans_behind |

+--------+--------+---------------+---------+--------+-------------+-----------------------+------------------+

| 10     | 11     | 12            | 13      | 1      | 1           | 2                     | 100              |

+--------+--------+---------------+---------+--------+-------------+-----------------------+------------------+



mysql_servers rows for this configuration

+---------------+-------+------------+------+--------+--------+----------+---------+-----------+

| hostgroup     | hg_id | hostname   | port | status | weight | max_conn | use_ssl | gtid_port |

+---------------+-------+------------+------+--------+--------+----------+---------+-----------+

| writer        | 10    | 10.0.0.153 | 3306 | ONLINE | 1000   | 1000     | 0       | 0         |

| reader        | 11    | 10.0.0.151 | 3306 | ONLINE | 1000   | 1000     | 0       | 0         |

| reader        | 11    | 10.0.0.152 | 3306 | ONLINE | 1000   | 1000     | 0       | 0         |

| backup-writer | 12    | 10.0.0.151 | 3306 | ONLINE | 1000   | 1000     | 0       | 0         |

| backup-writer | 12    | 10.0.0.152 | 3306 | ONLINE | 1000   | 1000     | 0       | 0         |

+---------------+-------+------------+------+--------+--------+----------+---------+-----------+

Aqui está a saída da configuração padrão dos nós PXC no ProxySQL.

Controle de Cluster

ClusterControl é, em comparação com o proxysql-admin, uma solução muito mais complexa. Ele pode implantar um balanceador de carga ProxySQL e pré-configurar de acordo com os requisitos do usuário.

Ao implantar você pode definir usuário e senha de administrador, monitorar usuário e você pode também importe um dos usuários MySQL existentes (ou crie um novo se isso for o que você precisa) para o aplicativo usar. Também é possível importar a configuração do ProxySQL de outro ProxySQL que você já tenha no cluster. Isso torna a implantação mais rápida e eficiente.

O que também é importante mencionar é que o ClusterControl pode implantar ProxySQL em clusters MySQL e Galera. Ele pode ser usado com os sabores MySQL, Percona e MariaDB do MySQL.

Uma vez implantado, o ClusterControl oferece opções para gerenciar totalmente o ProxySQL por meio de uma GUI fácil de usar.

Você pode monitorar sua instância ProxySQL.

Você pode verificar as consultas mais pesadas executadas através do ProxySQL. Também é possível criar uma regra de consulta com base na consulta exata.

ClusterControl configura ProxySQL para uma divisão de leitura/gravação. Também é possível adicionar regras de consulta personalizadas com base em seus requisitos e configuração do aplicativo.

Comparado ao proxysql-admin, o ClusterControl oferece controle total sobre a configuração do servidor . Você pode adicionar novos servidores, você pode movê-los entre os grupos de hosts conforme desejar. Você pode criar novos grupos de hosts (e então, por exemplo, criar novas regras de consulta para eles).

Também é possível gerenciar usuários em ProxySQL. Você pode editar usuários existentes, importar novos usuários que existem no banco de dados back-end.

A importação em massa também é possível. Você também pode criar novos usuários em bancos de dados ProxySQL e back-end.

ClusterControl também pode ser usado para reconfigurar o ProxySQL. Você pode modificar todas as variáveis ​​por meio de uma interface simples com opção de pesquisa.

Como você pode ver, o ClusterControl vem com recursos de gerenciamento detalhados para ProxySQL. Ele permite que você implante e gerencie instâncias do ProxySQL com facilidade.