Cloud

    RBAC 설정

    ▪︎ RBAC ? 💡 RBAC : 역할 기반 액세스 제어 (Role Based Access Control) 누가(주체), 무엇을(동사), 어디에(네임스페이스)를 실행할 수 있는지 결정하는 액세스 관리 형식 사용자 이름으로 액세스 권한을 부여하던 기존 ABAC에서 발전한 형태 💡 ABAC : 속성 기반 액세스 제어 (Attribute Based Access Control) K8s Service 클러스터 생성 시 클러스터를 생성한 Sub Account와 Root 계정은 클러스터 RBAC system:masters 그룹에 자동으로 설정된다. 클러스터 사용 권한을 IAM 유저에게 부여하려면 kube-system 네임스페이스에 ncp-auth ConfigMap을 등록해야 한다. ⭐️ 목적 각 Sub Account..

    K8s Service 인증

    NCP K8s Service는 ncp-iam-authenticator를 통해서 IAM 인증을 제공한다. IAM 인증을 통해서 kubectl을 사용하기 위해 ncp-iam-authenticator를 설치하고 kubectl 설정 파일을 수정하여 이를 인증에 사용하도록 한다. ▪︎ ncp-iam-authenticator 설치 (for macOS) 1. Object Storage에서 ncp-iam-authenticator 바이너리를 다운로드 $ curl -o ncp-iam-authenticator 2. 바이너리에 실행 권한 추가 $ chmod +x ./ncp-iam-authenticator 3. $HOME/bin/ncp-iam-authenticator를 생성하고 $PATH에 추가 $ mkdir -p $HOME/..

    NKS Cluster 생성

    ▪︎ 신청 및 생성 Service - Kubernetes Service - Clusters 생성하기 요금 잘 계산한 후에 원하는 목적에 맞는 서버 스펙으로 노드풀 설정 인증키 생성 및 다운로드 클러스터 생성 스펙 리뷰 생성중 〰️ 생성하는 동안 사용자 로컬에서 클러스터 제어를 위한 kubectl 설치 # Homebrew 패키지 매니저를 사용하고 있는 macOS인 케이스 # kubectl 설치 $ brew install kubectl # 설치 버전 확인 $ kubectl version --client 생성 성공 !

    NKS 클러스터 구축을 위한 준비

    🐤 NCP : Naver Cloud Platform NKS : Naver Kubernetes Service ▪︎ NKS 클러스터 구축을 위한 필요한 것 및 준비 Subnet 대역 설정 주의사항 Docker Bridge 대역의 충돌을 방지하기 위해 172.17.0.0/16 범위 내의 Private Subnet, 로드 밸런서 전용 Subnet 사용 불가 VPC Kubernetes 클러스터를 생성하기 위한 가상 클라우드 공간 Private Subnet 가상 클라우드 공간 내의 Private 서브넷 Private 대역(10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) 내에서 /17~/26 범위에 해당되는 서브넷만 사용 가능 Load Balancer Subnet 클러스터와 연동할 Loa..

    EC2 Placement Groups

    ▪︎ EC2 Placement Groups 💡 Placement Groups : 배치 그룹 EC2 인스턴스가 AWS 인프라에 배치되는 방식을 제어하고자 하는 목적 배치 그룹을 사용하여 전략 정의 ▪︎ Cluster - 클러스터 배치 그룹 ✔️ 특징 1. 모든 EC2 인스턴스가 동일한 랙에 위치 = 실패 위험 상승 [동일한 랙 => 동일한 하드웨어와 동일한 가용 영역] 2. 실패 지점 발생 시 모든 EC2 인스턴스 동시에 실패 3. 지연 시간이 짧다 = 높은 네트워크 성능 ✔️ USE CASE 1. 높은 네트워크 성능으로 빅데이터 작업 수행 2. 짧은 지연시간과 높은 대역폭을 필요로 하는 애플리케이션 처리 작업 수행 ▪︎ Spread - 분산 배치 그룹 ✔️ 특징 1. 모든 EC2 인스턴스 다른 하드웨어에..

    Private vs. Public vs. Elastic

    ▪︎ Private IP vs. Public IP (IPv4) Public IP (공용 IP) 인터넷 전역에 액세스 및 식별 가능 전체 웹에서 유일한 것 Private IP (사설 IP) 사설 네트워크 내에서만 액세스 및 식별 가능 사설 네트워크 안에서만 유일한 것 기기가 사설 네트워크 안에 있을 때 NAT와 프록시 역할의 IGW를 통해 인터넷에 연결 지정된 범위의 IP만 사설 IP로 사용 가능 ▪︎ Elastic IP EC2 인스턴스를 시작하고 중지할 때 Public IP를 바꿀 수 있다. Elastic IP (탄력적 IP) 인스턴스에 고정된 Public IP를 사용하고 싶을 때 사용 공용 IPv4 & 삭제하지 않는 한 지속적으로 소유 가능 한 번에 한 인스턴스에만 첨부 가능 계정당 5개의 탄력적 IP..

    EC2 Instances Option

    ▪︎ On-Demand Instances (온-디맨드 인스턴스) 특징 사용하는 만큼 지불하는 옵션 높은 가격 선결제나 장기 약정이 필요 없음 클라우드에서 가장 적합한 방식 사용 해지, 중지, 시작이 언제든 가능 목적 애플리케이션 작동 방식을 예측할 수 없는 연속적인 단기 워크로드에 적합 ▪︎ Reserved Instances (예약 인스턴스) 특징 온-디맨드 방식과 비교하면 약 75%의 비용을 절약 가능 1년 or 3년의 예약 기간 선택 할인 폭 : 1년 < 3년 구매 옵션 할인 폭 : 선결제 X or 부분 선결제 < 완전 선결제 목적 데이터베이스 등과 같은 애플리케이션이 안정된 상태로 사용하는 것에 해당 ▪︎ Spot Instances (스팟 인스턴스) 특징 AWS에서 할인율이 가장 높은 옵션 (최대 ..

    EC2 Instance Role

    ▪︎ EC2 Instance Role EC2 Instance SSH 접속 및 aws cli 버전 확인 aws iam list-users 명령 실행 시 자격 증명을 찾을 수 없으므로 에러 자격 증명을 위해 aws configure 명령을 통해 정보를 입력하게 된다면.. ⇒ 절대 절대 안 됨 ❌ ⇒ 왜냐면 이 계정상의 누군가 EC2 Instance 연결 ⇒ 인스턴스에 입력된 자격 증명 정보를 회수할 수 있기 때문❗️ ⇒ 보안 문제 발생 🚨 그럼 어찌 해야할까? IAM 역할 (Role) 만들어 놓은 역할(DemoRoleForEC2)에 연결된 정책은 IAMReadOnlyAccess ⇒ 이를 직접 EC2 인스턴스에 연결해서 자격 증명을 제공하도록 하자! EC2 Instance의 IAM 역활 수정 IAMReadOn..

    EC2 SSH Connect - Mac

    ▪︎ For MAC Ver.❗️ 앞서 EC2 Instance 설정할 때 만든 키 페어 파일 확인 ssh 명령어 사용하여 EC2 Instance 접속 # ssh -i (키 파일) (인스턴스 사용자 이름) @ (인스턴스 IP 주소) $ ssh -i test-key.pem ec2-user@35.90.216.181 ⇒ 키 페어 파일의 권한이 너무 허용되어 있어서 생기는 권한 오류 발생 키 페어 파일의 권한 변경 $ chmod 400 test-key.pem 다시 EC2 Instance 접속 시 정상 접속되는 것을 확인 whoami 명령어를 통해 현재 User 확인 ping 명령어를 통해 현재 네트워크 상태 확인 ▪︎ EC2 SSH Trouble Shooting 연결 시간 초과 보안 그룹 문제 올바르게 SSH 규칙..

    EC2 Security Group

    ▪︎ EC2 Security Group 보안 그룹은 AWS에서 네트워크 보안을 실행하는데 핵심 인스턴스에서 들어오고 나가는 트래픽을 제어 EC2 인스턴스의 외부 방화벽 포트(Port)로의 액세스 통제 IPv4 or IPv6 판별 인바운드 & 아웃바운드 네트워크 통제 허용 규칙만 포함 IP 주소 혹은 다른 보안 그룹을 참조하여 규칙 생성 ▪︎ 인바운드 / 아웃바운드 트래픽 인바운드(Inbound) 트래픽 서버 내부로 들어오는 트래픽 아웃바운드(Outbound) 트래픽 서버 바깥으로 나가는 트래픽 0.0.0.0/0 IPv4 모든 범위 IP Address ::/0 IPv6 모든 범위 IP Address ▪︎ 보안 그룹 참조 보안 그룹의 다른 보안 그룹을 참조하는 방법 Security Group 1 인바운드 규..