DevOps

[Mac/VMWare] Mac M1 VMWare Fusion 설치, CentOS 9 설치, Mariadb 설치

jungmin.park 2024. 3. 10. 22:58

1. VMware Fusion 설치 후 가상머신 안에 CentOS을 설치합니다.

2. CentOS에 MariaDB 설치합니다.

3. 본인의 로컬PC에서 가상머신에 설치 된 MariaDB와 연결합니다.


VMware Fusion 설치

https://www.vmware.com/

 

Introducing VMware Cross-Cloud Services

Discover how VMware Cross-Cloud services give organizations freedom and control without trade-offs.

www.vmware.com

  • VMware Fusion 을 설치하기 위해서는 회원가입이 필요합니다.
  • 회원가입 후 Products > Fusion for Mac > Use for Free with a Personal Use License > License & Download 

  • Manually Download 을 클릭해서 다운로드를 받습니다.
  • VMware-Fusion-******_universal.dmg 파일이 생성되어있습니다.
  • 실행 후 설치합니다. 설치하는 과정에서 LICENSE KEYS 을 넣는 부분이 있는데 넣어줍니다.

 

VMware 설치는 끝났습니다.


CentOS 9 설치

https://www.centos.org/download/

 

Download

Home Download Architectures Packages Others x86_64 RPMs Cloud | Containers | Vagrant ARM64 (aarch64) RPMs Cloud | Containers | Vagrant IBM Power BE (ppc64) RPMs Cloud | Containers | Vagrant IBM Power (ppc64le) RPMs Cloud | Containers | Vagrant ARM32 (armhf

www.centos.org

  • 저는 CentOS 9 Stream > ARM64 설치해주었습니다. 
    • 다른 블로그에서는 x86_64를 설치했지만 다음과 같은 문제를 만날 수 있습니다.
    • VMWare은 ARM 머신인데 다운받은 이미지 파일은 x86_64이기 때문에 전원을 켤 수 없는 문제입니다.
    • 반드시 arm 용 iso 파일을 다운받아야 합니다.
이 가상 머신에는 이 Arm 머신 아키텍처 호스트와 호환되지 않는 X86 머신 아키텍처가 필요하므로 전원을 켤 수 없습니다.

설치 후 다운받은 CentOS 이미지 파일을 올려 설치를 진행해줍니다.

 


CentOS 9에 MariaDB 설치하기

1. MariaDB 설치

yum install mariadb mariadb-server

 

2. 설치가 끝난 뒤 MariaDB가 정상적으로 설치되었는지를 확인한다.

rpm -qa | grep -i mariadb

 

3. MariaDB 실행

systemctl start mariadb

 

4. MariaDB 실행 중인지 체크한다.

systemctl status mariadb

 

5. MariaDB 관리자 계정 비밀번호 초기화

MariaDB는 설치가 되면 root 계정에 비밀번호 없기때문에 root 계정 비밀번호를 설정해줍니다.

mysqladmin -u root password

 

6. 부팅 시 자동실행 등록

MariaDB가 자동으로 실행되도록 설정합니다.

systemctl enable mariadb

 


MariaDB 외부 접속 허용하기

VMware에 mariaDB설치 후 가상환경이 아닌 본인의 로컬에서 가상환경 DB 연결을 하려고 하면 연결이 되지 않습니다.

이 경우 mariadb 외부 접속을 허용해야합니다.

현재 root 계정을 이용하고 있기때문에 root 계정 외부 접속을 허용하도록 하겠습니다.

 

1. root 계정 접속

mariadb -u root -p

 

2. 외부 접속 허용

use [외부 접속을 허용할 DB이름]

grant all privileges on *.* to 'root'@'%'identified by '비밀번호';

flush privileges;

 

3. exit

 


그 외 CentOS 방화벽 설정(추가, 삭제, 해제)

1. 현재 방화벽 상태 확인

systemctl status firewalld

 

2. 방화벽 Off

systemctl stop firewalld

Active: inactive (dead) : 방화벽 off를 알려주는 문구

enabled : 시스템이 재부팅 될 때 방화벽이 자동 활성화 된다는 설정

(OS reboot시 방화벽 off를 유지해주려면 비활성화 설정 필요)

 

3. 방화벽 비활성화 ( OS Reboot 시 방화벽 off 설정 )

systemctl disable firewalld

 

4. 방화벽 On

systemctl start firewalld

 

5. 특정 포트(ex.3306) 추가 설정 시 방화벽 리스트 확인

firewall-cmd --list-ports

 

5-1. 3306 포트 추가

firewall-cmd --permanent --zone=public --add-port=3306/tcp

 

5-2. 방화벽 reload

firewall-cmd --reload

 

5-3. 추가된 방화벽 포트 확인

firewall-cmd --list-ports

 

6. 특정포트 삭제 설정

firewall-cmd --permanent --zone=public --remove-port=3306/tcp

6-1. 방화벽 reload

firewall-cmd --reload