0
salt를 사용하여 실행중인 MariaDB 인스턴스의 복제본을 설정하려고합니다.소금 상태를 사용하는 MariaDB 복제가 없습니다.
{% if pillar.get('REPLICATION_SOURCE_IP') and pillar.get('REPLICATION_SOURCE_PORT') %}
replication-set-gtid:
mysql_query.run:
- database: mysql
- query: |
set @MY_GTID_EXEC = @@GLOBAL.GTID_EXECUTED;
RESET MASTER;
set GLOBAL GTID_PURGED = @MY_GTID_EXEC;
replication-connect-to-master:
mysql_query.run:
- database: mysql
- query: |
CHANGE MASTER TO MASTER_HOST='{{pillar['REPLICATION_SOURCE_IP']}}',
MASTER_PORT={{pillar['REPLICATION_SOURCE_PORT']}},
MASTER_USER='{{pillar['REPLICATION_REPLICA_USERNAME']}}',
MASTER_PASSWORD='{{pillar['REPLICATION_REPLICA_PASSWORD']}}',
MASTER_AUTO_POSITION=1,
MASTER_CONNECT_RETRY=15
replication-start-replica:
mysql_query.run:
- database: mysql
- query: "START SLAVE"
wait-for-slave:
cmd.run:
- name: until [[ $(mysql -P {{pillar['PORT']}} -e "show global status like 'slave_running'" mysql | grep 'Slave_running' | cut -f 2) == 'ON' ]]; do sleep 1; done
{% endif %}
나는 소금 미니언 로그에서 다음과 같은 오류를 받고 있어요 : 여기 내 코드입니다
sudo yum install MariaDB-client -y
sudo yum install python-devel mysql-devel -y
sudo yum -y install gcc gcc-c++ kernel-devel
sudo yum -y install python-devel libxslt-devel libffi-devel openssl-devel
sudo pip install MySQL-python
:
[ERROR ] State 'mysql_query.run' was not found in SLS 'mariadb-10_1_00-replication-prepare-replica'
Reason: 'mysql_query' __virtual__ returned False
내가 사용하고있어 MariaDB 이미지는 이러한 종속성을 포함 이 소금 문제를 일으킬 수있는 것이 무엇인지 확신 할 수 없습니다. 어떤 제안을 해주시겠습니까?