Please assign a menu to the primary menu location under menu

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를 실행하기

How to Install JIRA + MariaDB on CentOS 6

Jira? Atlassian사에서 개발한 Issue Tracking System 이며, 프로젝트 스케쥴에 대한 관리도구와 개발원간에 작업을 배분하고 커뮤니케이션하는 도구로 사용 합니다. Figure 1. JIRA Architectural Overview   본 문서는 CentOS 6.x 에서 테스트 되었으며, Front-end는 Nginx가 위치하며 Reverse Proxy로 Jira에 연결 해주며, Jira는 standalone 형태로, RDBMS는 MariaDB로 사용하여 설치를 진행 하였습니다.   1. CentOS 설정 – Selinux 비활성화 # sed -i ‘s/SELINUX=enforcing/SELINUX=disabled/g’ /etc/sysconfig/selinux   – iptables HTTP 80번 포트 허용 # nano /etc/sysconfig/iptables # Firewall configuration written by system-config-firewall # Manual customization of this file is not recommended. *filter :INPUT ACCEPT :FORWARD ACCEPT :OUTPUT ACCEPT -A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT -A

How to install own private git server on Ubuntu 12.04 LTS

개인적으로 private git 저장소가 필요한 경우나 회사 프로젝트의 협업을 위한 도구를 찾고자 하는 경우 gitlab을 구축하여 아주 유용하게 사용할수가 있습니다. 테스트 환경은 Ubuntu 12.04 LTS 에서 진행 되었습니다. 1. 필요 패키지 설치 root@ruo91:~# apt-get install -y build-essential zlib1g-dev libyaml-dev libssl-dev libgdbm-dev libreadline-dev libncurses5-dev libffi-dev curl git-core openssh-server redis-server checkinstall libxml2-dev libxslt1-dev libcurl4-openssl-dev libicu-dev   2. Ruby 설치 기존 패키지 방식으로 설치시 버전이 낮으므로 최신버전으로 합니다. gitlab의 요구사항중에 하나가 ruby 1.9 버전 이상입니다. Ubuntu 12.04 LTS 기준으로는 ruby 1.8 버전이 기본이라 버전이 낮은 관계로 새로 설치 합니다. 설치에는 패키지 설치 방법과 소스 설치 방법 중 원하는 것을 통해 설치 하시기 바랍니다.

1 2 3 4 45