Category: Uncategorized

openstack rpc worker는 thread임…

neutron에서 아래와 같은 오류 메시지가 나왔다.. 으? TimeoutError: QueuePool limit of size 10 overflow 20 reached, connection timed out, timeout 10 connection pool이 30개가 넘어?.. 이상했지만.. Process worker인 경우는 저런 메시지가 나오는건 100% 코드 버그라 보였고, 이상하다고 로그를 보고 있는데, 이상하게 RPC Worker 쪽에서만 에러가 나고 있었다… 오호… 역시나 RPC Worker를 보는데, RPC는 별도의 process에서 […]

클래스에 메서드를 추가하는 decorator

제목이 이상한데, 어쨌든 monkeypatch처럼 기존의 클래스에 새로운 메소드를 추가하는 decorator입니다. 이게 왜 필요하면, 내가 작성한 코드가 아닌 곳에서 생성된 object에 utility function을 추가하고 싶을 때 사용하면 됩니다. 물론 wrapper class를 만들던가, instance를 인자로 받는 function을 만들거나 하면 되긴 하겠지만.. 뭐.. 이렇게 쓰고 싶을 때도 있지요..

ssh bastion proxy용 golang network proxy

golang 연습겸… ssh bastion용 golang으로 network proxy를 만들어 봤습니다. 물론 netcat을 사용하거나 ssh ProxyCommand에서 -W 옵션을 사용하지만, 제가 쓰는 시스템에서 이 두가지 모두 사용할 수 없어서, 의존성 없는 single binary를 만들어 내는 golang이 적합해서 만들어 봤습니다.(만든다.. 만든다 하다가 .. 어디서 굴러먹던 python 버전 쓰고 있었는데… 날잡고 한번 해 봤습니다.) golang을 프로젝트에서 쓰지 않고 있어서, golang으로 […]

network network ineterface address 설정하는 ansible module: ipaddr.py

ansible 모듈에 신기하게도 network interface addres를 설정하는 모듈이 없다. 물론 mncli라는 모듈은 있지만 이것은 network manager를 사용하는 모듈인데, 서버에서는 network manager를 사용하지 않는 경우가 많아서 쓰기가 그렇다. 그래서 간단하게 ip 명령을 이용한 모듈을 만들어 봤다. 자신의 playbook의 library 디렉토리에 복사해서 사용하면 된다. 사용법은 아주 심플하다… – ipaddr: name=iface_name addr=10.10.10.10/32 모듈 개발은 http://docs.ansible.com/ansible/developing_modules.html 에 자세히 설명이 되어 […]

[번역] Selecting CPU, processors and memory for virtualized environments

진짜 오랜만에 인터넷 둘러보다가 가상화에서 CPU/ Memory 선택에 관한 글이 있어서 번역해봅니다. http://searchservervirtualization.techtarget.com/tip/Selecting-CPU-processors-and-memory-for-virtualized-environments 그런데 번역해놓고 보니깐… 이론강좌 비슷한 느낌이군요.. 가상화 환경에서 CPU와 메모리를 선택하는 몇 가지 관점이 있다. 프로세스, 프로세스 속도, 코어의 수와 DIMM의 타입을 선택하면서 critical consideration을 동원할 것이다. 반드시 살펴봐야하는 전문적인 개요다. 가상화 환경에서 하드웨어를 선택하는 이 시리즈의 첫 번째 부분은, 이미 논의한 blade와 […]

Ironic 테스트 1차 정리

Ironic이 아직 인큐베이팅이라서 그런지 아직 안되는게 많네요. – 이미지를 ami 형태로 가야하네요. 기존 qcow라면 이미지를 이중으로 관리해야하는.. – 노드의 spec을 일일이 지정해야 한다는… 노드마다 spec이 다르면 지옥이겠네요 – 당연할지 모르지만 ironic은 snapshot을 지원하지 않습니다. (SoftLayer baremetal은 되는데) – deploy 이미지와 부팅 이미지는 별도로 가야하는… 이중 부팅이라 어쩔 수 없죠 – 근데 tftp로 전송되는 이미지는 생각보다 […]

만일 내가 회사를 세운다면..

만일 내가 회사를 세운다면.. 세울 원칙.. 오늘의 결정은 오늘까지 주어진 상황에 따른 결정이다. 상황이 바뀌면 오늘의 결정이 내일도 유효할 거라는 보장은 없다. 현장에서 바로 판단하고 즉각 실행한다. 기준은 “회사”에 이익이 된다면…. 책임과 권한은 같은 말이다. 모든 것은 신뢰에 바탕을 둔다. 신뢰를 저버린 사람은 같이할 수 없다. 모든 회사의 이익은 공유한다. ps. 만일 회사를 세운다면.. 아마 […]

[번역] Comparing Network Virtualization Techniques Available in the Cloud

아틀란타 서밋에서 CloudScaling의 발표를 보다가 OpenContrail에 관심이 생겨 조사해봤는데, 그들의 블로그에 클라우드 네트워킹을 이해하는데 아주 좋은 자료가 있어 번역해 봤습니다. 아주 어색하니 주의하시길.. 클라우드 네트워크를 가상화하는 데 사용되는 기술은 빠르게 진화하고 있다. 서로 다른 기술의 다른 점을 알아내고, 그들의 접근 방법의 장점과 장점을 이해하는 것은 대게 사소한 일이 아니다. 여기서는 1) 레거시의 가상화된 환경에서 사용되는 […]

The 6 Requirements of Enterprise-grade OpenStack

Many attempts to solve the private cloud management challenges stop at installation. Installation is just the beginning of your journey, and how easy it is doesn’t matter if your cloud is then hard to manage on a daily basis. As we all know, running a production system is not easy. In fact, private clouds are […]