| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 | 31 |
- AWS EBS
- 테라폼 자동완성
- MFA 인증
- EC2
- 테라폼 캐시
- Terrafrom
- 텔레메트리란
- EBS
- EBS 최적화
- Authenticator
- 테라폼 설치
- AWS
- MFA 분실
- 컨테이너 터미널
- docker 상태
- 볼륨 연결
- Mac Terraform
- 디스크 성능테스트
- xfs_quota
- ebs 재부팅
- /etc/fstab 설정
- epxress-generator
- 테라폼 맥
- ebs 마운트
- 리눅스
- /etc/fstab 뜻
- 볼륨추가
- 리눅스 시간대
- docker -i -t
- 컨테이너 터미널 로그아웃
- Today
- Total
목록분류 전체보기 (44)
I got IT
※ 해당 글은 CloudNet@ gasida 님의 EKS 스터디 내용을 참고하여 작성하였습니다. EKS에 대한 개념과 기본 구성은 다음 링크를 참고 바랍니다. 🔗 EKS 기초 Hands-on※ 해당 글은 CloudNet@ gasida 님의 EKS 스터디 내용을 참고하여 작성하였습니다. EKS에 대한 간단한 소개는 이전 글을 참조바랍니다. https://joshhoxy.tistory.com/33EKS를 구성하는데에는 여러 방법이 있지joshhoxy.tistory.com 이번 포스팅에서는 EKS의 네트워크를 중점적으로 다뤄보도록 하겠습니다. 실습환경 아키텍처▪️ 클러스터가 구성되는 myeks-vpc와 운영서버가 프로비저닝된 operator-vpc 를 분리하여 VPC를 생성합니다.▪️ 이 때 VPC 간 통..
※ 해당 글은 CloudNet@ gasida 님의 EKS 스터디 내용을 참고하여 작성하였습니다. EKS에 대한 간단한 소개는 이전 글을 참조바랍니다. https://joshhoxy.tistory.com/33EKS를 구성하는데에는 여러 방법이 있지만 가장 많이 사용하는 eksctl을 통해 구성해보겠습니다. 실습 아키텍처실습 환경의 경우 비용과 편의성을 고려하여 퍼블릭 환경에 호스팅 하였습니다. 실제 운영환경에서는 프라이빗 환경에서 사용하는 것이 안정성을 위해서 권고 됩니다. 이외에 컨트롤플레인은 퍼블릭 + 데이터 플레인은 프라이빗 환경에 구성하는 하이브리드 아키텍처도 존재합니다. 이는 밑에서 더 자세히 다뤄 보겠습니다. 실습 환경 구성쿠버네티스 클러스터를 배포하기 위해 필요한 기본 네트워크 및 Bastio..
EKS 란?EKS는 AWS Managed Service로 K8S 클러스터를 자동관리 해주는 서비스 이다.이 때 관리형 서비스라고 해서 모든 영역을 관리해주는 것이 아니므로 기본적으로 쿠버네티스에 대한 지식과 개념을 알아야 구성할 수 있다. EKS 아키텍처 EKS 관리 영역EKS의 컨트롤 플레인은 AWS 에서 관리한다. 실제로 클러스터를 생성해 보면 해당 컨트롤 플레인의 노드는 사용자가 직접 접근할 수 없고 EKS를 생성할 때 지정한 VPC에 마스터 노드와 연결되는 ENI가 생기는데 해당 ENI 상세 정보를 보면 해당 ENI의 연결된 인스턴스의 소유자는 AWS 어카운트 인 것을 확인할 수 있다. 이는 컨트롤 플레인은 전적으로 AWS 에서 관리하겠다는 것이고 EKS 네트워크의 특징이다. EKS 클러스터..
Remote Development 란? Remote Development는 VS Code 의 확장 플러그인이다.원격 서버에 접속해서 코드를 확인할때 유용하다.자세한 정보는 공식 홈페이지를 참고: link 설치 방법VS Code를 실행 사이드 바에서 extension 메뉴 찾기 or 맥의 경우 Command + Shift + X 키로 메뉴 진입 remote development 검색사용 방법호스트 추가설치 완료 후 커맨드 팔레트 실행. - View > Command Palette 실행 혹은- 단축키로 Command + Shift + P 입력- 입력창에 remote-ssh: add ~ 입력 및 실행 호스트 등록은 생각보다 직관적이다. 터미널에서 사용하는 명령어와 같이 입력해준다. 엔터를 입력하면 다음과 같..
인스턴스 타입별로 지원되는 가용영역이 다르다.이는 AWS 사업계획 및 물량 확보에 따라 달라질 수 있고지원되는 가용영역에 해당 자원이 실제로 존재하는지 까지는 알 수 없다.이에 대해 확인해 보려면 AWS 측에 문의하거나 Launch 해보는 수 밖에 없다. 인스턴스 타입별 지원되는 가용영역은 콘솔에서도 확인 가능하지만 아래와 같이 가용영역에 대한 정보만 출력하기 위한 코드를 작성했다. 코드는 AWS describe-instance-type-offerings API 기반의 boto3 라이브러를 활용해 작성했다. Codeimport boto3import timeimport pandas as pd from datetime import datetime, timedelta, timezoneregion = 'ap-n..
AWS EBS 볼륨의 성능테스트는 리눅스의 dd 및 hdparm 명령어를 통해 간단하게 테스트 가능합니다. dd 명령어 dd는 "데이터 덮어쓰기"를 의미하는 '디스크 덤프' 명령어로 사용되며, 데이터를 블록 단위로 복사하거나 변환하는데 사용됩니다. 다음은 dd 명령어의 주요 옵션과 사용 예제입니다: 주요 옵션: - if: 입력 파일 (input file)의 경로를 지정합니다. - of: 출력 파일 (output file)의 경로를 지정합니다. - bs: 블록 크기 (block size)를 설정합니다. - count: 블록 수를 설정하여 복사할 데이터 양을 제어합니다. 쓰기 성능 테스트 dd if=/dev/zero bs=1024 count=100 of=/data1/test_file oflag=direct ..
도커 컴포즈 - 여러 컨테이너의 관리 컨테이너를 관리하는 데 있어서 사용하는 도구 및 방법은 다양하지만 그중에 있어서 가장 기본적인 방법입니다. 도커 컴포즈를 사용하면 단일 서버에서 여러 컨테이너를 프로젝트 단위로 묶어서 관리할 수 있습니다. 또한 docker-compose.yml YAML 파일을 통해 명시적 관리가 가능합니다. 도커 컴포즈의 기능 ◾️ 프로젝트 단위로 도커 네트워크와 볼륨 관리 ◾️ 프로젝트 내 서비스 간 의존성 정의 가능 ◾️ 프로젝트 내 서비스 디스커버리 자동화 ◾️ 손 쉬운 컨테이너 수평 확장 ◾️ 서비스는 보통 기능적인 측면으로 분리한 단위이고 서비스 내에서 여러개의 컨테이너가 구성됩니다. 이때 서비스 내의 컨테이너는 수평적으로 스케일 인 아웃 하며 조정 가능합니다. 의존성 관계..
Telemetry란 ? DevOps 에서 안정적인 운영 환경을 관리하기 위해서는 전사 시스템에서 어떤 일이 일어나는지 어떤 상태인지 확인할 수 있어야 합니다. IT 시스템 내부의 모든 것은 관리자 하에 통제되어야 합니다. 통제를 위해서는 기본적으로 시스템에 대한 관측이 필요하고 원격으로 데이터를 수집하고 측정하는 기술 또는 과정을 Telemetry라고 합니다. 최근 MSA, 컨테이너, 클라우드 등 새로운 기술을 이용한 서비스를 도입하면서 시스템 복잡성이 점차 증가하며 관리의 어려움 때문에 Telemetry 의 중요성이 대두되고 있습니다. 따라서 이러한 Telemetry를 통해 Observability를 확보하는 것 IT 비즈니스의 핵심 요소 중 하나가 되었습니다. Telemetry의 목표 IT 시스템에서..
Intro: DevOps의 탄생 배경 IT 중심의 산업화 IT 종사자라면 DevOps에 대해서 한 번쯤은 들어봤을 것입니다. 국내 시장에서 근 5년간 개발자에 대한 이목만 집중되어 DevOps는 최근에서야 주목받고 있는 영역이지만 IT 선진국인 미국에서는 2009년 처음 등장해 오랫동안 연구, 개발되고 있는 분야입니다. (O'Relly Velocity Conference의 ) 3차 산업혁명 이후 대부분의 모든 비즈니스에서의 IT는 사업의 핵심 동인이 되었습니다. 현대에 들어서는, IT는 더 이상 하나의 산업군으로 독립적으로 분류되지 않고 모든 기업과 산업에서는 IT를 핵심 역량으로 인식하고 내재화 시키고 있습니다. 이를 흔히 요즘 말하는 DT(Digital Transformation) 라고도 합니다. I..
이전에 AWS EBS 볼륨을 생성하고 연결하여 마운트 까지 하는 과정에 대해 소개한 적이 있습니다. 마운트 작업까지 수행한 이후에 반드시(?) 해줘야 하는 설정으로 /etc/fstab 파일을 수정하여 추가 연결한 볼륨이 서버 재부팅 이후에도 자동으로 마운트 되어 있게 해줘야 합니다. 그렇다면 우선 /etc/fstab 파일에 대해서 알아보겠습니다. /etc/fstab 이란 ? fstab -> File System Table의 약어. /etc/fstab 파일은 부팅 시에 시스템이 어떤 디스크 파티션 또는 파일 시스템을 마운트할지를 지정합니다. 이 파일은 파일 시스템의 장치 이름, 마운트 포인트, 파일 시스템 유형, 마운트 옵션 등을 포함합니다. 따라서 시스템 부팅 시에 /etc/fstab 파일을 참조하여 지..
Guest OS 레이어가 포함된 컨테이너에 직접 ssh 연결로 접근하여 컨테이너를 관리할 때, 터미널을 나가면 컨테이너가 자동으로 중지됩니다. 따라서 컨테이너 안에서 다른 프로세스를 실행시키고 있는 중 이었다면 해당 프로세스는 중지됩니다. 이 때 서비스 중인 컨테이너를 실수로 나가버렸다면 아래 명령어를 통해 재접속 합니다. docker start -i [컨테이너ID or 컨테이너 이름] 이 외에 컨테이너가 종료되는 것을 방지하기 위해서 컨테이너의 터미널에서 Ctrl + p,q 를 눌러 터미널을 로그아웃 합니다.
컨테이너의 특징 도커(Docker)는 컨테이너화 된 애플리케이션을 만들고 배포하기 위한 오픈 소스 플랫폼입니다. 즉 컨테이너를 생성하고 관리하는 하나의 소프트웨어 프로그램 입니다. 컨테이너는 애플리케이션을 실행하는 독립적인 환경을 의미하는 배포 단위이고, 컨테이너가 갖는 가장 큰 특징은 VM과 다르게 Host OS의 커널을 사용한다는 것이고 이로 인해 더 경량화 된 격리환경 이라는 것입니다. 경량화? 가벼우니까 마구마구 올려도 되는 건가 ?? 컨테이너가 경량화 된 실행환경 이기는 하지만 결국에는 컨테이너도 많이 생성할 수록 관리가 어려워지고 그만큼 사용하는 메모리가 늘어나 장애가 발생하게 됩니다. 가볍다고 무작정 생성하면 결국 Host OS 시스템에 부하가 생기고 이로 인해 컨테이너 전반에 지연 및 장애..
Node.js 란 ? Node.js는 Chrome V8 JavaScript 엔진 위에서 동작하는 JavaScript 런타임 환경입니다. Node.js를 사용하면 JavaScript를 서버 사이드에서 실행할 수 있습니다. 기존의 웹 브라우저 환경에서만 동작하던 JavaScript를 서버 측에서 실행할 수 있게 되어, JavaScript로 전체 웹 애플리케이션을 개발할 수 있게 해줍니다. Node.js를 통해 개발을 하면 이벤트 기반, 비동기 I/O 모델을 통해 높은 처리량과 확장성을 제공하며, 다양한 패키지와 라이브러리를 사용하여 개발 생산성을 높일 수 있습니다. 1. 필요 패키지 설치 npm 설치 npm이란 ? Node.js 패키지 관리자(Node Package Manager)를 말합니다. 이는 Node..
리눅스 쿼터란 ? 리눅스에서의 "quota"는 사용자 또는 그룹이 디스크 사용량을 제한하는 기능을 의미합니다. 이는 파일 시스템 레벨에서 디스크 공간의 할당 및 사용량을 제어하고 모니터링하는 메커니즘입니다. quota는 일반적으로 사용자 또는 그룹에 대한 디스크 사용량 제한을 설정하고, 사용자 또는 그룹이 할당량을 초과할 경우 경고 메시지를 생성하거나 쓰기 작업을 차단하는 등의 작업을 수행할 수 있습니다. quota는 다중 사용자 환경에서 디스크 사용량을 관리하고, 디스크 공간의 낭비를 방지하고자 할 때 유용합니다. quota 기능은 주로 디스크 공간을 공유하는 시스템에서 사용되며, 서버, 클라우드 환경 등에서 여러 사용자가 동시에 리소스를 사용하는 경우 유용합니다. quota는 파일 시스템 수준에서 제..
AWS Root 계정에 MFA를 활성화 하여 보안을 강화하는 것은 클라우드 보안 기본 중 기본입니다. 이 때 MFA 의 경우 물리 디바이스나 가상 MFA 디바이스를 통해 인증을 구현합니다. 가장 많이 사용하는 방법은 스마트폰으로 인증하는 방식이며, Google Athenticator, Authy, Microsoft Authenticator 등의 애플리케이션을 사용합니다. MFA를 한 번 활성화 하면 반드시 추가 인증을 거쳐야 하고 그러지 않을 시 로그인이 차단됩니다. 따라서 휴대폰을 분실했다거나 애플리케이션 정보가 초기화 됐을 시에 MFA를 새로 발급받아야 합니다. MFA를 새로 발급받는 방법은 아래와 같습니다. 1. AWS Console 로그인 2. 다른 인증 방식으로 로그인 (메일->전화) 3. 기존..