DevOps 6

[Docker]ARM에서 어떻게 AMD 이미지가 돌아가는 거지?(Feat. QEMU 에뮬레이션)

Introduction 드디어 도커 스터디가 막을 내렸다. 그간 수업을 진행하면서 정리할 게 산더미인지라 하나씩 블로그에 올려볼 계획이다. 그러고 보니 간만에 올리는 기술 아티클인듯. 그 간만에 올리는 글이 데브옵스 관련이라는 게 아이러니하지만.. 시작은 Docker Desktop for Mac을 쓰면서였다. 책 으로 수업을 진행하던 중, 책의 개발 환경은 리눅스인 것과 달리 우리의 실습 환경은 유닉스(맥북 로컬)이다보니 차이가 여럿 발생했다. 그 중 하나가 바로 플랫폼을 설정하는 것. 맥북 M1은 ARM 기반인지라 도커 데스크탑 환경에서 이미지를 빌드할 때 역시 ARM 기반 이미지를 사용해야 한다. 그런데 실습 과정에 Linux/amd64 기반의 MySQL 5.7 버전 이미지를 빌드해야 하는 실습이 있..

DevOps 2023.03.20

[사내 도커 스터디] #1 클라우드 컴퓨팅

Ch.1 클라우드 컴퓨팅 1.1 클라우드 컴퓨팅 개요 클라우드: 사용자가 언제든지 인터넷, 모바일 등을 통해 IT 서비스를 제공받을 수 있도록 하는 컴퓨팅 기술 애자일 방법론을 활용한 민첩한 서비스 도입과 탄력적인 확장/축소, 자동화 서비스 유지관리 등으로 1) 운영 비용은 낮추고 2) 비즈니스 요구사항 변화를 빠르게 적용할 수 있는 환경을 제공 1.1.1 클라우드 컴퓨팅이란? 💡 인터넷 기술을 이용해 다수의 사용자에게 하나의 서비스로서 방대한 IT 능력을 제공하는 컴퓨팅 방식 사실상 사용하는 만큼 요금을 내는 방식 → IT 서비스 각 요소를 유틸리티로 인식한다! 클라우드 컴퓨팅 = 그리드 컴퓨팅 + 유틸리티 컴퓨팅 그리드 컴퓨팅: 가상 네트워크를 이용해 분산된 컴퓨팅 자원을 공유하도록 하는 기술 방식 ..

DevOps 2023.02.08

[사내 도커 스터디] #0 Introduction

Introduction 어쩌다보니 새해벽두부터 사내 스터디를 주관하게 됐다. 주제는 도커인데, 이전부터 도커를 공부하고 싶었지만 짬이 잘 나지 않아 계속 미뤄두던 차였다. 사실 지금은 자바 & 스프링에 더 집중해야 될 때가 아닌가 싶기도 했고. 그런데 FE팀 분들과 이야기를 나누다가 FE/BE/QA 상관없이 다같이 스터디해보는 게 어떻겠냐는 의견이 나왔다. 특정 분야에 속한 기술 혹은 언어가 아닌 개발 전반에 걸쳐 배울 수 있는 게 무엇일까 하다가 도커가 나왔다. 생각해보니 프론트 단도 도커로 말아서 띄우고 할테니 (사실 QA분께는 무엇이 도움될까 잘 모르겠긴 한데..) 다같이 해보면 재밌겠다 싶었다. 계속 우선순위에 밀려있던 도커였기에 이참에 두 달 남짓 빡세게 조지고 끝내기로 했다. 1. 목적 도커 ..

DevOps 2023.02.08

[AWS/나만의무기]아키텍쳐 변경: S3와 Cloudfront(CDN)를 이용한 서버리스 온디맨드 스트리밍 설계

휴..오늘 또 한 건 했다. 0. Executive Summary 온디맨드 스트리밍은 스트리머가 방송한 라이브 스트리밍 전체 영상을 저장해 시청자가 '지나간 라이브'(playback) 방송을 보고 싶을 때 언제든 시청할 수 있는(on-demand) 시스템을 말한다. 기존 오픈소스에서 제공하는 playback 기능은 미디어 서버 내 스토리지에 지나간 영상을 저장해뒀다가, 클라이언트로부터 요청이 들어오면 RTMP 프로토콜을 통해 node-media-client에서 제공하는 컴포넌트로 재생하는 방식이었다. 여기에는 두 가지 문제가 있었다. feature의 한계: node-media-client가 제공하는 기능은 지나간 영상을 재생만 할 수 있다. 지나간 영상을 재생/정지/특정 구간 재생 등 다양한 featur..

DevOps 2022.02.25

[AWS/나만의 무기 프로젝트]서비스 파이프라인 클라우드 배포 현황(EC2 서버 배포 + S3 스토리지 mounting)

이전까지 로컬에서 구축했던 프로젝트의 파이프라인은 아래와 같은 형태였다. 이를 클라우드 상에서 배포해 안정적으로 운영하기 위해 지금까지 EC2 서버 구축 및 S3 스토리지 mounting 작업을 진행했다. 현재 서버는 클라우드 상에서 안정적으로 동작하며 S3 스토리지에 스트리머 영상을 실시간으로 저장하고 있음을 확인했다. 따라서 바뀐 파이프라인은 아래와 같다. 1. 클라이언트 클라이언트인 스트리머와 시청자는 RTMP(스트리머->미디어 서버)/HLS(미디어 서버->시청자) 프로토콜을 이용해 서버로 각각 영상을 송출하고 받는다. 2. 서버 전체 서버는 익스프레스로 구성되어 있으며, 내부에는 미디어 서버와 커뮤니케이션 서버로 나뉘어져 있다. 이전까지는 로컬에 구축해놨으나 현재는 EC2에 원격으로 배포한 상태이..

DevOps 2022.02.22

[AWS]나만의 무기 프로젝트 EC2 서버로 배포하기

현재 진행 중인 프로젝트에서 이제까지 로컬에서 돌렸던 서버를 EC2로 배포하는데 드디어 성공했다! 아래 링크는 현재 진행 중인 On Air Super Live의 서버 리포지토리. https://github.com/TeamGreyOrg/super_live_server GitHub - TeamGreyOrg/super_live_server Contribute to TeamGreyOrg/super_live_server development by creating an account on GitHub. github.com 나중에 Readme.md에 추가하기 위해 미리 여기다가 오늘 작업한 내역을 글로 쓴다. 여기 글은 EC2를 발급받은 이후부터 진행한다. 1.node.js(NVM) 다운로드 먼저 ec2 터미널에서 ..

DevOps 2022.02.21