전체 글
1,964개의 글
Kubernetes 선언적 배포 패턴
쿠버네티스 환경으로 변화하며 다음과 같은 문제들을 접하게 되었다. 1. 마이크로서비스 수가 점차 증가하며 새로운 버전을 지속적으로 업데이트 및 교체 하는 것에 대한 부담이 증가한다. 새로운 버전의 …
jenkins pipeline으로 원격지 배포
Jenkins 에서 원격지에 파일을 배포하거나 쉘 스크립트를 수행시킬 때 Publish over ssh 플러그인을 사용한다. 배포할 원격지 서버 접속 정보(IP, 계정, PW)를 Jenkins 시스…
HTTPS를 사용해야 하는 이유
2014년 Google은 HTTP를 HTTPS로 바꾸라고 권고했다. HTTP HTTP는 Hypertext Transfer Protocol의 약자로 인터넷 초기에 모든 웹사이트에서 기본적으로 사용되는…
AWS Snowball Edge Compute Optimized 확대적용 (11개 Region 추가)
1. 개요 Snowball Edge는 1) 스토리지 최적화 디바이스와, 2) 컴퓨팅 최적화 디바이스가 있는데요, 이번에 전해드릴 내용은 컴퓨팅 최적화 디바이스에 대한 내용입니다. AWS Snowba…
프라이빗 서브넷에서 인터넷 액세스 없이 EC2 접속 및 서비스 엔드포인트 연결 (S3)
일부 프라이빗 시스템을 구축할 때, 외부 인터넷에 대한 연결을 차단해야 하는 경우가 있다. 이 때, EC2에서 다른 서비스를 사용하지 못하는 문제가 함께 발생하는데, 이를 위해 AWS에서는 VPC에…
EKS 단일 Ingress(인그레스)로 복수 도메인에 대해 HTTPS 서비스
개요 EKS에서 Ingress Controller를 사용하여 ALB를 배포할 때, 단일 ALB로 복수의 도메인에 대해 서비스 할 수 있도록 설정한다. Ingress Annotation 설정 Ingr…
SpringOne - 9/2~9/3 웨비나 정보
https://springone.io/ 괜찮은 웨비나 정보가 있어 공유합니다.^^ 버추얼로 진행되는 이번 SpringOne에서는 아래 5개의 라이브 트랙이 준비되어 있다고 해요. - Beginner…
Terraform State file의 Terraform 버전 변경하기
1. 개요 terraform 명령어를 실행하는 버전과 tfstate 파일에 명시되어 있는 버전 차이로 인해 명령어 실행에 오류가 생기는 경우의 해결방법을 소개한다. 2. tfstate file te…
Miscellaneous분산 트랜잭션 - CAP
분산 데이터베이스는 기본적으로 Replication과 Sharding을 지원한다. Replication : 특정 DB 노드에 장애가 발생해도 다른 노드에 복제된 데이터가 존재, 부하 분산 Shard…
완주하지 못한 선수 (JAVA-문제해결)
문제 풀이 : 1. hash 자료구조를 이용한다. 2. getOrDefault 메소드를 활용하여 파라미터로 받은 참가자(participant), 완주자(completion) 데이터를 hash에 저장…
golang Context(컨텍스트)
개요 golang은 Context(컨텍스트) 패키지를 기본적으로 포함하고 있다. 컨텍스트는 함수가 요청을 받을 때 API와 API 사이, 프로세스 사이에서 값들을 가지고 다닌다. 서버에 요청이 들어…
[Java] programmers.co.kr - stack/queue - 다리를 지난 트럭 (Truck on bridge)
1. 문제 트럭 여러 대가 강을 가로지르는 일 차선 다리를 정해진 순으로 건너려 합니다. 모든 트럭이 다리를 건너려면 최소 몇 초가 걸리는지 알아내야 합니다. 트럭은 1초에 1만큼 움직이며, 다리 …
[Java] programmers.co.kr - hash - 베스트 앨범 (Best Album)
1. 문제 스트리밍 사이트에서 장르 별로 가장 많이 재생된 노래를 두 개씩 모아 베스트 앨범을 출시하려 합니다. 노래는 고유 번호로 구분하며, 노래를 수록하는 기준은 다음과 같습니다. 속한 노래가 …
[Java] programmers.co.kr - search - 수포자 (Math Person)
1. 문제 수포자는 수학을 포기한 사람의 준말입니다. 수포자 삼인방은 모의고사에 수학 문제를 전부 찍으려 합니다. 수포자는 1번 문제부터 마지막 문제까지 다음과 같이 찍습니다. 1번 수포자가 찍는 …
[Java] programmers.co.kr - sort - K번째수 (k number)
1. 문제 배열 array의 i번째 숫자부터 j번째 숫자까지 자르고 정렬했을 때, k번째에 있는 수를 구하려 합니다. 예를 들어 array가 [1, 5, 2, 6, 3, 7, 4], i = 2, j…
Kubernetes의 Liveness Probe와 Readiness Probe
개요 Kubernetes는 기본적으로 프로세스의 정상 상태를 확인하고, Pod의 프로세스가 정상 기동중이지 않으면 Pod를 재시작 한다. 하지만 OOM등의 이슈로 애플리케이션이 응답할 수 없는 상태…
GCP - VPC
1. 개요 GCP의 Virtual Private Cloud에 대한 내용이다. 2. 특징 GCP의 VPC는 전역 리소스이다. (특정 리전에 속해있지 않음) 그러나 서브넷은 리전 리소스이다. VPC 네…
[Spring Boot] Spring Data JPA & MongoDB 암호화 처리
JPA를 사용해 MongoDB를 연동하는 과정에서 MongoDB 내에 값을 암호화해야 하는 경우가 있다. 이에 spring-data-mongodb-encrypt 라는 암호화 모듈 제공파일을 사용하여…
Miscellaneous도커를 이용한 머신러닝 환경 구축
Keras Keras는 파이썬으로 구현된 딥러닝 라이브러리이다. 주요 특징 모듈화(Moudlarity) 신경망, 최적화, 정규화 기법 등 모두 독립적인 모델로 구성되어 있으며 새 모델 생성을 위해 …
Amazon Web Services하이브리드 환경에서 R53 DNS 구축방안
개요 Multi-Account 와 On-Premise 환경을 DX로 연결한 환경에서 1. 서로다른 account간의 Private DNS 쿼리 및 2. 온프레미스와 AWS 간의 양방향 쿼리를 지원하…
GCP - Cloud Storage
1. 개요 AWS의 S3을 알고 있다면 이해하기 쉽다. 객체(Object)를 저장하는 서비스이다. 용량을 미리 프로비저닝할 필요가 없는 관리형 서비스이다. 2. 객체 객체는 변경할 수 없다. 다만 …
golang 크로스 컴파일-리눅스에서 .exe 빌드
개요 golang을 크로스 컴파일하여 다른 운영체제에서 실행 가능한 실행파일을 생성한다. 컴파일 가능한 instruction set 다음과 같은 instruction set을 지원한다. amd64,…
Algorithm[Python] 프로그래머스(Graph) - 가장 먼 노드
1. 문제 출처 : https://programmers.co.kr/learn/courses/30/lessons/49189 문제 설명 n개의 노드가 있는 그래프가 있습니다. 각 노드는 1부터 n까지 …
Miscellaneous캐싱 전략
Cache-Aside 애플리케이션에서 가장 일반적으로 사용되는 캐시 업데이트 전략이다. 주로 읽기 작업량이 많은 애플리케이션과 함께 사용한다. 애플리케이션은 캐시에 데이터가 있는지 체크한다. cac…