wiki:technical:percona
Различия
Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версия | ||
wiki:technical:percona [2023/05/23 16:16] – [Создаем конфиг первой ноды] Diman | wiki:technical:percona [2023/05/23 23:32] (текущий) – [Генерация сертификатов] Diman | ||
---|---|---|---|
Строка 26: | Строка 26: | ||
=== При необходимости устанавливаем утилиты percona-toolkit === | === При необходимости устанавливаем утилиты percona-toolkit === | ||
- | percona-release enable tools release | + | <code bash> |
- | apt update | + | percona-release enable tools release |
- | apt install percona-toolkit | + | apt update |
+ | apt install percona-toolkit | ||
+ | </ | ||
+ | |||
+ | === После установки останавливаем mysql === | ||
+ | <code bash> | ||
+ | # После установки останавливаем mysql | ||
+ | service mysql stop | ||
+ | </ | ||
+ | |||
+ | |||
==== Конфигурируем кластер ==== | ==== Конфигурируем кластер ==== | ||
Строка 37: | Строка 48: | ||
====Создаем конфиг первой ноды==== | ====Создаем конфиг первой ноды==== | ||
- | mkdir / | + | <code bash> |
- | nano / | + | mkdir / |
+ | nano / | ||
+ | </ | ||
В файл добавляем следующее содержимое: | В файл добавляем следующее содержимое: | ||
- | [mysqld] | + | <code bash> |
- | wsrep_provider=/ | + | [mysqld] |
- | wsrep_cluster_name=pxc-cluster | + | wsrep_provider=/ |
- | wsrep_cluster_address=gcomm:// | + | wsrep_cluster_name=pxc-cluster |
- | wsrep_node_name=db4 | + | wsrep_cluster_address=gcomm:// |
- | wsrep_node_address=192.168.0.220 | + | wsrep_node_name=db4 |
- | wsrep_sst_method=xtrabackup-v2 | + | wsrep_node_address=192.168.0.220 |
- | wsrep_sst_auth=sstuser: | + | wsrep_sst_method=xtrabackup-v2 |
- | pxc_strict_mode=ENFORCING | + | wsrep_sst_auth=sstuser: |
- | binlog_format=ROW | + | pxc_strict_mode=ENFORCING |
- | default_storage_engine=InnoDB | + | binlog_format=ROW |
- | innodb_autoinc_lock_mode=2 | + | default_storage_engine=InnoDB |
- | Подключаем конфиг в MySQL | + | innodb_autoinc_lock_mode=2 |
- | echo ' | + | </ |
- | Конфигурируем пользователя для синка данных между БД | + | |
- | mysql -u root -p | + | <code bash> |
+ | # Подключаем конфиг в MySQL | ||
+ | echo ' | ||
+ | #Конфигурируем пользователя для синка данных между БД | ||
+ | mysql -u root -p | ||
+ | |||
+ | </ | ||
====Добавляем пользователя MySQL==== | ====Добавляем пользователя MySQL==== | ||
- | CREATE USER ' | ||
- | GRANT RELOAD, LOCK TABLES, PROCESS, REPLICATION CLIENT ON *.* TO ' | ||
- | FLUSH PRIVILEGES; | ||
Останавливаем MySQL | Останавливаем MySQL | ||
- | service mysql stop | + | service mysql stop |
Bootstrat-им ноду | Bootstrat-им ноду | ||
+ | <code bash> | ||
+ | # В этот момент текущая нода определяет переменную wsrep_cluster_conf_id в 1 | ||
+ | systemctl start mysql@bootstrap.service | ||
+ | # Подключаемся в mysql и добавляем пользователя с паролем | ||
+ | mysql -p | ||
+ | </ | ||
+ | |||
+ | <code mysql> | ||
+ | CREATE USER ' | ||
+ | GRANT RELOAD, LOCK TABLES, PROCESS, REPLICATION CLIENT ON *.* TO ' | ||
+ | FLUSH PRIVILEGES; | ||
+ | </ | ||
+ | ==== Генерация сертификатов ==== | ||
+ | |||
+ | <code bash> | ||
+ | # Генерация сертификатов | ||
+ | mkdir / | ||
+ | |||
+ | # Generate CA key and certificate | ||
+ | # Generate the CA key file: | ||
+ | openssl genrsa 2048 > ca-key.pem | ||
+ | # Generate the CA certificate file: | ||
+ | openssl req -new -x509 -nodes -days 9999 -key ca-key.pem -out ca.pem | ||
+ | |||
+ | # Generate server key and certificate | ||
+ | # Generate the server key file: | ||
+ | openssl req -newkey rsa:2048 -days 9999 -nodes -keyout server-key.pem -out server-req.pem | ||
+ | # Remove the passphrase: | ||
+ | openssl rsa -in server-key.pem -out server-key.pem | ||
+ | # Generate the server certificate file: | ||
+ | openssl x509 -req -in server-req.pem -days 9999 -CA ca.pem -CAkey ca-key.pem -set_serial 01 -out server-cert.pem | ||
+ | |||
+ | # Generate client key and certificate | ||
+ | # Generate the client key file: | ||
+ | openssl req -newkey rsa:2048 -days 9999 -nodes -keyout client-key.pem -out client-req.pem | ||
+ | # Remove the passphrase: | ||
+ | openssl rsa -in client-key.pem -out client-key.pem | ||
+ | # Generate the client certificate file: | ||
+ | openssl x509 -req -in client-req.pem -days 9999 -CA ca.pem -CAkey ca-key.pem -set_serial 01 -out client-cert.pem | ||
+ | |||
+ | </ | ||
+ | |||
+ | |||
+ | |||
root@db4 ~ # / | root@db4 ~ # / | ||
Bootstrapping Percona XtraDB Cluster database server: mysqld .. | Bootstrapping Percona XtraDB Cluster database server: mysqld .. |
wiki/technical/percona.1684847765.txt.gz · Последнее изменение: 2023/05/23 16:16 — Diman