Please assign a menu to the primary menu location under menu

Yongbok Blog

All of the operating system

nGrinder – Enterprise level performance testing solution

nGrinder란? nGrinder는 네이버에서 성능 측정 목적으로 개발 된 오픈소스 프로젝트이며, 2011년에 공개 하였습니다. (The Grinder라는 오픈소스 기반에서 개발 되었습니다.) 성능 측정이란 것은 실제 서비스에 투입 되기 앞서, 실제와 같은 환경을 만들어 놓고, 서버가 사용자를 얼마 만큼 받아 줄 수 있느냐를 실험 할때 사용합니다. 예를들어.. 엔지니어가 동시접속자 100명 정도 쯤 무리 없겠지? 라고 예상하고 그에 맞는 서버를 준비하고 설정 했는데.. 예상치 못한 x1000 명이 더 와버리면.. 서버는 죽고 엔지니어는 야근 하겠죠..? 이런것을 미리 예측 하기 위한 도구라고 이해 하시면 됩니다. ^^; 또한, 엔터프라이즈 환경에서의 상용 성능 측정 도구를 사용 해보질 않아서 잘 모르지만, 대충 들어보니 가격이 억대라고 합니다. 그래서, 네이버가 가격 때문에도

SaltStack – IT automation infrastructure management tools

Saltstack은 수백, 수천대의 노드에 특정 명령 및 쿼리를 명령어 한번으로 실행할수 있도록 도와주는 자동화 관리 도구 입니다.   SaltStack Architecture SaltStack은 Master, Minion으로 이뤄져 있습니다. – Master Salt 명령어 실행과 상태등을 관리하는 중앙서버 입니다. – Minion Master에 대한 연결을 유지 및 명령을 기다리는 Agent라고 이해 하시면 됩니다. – Halite Saltstack을 쉽게 관리 할수 있는 WEB UI 입니다. Figure 1. Saltstack Architecture   Master와 Minion은 ZeroMQ를 통해 AES 암호화 알고리즘으로 통신을 하며, 관리자가 CUI로 salt 명령어를 통해 직접 명령을 내릴수도 있지만, Hailte를 가지고 Web UI에서 간단하게 Minion들을 제어 할수도 있습니다.   SaltStack 설치 본 설치는 Ubuntu 14.04 (Trusty) LTS에서 테스트 되었으며,

Apache Kafka – A high-throughput distributed messaging system

1. Apache Kafka? LinkedIn에서 자사의 내부 데이터 처리를 위해 개발한 대용량 분산 메세징 시스템 입니다. Kafka는 확장이 용이하고, 높은 처리량과 분산처리를 할수 있으며, In-Memory에 비해 뒤지지 않는 성능과 비휘발성으로 데이터를 디스크 저장 한다는 장점이 있습니다. Kafka를 활용하는 대표적인 기업으로는 LinkedIn, Twitter, Netflix, Tumblr, Foursquare가 사용하는 것으로 알고 있으며, 그 외에도 대용량 메세징을 다루는 기업에서 활용 중인걸로 알고 있습니다. 처리할 로그와 메세지들은 넘쳐나고, 안전을 생각하자니 In-Memory는 안될 것 같고, 디스크로 처리 하자니 성능이 발목을 잡고.. 이런 걱정 하시는 분들에게 좋은 솔루션인듯 합니다.   2. Kafka Architecture Kafka는 Producer, Broker, Consumer로 나누어져 있고, 시스템에서 발생 되는 메세지를 topic으로 분류 하고 있습니다. 이해를

Apache Mesos – Cluster Resource Management

Apache Mesos? UC Berkeley에서 Nexus 라는 이름으로 개발이 진행되던 프로젝트가 Mesos라는 이름으로 Apache 재단에 오픈소스로 발표된 프로젝트로써, Cloud Infrastructure 및 Computing Engine들의 자원을 통합적으로 관리 할수 있도록 만든 자원관리 프로젝트 입니다. Mesos를 활용하는 기업으로는 Twitter, Facebook, eBay, Riot Games가 있는데, 트위터의 경우 SNS 사용량이 급증함에 따라, 엔지니어들이 이 문제를 개선하기 위해, 트위터의 모든 서비스들을 독립적으로 실행 되도록 만들었고, 이 독립적 서비스들을 관리할 도구로 Mesos를 채택 했다고 합니다. 또한, 리그오브레전드(LOL) 게임 제작사인 라이엇 게임사(Riot Games)의 경우 Mesos와 Docker, Marathon을 이용하여 웹 규모(web-scale)에서의 고가용성(HA, High Availability) 및 내결함성(fault-tolerant) 기능을 구현하여 서비스 중이고, eBay는 Docker, Mesos, Marathon, Jenkins를 활용하여 서비스 중인걸로 알고 있습니다.

Arcus – Open source cloud cache server

1. Arcus? 네이버에서 자사 서비스에 적용하기 위해 Zookeeper와 Memcached를 조합 하여 만든 오픈소스 프로젝트 입니다. Arcus를 웹서버 또는 데이터베이스 사이에 위치시켜 빠른 응답 및 부하를 줄이기 위한 용도로 사용 할수 있습니다. 기타 자세한 사항은 http://naver.github.io/arcus/ 를 참고 하시기 바랍니다.   1.1. Arcus Architecture Figure1. Arcus Architecture (https://github.com/naver/arcus) 1.2. Arcus 배포 과정 Figure2. Arcus Deployment 2. 서버구성 총 4대의 서버 Arcus Admin , memcached-1, memcached-2, memcached-3로 구성. 2.1. memcached 서버 설정 memcached로 사용될 서버에서 진행을 하며, memcached가 실행 될수 있도록 사용자를 생성 해줍니다. – memcached 사용자 생성 root@memcached:~# useradd -M -s /sbin/nologin memcached root@memcached:~# mkdir -p /var/run/memcached/ && chown memcached:memcached /var/run/memcached   – JDK 설치 zookeeper를 실행하기

1 2 3 44