목록DevOps (15)
Arthur's Blog
인터넷을 통해 최종 사용자에게 IT 인프라를 제공하는 형태의 클라우드 컴퓨팅이다. IaaS는 주로 서버리스 컴퓨팅과 관련이 있다. 📌 정의 Iaas는 고객에게 서버, 네트워크, OS, 스토리지를 가상화하여 제공하고 관리한다. IaaS는 가상화된 물리적인 자산을 UI 형태의 대시보드 또는 API로 제공한다. IaaS의 고객들은 서버와 스토리지를 접근할 수 있지만 사실상 클라우드에 있는 가상 데이터 센터를 통해 리소스를 전달받는 형태이다. IaaS는 기존의 데이터센터에서 제공받던 물리적인 자산을 완벽하게 가상화하여 제공하기 때문에 서버 사용의 변경 등 물리적 자산의 수정이 필요한 경우 기존의 방식에 비해 훨씬 빠른 대응이 가능하다. IaaS의 제공업체는 서버, 하드 드라이브, 네트워킹, 가상화 및 스토리지를..
📌 정의 AWS에서 제공하는 CDN서비스이다. 엣지 로케이션을 여러 개 두고, 가장 가까운 엣지 로케이션에 접근해서 지연시간을 최소화 한다. 👍 장점 엣지 로케이션을 활용해서 사용자에게서 가장 가까운 엣지 로케이션에 접근해서 지연시간을 최소화 한다. 캐싱을 활용해서 엣지 로케이션에 있는 정보면 S3에 다시 접근하지 않는다. 따라서 S3의 비용이 줄어든다.
📌 정의 도커가 공식적으로 만든 오케스트레이션 툴. 도커 컨테이너를 위한 클러스터링, 스케줄링 툴이다. 스웜을 이용해서 여러 개의 서버와 컨테이너 관리를 쉽게 할 수 있다. 또한 매니저 노드와 작업자 노드가 존재한다. 👨🎓 매니저 노드 매니저 노드는 아래의 업무를 통해 도커 클러스터를 관리한다. 매니저 노드 역시 작업자에 속하긴 한다. 클러스터의 상태를 유지 : 뗏목 알고리즘 사용한다. 스케줄링 서비스 : 작업자 노드에게 컨테이너를 배포한다. 특정 노드에게만 배포하거나, 모든 노드에 하나씩 배포할 수도 있다. 스웜 모드 제공 👷♂️ 작업자 노드 도커에서 일반적으로 컨테이너를 실행하는 노드를 작업자 노드라고 한다. 작업자 노드들의 클러스터는 반드시 하나 이상의 관리자 노드를 가져야 한다.
하나의 VPC는 여러 개의 보안 그룹을 가질 수 있으며, 여러개의 서브넷을 가질 수 있다. 서브넷은 하나의 Region에 여러 개 존재할 수 있다. 기본적으로는 각 AZ(가용영역)별로 존재한다. 서브넷은 라우트 테이블을 가지고 있다. 기본적으로 제공하는 VPC의 라우트 테이블은 0.0.0.0/0, 즉 모든 IPv4를 허용하므로 해킹에 취약할 수 밖에 없다. 따라서 보안을 신경쓴다면 Default VPC보다는 Custom VPC가 낫다고 생각한다. 물론 대략적인 지식이 있다는 가정하에. 필자는 Route Table에서 IGW 전체를대상으로 라우팅을 해준다면(모든 IPv4 허용), SG(Security Group)에서라도 방어해야한다고 생각한다. 아래는 OPGG 해커톤에서 구축한 AWS의 구조이다. 외부의 ..
📌 정의 로그 데이터 분석 도구이다. E = Elastic Search, 분석 및 저장 L = Logstash, 로그 수집 K = Kibana, 시각화 도구 🧪 ElasticSearch Logstash를 통해 수신된 데이터를 저장소에 저장하는 역할. 분산 검색엔진. 🎞 Logstash 수집할 로그를 선정해서, 지정된 서버에 인덱싱하여 전송하는 역할. ✨ Kibana 데이터를 시각적으로 탐색, 실시간으로 분석하는 역할 🔗 ELK Stack 위의 ELK에 Beats가 추가된 것. 🧶 Beats 에이전트로 설치하여 다양한 유형의 데이터를 ElasticSearch 또는 Logstash에 전송하는 데이터 발송자.
🎊 시작하기 전에.. 이 글을 읽기 전에 Docker의 기본적인 작동원리, Docker Network에 대한 지식이 있어야합니다. 또한 Docker가 Server에 install되어있어야합니다. 1️⃣ 가장 먼저 https://github.com/EntryDSM/BELK 위의 링크를 server에 clone 받습니다. git clone https://github.com/EntryDSM/BELK 2️⃣ 두 번째로 해당 디렉토리 내부로 들어가서 docker-compose.yml 파일을 엽니다. ELASTIC_PASSWORD:를 설정해줍니다. 기본값은 changeme 입니다. yml 파일 내부의 filebeat설정에서 두 번째 volume설정에서 source는 host에서 로그의 위치, target는 cont..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/csRjMz/btslbQjhckr/UdhcmK69VWudi6QfQlXTtK/img.png)
🎊 시작하기 전에.. 이 글을 읽기 전에 VPC와 로드밸런서에 대한 기본적인 지식이 필요합니다. AWS 구조는 한 AZ(가용영역) 내부에 EC2와 RDS를 구축하는 것을 목표로 합니다. EC2는 public 서브넷, RDS는 private 서브넷으로 설정하는 것을 목표로 합니다. 1️⃣ 가장 먼저 VPC 생성 VPC생성 및 설정을 해주어야 합니다. AWS에서 VPC로 들어간 후 VPC 생성을 눌러줍니다. IPv4 CIDR 블록 간단하게 CIDR은 기존의 IP 주소 할당 방식이었던 네트워크 클래스 방법을 대체한 방식입니다. CIDR은 IP Address의 영역을 나눌 때 기존방식보다 유연하게 자신이 원하는 Network Address와 Host Address를 나눌 수 있습니다. 아래의 Private IP..
📌 SRE란? 사이트 신뢰성 엔지니어링은 IT 운영에 대한 소프트웨어 엔지니어링 접근 방식입니다. SRE 팀은 소프트웨어를 툴로 활용하여 시스템을 관리하고, 문제를 해결하고, 운영 태스크를 자동화합니다. SRE는 확장 가능하고 신뢰성이 높은 소프트웨어 시스템을 생성할 때 유용한 방법입니다. 코드를 통해 대규모로 시스템을 관리할 수 있으므로 수천 대에서 수십만 대에 이르는 머신을 관리하는 시스템 관리자에게 더 큰 확장성과 지속가능성을 제공합니다. Google 엔지니어링 팀의 Gen Treynor Sloss가 창안한 개념입니다. 👍 SRE를 사용함으로써 있는 장점 새 기능을 적시에 출시하고, 사용자가 이 기능을 안정적으로 사용하도록 할 수 있습니다. 🥼SRE 엔지니어의 역할 부가적인 운영 경험이 있는 소프트..