Notice
Recent Posts
Recent Comments
«   2025/06   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
Archives
Today
Total
관리 메뉴

ITFragile

[Ansible] 06. mysql 구성하기 본문

Project

[Ansible] 06. mysql 구성하기

경요 2023. 3. 16. 16:40

 

♡ 사용모듈

mysql_user : 사용자 생성 작업

mysql_db : DB 생성 작업

mysql_query : SQL 작업

 

 


MySQL collection 설치

Ansible Galaxy

 

ansible-galaxy collection install community.mysql

 

★ create user

# db.yaml

- name: Create User mysql
  mysql_user: # user 생성 모듈
    name: web_user
    password: 12345
    host: '%'
    priv: '*.*:ALL'
    state: present

[db-m01 접속 확인]

[db-s01 접속 확인]

 

★ create DB

# db-m01

- name: Create User mysql
  mysql_user:
    name: web_user
    password: 12345
    host: '%'
    priv: '*.*:ALL'
    state: present
- name: Create DB
  community.mysql.mysql_db: # DB 생성 모듈
    login_user: web_user
    login_password: 12345
    name: webdb
    state: present

[db-m01 접속 확인]

정상적으로 생성됨

 

★ create Table

# db-m01

- name: Create User mysql
  mysql_user:
    name: web_user
    password: 12345
    host: '%'
    priv: '*.*:ALL'
    state: present
- name: Create DB
  community.mysql.mysql_db:
    login_user: web_user
    login_password: 12345
    name: webdb
    state: present
- name: Create table
  community.mysql.mysql_query:
    login_user: web_user
    login_password: 12345
    login_db: webdb
    query: # 테이블 생성
      - create table if not exists web_tb (id int(2) AUTO_INCREMENT, name varchar(30), PRIMARY KEY(id))
  when: ansible_facts.hostname == "db-m01" # 조건문으로 Master에만 생성되도록 설정
- name: insert values
  community.mysql.mysql_query:
    login_db: webdb
    query: insert into web_tb(name) values ('kyungeun') # 데이터 생성
  when: ansible_facts.hostname == "db-m01"

 

4. 전체 플레이북 실행

 

[db-m01 접속 확인]

DB, Table 생성 확인!

 

'Project' 카테고리의 다른 글

[Ansible] 08. DB 로드밸런싱  (0) 2023.03.16
[Ansible] 07. php 활성화  (0) 2023.03.16
[Ansible] 05. DB 이중화  (0) 2023.03.16
[Ansible] 04. WEB 로드밸런싱  (0) 2023.03.16
[Ansible] 03. HAProxy 설정  (0) 2023.03.16