Ansible2018.05.04 17:08

Hello, 


Today, I try to write an article in English in my tistory blog. 

I think my English skill is not good and my English expression is also not good.

However one of my dreams was to write article in English. So I have decided to practice writing article in English today. 


So Please understand my English expression.


Last month, I started to study Ansible. Because I want to provide high quality service when I deploy OpenStack or CloudForms to customer's DataCenter. Actually, I don't like to work same process like provision instance, configure development environment and set up basic system configuring. 


Almost during 2 weeks, I had studied Ansible alone through online learning system. At that time, I didn't understand about ansible functions, how to develop playbook and playbook's programming rule. anyway, I just studied Ansible continue.


At 3rd week of April, I went to Beijing, China Red Hat office for Ansible training. 

All trainees were man, All trainees were Chinese. and Trainer was a man also. Woman was only me.


At first day, I couldn't understand trainer's words. So second day, I moved my seat near the trainer. And I tried to listen his voice and looked his class materials. I started to understand his words and I started to interest the class. And I studied how to develop playbook and how to use ansible and ansible tower through his class materials.



As soon as came back Korea office, I needed to prepare first Ansible job for a weekend. Next Monday, I deployed Ansible and Ansible Tower to customer's server. After came back home, I developed Ansible playbook till late night. It was about baremetal OS provisioning using cobbler and Ansible. While I worked with Ansible, I have liked Ansible more. I fell into Ansible's attractiveness. Because Ansible can make automate numerous repetitive tasks. This is my github site that have my playbook codes. https://github.com/naleeJang/Ansible_Project You can refer the url.


If I have any opportunity, I will try to describe my Ansible codes. 

'Ansible' 카테고리의 다른 글

My First Ansible Presentation Story  (1) 2018.07.05
AWS EC2 with Ansible Episode  (0) 2018.06.01
OpenStack Instance auto provisioning with Ansible  (0) 2018.05.16
My First Ansible Project Episode II  (0) 2018.05.08
My First Ansible Project Episode I  (0) 2018.05.04
Posted by 나리 짱!!! naleejang
Life2018.04.30 01:24
안녕하세요! 
정말 오랜만에 블로그에 글을 올리는 것 같습니다.

그리고, 정말 오랜만에 커뮤니티에서 그동안 어떻게 지내고 있었는지에 대해서도 이야기를 나눌수 있었던 거 같습니다. 요즘 이상하게도 하는일 없이 무척 바쁜 일정 이였지만, 그래도 커뮤니티 세미나에 나가 오랫동안 만나지 못했던 반가운 사람들을 만나니 밝은 에너지를  가득 받고 온 기분이 들어 참으로 좋았습니다.

세미나에 참석 못하신 분들을 위해서 준비해 봤습니다. 가벼운 마음으로 재미있게 보아 주세요~!!


My Life for 1 year

저는 지난해 그러니까 2017년 3월에 한국 레드햇에 입사를 했습니다. 그것도 삽질 전문가로 말입니다. 그리고, 정말 정신없는 삶을 살았던거 같습니다. 레드햇에 입사하기 전 저는 작은 스타트업에서 프리세일즈 업무를 했었습니다. 누군가에게 기술에 대해 그리고 내가 제안하는 시스템에 대해 전문가로서 기술적으로 당당하고 싶었지만, 기술과 세일즈를 동시에 다 잘 한다는건 사실 너무 힘이 들었습니다. 그래서, 늘 그런 부분에 있어서 부족함으로 느끼고 있었던 찰나에 레드햇에 입사를 하게 되었던 것이였습니다.


그래서, 그동안 하지 못했던 수많은 삽질을 1년동안 정말 많이 했던것 같습니다. 거기에다가 외국계 회사 문화를 잘 알지 못했었기에 회사 문화에도 적응이 필요했습니다. 사실 일하는 방식이야 작은 회사에 있든 이곳 레드햇에서 일을 하든 크게 달라지는 건 없었지만, 수많은 각종 시스템들을 사용해야만 했고, 그런것들에 익숙해 지는것조차 상당한 시간이 필요했던 것 같습니다. 


레드햇에 와서 참으로 좋았던건 전에 있었던 회사에서는 새로운 업무를 익히기 위해서 늘 혼자서 고군분투하고, 그래서, 커뮤니티에 의지할 수 밖에 없었는데, 많은 교육 시스템을 활용할 수 있고, 필요에 따라 적절한 교육을 보내주신다는 점이었습니다. 물론 대부분의 교육이 영어로 이루어져 이전보다 더 영어공부를 열심히 해야만 하는 계기도 되었던거 같습니다.


그러다 보니 어느새 1년이라는 시간이 훅하고 지나버렸더라구요~!! 이제 저도 2년차 프로 삽질러가 되었네요.


Meet Technology, Meet People

레드햇에 입사하기 전에 저는 주로 DevStack이라던가 PackStack과 같은 스크립트로 되어 있는 툴을 사용하여 오픈스택을 설치하곤 했었습니다. 그런데, 레드햇에 입사를 해서 오픈스택을 설치하려고 보니 여기는 TripleO라는 프로젝트를 통해 오픈스택을 설치하고 있었습니다. TripleO의 핵심은 Baremetal Provisioning Service라는 IRONIC이라는 프로젝트가 핵심으로 사용되며, 이를 하기 위해서는 DHCP, TFTP, Network 설정 등 다양한 네트워크 기술 및 리눅스 기술을 필요로 했습니다. 이외에 오픈스택과 연동되는 다양한 스토리지 기술들도 필요로 합니다. 역시 오픈스택은 예전이나 지금이나 어렵습니다. 알아야 할 기술들이 많기 때문입니다.


다양한 프로젝트들을 하면서 좋은 사람들도 참 많이 만났습니다. 실력이 좋고, 성격이 좋고, 게다가 외모까지~~~ 여튼 참으로 좋은 엔지니어들을 많이 만났습니다. 그리고, 다양한 고객들도 많이 만났죠~!! 그들은 모두 오픈스택을 쓰고자 하는 목적이 모두 달랐으며, 관심도와 기술 이해도 역시 모두 달랐습니다. 하지만, 모든 사람들이 오픈스택이라는 단어를 쓸때는 연애를 할때 가슴이 콩닥콩닥 뛰는 것 같은 묘한 기분이 들기도 했습니다. 그만큼 제가 오픈스택을 사랑했었나 봅니다. 


OpenStack and Others

프로젝트를 수행하면서 저는 평소에 사용할 기회가 없어서 잘 알지 못했던 기술에 대해서도 하나씩 알아가게 되었습니다. 그 중에서도 가장 기억에 남은 것이 바로 Ceilometer 바로 미터링 서비스였습니다. 전에는 이런 서비스가 있다는 것만 알았지, 해당 서비스가 어떤 방식으로 동작을 하는지 어떤 구조와 프로세스로 이루어졌는지 이해를 하기가 어려웠습니다. 그런데, 프로젝트를 하면서 해당 서비스에 대해서 알게 되었습니다.


OpenStack Ceilometer의 프로세스를 보면 아래와 같습니다. 

1. 오픈스택에는 인스턴스와 같은 다양한 리소스들이 존재합니다.

2. 이런 리소스 정보들은 Collector에 의해 Metric 정보와 함께 모두 수집이 되어 MongoDB와 같은 데이터베이스에 저장됩니다.

3. 이때, Evaluator는 관리자가 사전에 정의해 놓은 평가 룰에 의해서, 수집된 정보와 평가 룰을 비교합니다.

4. 비교된 정보가 평가 룰에 해당하면 Notifier에 의해 로그와 Web-hook URL에 의해 사용자에게 알람을 보내게 됩니다.



OpenStack Ceilometer 프로세스의 각 요소들은 아래와 같은 서비스에서 프로젝트화 되어 관리되어 집니다.


- Gnocchi - 자원의 사용률을 수집하는 서비스

- Ceilometer - 자원 정보 및 사용율을 수집하는 서비스

- Aodh - 자원 사용율과 평가룰을 비교하고 알람을 발생시키는 서비스

 


그럼, Ceilometer에 의해 수집되어진 정보들을 어떤 명령어로 확인하면 될까요? 바로 아래와 같이 openstack metric resource list 라는 명령어로 확인할 수 있습니다. 아래 예제에서는 인스턴스만 검색하여 확인한 예입니다.


이렇게 검색된 인스턴스 정보를 자세히 들여다보면 인스턴스를 이루고 있는 자원 정보들을 모두 확인할 수 있습니다. CPU, CPU 사용률,  디스크 사용률, 메모리 사용률 및 CPU 할당량 등을 말입니다. 


여기서 그럼 CPU에 대해 정보와 메모리에 대한 정보를 아래와 같이 확인해 보겠습니다. CPU는 1 vcore가 할당되어 있는 것을 확인할 수 있고, 메모리는 512 GB가 할당되어 있는것을 확인할 수 있습니다.


위에서 확인했던 인스턴스 자원 정보는 openstack server 목록에서 확인할 수 있습니다.


그럼 앞에서 확인한 인스턴스에 알람을 설정해 보겠습니다. 여기서부터는 aodh에 해당하는 것입니다.


알람을 설정하고 나서 openstack alarm-history show 명령어를 이용하여 앞에서 설정한 알람을 확인해 보면 아래와 같이 알람 정보에 대해 확인할 수 있습니다.


또한 notifier.log에서 알람이 발생된것을 로그로 모두 확인할 수 있습니다.


또한 저는 하이브리드 클라우드로 갈 수 있도록 도와주는 CloudForms라는 레드햇 제품을 함께 기술지원을 하였습니다.

CloudForms의 오픈소스 버전은 ManageIQ로 CloudForms를 미리한번 만나 보고 싶다면, ManageIQ를 이용해 직접 설치하여 사용할 수 있습니다. 물론 저와 함께 저의 도움이 필요하다면 CloudForms를 사용하셔도 좋습니다.


CloudForms는 다양한 퍼블릭 클라우드를 관리할 수 있으며, 이외에 기존에 사용하던 하이퍼바이저인 Vmware, MS VCenter, RHV와 같은 인프라를 관리할 수 있으며, CloudForms에서 직접 프로비저닝 및 인스턴스를 관리할 수 있습니다. 또한 Ansible과 연동하여 오토메이션을 구현할 수 있으며, 쇼핑몰과 같은 Self-Service 포탈을 만들어 주는 기능 또한 가지고 있습니다.


Wrap up

커뮤니티란? 혼자 살아갈 수 없기에 다 같이 모여서 기술에 대해 함께 공부하고 이런 문화를 공유하는 곳이 바로 커뮤니티입니다. 레드햇은 오픈스택이라는 기술에 상당히 많은 컨트리뷰션과 기여를 하고 있는 회사입니다. 그리고, 커뮤니티는 이런 기술을 함께 사용하고, 또 컨트리뷰션하고 기술을 함께 발전시켜 나가는 곳입니다. 또한 그안에서 커뮤니티만의 문화를 만들어 나가는 곳이기도 하죠~!!


레드햇에서 근무하면서 저는 벤더와 커뮤니티를 편가르기 하는 경우를 종종 보았습니다. 기술은 편을 가르는게 아닙니다. 오픈스택이라는 오픈소스는 시간이 있고, 실력이 있으면, 얼마든지 가져가서 직접 사용하고 문제가 있으면 수정하고 해당 소스를 다시 커뮤니티로 기여하는 것이지, 레드햇과 같은 벤더와 편을 가르는것은 아니라고 생각을 합니다. 다만, 빠른 시간안에 클라우드 환경을 도입하고 싶고, 내가 아닌 다른 사람의 도움이 필요할 경우에 사용하는게 바로 레드햇 오픈스택이라고 생각 합니다. 


물론 오픈소스를 직접 가져다가 사용하고 기여를 할지, 레드햇과 같은 벤더사의 오픈스택을 사용할지는 기술을 도입하려고 하는 회사의 몫이겠지요~!!


아무튼 저는 레드햇이라는 회사에서 꿈에 그리던 오픈스택과 이와 관련된 다양한 기술들을 매일 매일 익히고, 이런 기술들을 고객사에 제공해 줄 수 있어서 매일매일 신이 나고 즐겁습니다.

Posted by 나리 짱!!! naleejang
OpenStack2018.03.13 22:33

오픈스택 Heat 템플릿으로 테넌트 네트워크, 라우터, 그리고 인스턴스 만들기


1. 아래 yaml 파일 다운로드 받기


params.yaml

openstack_heat_create_network_server.yaml


2. 오픈스택 데쉬보드 접속 후 오케스트레이션 메뉴로 가기


3. 스택 시작 버튼 클릭해 다운로드 받은 템플릿 파일 선택하기


4. 다음 클릭해 스택이름 입력 후 admin 계정 비밀번호 입력하기. 그리고, 파라메터들이 제대로 들어왔는지 확인하기


5. 파라메터 확인 후 하단의 실행 버튼 클릭하기


6. 스택 목록에 생성된 스택 확인하기


7. 생성된 스택 클릭을 하면 아래와 같은 토폴로지를 확인할 수 있음.


8. 개요 탭을 클릭하면 스택의 상세 정보를 확인할 수 있음.


9. 리소스 탭에서는 생성된 자원 정보를 확인할 수 있음.


10. 이벤트 탭에서는 어떤 순서로 작업이 이루어졌는지 확인할 수 있음.


11. 템플릿 탭에서는 사용된 템플릿을 확인할 수 있음.


12. 네트워크 토폴로지에서 생성된 네트워크를 확인할 수 있음.


13. 인스턴스 목록에서 생성된 인스턴스를 확인할 수 있음.


14. 인스턴스 상세정보의 콘솔 탭에서 인스턴스에 접속할 수 있음.



Posted by 나리 짱!!! naleejang
분류없음2017.11.21 17:06

클라우드폼즈 구성시 요구사항 분석을 위한 질문들

 

1. 클라우드폼즈 H/W 용량산정을 위한 질문입니다. 구축하고자 하는 오픈스택의 하드웨어 사양과 주로 사용하는 인스턴스 사양은 어떻게 됩니까?

 

 

2. 네트워크 설계를 위한 질문입니다. 클라우드폼즈에 연동하고자 하는 클라우드 종류는 어떤 것들이 있습니까?

 

3. 계정 정책 및 설계를 위한 질문입니다. 클라우드폼즈는 주로 어떤 사용자들이 사용할 예정입니까?

 

4. 클라우드 제품을 운영하기 우한 운영방법을 가지고 계십니까? 가지고 있다면, 간략하게 설명 부탁드립니다.

 

5. 오픈스택을 가지고 서비스를 시작했습니다. 오픈스택 인스턴스는 누가 생성을 합니까? 사용자의 신청을 받아 운영자가 생성을 합니까? 아니면 부서별로 테넌트/사용자 ID 및 사용 가능한 자원 정보를 할당한 뒤 각 부서에서 인스턴스를 생성하도록 권한을 부여할 계획입니까?

 

6. 유명한 퍼블릭 클라우드 서비스는 Amazon AWS, Google Cloud, Microsoft Azure가 있으며, 국내에는 KT UCloud Biz, SK TCloud Biz, Naver Cloud Platform이 있습니다. 특별히 빌링에 대해 벤치마킹을 하고 싶은 클라우드 서비스가 있습니까? 현재 온라인 사이트가 방문이 가능한 곳은 Google Cloud, Microsoft Azure, Naver Cloud Platform입니다.

 

7. 빌링을 위한 태깅을 하기 위한 질문입니다. 인스턴스는 생성시에 부서별, 사용 목적별로 인스턴스의 그룹을 지정하고 이에 맞는 보안 룰을 설정하여 사용할 수 있습니다. 오픈스택을 사용할 부서는 이미 정의가 되어 있습니까? 아니면 그때 그때 신청을 받아 운영을 할 계획입니까?

 

8. 클라우드 서비스는 주로 시간당 서비스 또는 월별 정액 과금에 대한 정책을 가지고 서비스를 합니다. 클라우드 폼즈의 Chargeback 기능을 이용하려면 이와 같은 정책이 먼저 수립되어야 합니다. 어떤 과금 정책을 가져가고 싶습니까? 시간당 서비스를 포함시키면 다양한 서비스에 대한 과금을 사용할 수 있는 대신 과금 정책이 복잡해지는 단점이 있으며, 월별 정액만 사용할 경에는 과금 정책이 단순해지는 장점이 있습니다.

Posted by 나리 짱!!! naleejang