[sisyphus] mariadb-galera

Киселев Иван Владимирович ikiselev на gstu.by
Чт Ноя 12 14:30:13 MSK 2015



14.09.2015 14:25, a.shabalin �� gmail.com (Alexey Shabalin) пишет:
>>
>> +1 Galera
>>
>> mariadb-galera уже в сизифе.
> Приготовить кластер легко:
> 1) устанавливаем mariadb-galera на N серверов.
> 2) правим конфиг /etc/my.cnf.d/galera.cnf (wsrep_cluster_name=...,
> wsrep_cluster_address="gcomm:/....)  и копируем на все сервера
> 3) на первом сервере запускаем:
>   - mysql_install_db
>   - su -s /bin/bash - mysql
>   - /usr/sbin/mysqld --wsrep-new-cluster
> 4) service mysqld start на остальных серверах
> 5) после синхронизации убиваем mysqld, и стартуем его штатным образом через
> service
>
> Для просмотра состояния кластера:
> - mysql
> - SHOW STATUS LIKE 'wsrep_%';
>
> В пакет добавлен скрипт clustercheck( настройки в
> /etc/sysconfig/clustercheck) для использования с haproxy. Включить можно
> через xinetd(/etc/xinetd.d/mariadbcheck) или
> mariadbcheck.socket
>
Добрый день.
На деле все оказалось не так просто. Есть 3 ноды. На все три установил 
mariadb-galera, настроил конфиги. Главная нода запускается без проблем, 
а вот остальные не могут с ней синхронизироваться. Фаервол отключен. 
Пример лога со второй ноды в файле.

Еще mysql не запускается через service mysqld start, при этом в логах 
нет никакой ошибки. Содержимое лога:
151112 10:52:17 [Note] WSREP: Read nil XID from storage engines, 
skipping position init
151112 10:52:17 [Note] WSREP: wsrep_load(): loading provider library 'none'
151112 10:52:17 [Note] Plugin 'InnoDB' is disabled.
151112 10:52:17 [Note] Plugin 'FEEDBACK' is disabled.
151112 10:52:17 [Note] WSREP: Service disconnected.
151112 10:52:18 [Note] WSREP: Some threads may fail to exit.

Сколько не находил статей  про mariadb-galera - у всех все прекрасно 
работает.  Может вы что-нибудь подскажите.



----------- следующая часть -----------
151112 11:22:33 [Note] WSREP: Setting wsrep_ready to 0
151112 11:22:33 [Note] WSREP: Read nil XID from storage engines, skipping position init
151112 11:22:33 [Note] WSREP: wsrep_load(): loading provider library '/usr/lib64/galera/libgalera_smm.so'
151112 11:22:33 [Note] WSREP: wsrep_load(): Galera 3.12(rXXXX) by Codership Oy <info на codership.com> loaded successfully.
151112 11:22:33 [Note] WSREP: CRC-32C: using "slicing-by-8" algorithm.
151112 11:22:33 [Warning] WSREP: Could not open state file for reading: '/var/lib/mysql/db//grastate.dat'
151112 11:22:33 [Note] WSREP: Found saved state: 00000000-0000-0000-0000-000000000000:-1
151112 11:22:33 [Note] WSREP: Passing config to GCS: base_dir = /var/lib/mysql/db/; base_host = 10.105.12.12; base_port = 456
151112 11:22:33 [Note] WSREP: Service thread queue flushed.
151112 11:22:33 [Note] WSREP: Assign initial position for certification: -1, protocol version: -1
151112 11:22:33 [Note] WSREP: wsrep_sst_grab()
151112 11:22:33 [Note] WSREP: Start replication
151112 11:22:33 [Note] WSREP: Setting initial position to 00000000-0000-0000-0000-000000000000:-1
151112 11:22:33 [Note] WSREP: protonet asio version 0
151112 11:22:33 [Note] WSREP: Using CRC-32C for message checksums.
151112 11:22:33 [Note] WSREP: backend: asio
151112 11:22:33 [Warning] WSREP: access file(/var/lib/mysql/db//gvwstate.dat) failed(No such file or directory)
151112 11:22:33 [Note] WSREP: restore pc from disk failed
151112 11:22:33 [Note] WSREP: GMCast version 0
151112 11:22:33 [Warning] WSREP: Failed to resolve tcp:// 10.105.12.12:4567
151112 11:22:33 [Note] WSREP: (ab6260a0, 'tcp://0.0.0.0:4567') listening at tcp://0.0.0.0:4567
151112 11:22:33 [Note] WSREP: (ab6260a0, 'tcp://0.0.0.0:4567') multicast: , ttl: 1
151112 11:22:33 [Note] WSREP: EVS version 0
151112 11:22:33 [Note] WSREP: gcomm: connecting to group 'my_wsrep_cluster', peer '10.105.12.11:, 10.105.12.12:'
151112 11:22:33 [Note] WSREP: (ab6260a0, 'tcp://0.0.0.0:4567') turning message relay requesting on, nonlive peers:
151112 11:22:34 [Note] WSREP: declaring b77f9dec at tcp://10.105.12.11:4567 stable
151112 11:22:34 [Note] WSREP: Node b77f9dec state prim
151112 11:22:34 [Note] WSREP: view(view_id(PRIM,ab6260a0,10) memb {
        ab6260a0,0
        b77f9dec,0
} joined {
} left {
} partitioned {
})
151112 11:22:34 [Note] WSREP: save pc into disk
151112 11:22:34 [Note] WSREP: gcomm: connected
151112 11:22:34 [Note] WSREP: Changing maximum packet size to 64500, resulting msg size: 32636
151112 11:22:34 [Note] WSREP: Shifting CLOSED -> OPEN (TO: 0)
151112 11:22:34 [Note] WSREP: Opened channel 'my_wsrep_cluster'
151112 11:22:34 [Note] WSREP: Waiting for SST to complete.
151112 11:22:34 [Note] WSREP: New COMPONENT: primary = yes, bootstrap = no, my_idx = 0, memb_num = 2
151112 11:22:34 [Note] WSREP: STATE_EXCHANGE: sent state UUID: abfb8bae-892f-11e5-9312-aa2e58ba7ffa
151112 11:22:34 [Note] WSREP: STATE EXCHANGE: sent state msg: abfb8bae-892f-11e5-9312-aa2e58ba7ffa
151112 11:22:34 [Note] WSREP: STATE EXCHANGE: got state msg: abfb8bae-892f-11e5-9312-aa2e58ba7ffa from 0 (vps02)
151112 11:22:34 [Note] WSREP: STATE EXCHANGE: got state msg: abfb8bae-892f-11e5-9312-aa2e58ba7ffa from 1 (vps01.dev.gstu.by)
151112 11:22:34 [Note] WSREP: Quorum results:
        version    = 3,
        component  = PRIMARY,
        conf_id    = 5,
        members    = 1/2 (joined/total),
        act_id     = 1,
        last_appl. = -1,
        protocols  = 0/7/3 (gcs/repl/appl),
        group UUID = 1b196ffb-892d-11e5-938a-36be185d1a2e
151112 11:22:34 [Note] WSREP: Flow-control interval: [23, 23]
151112 11:22:34 [Note] WSREP: Shifting OPEN -> PRIMARY (TO: 1)
151112 11:22:34 [Note] WSREP: State transfer required:
        Group state: 1b196ffb-892d-11e5-938a-36be185d1a2e:1
        Local state: 00000000-0000-0000-0000-000000000000:-1
151112 11:22:34 [Note] WSREP: New cluster view: global state: 1b196ffb-892d-11e5-938a-36be185d1a2e:1, view# 6: Primary, numbe
151112 11:22:34 [Warning] WSREP: Gap in state sequence. Need state transfer.
151112 11:22:34 [Note] WSREP: Setting wsrep_ready to 0
151112 11:22:34 [Note] WSREP: Running: 'wsrep_sst_rsync --role 'joiner' --address '10.105.12.12' --auth 'root:' --datadir '/v
/usr//bin/wsrep_sst_rsync: line 263: cannot create temp file for here document: Permission denied
WSREP_SST: [INFO] Joiner cleanup. (20151112 11:22:34.681)
WSREP_SST: [INFO] Joiner cleanup done. (20151112 11:22:34.686)
151112 11:22:34 [ERROR] WSREP: Failed to read 'ready <addr>' from: wsrep_sst_rsync --role 'joiner' --address '10.105.12.12' -
        Read: '(null)'
151112 11:22:34 [ERROR] WSREP: Process completed with error: wsrep_sst_rsync --role 'joiner' --address '10.105.12.12' --auth
151112 11:22:34 [ERROR] WSREP: Failed to prepare for 'rsync' SST. Unrecoverable.
151112 11:22:34 [ERROR] Aborting

151112 11:22:36 [Note] WSREP: waiting for client connections to close: 2
151112 11:22:36 [Note] WSREP: Closing send monitor...
151112 11:22:36 [Note] WSREP: Closed send monitor.
151112 11:22:36 [Note] WSREP: gcomm: terminating thread
151112 11:22:36 [Note] WSREP: gcomm: joining thread
151112 11:22:36 [Note] WSREP: gcomm: closing backend
151112 11:22:37 [Note] WSREP: (ab6260a0, 'tcp://0.0.0.0:4567') turning message relay requesting off
151112 11:22:37 [Note] WSREP: view(view_id(NON_PRIM,ab6260a0,10) memb {
        ab6260a0,0
} joined {
} left {
} partitioned {
        b77f9dec,0
})
151112 11:22:37 [Note] WSREP: New COMPONENT: primary = no, bootstrap = no, my_idx = 0, memb_num = 1
151112 11:22:37 [Note] WSREP: view((empty))
151112 11:22:37 [Note] WSREP: gcomm: closed
151112 11:22:37 [Note] WSREP: Flow-control interval: [16, 16]
151112 11:22:37 [Note] WSREP: Received NON-PRIMARY.
151112 11:22:37 [Note] WSREP: Shifting PRIMARY -> OPEN (TO: 1)
151112 11:22:37 [Note] WSREP: Received self-leave message.
151112 11:22:37 [Note] WSREP: Flow-control interval: [0, 0]
151112 11:22:37 [Note] WSREP: Received SELF-LEAVE. Closing connection.
151112 11:22:37 [Note] WSREP: Shifting OPEN -> CLOSED (TO: 1)
151112 11:22:37 [Note] WSREP: RECV thread exiting 0: Success
151112 11:22:37 [Note] WSREP: recv_thread() joined.
151112 11:22:37 [Note] WSREP: Closing replication queue.
151112 11:22:37 [Note] WSREP: Closing slave action queue.
151112 11:22:37 [Note] WSREP: Service disconnected.
151112 11:22:37 [Note] WSREP: closing wsrep thread 2
151112 11:22:37 [Note] WSREP: closing wsrep thread 1
151112 11:22:37 [Note] WSREP: WSREP rollback thread wakes for signal
151112 11:22:37 [Note] WSREP: WSREP rollback thread has empty abort queue
151112 11:22:37 [Note] WSREP: rollbacker thread exiting
151112 11:22:37 [Note] WSREP: wsrep running threads now: 1
151112 11:22:38 [Note] WSREP: Some threads may fail to exit.
151112 11:22:38 [Note] /usr/sbin/mysqld: Shutdown complete

Error in my_thread_global_end(): 1 threads didn't exit


Подробная информация о списке рассылки Sisyphus