# Openstack 주요 서비스 1

---------------


0. Openstack 의 설치가 서비스간의 의존도를 파악하면 순서를 파악하기 용이하다

- keystone > glance > nova > ... >horizon

- swift 는 별도이다 (swift 는 원래 인증절차를 가지고 있었다 + keystone 인증도 가능하도록 지원한다)


1. nova == compute service

- NASA 의 compute 프로젝트로 시작

- flow

       

- Client API call > ... >  메시지 큐 > nova-스케쥴러 > internal 통신(RPC) > nova-compute > hypervisor(ESXi, KVM, Hyper-V, etc)

- 동작이 오래 걸릴 수 있기 때문에 Client 에게 미리 response 를 보낸 후, 메시지 큐를 이용한다

- nova-compute 1 : 1 hypervisor

- HTTPS:443 -> vCenter

- XCP -> Xen server

- libvirt Driver (하이퍼바이저 를 wraping 한다) -> KVM, Virtual Box, (Ironic, 물리머신 Juno 이후에 지원함)

- 기타 support 하는 hypervisor 정보 :  

 - https://wiki.openstack.org/wiki/HypervisorSupportMatrix

              - 지원하는 기능에 따라서 그룹 A/B/C 로 나뉜다

- nova-network 모듈 : newtron service 없이도 flat network 은 구성이 가능하다 (vLan)

- nova-database 모듈: instance 정보, request정보 들을 관리한다


2. swift == object storage service

- Rackspace 의 프로젝트로 시작

- 4개의 내부 모듈로 구성

- swift proxy : API 통신

- container : 파일을 저장하기 위한 필수 layer

- account : 자체 user (glance 등과 통신에 필요한) 및 object 에 대한 권한 부여를 위한 user 정보 layer

- object : 실제 파일이 저장되는 layer

- 특징

- 표준 범용 하드웨어 규격으로 설치할 수 있도록 설계됨

- 언제든지 망가질수 있다 == 데이터 관리의 중요성(default 3 replica) 홀수개의 replica 유지

- 높은 확장성

- 대용량 object storage 로 저장하는 것만큼 파일의 위치를 저장, 기억하는 것도 중요함 : hashing 기술

- 알파벳 순 정렬 : 중간추가, 정리가 어렵다 대용량에 맞지 않는 방법이다

- 카테고리화 : hashing (space to space 맵핑)


3. glance == VM Image Manager

- nova 에서 사용할 boot disk image

- end user 가 정할 수 없다

- 보동 image 의 size 는 수십 MB ~ 수십 GB

- vmdk, iso, vdi ...

- FTP 와 원리가 비슷하다

- FTP : 21(meta),22(data) port 를 쓴다

- glance : 2개의 end point URL 이 있다 (image meta), (image data)

- image data 저장소로 swift(최근 default) 로 쓰는 경우가 많다


4. keystone == identity service 사용자 인증 서비스

   

- 주요 기능 : 유저 인증을 통한 token 발급, end point 카탈로그를 보여준다

- service catalog > 리전에 dependancy 를 가진다

- public URL : end user 에게 보여주는 용

- internal URL : 내부 모듈 에게 제공하는 용

- admin URL : 관리 용

- 4 개의 backend service 를 가지고 있다

- identuty, catalog, token backend : keystone 내부 모듈로, 위 flow 로 기능 참조

- policy backend 의 경우, 각 service 에 존재하며 (keystone 에 존재하지 않는다) 권한에 대한 정보를 가지고 있다

- 인증 authentication 사용자  < -- 비교 -- >  인가 authorization 권한

- CF > 보안 강도에 따른 보안 솔루션



5. horizon == Dashboard GUI 서비스

- 사용조건 : openstack 의 계정이 있어야 한다

- 약 1시간 단위로 갱신되는 session 정보를 가지고 있다 != keystone 인증과 다르다

- 아파치 웹서버를 사용하며, 파이썬장고 프레임웍으로 구현됨

'Cloud > Openstack' 카테고리의 다른 글

Openstack 아키텍쳐  (0) 2016.08.16
Openstack 주요 서비스 2  (0) 2016.08.16
Openstack is  (0) 2016.08.16
Posted by 감각적신사
,