Juju로 Ceph을 deploy 해보자

Ceph의 manual deploy를 진행해봤으나 앞서 “Ceph을 설치해보자“에서 기술한 것처럼 ceph-deploy를 사용하는 방법만큼 공식 문서에 문제가 있어서 포기하고 juju로 해보기로 했다.   1. 준비 (1) Bootstrap Juju로 deploy 하기 위해서는 사전에 bootstrap이 진행되어 있어야 한다. Juju version 1.25 기준 인프라로 AWS, Azure, VMWare, GCE, Joyent, Manual 등을 지원하는데 Azure에서 해보기로 했다. Bootstrap을 완료하고 status를 확인하면 아래… Read more »

Ceph을 설치해보자

Ceph cluster 구성을 할 때 가장 중요한 요소는 ceph monitor와 osd 이다. “Ceph 가볍게 살펴보기“에서 기술한 것처럼 osd는 실제 object 저장을 담당하고 monitor는 node의 상태 확인이나 cluster map 정보를 담고 있기 때문. 공식 문서에 있는 설치 방법은 manual과 ceph-deploy라는 자동화 스크립트를 이용하는 방법으로 나뉘어 있는데 ceph-deploy를 사용해 보기로 했다. 공식 문서에 누락된 내용도 있고 ceph-deploy… Read more »

Ceph 가볍게 살펴보기

1. Ceph은 무엇인가? 분산 object store이자 file system으로 분산 클러스터 위에서 object storage를 구현해 object, block, file level의 storage 인터페이스를 제공한다. 하나로 object / block storage, file system 모두를 제공한다는게 장점. SPOF 없는 완전한 분산처리와 exabyte 단위까지 확장 가능하다고 한다.   2. Ceph architecture <출처 : http://docs.ceph.com/docs/master/architecture/> 실제 data 저장을 담당하는 것은 RADOS이고, CephFS (File System)는 FUSE 지원으로 RADOS에… Read more »

MyBatis와 싸우면서 얻은 것들

Java로 간단한 console application을 만들다가 이상한 문제들을 마주하게 되었다.  그 중 하나는 DB 연결이 계속 끊어지는 현상. 현재 시점에서도 DB에 가해지는 부하는 정말 작은 수준이었기 때문에 특별히 tuning할 이유는 없었고 퍼포먼스와 관련해서는 기본 설정값으로 사용하고 있었는데 끊어지는 이유를 알 수가 없었다. (MySQL 5.5의 default wait_timeout은 8시간) 1. 환경 Application 동작의 흐름은 DB select, 특정 행위,… Read more »

덕만이 잠든 시간에 – python socket으로 IP 얻기

지난번에 만들어놓은게 고작 IP를 얻기 위해서 package를 별도로 설치해야 한다는게 마음에 걸렸다. 어차피 그 package도 IP 정보를 얻기위해 네이티브 API를 사용하지 않을까 싶어서 방법을 찾아보기로 했다. 사실 가장 좋은 방법은 그 package 소스를 보고 분석하는 것이겠지만 시간이 꽤 걸릴 것 같기도 해서 우선은 간단히. 1. socket.gethostbyname() 원래 처음에 사용했던 방법은 socket의 gethostbyname 함수를 사용하는 것이었다. 이 함수는… Read more »