본문 바로가기
Development(Web, Server, Cloud)/22) LINUX - Cloud

클라우드 54일차 - 오픈스택 보강

by tonyhan18 2022. 3. 22.
728x90

클라우드 컴퓨팅은 어떠한 서비스를 제공하느냐에 따라 (NIST)

1. IaaS : 그냥 소프트웨어를 올릴 공간 제공

2. PaaS : 소프트웨어를 만들기 위한 환경을 제공(docker)

3. SaaS : 최종 산출물인 소프트웨어 제공

 

클라우드 서비스를 비용을 받느냐???

1. public cloud : 비용이 발생함(전기요금 방식) -> aws, gcp, azure와 같이 환경이 구축된 곳에서 서비스를 이용하면 된다. 초기비용이 거의 들지 않는다.

2. private cloud : 자체적인 DC를 구축하고 해당 환경내에서 비용을 받지 않고 직원들 또는 특정 파트너, 고객 들에게 서비스를 제공. 접속에 제한.

자체 DC< 전기, 내진설계, 환경구성을 위한 인력, 관리인력등의 비용 소모. 초기 투자비용이 매우 많이 들어간다. 따라서 규모가 작으면 이걸 할 이유가 없음. Openstack을 가져다가 환경을 만들면 private cloud임

=> openstack, cloudstack -> 오픈소스이므로 안전성을 보장받을 수는 없음. -> 도입은 신중하게 접근

현재까지는 IaaS 비중이 높은 편이다 그래서 서비스의 종류가 퍼블릭클라우드와는 비교되지 않을 정도록 적은 편이다.

 

대표적인 aws의 서비스

nova -> 컴퓨트 서비스 (cpu, ram) : 하이퍼바이저(내부에 kvm)

neutron -> 네트워크 서비스(dns, dhcp, nat/pat, vlan, vxlan[openvswitch], routing, lb[HAProxy])

keystone -> 인증서비스(DB 로 관리되며 인증이 된 이후에 서비스를 이용할 수 있는 "토큰"을 발급받는다.

cinder -> block storage

swift -> object storage

horizon -> 대시보드 (CLI가 아닌 웹을 통해 서비스를 제공받을 수 있다.)

heat -> yml 파일을 이용하여 템플릿 기반의 환경구성 및 서비스 제공이 가능하다.(IaC)

manilla -> 공유저장소

glanmce -> 이미지 서비스 (클라우드 이미지를 등록하고 사용자가 인스턴스를 생성할 때 리스트를 보여준다.)

 

????

나의 서비스들은 프로젝트 내에서 모든 것이 이루어지고

 

인증서버를 Database에 넣어두어서 가상머신들을 관리할 수 있게 된다.

이러한 공간을 테넌트 (= 프로젝트)에서 관리하게 된다.

 

정리하면 이 구성을 위해서는 서버가 있어야 하고 인증을 통해서 다른 서버를 이용할 수 있게 된다.

keystone -> 인증서비스(DB 로 관리되며 인증이 된 이후에 서비스를 이용할 수 있는 "토큰"을 발급받는다.

 

컴퓨트를 위해 블록스토리지를 받을 수 있어야 한다.

cinder -> block storage

swift -> object storage

horizon -> 대시보드 (CLI가 아닌 웹을 통해 서비스를 제공받을 수 있다.)

 

이걸 또 통합해서 한개의 파일로 관리하고 싶어질 수 있다.

heat -> yml 파일을 이용하여 템플릿 기반의 환경구성 및 서비스 제공이 가능하다.(IaC)

  CloudFormation@aws

  heat는 aws 템플릿도 제공하므로 오픈스택환경에서 aws로 템플릿기반의 환경구성 가능하다.

manilla -> 공유저장소(nfs)

magnum -> 스웜/k8s 클러스터 서비스(안정적이지 못함)

jobx, ngios, kactus, grafana, cadavisor, prometheus

 

---

 

압축푼 폴더를 열어서 openstack을 실재로 실행시키어보자

 

kvm은 하이퍼바이저만 사용할 수 있지만

openstack은 인증, 로드밸런서 등등 보다 다양한 서비스를 제공한다.

 

vmware로 openstack을 실행시키자. 참고로 오픈스택은 a, b, c, d 버전명을 사용한다.

전세계 아름다운 길이름을 갖다 붙인다.

 

암튼 실행시키면 이 안에는 다양한 서비스들이 설치되어 있다.

 

현재 openstaack의 ip 211.183.3.100으로 접속해보자

admin / test123

 

하면 화면과 같은 간략한 요약정보가 보인다.

 

Compute > 개요 를 열어보자.

 

그러면 우리가 만들던것이 보인다.

 

각 프로젝트 별로 인스턴스, 네트워크, 저장공간 등등이 보인다. 그리고 이 프로젝트에 참가하는 사용자들도 볼 수 있다.(인증 > 사용자)

 

다시 프로젝트의 API 액세스에 가보자.

???

 

compute > 개요로 가보면 현재 제공할 수 있는 용량을 확인할 수 있다.

 

Floating IP는 EIP 서비스라고 생각하면 된다.

보안 그룹 서비스도 있다.

 

이러한 서비스들을 각 프로젝트 별로 제공하고 있다.

 

그 외에도 compute 내에는 인스턴스, 이미지(OS, 서비스등의 이미지 파일들), 키 페어()

 

---

 

네트워크 > 네트워크 토폴로지를 가보자

가보면 네트워크 연결이 가능한 publc이 보인다.

 

관리 > 네트워크 > 네트워크 가면 public, private network 들이 보인다.

 

이 둘을 삭제하려고 하면 에러가 보이는 것을 확인할 수 있다. 

이는 라우터에 네트워크가 연결된 구조라서 그렇다.

라우터에 가서 삭제하면 네트워크 삭제가 가능해진다.

 

 

728x90

'Development(Web, Server, Cloud) > 22) LINUX - Cloud' 카테고리의 다른 글

클라우드 56 일차  (0) 2022.03.25
클라우드 55일차  (0) 2022.03.24
클라우드 54일차  (0) 2022.03.22
클라우드 53일차  (0) 2022.03.21
클라우드 52일차  (0) 2022.03.18