전체 글 133

[AWS] EC2 인스턴스 프라이빗 키 분실 시 대처 방법

SSH 접속 및 키 페어 개요EC2 인스턴스로 SSH 접속을 하기 위해서는 기본적으로 키 페어를 이용한다.키 페어는 암호화된 퍼블릭 키(Public key, 공개 키)와 프라이빗 키(Private key, 개인 키) 두 개의 쌍을 뜻한다.EC2 인스턴스 생성 시 퍼블릭 키는 EC2 인스턴스에 저장되고, 프라이빗 키는 사용자의 로컬 환경에 저장된다.사용자는 프라이빗 키를 사용해 안전하게 SSH 접속이 가능하다.  [SSH 접속 절차]클라이언트가 SSH 연결 요청 시 서버는 클라이언트에게 서명 요청클라이언트는 프라이빗 키를 이용해 서명서버는 자신에게 등록된 퍼블릭 키로 해당 서명이 유효한지 검증검증 성공 시 접속 허용위 내용을 정리해보자면퍼블릭 키는 EC2 인스턴스에 저장된다. → AWS에 저장되므로 내가 ..

DHCP(Dynamic Host Configuration Protocol)란? (동작 방식과 서버 구성 + DHCP 릴레이 에이전트)

DHCP(Dynamic Host Configuration Protocol)DHCP란 IP를 자동으로 할당하는 데 사용하는 프로토콜이다. 사용자가 네트워크와 통신하기 위해서는 IP 주소, 서브넷 마스크, 게이트웨이 등 네트워크 정보와 물리적인 네트워크 구성이 필요하다. 네트워크를 구성하는 방법은 2가지로 나뉜다.직접 설정(정적 할당): 데이터 센터의 운영 망(예: 서버 팜)에서 사용되는 IP 설정IP 정보를 할당해주는 서버를 이용하여 자동으로 설정(동적 할당): 사무실 네트워크 IP 설정, 가정 공유기 등 특별한 경우를 제외한 경우 기본적으로 사용되는 방식※ 과거에는 보안 및 관리 목적으로 사무실 네트워크도 정적 할당 방식을 이용했지만, 현재 동적 할당 방식 + 보안 강화 장비가 대중화되어 동적 할당 방식..

네트워크 2025.01.20

GSLB(Global Server/Service Load Balancing)란? (GSLB의 동작/구성/분산 방식)

GSLB는 DNS 로드 밸런싱을 하면서 생기는 문제를 해결해주는 역할을 한다. DNS는 동일한 레코드 이름으로 서로 다른 IP 주소를 동시에 설정할 수 있다.그리고 도메인 질의에 따라서 응답 받는 IP 주소를 나누어 로드 밸런싱할 수 있다. → 이를 DNS 로드 밸런싱이라고 한다. 즉, DNS도 DNS 서버에 등록된 IP를 이용하여 적절히 로드 밸런싱을 할 수 있다는 뜻이다.그런데 어떤 문제가 생기길래 GSLB라는 서비스가 생기게 된 것일까?  GSLB 탄생 이유DNS는 설정된 서비스의 상태가 정상인지 비정상인지 확인하지 않고, 도메인에 대한 질의에 대해 설정된 값을 무조건 응답하게 되어있다.1.1.1.1 서버와 2.2.2.2 서버가 있을 때 2.2.2.2의 서버에 장애가 생기더라도 DNS는 감지하지 못..

네트워크 2025.01.05

DNS(Domain Name System)란? 도메인부터 시작하는 DNS 정리

DNS의 정의DNS란 도메인 주소 → IP 주소 변환 프로토콜이다. DNS는 Domain Name System의 약자이다. 그럼 여기서 Domain은 도대체 무엇인가?도메인은 사람들이 인터넷에서 쉽게 식별할 수 있는 텍스트 기반 주소 체계를 뜻한다. 그럼 다시 DNS로 돌아와서DNS란 텍스트 기반 주소를 IP 주소(숫자)로 변환해주는 프로토콜이라고 말할 수 있다.  구글 사이트에 들어가기 위해서 www.google.com과 같은 도메인 주소를 이용하여 접속할 수 있다.  * 도메인 주소의 실제 IP를 알아내고 싶다면 명령 프롬프트에서 nslookup 도메인 주소를 입력하면 된다!  하지만 실제 네트워크에서는 도메인 주소에 해당하는 실제 IP 주소를 이용하게 된다.사용자가 도메인 주소를 사용하여 서비스를 ..

네트워크 2024.12.22

CI/CD 파이프라인 구축하기 - 5.2 (Jenkins, Ansible, Kubernetes(EKS) 병합하기)

아래 포스팅에서 이어집니다!https://wooinge.tistory.com/145 CI/CD 파이프라인 구축하기 - 5.1 (파이프라인 구축 전 kubectl, eksctl 설정 및 yaml 파일 작성하기)아래 포스팅에서 이어집니다!https://wooinge.tistory.com/144 CI/CD 파이프라인 구축하기 - 4.2 (Ansible Playbook을 이용한 Docker 컨테이너 배포)아래 포스팅에서 이어집니다.https://wooinge.tistory.com/143 CI/CD 파이wooinge.tistory.com  저번 포스팅에서는 eks 클러스터를 생성하기 위한 사전 설정을 주로 진행했었다.그리고 쿠버네티스 pod, service, deployment를 생성하는 매니페스트 파일을 작성하..

DevOps 2024.12.18

CI/CD 파이프라인 구축하기 - 5.1 (파이프라인 구축 전 kubectl, eksctl 설정 및 yaml 파일 작성하기)

아래 포스팅에서 이어집니다!https://wooinge.tistory.com/144 CI/CD 파이프라인 구축하기 - 4.2 (Ansible Playbook을 이용한 Docker 컨테이너 배포)아래 포스팅에서 이어집니다.https://wooinge.tistory.com/143 CI/CD 파이프라인 구축하기 - 4.1 (Ansible 서버 구축 및, Jenkins, Docker 통합)아래 포스팅에서 이어집니다!https://wooinge.tistory.com/142 CI/CD 파이프라wooinge.tistory.com 현재 구축한 CI/CD 파이프라인의 모습은 아래와 같다.만약에 도커에 장애가 생겨 컨테이너가 고장나버리면 어떻게 될까?도커는 아쉽게도 컨테이너가 죽었을 때 다시 살려내는 방법이 존재하지 않는..

DevOps 2024.12.17

CI/CD 파이프라인 구축하기 - 4.2 (Ansible Playbook을 이용한 Docker 컨테이너 배포)

아래 포스팅에서 이어집니다.https://wooinge.tistory.com/143 CI/CD 파이프라인 구축하기 - 4.1 (Ansible 서버 구축 및, Jenkins, Docker 통합)아래 포스팅에서 이어집니다!https://wooinge.tistory.com/142 CI/CD 파이프라인 구축하기 - 3.2 (Docker 컨테이너 자동 빌드 및 자동 배포)아래 포스팅에서 이어집니다!https://wooinge.tistory.com/141 CI/CD 파이프라wooinge.tistory.com 앞에서 Ansible Server 구축과 Jenkins - Ansible - Docker를 통합하는 과정을 거쳤다.이번에는 Ansible Playbook으로 실행할 코드를 직접 작성하고 도커 이미지 빌드와 컨테..

DevOps 2024.12.16

CI/CD 파이프라인 구축하기 - 4.1 (Ansible 서버 구축 및, Jenkins, Docker 통합)

아래 포스팅에서 이어집니다!https://wooinge.tistory.com/142 CI/CD 파이프라인 구축하기 - 3.2 (Docker 컨테이너 자동 빌드 및 자동 배포)아래 포스팅에서 이어집니다!https://wooinge.tistory.com/141 CI/CD 파이프라인 구축하기 - 3.1 (Docker 설정 및 Jenkins SSH server 설정하기)CI/CD 파이프라인 구축하기 - 2에서 이어집니다!https://wooinge.tistory.com/139wooinge.tistory.com 지난 포스팅에서는 Jenkins와 Docker를 통합하여 Apache Tomcat 이미지를 이용한 컨테이너 배포를 진행하였다.빌드 결과물이 생성되면 ssh 서버로 배포하게 되고, 배포 시 명령어를 이용하여..

DevOps 2024.12.16

CI/CD 파이프라인 구축하기 - 3.2 (Docker 컨테이너 자동 빌드 및 자동 배포)

아래 포스팅에서 이어집니다!https://wooinge.tistory.com/141 CI/CD 파이프라인 구축하기 - 3.1 (Docker 설정 및 Jenkins SSH server 설정하기)CI/CD 파이프라인 구축하기 - 2에서 이어집니다!https://wooinge.tistory.com/139 CI/CD 파이프라인 구축하기 - 2 (Tomcat)CI/CD 파이프라인 구축하기 - 1에서 이어집니다!https://wooinge.tistory.com/93 CI/CD 파이프라인wooinge.tistory.com    현재 젠킨스 서버에서 Publish Open SSH 플러그인을 설치까지만 한 상태다.이제는 빌드와 배포 모두 자동화하는 작업을 진행해보겠다.  [목표]GitHub 코드를 가져올 Jenkins ..

DevOps 2024.12.13

CI/CD 파이프라인 구축하기 - 3.1 (Docker 설정 및 Jenkins SSH server 설정하기)

CI/CD 파이프라인 구축하기 - 2에서 이어집니다!https://wooinge.tistory.com/139 CI/CD 파이프라인 구축하기 - 2 (Tomcat)CI/CD 파이프라인 구축하기 - 1에서 이어집니다!https://wooinge.tistory.com/93 CI/CD 파이프라인 구축하기 - 1 (Git, Jenkins, Maven(Java))* Jenkins: 지속적인 통합(CI) 서비스를 제공하는 오픈 소스 도구* Maven: Javawooinge.tistory.com 지난 포스팅에서는 Apache Tomcat과 Jenkins를 통합한 CI/CD 파이프라인을 구축했다.이번에는 Jenkins와 Docker를 연결하고 코드를 배포하는 실습을 진행할 것이다.   [CI/CD 파이프라인 구축 실습 ..

DevOps 2024.12.13