본문 바로가기

DevOps

(4)
외부 저장소 패턴이란 무엇인가? 클라우드 인프라를 사용하면 유동적으로 하드웨어 사양이 변경된다. 만약 설정정보를 애플리케이션 내부에 둔다면 설정정보만 변경됐음에도 해당 서비스를 일시 중단하고 재배포를 진행해야 한다. 이런 상황을 방지하기 위해서 클라우드 인프라 같은 유동적인 인프라를 바탕으로 한 소프트웨어에서는 설정정보를 애플리케이션 외부에 두는 패턴으로 설계를 한다. 별도의 설정정보만 가진 설정 서버에서 마이크로서비스는 물론이고 Tracing, OAuth, API Gateway, Service Registry, Monitoring 서비스 모두에 설정을 주입한다. 이렇게 설정을 애플리케이션 외부에 별도로 만든 서버에 저장한다는 의미에서, 외부 저장소 패턴이라고 부른다. 일반적으로 Config Server라는 명칭이 아키텍처에서 보인다면..
헥사고널 아키텍처 간단하게 알아보기 이직을 준비하면서 느낀 점이, MSA 구조와 헥사고널 아키텍처 및 클린 아키텍처에 대한 이해도를 상당부분 요구한다는 것이었다. MSA는 다양한 자료와 책을 가지고 그 사상과 간단한 구현 방법은 익혔지만, 헥사고널 아키텍처는 달랐다. 그래서 헥사고널 아키텍처에 대해서 간단하게 알아보고자 이 글을 적었다. 가장 많이 참고한 글은 아래 블로그의 글이다! https://engineering.linecorp.com/ko/blog/port-and-adapter-architecture/ 1. Port And Adapter Architecture(PAAA) 헥사고널 아키텍처는 별명이었다. 실은 포트 앤 어댑터 아키텍처를 그 모습 그대로 부른 이명에 불과했다. 그렇다면 이를 PAAA를 이해하기 위해서는 1.1. 포트가 ..
.tar.gz 파일을 설치하고 싶다면 amazon corretto 같은 JDK 파일을 다운로드 받으면 .msi 형식이 아니라 .tar.gz 형식인 경우도 많음. 해당 형식은 .msi 형식과는 다르게 자동으로 설치가 진행되는 것이 아니므로 압축해제, 설치를 별도로 진행해야 함. 당연히 명령어가 필요하고 간략하게 적어봄. Bash 기준 1. curl -LO ~~ 1-1. curl로 원하는 파일을 다운로드 받자. 2. ls 2-1. 파일을 다운로드 했는지 확인해보자. 있으면 됨. 3. gzip -d file.tar.gz 3-1. file.tar.gz에 압축해제를 원하는 파일 이름을 집어넣자. 3-2. 정상적으로 진행되면 압축해제가 되면서 file.tar가 생성됨. 4. ls 4-1. file.tar가 존재하는지 확인해보자. 5. tar xvf f..
Container는 왜 필요할까? 애플리케이션을 쉽게 공유하고 배포할 수 있도록 한 곳에 모으자! 목적은 간결하다. 다만 과정에서 얻는 이득은 자세히 알아볼 필요가 있다. 가상화와 비교를 통한 장점, 개발환경에서 얻는 이점을 눈여겨 봐야 한다. vs 가상화 호스트 OS를 사용하여 파일 크기가 적다. 여러 개의 컨테이너를 하나의 OS로 처리하므로 고밀도화가 가능하다. 응용 프로그램과 미들웨어만 실행하면 되므로 실행 시간과 종료 시간이 빠르다. vs 환경 다른 어플리케이션과 분리된 최적화된 환경을 생성할 수 있다. Linux, Windows, Mac OS, 가상머신, 데이터 센터, 퍼블릭 클라우드 등 사실상 어느 환경에서나 구동이 가능하다. 컨테이너를 그대로 퍼블릭 클라우드에서 실행이 가능하므로 마이크로 서비스 방식의 기능 확장에 적합하다...