본문 바로가기

분류 전체보기110

[Devops] Kubernetes 쿠버네티스란? 쿠버네티스 (Kubernetes, kube, k8s) 쿠버테니스는 컨테이너화된 애플리케이션을 배포, 관리, 확장할 때 수반되는 다수의 수동 프로세스를 자동화하는 오픈소스 컨테이너 오크스트레이션 플랫폼이다. 쉽게 말해 컨테이너 관리 툴이라고 생각하면 된다. 하나의 애플리케이션을 배포할 때, 빌드 파일을 매번 똑같이 빌드하고 설치해야 하는 배포 과정을 매번 반복해야 해야 한다. 이때, DockerFile에 작은 os, 실행 파일 등을 말아서 도커 이미지를 생성한 후 컨테이너를 실행시키기만 하면 같은 과정을 반복하지 않아도 된다. 이런 컨테이너가 계속해서 늘어나면 관리하기가 어려워지는데 다양한 배포 방식과 auto scailing을 지원하는 쿠버네티스를 이용해 관리가 가능하다. 용어 정리 컨트롤 플레인 쿠버네.. 2023. 8. 23.
[Spring Boot] AWS EC2 인스턴스에 Docker 설치하기 EC2 인스턴스에 Docker 설치 1. docker를 설치하기 이전에 시스템의 소프트웨어 패키지 목록을 최신 상태로 업데이트 sudo apt-get update 2. HTTPS 통신, 인증서, 데이터 전송 및 소프트웨어 저장소 관리에 필요한 도구 및 라이브러리 설치 sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common 3. Docker의 GPG 키 다운로드 curl -fsSL https://download.docker.com/linux/ubuntu/gpg > docker_gpg_key 4. 다운로드한 GPG 키를 "/etc/apt/trusted.gpg.d/" 디렉토리로 옮기기 .. 2023. 8. 18.
[Spring Boot] EC2 인스턴스 생성하고 서버 접속하기 with PuTTY EC2 인스턴스 생성 1. Region을 서울로 설정 2. EC2 들어가기 3. 인스턴스 > 인스턴스 시작 4. 애플리케이션 및 OS 이미지 AMI (Amazon Machine Iamge)는 인스턴스를 시작하는데 필요한 정보를 제공하는 이미지로, 서버 구성을 무엇으로 할지 선택하는 것이다. 한 AMI로 여러 인스턴스를 생성할 수 있다고 한다. 5. 인스턴스 유형 6. 키 페어(로그인) 7. 새 키 페어 생성 8. 네트워크 설정 9. 스토리지 설정 10. 인스턴스 시작 탄력적 IP 생성 EC2 인스턴스를 생성할 때는 항상 새로운 IP를 할당한다. 인스턴스를 중지하고 재시작하는 경우에도 새로운 IP가 생성된다. 탄력적 IP란 외부에서 인스턴스에 접근 가능한 고정 IP이다. 고정적인 IP가 없으면 항상 새로 .. 2023. 8. 17.
[Spring Boot] AWS RDS(MySql) 프로젝트 연결하기 프로젝트를 배포하기 전 데이터베이스를 어떻게 운영할 것인지에 대해 고민했다. 데이터베이스 사용 방안으로는 두 가지가 있다. 1. RDS 사용 2. 서버에 데이터베이스를 직접 설치 나는 쉽고 간편한 RDS를 사용하기로 했다. 데이터베이스 생성 1. RDS > 데이터베이스 데이터베이스 생성 클릭 2. 표준 생성, MySql 선택 3. 템플릿 프리티어 선택 4. 설정 DB 이름, 사용자 이름, 마스터 암호 생성 5. 인스턴스 구성 6. 스토리지 설정 7. 연결 설정 / 나는 EC2에 연결하지 않기 때문에 연결 안 함으로 선택 8. 추가 구성 / 초기 데이터베이스 이름만 설정하고 안 건드려도 된다. 9. 데이터베이스 생성 성공 생성한 RDS 포트를 열고 MySQL과 연동 1. 생성한 데이터베이스 클릭 2. vp.. 2023. 8. 16.
[알고리즘] 거스름돈 동전의 최소 개수 구하기 - 그리디 알고리즘, 탐욕 알고리즘 문제 당신은 음식점의 계산을 도와주는 점원이다. 카운터에는 거스름돈으로 사용할 500원, 100원, 50원, 10원짜리 동전이 무한히 존재한다고 가정한다. 손님에게 거슬러 줘야 할 돈이 N원일 때 거슬러줘야 할 동전의 최소 개수를 구하라. 단, 거슬러 줘야 할 돈 N은 항상 10의 배수이다. 문제 접근 방법 가장 큰 화폐 단위부터 돈을 거슬러 주기 코드 n = int(input()) count = 0 coin_types = [500, 100, 50, 10] for coin in coin_types: count += n // coin n %= coin print(n) 문제와 풀이의 출처는 '이것이 취업을 위한 코딩 테스트다 with 파이썬' 입니다. 2023. 8. 8.
[Spring Boot] AWS S3 연결 SDK 에러 com.amazonaws.SdkClientException: Failed to connect to service endpoint: at com.amazonaws.internal.EC2ResourceFetcher.doReadResource(EC2ResourceFetcher.java:100) ~[aws-java-sdk-core-1.11.792.jar:na] at com.amazonaws.internal.InstanceMetadataServiceResourceFetcher.getToken(InstanceMetadataServiceResourceFetcher.java:91) ~[aws-java-sdk-core-1.11.792.jar:na] at com.amazonaws.internal.InstanceMetada.. 2023. 8. 7.