AWS vs Azure: 리소스 관리와 Billing 체계 비교
·
☁️ Cloud
멀티 클라우드를 고려할 때, AWS와 Azure는 구조와 철학 자체가 다르다. 특히 리소스 제어 단위, 정책 적용 방식, 과금 구조에서 차이를 보여서 두 플랫폼의 차이를 핵심만 정리했다. 1. 리소스 제어 방식 차이구조 비교AWS 구조: Organization > Account > Region > VPC > Subnet > Resources Azure 구조: Tenant > Management Group(부서) > Subscription > Resource Group(프로젝트) > Resources리소스 그룹화 기준AWS: Regoin/VPC 기반 리소스 구성Azure Resource 특징리소스의 위치가 리전에 고정됨Azure: Resource Group 단위로 리소스를 그룹화Azure Resource ..
Container 및 Orchestration 기술 요약
·
🛳️ Docker
백엔드 공부를 시작하면서 첫 배포 때 도커를 찍먹했다.운영체제와 인프라를 공부하고 나서 컨테이너와 쿠버네티스를 시스템 관점에서 재정리했다.구조와 동작 원리 중심으로 이해하려고 노력 했다. 1. Container 용어Dockerfile: 컨테이너 이미지를 생성하기 위한 설정 파일. 애플리케이션 실행에 필요한 환경을 정의entrypoint: 컨테이너가 실행될 때 가장 먼저 실행되는 프로세스. ENTRYPOINT로 지정된 명령은 컨테이너 실행 흐름 제어Docker: 컨테이너 이미지 생성, 실행 플랫폼. 하나의 서버에서도 여러 컨테이너를 격리된 환경에서 실행Docker Hub: 컨테이너 이미지 저장소. 만들어진 이미지를 가져오거나(pull), 업로드 (push) 가능 2. Container 사용 목적배포 효율성..
워커 노드 삭제 후 재등록하기
·
🐳 Kubernetes
문제마스터 노드 1개, 워커 노드 2개를 구성했는데 노드 확인 시, EC2 기본 호스트명으로 나와서 가시성을 높이기 위해 호스트명을 변경하고 싶었는데... 클러스터 구성 전 호스트명을 설정해야 한다. 클러스터 구성 후 호스트명을 변경하면 통신이 안된다.  Output:[root@ip-10-0-2-173 ~]# kubectl get nodesNAME STATUS ROLES AGE VERSIONip-10-0-2-151.ap-northeast-2.compute.internal NotReady 14h v1.32.0ip-10-0-2-173.ap-northeast-2.compute...
RHEL 8 Kubernetes v1.32 설치 및 트러블 슈팅하기
·
🐳 Kubernetes
Kubernetes는 여러 개의 컨테이너를 효율적으로 관리하고, 배포를 자동화하는 오케스트레이션 플랫폼이다.RHEL 8 환경에서 Kubernetes v1.32 버전을 기준으로, Kubernetes의 주요 컴포넌트를 설치하여 클러스터를 구성하는 방법과 설치 과정 중 발생할 수 있는 트러블슈팅을 정리했다. 쿠버네티스 주요 컴포넌트kubectl: 클러스터 관리하는 명령어 도구kubeadm: 클러스터 설정 도구. (kubeadm) → 프로세스kubelet: 클러스터의 모든 서버에서 실행되는 프로세스. 파드(pod)와 컨테이너 실행/관리한다. → 사용자의 명령어를 실행하는 프로세스 설치 환경AMI: RHEL 8.6(RHEL-8.6.0_HVM-20230301-x86_64-0-Hourly2-GP2)기본 설정: ..
SSH - Root 로그인과 비밀번호 인증 설정
·
Linux
쉘 접속 명령어ssh 사용자이름@IP주소: 사용자 직접 기본 접속.ssh -l 사용자이름 IP주소: 사용자 이름 지정해서 접속.ssh -p 포트번호 root@IP주소: 특정 포트로 접속.ssh -i 경로/키파일 root@IP주소: SSH 키 파일로 접속.  Root 로그인과 비밀번호 로그인 허용 이유Root 로그인 허용: root 로그인을 이용하지 않으면 서버의 sudo 권한을 부여받더라도 명령어를 수행할 때마다 sudo를 입력해야하는 불편함이 있음.비밀번호 인증 허용: pem 키를 사용해서 로그인을 할 경우, 관리자는 매일 각 서버의 pem 키가 저장된 디렉터리에서 원격 서버에 접속해야 하는 불편함이 있음. pem 키를 이용하면 관리자는 직접 패스워드로 로그인해서 필요한 작업을 빠르게 수행할 수 있음...
SSH - SSH 동작 원리
·
Linux
Linux란?운영체제(Operating System, OS): PC의 하드웨어 리소스(CPU, 메모리, 스토리지)를 관리하는 소프트웨어리눅스(Linux): 오픈소스 운영체제 (≒ 커널). 하드웨어 리소스(CPU, 메모리, 스토리지)를 관리Linux의 특징오픈 소스: 소스 코드를 공개해서 무료 이용, 수정, 배포 가능멀티 유저: 하나의 PC에서 여러 사용자가 동시에 각각의 계정을 가지고 접속 가능멀티 태스킹: 하나의 PC에서 여러 작업을 동시에 실행 가능 SSH란?SSH: 원격 서버에 암호화 접속하고 명령을 실행할 수 있는 프로토콜. 클라이언트와 서버 간에 주고받는 데이터를 암호화하여 보호 (기본 포트 번호: 22)SSHD(SSH Daemon): 원격 서버에 SSH 프로토콜 접속하기 위한 프로세스(프로그램..
로컬에 있는 .pem 키 서버에 전송
·
Linux/Bastion Host
필요 개념Bastion Host: 내부와 외부 네트워크 사이에서 게이트 역할을 하는 호스트scp: 'SecureCopy'의 약자로 ssh 원격 접속 프로토콜을 기반으로 원격 서버 간 파일, 디렉터리를 전송VM에 첫 접속을 하기 위해서는 .pem key 인증 파일이 필요함Bastion Host → Private Subnet의 호스트에 첫 접속하려면, 해당 호스트의 .pem 키 파일를 배스천 호스트에 저장해야 함 .pem 키 배스천 호스트에 전송권한 설정1. AWS 보안 정책에 따라 400 또는 600 권한 설정하여 키의 보안 유지chmod 400 [private_key_name].pem 2. 로컬 → 원격 서버로 키 복사scp /[local_path]/[key_name].pem [username]@[s..
Golden Image 생성
·
☁️ Cloud/OCI
인프라 구축Compartment 생성클라우드 리소스를 논리적으로 분리하여 관리하기 위해 그룹 생성OCI Console > Identity & Security > Identity > Compartments Virtual Cloud Networks 생성리소스들이 상호 통신할 수 있도록 네트워크 인프라 설정OCI Console > Networking > Virtual cloud networks > ‘Create VCN’ 클릭 Security Lists 생성VCN 생성 시, 기본 생성되는 Default Security List를 퍼블릭 서브넷에 사용한다.프라이빗 서브넷에 사용할 보안 목록을 생성한다.'생성한 VCN 이름' 클릭 > Resources > Security Lists > ‘Create Security..
AWS, Azure, OCI의 구조 비교
·
☁️ Cloud/Azure
CSP 마다 구조와 컨셉이 다르기 때문에, 구조와 액세스 제어 방법의 비교를 통해 개념을 명확화하고자 했다.1. 리소스 구조 비교AWS OrganizationsAWS 계층 구조: Root > Organizations > Organization Units (OUs) > AccountsAWS 계정 종류Root: 최상위 관리자 계정Organizations: AWS Accounts를 논리적으로 그룹화한 단위. 여러 개의 AWS 계정을 중앙 조직에서 관리. 상속 기반 정책 적용Organization 계정 종류Root/Management Account: 멤버 계정에게서 발생하는 통합 요금을 지불하는 Payer 계정Member Account: 나머지 모든 계정OUs: 조직 내에 속한 계정들을 논리적으로 그룹화하여 조..