MSA 인프라 구축하기 with Azure(2)-Azure Database for MySQL 서버

SeungJu(하늘하늘)·2022년 10월 6일
0

1. Azure Database for MySQL 서버 생성하기

Azure에서는 Database로 Mysql, MariaDB, PostgreSQL 뿐 아니라 NoSQL도 지원하지만 우리 프로젝트에서는 MySQL을 활용할 계획입니다.
아래의 진행은 Azure-cli가 아닌 Azure portal 웹사이트에서 진행합니다.
1. [ Azure Database for MySQL 서버 ] 를 검색해서 들어가기

  1. [ 만들기 ] 클릭
  2. [ 유연한 서버(권장) ] 선택 후 [ 만들기 ]
  3. 구독, 리소스 그룹, 서버 이름, 지역, MySQL 버전, 관리자 사용자 이름, 암호, 암호 확인 입력 후 [ 다음: 네트워킹 ] 클릭

  1. [Azure 내의 모든 Azure 서비스의 이 서버에 대한 퍼블릭 액세스 허용] 체크 및 [ 현재 클라이언트 IP 주소 추가 ( xxx.xxx.xxx.xxx ) ] 클릭 후 [ 검토 + 만들기 ] 클릭 (약 20분 가량 소요)
    * 환경을 셋팅한 곳이 아닌 다른 곳에서 해당 DB에 접근하려면 항상 접근하는 곳의 IP가 추가되어야합니다.

  1. 생성 후에 반드시 require_secure_transport 환경변수 off로 설정
    * 해당 옵션은 SSL을 끄는 옵션으로 현재 프로젝트에서는 SSL을 사용하지 않을 것이라 off로 두었습니다. 만약 SSL을 이용한다면 해당 설정을 ON으로 설정해두어야합니다.
  1. 데이터베이스 추가

2. SpringBoot 프로젝트에 DB 연결하기

  1. Mysql 의존성 추가
    • Maven
      <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.30</version>
        <scope>runtime</scope>
      </dependency>
    • Gradle
      runtimeOnly 'mysql:mysql-connector-java'
  2. application.yml에 설정 추가
    • DB_HOST : Azure Database for MySQL 서버 서버이름 (개요에서 확인 가능)
spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://${DB_HOST}:3306/${DATABASE_NAME}?serverTimezone=Asia/Seoul
    username: ${DB_USERNAME}
    password: ${DB_PASSWORD}

이제 SpringBoot 프로젝트와 Mysql까지 연결되었습니다.
다음은 바탕으로 이제 AKS와 ACR, Azure VM을 생성해서 CI/CD 환경을 준비하겠습니다.

profile
나의 개발 세상

0개의 댓글