본문 바로가기
반응형

전체 글188

컨테이너의 이해 어플리케이션이 더 작은 수의 커다란 구성 요소로 구성되는 경우, 각 구성 요소에 전용 VM을 부여하고 각 구성 요소에 자체 운영체제 인스턴스를 제공해 환경을 격리할 수 있다. 그러나 이런 구성 요소가 점점 작아져 그 수가 늘어나기 시작하면 하드웨어 리소스를 낭비하지 않고 비용을 줄이기 위해 각자 고유의 VM을 제공하기는 어렵다. 이는 단지 하드웨어 리소스 낭비만의 문제는 아니다. 일반적으로 VM을 개별적으로 구성하고 관리해야 하므로 VM 수가 많아질수록 시스템 관리자의 작업 부하도 증가되기 때문에 인적 자원도 낭비된다. 리눅스 컨테이너 기술을 통한 컴포넌트 분리 개발자는 VM을 사용해 각 마이크로서비스의 환경을 격리하는 대신 리눅스 컨테이너 기술을 사용한다. 이 기능을 사용하면 같은 호스트 시스템에서 여.. 2020. 4. 30.
지속적배포(CD)로 이동: DevOps와 NoOps 지난 몇 년간 전체 어플리케이션의 개발 프로세스와 프로덕션에서 어플리케이션이 처리되는 방식에 큰 변화가 있었다. 과거에는 개발팀에서 어플리케이션을 만든 후에 운영팀에 넘겨주면 어플리케이션을 배포하고, 관리하며 계속 실행했다. 그러나 지금은 어플리케이션을 개발하는 사람이 배포에도 참여하고 전체 라이프사이클을 함께 관리할 수 있게 팀을 구성하는 편이 더 효율적이라는 사실을 알게 됐다. 이것은 개발자, 품질 보증, 운영팀이 전체 프로세스를 모두 함께 작업해야 한다는 의미이다. 이런 작업 방식을 DevOps라고 부른다. DevOps의 장점 개발자가 운영에서 어플리케이션 실행에 좀 더 많은 시간을 들인다면 사용자가 무엇을 필요로 하는지, 어떠한 문제가 있는 더 잘 이해하게 되고, 운영팀이 어플리케이션을 유지하는 .. 2020. 4. 30.
어플리케이션에 일관된 환경 제공 개발팀과 운영팀 사이의 가장 큰 문제 중 하나는 개발자가 개발하고 배포하는 구성 요소의 수가 얼마나 많은지에 관계없이 어플리케이션을 실행하는 환경의 차이를 다뤄야 한다는 점이다. 개발 환경과 운영 환경 간의 커다란 차이뿐만 아니라 개별 운영 시스템 간에도 차이점이 발생한다. 시간이 지나면서 단일 운영 시스템의 환경이 변하는 것은 피할 수 없다. 이런 차이점은 하드웨어에서 운영체제, 각 시스템에서 사용 가능한 라이브러리에 이르기까지 다양하다. 프로덕션은 운영 팀에서 관리하지만 개발자는 가끔씩 개발 노트북만을 신경 쓸 뿐이다. 이 차이점은 이 두 그룹에 소속된 사람들이 시스템 관리를 얼마나 알고 있느냐에 기인한다. 이런 이해도는 이 두 시스템 사이에 상대적으로 큰 차이를 만든다. 시스템 관리자는 최신 보안 .. 2020. 4. 30.
모놀리식 어플리케이션에서 마이크로서비스로의 전환 모놀리식 어플리케이션은 모든 것이 서로 강하게 결합해 구성되며, 전체가 단일 운영체제 프로세스로 실행되기 때문에 하나의 개체로 개발, 배포, 관리해야 한다. 어플리케이션을 조금만 변경해도 전체 어플리케이션을 다시 배포해야 하므로 개발과 배포, 관리의 경계는 시간이 지나면서 모호해진다. 결국 시스템 전체의 품질이 저하된다. 일반적으로 모놀리식 어플리케이션을 실행하려면 어플리케이션을 실행하는 데 필요한 리소스를 제공할 수 있는 소수의 강력한 서버가 있어야 한다. 시스템상 증가하는 부하를 처리하려면 CPU, 메모리, 그 밖의 서버 구성 요소를 추가해 서버를 수직적으로 확장하거나(스케일링 업) 서버를 추가하고 셋업해 어플리케이션의 복사본을 여러 개 실행함으로써 모든 시스템을 수평적으로 확장할(스케일링 아웃) 수.. 2020. 4. 30.
쿠버네티스? 몇 년 전만 하더라도 대부분의 소프트웨어 어플리케이션은 단일 프로세스로 실행되거나 소수의 서버에 분산된 적은 수의 프로세스로 실행되는 거대한 모놀리식 어플리케이션이었다. 이런 레거시 시스템은 릴리즈 주기가 느리고 상대적으로 드물게 업데이트된다. 개발자는 릴리즈 주기가 끝날 때마다 전체 시스템을 패키지로 만들어 운영팀에 넘기고 운영팀은 이를 배포하고 모니터링한다. 하드웨어 장애가 발생하면 운영팀은 사용 가능한 서버로 직접 마이그레이션한다. 현재 거대한 모놀리식 레거시 어플리케이션은 점차 마이크로서비스라는 더 작고 독립적으로 실행 가능한 구성 요소로 쪼개졌다. 마이크로서비스는 서로 분리되어 있기 떄문에 개별적으로 개발, 배치, 업데이트, 확장을 할 수 있다. 따라서 오늘날 급변하는 비즈니스 요구 사항을 충족.. 2020. 4. 29.
인공지능 이란? 강한 인공지능 vs 약한 인공지능 인공지능의 종류에는 '사람과 같은 지적 처리의 구현'과 '사람과 똑같은 지능의 구현' 이라는 두 가지 접근방식이 있다. 전자를 '약한 AI'라고 하며 사람의 뇌 구조와 상관없이 사람의 지적 처리와 똑같은 결과를 얻을 수 있는 것을 지향하고, 후자는 '강한 Al'라고 해서 지능 자체를 가지는 기계를 만들려는 노력으로, 뇌 과학의 연구 성과를 도입하면서 사람의 뇌와 똑같은 범용적인 지적 처리가 가능하게 되는 것을 지향한다. '약한 AI'는 미리 룰을 많이 마련해 두는 '룰 베이스'가 시작이었다. 예를 들어 외국어 번역자나 의사, 변호사와 같은 전문가의 노하우를 룰로 만든 '엑스퍼트 시스템'이 실용화되었다. 하지만 사람이 세상의 모든 것을 룰로 만드는 데는 한계가 있어서 보급되지는 못하였다. 이러한 상황을 바.. 2019. 9. 6.
IaaS PaaS SaaS 클라우드 서비스에 대해 알아보기 1. IaaS (Infrastructure as a Service) 서버나 OS, 네트워크 등의 시스템 인프라를 On-Demand 형태로 제공함. 데이터를 저장하는 스토리지 영역도 제공됨. 서버의 스펙이나 데이터 용량과 함께 신뢰성이나 가용성 등의 서비스 레벨에 따른 이용 요금이 결정된다. 시스템 요건에 따라서 필요한 서비스를 조합해서 이용하게 된다. 2. PaaS (Platform as a Service) 시스템 인프라와 application 개발에 필요한 미들웨어를 묶어서 제공함. 개발에 필요한 라이브러리는 물론이고, 실제 운영 환경에 대한 배포나 시스템 모니터링 등의 기능을 제공하고 있다. 개발자는 시스템 인프라의 구축과 운영을 신경쓰지 않고 application 개발에만 주력할 수 있게 되는 것이.. 2019. 9. 6.
한국인 최초 사이영상 도전하는 류현진 사이영상이란? 한국인 최초 NL 사이영상에 도전하는 류현진!!!! 근데 사이영상이 뭐지?? 사이영상이란?? 2019 시즌 반등에 완전히 성공한 LA 다저스의 99번 류현진 선수 최근 몇경기 좀 주춤하긴 했지만 아직 사이영상 후로 0순위로 거론되고 있는데요.....^^ 일단은 사이영상? 이게 뭔지 좀 알고 가야 하지 않을까 해서 정리해 봤습니다. 과연 사이영상이 뭘까??? 사이영상 (Cy Young Award) 은 MLB 의 그 해 최고의 투수에게 수상하는 상인데요. AL, NL 각 리그 최고의 투수에게 한명씩 주어지니까 한 시즌 두명의 선수가 사이영상을 받는다고 볼 수 있겠네요. 사이 영(Cy Young) 이라는 메이저리그 역사상 전대미문의 기록을 남긴 역대 최고 투수의 이름을 따 1956년 부터 제정되었습니다. 사이.. 2019. 9. 5.
[류현진 5승] 190513 류현진 5승째…승리요정은 '호수비' 벨린저·'만루포'시거 '괴물 투수' 류현진(32·LA 다저스)이 5승을 달성했다. 승리 도우미는 코디 벨린저(24)와 코리 시거(25·이상 다저스)였다. 류현진은 13일(한국시각) 미국 캘리포니아주 로스앤젤레스 다저스타디움에서 열린 메이저리그 워싱턴 내셔널스와 홈 경기에 선발 등판, 8이닝 동안 116개를 던져 1피안타 1볼넷 9탈삼진 무실점을 기록했다. 다저스가 6-0으로 이기면서, 류현진은 시즌 5승(1패)째를 챙겼다. 지난 8일 애틀랜타 브레이브스전에서 완봉승을 거뒀던 류현진은 이날도 무시무시한 투구를 보여줬다 7회까지 98개를 던지면서 노히트 노런(안타와 실점을 하나도 내주지 않은 경기) 행진을 이어갔다. 8회 1사에서 안타를 허용하면서 노히트 노런 기록 달성은 하지 못했다. 그러나 평균자책점은 2.03에서 1.72로.. 2019. 8. 22.
반응형