System Compleat.

'YZCerberos'에 해당되는 글 231건

  1. Bonjour, 2014
  2. Adieu, 2013
  3. Hypervisor, Container and docker.io
  4. 쿼드 콥터와 수학 모델
  5. Startup 과 개발자를 위한 행사 - Cloud Taekwon

Bonjour, 2014

Stories


(younjin.jeong@gmail.com, 정윤진)





2010 이후로 부터는 인프라를 업으로 삼았던 직장 생활과 좋아하는 일에 대한 컨셉에 심각한 변화가 있었다 해도 과언이 아니다. 96년에 처음 커널을 접하고 난 이후, 아파치와 월드 와이드 웹이 국내에서 번지기 시작한 이후 개인적으로는 가장 큰 변화가 아니었나 싶을 정도로 그간 쌓아왔던 경험의 총체적인 집합이 필요한 적이 지금보다 없지 않았나 생각해 본다. 


작년 한해 동안 각종 행사, 고객의 아키텍처 리뷰, 메일을 통한 질답등을 진행하다 보니 국내에서는 아직 내가 하는 일에 대해 전반적으로 많은 사람들의 공감이 형성되어있구나 하는 생각은 별로 들지 않더라. 



국내의 대형 ISP 를 위한 클라우드 서비스를 처음 만들때도 느낀거지만, 언제나 중요한건 서비스를 이루는 구성요소의 한 부분에만 전문가가 되는것은 그다지 좋은 경력의 청사진은 아닌 듯 싶다. 네트워크를 모르고 서버의 인터페이스를 구성 할 수 없으며 encryption 이나 decryption 에 대한 오버헤드가 어떻게 발생하는지, 또 그걸 어떻게 해결 할 수 있는지에 대해서 이해하기란 쉽지 않다. 한가지 다행인 것은, 서비스에 연결되는 각 구성요소에 대한 디테일한 지식도 지식이지만, 그보다 중요한것은 구조적 컨셉에 대해 이해하는것이 훨씬 중요하다는 것을 경험에서 배운것이 도움이 될때가 많다는 것이다. 



아마존 웹 서비스에서 일하면서 한가지 아쉬운 것은, SA 로서 핸즈온이 전보다 부족하다고 느낄때가 많다는 것. 물론 이전보다 많은 사람과 기업을 만나면서 내가 도움이 된다고 느낄때가 많지만, 그에 대한 반대 급부로서 원래 하던 것을 하지 못한다고 느끼게 되는것은 기술자로서는 웬지 달가운 일은 아닌것 같다.



언제나 어디서나, 또는 누구에게나 필요한 사람이 되어야 스스로의 가치가 높아질거라는 생각에는 변함이 없다. 



2014년이 시작되고, 벌써 십수일이 지나고 있다. 

열심히 살고 있다고 믿고, 또 더 열심히 살 수 있을거라는 스스로의 위안이 효과가 있기를. 



어떻게 살아도 인생은 짧고 

내가 좋아하는 사람이 항상 내 곁에 있을 수 만은 없는것 처럼 

좋은일도 나쁜일도 모두 다 지나갈 2014년 또 한해가 되겠지만 

경험과 추억, 그리고 미래를 위한 발판의 한 해가 될 수 있기를. 



언제나 떠날 준비가 필요하다는 것을 느끼지만, 

미련이 남는것은 불가항력이라는 것 또한 진실인것을. 


뻘 포스팅 한건. 


(younjin.jeong@gmail.com, 정윤진) 





Adieu, 2013

Stories


(younjin.jeong@gmail.com, 정윤진) 


2013년은 삶에 있어 하나의 큰 획을 그었다 해도 과언이 아닐 정도로 많은 일들이 있었다. 지난 34년들의 수많은 날들 중 많은 부분에서 최고로 괴롭고도 힘들었으며, 그로인해 한번 더 머리가 굵어지지 않았나 싶다. 


올해만큼 뜨거운 여름은 없었고 또 그로인해 이만큼 좌절했던 적도 없었던 듯. 아픈만큼 성숙해 진다는 말은 어찌나 맞던지, 더 성숙해 질 구석이 있는가 싶었던 삶의 구간에 무언가 향취가 더해진 느낌이 드는건 나만의 착각인 셈 치더라도 기분이 썩 나쁘지 않다. Winston Churchill 의 명언 하나가 괴롭던 날들을 지탱하게 해 주어 제사라도 지내드리고 싶은 심정이랄까. 



http://www.hyde.edu/wp-content/uploads/2012/04/churchill.jpg




신논현역에서 봉은사 근처에 있는 집까지 걸어오는 길에는 연중 마지막날 러시아워의 붉은 미등들이 줄지어 긴 행렬을 이루고, 헤드폰을 통해 흘러 나오는 El Reloj 노래는 나만의 고요한 축제가 열린 것 같은 기분을 선사해 주더라. 끝없이 이어진 강남의 정체 행렬 속에서 홀로 걷는 기분은 나쁘지 않았어. 





El Reloj 라는 곡은 빅마마의 이영현님과 박민혜님이 부른 곡을 들었는데, 시계라는 제목과 연말의 마지막 날인 오늘이 참 어울리는 것 같아. 가사의 내용은 떠나는 연인에 대한 아쉬움으로 시간을 잡고자 하는 것인데, 연인을 올해와 올해의 마지막날로 치환하면 꽤나 들어맞는듯. 노래는 "내 머릿속의 지우개" 라는 영화에 삽입된 곡으로 들어보면 다들 알만한 노래. 정우성분의 오래된 Jeep 사하라로 손예진님을 태워서 올림픽 대로를 타는 장면에 나왔던 아름다운 곡. 






괴롭고도 힘든일은 모두 뒤로, 또 이직을 하며 있었던 수많은 도전 역시 흘려보내며 

내년은 보다 더 하루를 아끼고 온힘을 다해 새로운 것들에 도전 해 볼 수 있기를. 

또한, 내 받을 걱정없이 할 수 있는것을 다 해줄 수 있는 사람과 행복해질 수 있기를.  


El Reloj 가사는, 


Reloj no marques las horas
시계야 시간을 표시하지 말아주렴 

porque voy a enloquecer
내가 미칠 것 같아 


ella se ira para siempre cuando amanezca otra vez
해가 다시 뜬다면 그녀는 나를 영영 떠나버릴거야 


No mas nos queda esta noche para vivir nuestro amor
우리의 사랑을 나누기에는 이 밤이 마지막이야 

y tu tic-tac me recuerda mi irremedible dolor

너의 째깍째깍 소리는 아픈 나의 상처를 떠올려

Reloj deten tu camino porque mi vida se apaga
시계야, 내 생명이 꺼져가니 너의 가는길을 멈추렴 

ella es la estrella que alumbra mi ser
그녀는 내 존재를 비추는 별이란다

yo sin su amor no soy nada 
그녀의 사랑 없이 나는 아무것도 아니란다 

Deten el tiempo en tus manos
너의 손에서 시간을 멈추렴 

haz esta noche perpetua para que nunca se vaya de mi
이 밤에 내 곁을 떠나지 않고 영원하게 해줘 

para que nunca amanezca
다시는 해가 뜨지 않도록  


<간주 & 반복> 


No mas nos queda esta noche para vivir nuestro amor
y tu tic-tac me recuerda mi irremedible dolor
Reloj deten tu camino porque mi vida se apaga
ella es la estrella que alumbra mi ser
yo sin su amor no soy nada
Deten el tiempo en tus manos 
haz esta noche perpetua
para que nunca se vaya de mi
para que nunca amanezca para que nunca amanezca


(younjin.jeong@gmail.com, 정윤진)





Hypervisor, Container and docker.io

Techs



(younjin.jeong@gmail.com, 정윤진) 


수 년전에 일했던 회사중에서 아파치를 하나의 리눅스 머신에서 다양한 사용자 권한으로 수행하도록 모듈을 만들고 소스를 수정하여 서비스를 구현했던적이 있다. 기본적으로 단일 서비스 및 단일 기업을 위한 웹 사이트를 구성하는 경우에는 www-user 또는 httpd 와 같이 root 대신 적절한 사용자 레벨의 권한을 부여하여 서비스하는 것이 일반적이지만, 서로 관계가 없는 다양한 사용자들을 하나의 시스템에 수용하고자 하는 경우에는 이야기가 좀 다르다. 





위의 경우에서는 운영체제에서 지원하는 사용자관리 및 이에따른 보안 모델을 제공하며 이는 매우 오래된 역사를 가진 유닉스 System V 모델을 따르는 경우가 많다. 따라서 각 사용자의 프로세스는 구획되고 구분되며, Semaphore, Shared memory, Message pipeline, Named pipe 등의 IPC method 를 통해 서로 데이터를 참조하도록 구성하지 않는 경우라면 참조가 불가능하기 때문에 서로 다른 사용자의 권한으로 동일한 웹 서버 daemon 을 구동하는것은 그에 필요한 오버헤드만큼이나 하나의 시스템에서 높은 보안성을 가지도록 구성 할 수 있다.


새로운 시대는 더 빠른 프로세서에 대한 요구에 부합한 하드웨어들을 양산해 내게 되었으며 이로인해 다양한 OS 와 플랫폼, 그리고 어플리케이션들이 등장하게 되었는데, 이들 중 가장 그 영향력이 큰 부분중 하나는 바로 가상화 기술이다. 가상화라고 하면 보통 하나의 OS 위에 다른 OS 를 추가로 설치할 수 있는 환경으로 이해하는 경우가 많다. 가상화에 대해 조금 더 살펴보자면, 네트워크, 프로세서 및 메모리와 같은 리소스를 관리하여 게스트 OS 들에게 할당하고 인식하게 하는 기술이다. 이는 "하나의 시스템에서 여러개의 운영체제를 구동하고 싶다" 라는 요구에 의해 개발되고 발전해 왔다. 


최근에 거대하게 발전하고 있는 클라우드의 컴퓨팅 관련 서비스들은 가상화 기술을 기반으로 하고 있다. 하드웨어들은 넘쳐 흐르는 충분한 성능을 가지고 있고, 가상화가 가져다 주는 힘은 이제 단일 호스트에서 여러개의 OS 를 구동하는 것 이상으로 파워풀하다. 기존의 하나의 시스템 기반이었던 가상화 기술이 특정 하드웨어의 세트 단위로 클러스터링하거나, 사용자의 가상 리소스들 간의 고립된 네트워크 및 스토리지를 제공하는 별도의 기술이 투여 된 것이 대부분 클라우드 사업자의 컴퓨팅 관련 서비스들이라고 볼 수 있다. 


목적을 되새겨 보면, 결국 필요한 것은 "내가 실행한 어플리케이션이 정상적으로, 또한 높은 보안성으로 구동되면 된다" 라는 간단한 요구사항을 가진다. 이는 처음에 이야기했던 서로 다른 사용자의 아파치 프로세스가 유닉스의 서로 다른 사용자 권한으로 실행할 때의 요구사항과 유사하다. 하나의 시스템에서 동작하지만, 너와 나의 프로세스는 별개이며 관리하는 입장에서도 한명의 사용자 프로세스에 문제가 발생하더라도 전체 아파치의 문제로 전파되지 않기 때문에 운영과 관리측면에서도 매우 유용하다. 



가상화 또는 가상화 된 플랫폼을 기반으로 클라우드 공급자 및 3rd party 사업자들은 컨테이너 서비스를 만들어내기 시작했다. 대표적인 예가 AWS의 Elastic Beanstalk, 또는 Heroku 와 같은 서비스로 볼 수있는데, 바로 개발자들은 소스코드만 가지고 있다면 원하는 환경을 그대로 배포하여 서비스 할 수 있도록 지원하고 있는데, 이러한 서비스를 보통 컨테이너라고 부르는 경우가 많다. 컨테이너가 연상하는 기능이 바로 그렇듯이, 프레임웍이 같다면 규모는 다를지언정 그 구조가 다르지는 않기 때문에 마치 내용물은 다르지만 운반이 간편한 컨테이너와 같은 장점을 서비스에 부여하는 것이 가능하다. 


만약 이를 아파치 뿐만 아니라 다른 모든 다양한 어플리케이션에도 적용하고자 한다면 어떨까.




올 초에 이 오픈소스 프로젝트에 대해 접할 기회가 있어서 몇번 블로그에 소개하고자 했지만 여건이 나지 않았는데, 조금 살펴보니 이미 국내의 일부 블로그 포스팅에서 이를 언급하고 있고 홈페이지도 처음에 비하면 어마무지하게 좋아졌기 때문에 별도로 설치 가이드와 같은 내용을 옮길 필요는 없어 보인다. 

언제나 무언가를 사용하고 테스트 해 보고자 할때 목적이 있어야 하는데, docker.io 가 제공하는 컨테이너에 대해 개인적으로 pros 와 cons 를 나눠보면 아래와 같지 않을까. 

Pros 
- 현재까지 사용되고 있는 Hypervisor 기반의 가상화는 게스트 OS에 물리적 자원을 논리적으로 분할하여 할당하고 OS 위에 OS 를 구동하는 형태로 구성되는것과 달리 docker 는 별도의 구획된 OS가 없기 때문에 훨씬 가볍게 동작한다. 
- 이는 대단위의 클라우드와 유사한 인프라를 구성하는 경우에도 SDN 이나 별도의 네트워크 및 스토리지에 대한 전통적인 OS기반의 무언가가 필요 없기 때문에 목적에만 맞다면 기존 가상화 클러스터대비 높은 비용 효율성을 이룩할 수 있다. 
- 어플리케이션의 개발과 배포를 편리하고도 빠르게 처리 할 수 있다. 

Cons 
- 아직 빡시게 개발중이다. 
- Hypervisor 기반의 클라우드가 그래왔듯 docker 역시 사용자에 대한 구획을 대규모로 분산된 인프라에서 관리 및 구현 할 필요가 있어보인다. 
- 서비스 및 목적에 따라서는 OS 레벨의 Hypervisor 가 필요한 경우가 아직까지는 더 많이 있다. 
- 누군가 이를 PaaS 와 같은 형태의 서비스로 제작하려 한다면, Context switching 및 기타 공유 자원에 대한 부하를 급증시키는 어플리케이션에 대해 서로 다른 성능의 플랫폼으로 이전해 주거나 분산 및 확장해 주는 별도의 구조에 대해 생각 할 필요가 있다.


docker.io 는 AWS의 EC2 환경에서 손쉽게 돌려볼 수도 있다. 
http://docs.docker.io/en/latest/installation/amazon/ 


아래는 docker.io 에서 배포하고있는 슬라이드. 




새로운 무언가를 대할때는 언제나 즐거운 느낌이다. 
이를 배우고 학습하며 테스트하는데 아직 즐거워 할 수 있는 스스로에게 안도감을 느끼게 되는것은 이전보다 젊지 않아서일까. 

무언가를 직접 해 보기 전에 필요한 정보는 언제나 구글에 있다. 다만, 시도 후에 발생하는 문제와 그 해결은 있을수도, 없을수도 있으므로 검색을 먼저 먼저. 


http://docker.io


(younjin.jeong@gmail.com, 정윤진) 

쿼드 콥터와 수학 모델

Techs


(younjin.jeong@gmail.com, 정윤진)


놀이가 놀이로만 끝나지 않는 경우를 종종 목도하곤 한다. 

아래의 TED 에서 발표된 연구 결과가 그러한데, 오픈 하드웨어 플랫폼과 수학/물리 모델의 RC 장난감에의 반영이 얼만큼 놀라운 일이 될 수 있는지를 보여준다. 





여기에 필요한 각종 센서와 그 센서들의 높은 감도 그리고 이를 실시간으로 처리해야 하는 센서 네트워킹과 프로세싱의 결합은 좋은 연구 대상이 되지 않을까 한다. 그리고, 이 물리적으로 실제 동작하는 하드웨어와 소프트웨어의 결합이 미래의 컴퓨팅에 새로운 하나의 거대한 분야가 되지 않을까? 이 영상을 보고 당장 상상 가능한 디바이스가 어떤것들인지는 모르겠지만, 적어도 각자의 머릿속에 한개만 떠오르지는 않을 거다. 


언제나, 상상을 현실로 만드는 사람들이 있음에 오늘도 놀란다. 



(younjin.jeong@gmail.com, 정윤진) 





Startup 과 개발자를 위한 행사 - Cloud Taekwon

News


(younjin.jeong@gmail.com, 정윤진)


개발자와 신규 창업을 하는 Start-ups 을 위한 AWS 의 행사, 클라우드 태권이 서울 코엑스에서 10월 16일 개최 됩니다. 

자세한 정보는 아래의 링크에서. 


http://cloudtaekwonseoul.peatix.com/