OpenStack Horizon AWS Plugin For Hybrid Cloud

카카오
홍석용 (Dennis Hong)
dennis.hong@kakaocorp.com
2017 년 07 월
0
Horizon AWS Pluginfor hybrid cloud
오픈스택 중심 하이브리드 클라우드 플러그인
발표자 소개
클라우드 개발자
전) LG CNS
퍼블릭 클라우드 포탈 및 Open API 서비스 개발/운영
오픈스택 기반의 퍼블릭 클라우드 구축/유지보수
LG전자 및 LG그룹사 프라이빗 클라우드 구축/유지보수
현) 카카오
카카오 클라우드 포탈 개발
Ironic(Bare Metal Provisioning) Inhouse Driver 개발
Mesos기반의 Container Orchestration
홍석용 (Dennis Hong)
What : 무엇을 공유할 것인가?
1. Why Hybrid Cloud
- 요즘 클라우드의 현실 그리고 하이브리드 클라우드
- 하이브리드 클라우드 정말 유용한가
Horizon AWS Plugin 개발하며 겪은 경험과 소스 코드
2. Horizon AWS Plugin 공유
- Installation
- STEP1 : EC2 Instance 관리 기능
- STEP2 : 클라우드간의 자원 이동 기능
- Lesson & learned
# 별첨 : Horizon Plugin Starter kit 공유
- Horizon Plugin 개발을 쉽게 시작하기 위한 스켈레톤 코드를 공유합니다.
사내 프라이빗 클라우드 만으로는 모든 요구사항을 수용 불가
많은 기업들이 내부 프라이빗 클라우드를 구축하고도 퍼블릭 클라우드도 별도로 사용
개발자들의 눈높이는 AWS. 그러나 결코 저렴하지는 않은...
다양한 케이스의 인프라 요구사항을 클라우드에 던짐.
“외부 접근 가능한 개발 서버 주세요. 외부와 협업이 필요해요.”
“독일에 있는 서버 주세요. 컴플라이언스 이슈가 있데요.”
“GPU 주세요..”
“SSD 주세요.. “
“오토스케일링 주세요”
요즘 클라우드의 현실 그리고 하이브리드 클라우드
Why : Hybrid Cloud
또 다른 Silo 환경이 된 클라우드.
클라우드의 등장으로 기존 가상화 환경에서의 서버별 Silo 환경에서 탈피!
하지만, 클라우드가 범용화 되고 다양한 클라우드를 사용하게 되면서
클라우드가 또 하나의 Silo가 되고 있음.
개별 인터페이스로 개별 관리..
이쪽에서 했던 설정 저쪽에도 해야하고..
플랫폼 별로 설정을 새로 해줘야함.
플랫폼을 넘어 VM을 이관해야할 경우는..
새로 설치..?!
요즘 클라우드의 현실 그리고 하이브리드 클라우드
Why : Hybrid Cloud
Why : Hybrid Cloud
Hybrid Cloud, What is?
하이브리드 클라우드
공용 클라우드와 사설 클라우드를 결합 하여 데이터와 응용 프로그램을 공유할 수 있는 컴퓨팅 환경.
요즘 클라우드의 현실 그리고 하이브리드 클라우드
우리 오픈스택 환경에도 오픈소스로 간편하게 적용해서
하이브리드 클라우드답게 써볼 수는?
1) 데브스택으로 설치해서 사용해보기(local.conf 1 줄 추가)
enable_plugin aws-dashboard https://github.com/dennis-hong/aws-dashboard.git stable/newton
2) 기존 환경에 수동 추가 설치
- README 따라서 Control+C/V
- 일반적인 Horizon 플러그인(Trove, Sahara등)처럼 플러그인 파일 복사 à 빌드/인스톨 à 아파치 재시작
- local setting에 AWS API KEY 설정
(경로 : horizon/openstack_dashboard/local/local_settings.d/_30000_aws_dashboard.py )
+@ AWS 홈페이지에서 API KEY 발급 받아 EC2 권한 설정
How to ?
Source Code(GIT) : https://github.com/dennis-hong/aws-dashboard
설치 영상 : https://youtu.be/gEXULxQbzIg
Installation : AWS Plugin into Horizon
How to? ­ AWS API KEY 설정
Project(Tenant) UUID 별로 API Key와 Region을 설정
API Key 권한은 EC2 Full Access 필수
Instance Import/Export 권한과 S3 권한 옵션
(Instance Import/Export 기능 사용시)
Installation : AWS Plugin into Horizon
(경로 : horizon/openstack_dashboard/local/local_settings.d/_30000_aws_dashboard.py )
권한 통제는 AWS API KEY 권한 설정에서.. Read 권한만 준다거나 Delete 권한을 빼는 형식으로 지정 가능!
STEP1 : EC2 Instance 관리 기능
­ Multi-Tenancy 제공 / 권한 관리
시연 영상
유투브 :
https://youtu.be/gEXULxQbzIg?list=PLOrlT6w7S69WUrwld4h6pqM
U0TuoShAPa
STEP1 : EC2 Instance 관리 기능
­ EC2 Instance 생성/ 관리 / 삭제
- Use Case : EC2 Instance 관리 기능
- 퍼블릭 클라우드 자원을 셀프서비스
(Nova quarter, AWS API 권한 적용)
- 해외 로케이션 국가별 서버 제공
- 다양한 스펙과 자원 제공 가능 (GPU, SSD 등)
- 금융 거래, 개인정보 등 컴플라이언스를 수용
- HA 및 백업을 위해 분산 배치
STEP1 : EC2 Instance 관리 기능
STEP2 : 클라우드간 자원 이동 기능
­ 보안 그룹/ 키페어 가져오기
시연 영상
유투브 :
https://youtu.be/gEXULxQbzIg?list=PLOrlT6w7S69WUrwld
4h6pqMU0TuoShAPa
*VM Export / Import 기능은 Horizon 에 있을게 아니라 별도 비동기 배치 모듈로 분리할 예정.
STEP2 : 클라우드간 자원 이동 기능
­ OpenStack 인스턴스를 EC2로 가져오기
Convert Image Format
(qcow2 -> vhd)
Create
OpenStack Instance
Snapshot
Upload To S3
Download Image
From Glance
Import Image
Create Instance
Clean Up
Create S3 Bucket
/ Grant Permission
시연 영상
유투브 :
https://youtu.be/ycD7Zu0sUCU?list=PLOr
lT6w7S69WUrwld4h6pqMU0TuoShAPa
*VM Export / Import 기능은 Horizon 에 있을게 아니라 별도 비동기 배치 모듈로 분리할 예정.
STEP2 : 클라우드간 자원 이동 기능
­ OpenStack 인스턴스를 EC2로 가져오기
Convert Image Format
(vmdk -> qcow2)
Export EC2
Instance
Upload To Glance
Download Image From S3
(AWS Agent가 작업하기 위한 권한 필요)
Create OpenStack Instance
Clean Up
시연 영상
유투브 :
https://youtu.be/472Ti5uXO14?list=PLOrlT
6w7S69WUrwld4h6pqMU0TuoShAPa
*VM Export / Import 기능은 Horizon 에 있을게 아니라 별도 비동기 배치 모듈로 분리할 예정.
NIC Setting
STEP2 : 클라우드간 자원 이동 기능
­ EC2 인스턴스를 OpenStack으로 가져오기
- !!!!!!!!!
1) Instance Import / Export 시 제약 사항
- QCOW2 지원 안함. -> import시 vhd 포맷 선택!
- qemu-img로 컨버팅한 vmdk은 안됨. (지원하지 않는 VMDK 포맷이라고 에러)
- AWS으로 Import 한 VM만 Export 할 수 있음
- NIC인 VM 1개만 지원 됨
- Instance Import 하면 AWS가 VM interface 설정을 eth0 변경
à 이 과정에서 기존 인터페이스 파일은 vmimport.interfaces 이란 이름으로 백업 해둡니다.
다시 OpenStack 환경으로 Instance 를 가져올때 이 파일을 원복해줘야 합니다.
아니면 인터페이스 이름을 AWS 처럼 eth0로 통일 해주시면 됩니다.
- AWS에서 지원하는 OS 만 가능
- 당연히 퍼블릭 IP 바뀜. EC2 정책상 VM을 단순 껏다가 켜도 퍼블릭 IP 바뀔 수 있음.
- Import/Export Task는 동시에 5개까지 지원
2) 무서운 Library Dependency
- 본인이 좋은 거 아무거나 import 하다가는 사용자에게 대형 참사
- celery 한번 임포트 했다가 키스톤 및 오픈스택 전체를 고장내고 라이브러리 버전 맞추기 지옥 시작
(amqp, paramiko 건들지 맙시다)
- AWS boto3 1.4.4 에도 라이브러리 Dependency 버그가.. https://github.com/boto/boto3/issues/843
requirements.txt 에 botocore 버전에 대해 별도 정의 해놨음
*AWS 가이드 :
http://docs.aws.amazon.com/ko_kr/vm-
import/latest/userguide/vmimport-image-
import.html#limitations-image
Lesson & Learned
"Done Is Better Than Perfect”
- 주커버그
맺음말
오픈소스의 첫걸음은 우리 모두의 고민을 같이 해결해보자는 것이라고 생각 합니다.
남들에게 내보이기 부끄러운 코드라도
개발한 기능이 정말 우리에게 가치가 있다면
많은 분들이 함께해서 코드도 훌륭해질 것이라고 생각합니다.
또.. 그러면서 배우는 것 아니겠습니까? J
감사합니다.
Platform9 이라는 클라우드플랫폼 솔루션 회사의
주도로 등장.
nova, cinder, glance, neutron의 퍼블릭 클라우드용
드라이버를 제공하여
퍼블릭 클라우드들을 마치 오픈스택인 것처럼 사용
할 수있게 API 표준화를 목표로 등장.
퍼블릭클라우드 드라이버를 제공하는 omni 프로젝트 (2016년 10월 경 발표)
https://github.com/openstack/omni
#별첨 : Hybrid Cloud OpenStack Project
• 제약 사항
모든 오픈스택 컴포넌트들을 변경해야함.
omni 드라이버가 적용된 별도의 리전 필요.
멀티테넌시, 권한 관리 안됨.
1개의 API KEY와 리전에 대해 등록 할 수 있음.
Cloud API 인터페이스 표준화가 목적.
하이브리드 환경을 편리하게 관리하는게 주목적이 아님.
1 de 18

Recomendados

Ansible를 통한 컨테이너 환경 자동화 por
Ansible를 통한 컨테이너 환경 자동화Ansible를 통한 컨테이너 환경 자동화
Ansible를 통한 컨테이너 환경 자동화Opennaru, inc.
744 vistas33 diapositivas
Docker for V-Raptor(ARM Server) por
Docker for V-Raptor(ARM Server)Docker for V-Raptor(ARM Server)
Docker for V-Raptor(ARM Server)유명환 FunFun Yoo
4.5K vistas28 diapositivas
[오픈소스컨설팅]오픈스택에 대하여 por
[오픈소스컨설팅]오픈스택에 대하여[오픈소스컨설팅]오픈스택에 대하여
[오픈소스컨설팅]오픈스택에 대하여Ji-Woong Choi
7.5K vistas126 diapositivas
Prometheus in openstack-helm por
Prometheus in openstack-helmPrometheus in openstack-helm
Prometheus in openstack-helm성일 임
660 vistas32 diapositivas
Toward kubernetes native data center por
Toward kubernetes native data centerToward kubernetes native data center
Toward kubernetes native data center어형 이
1.1K vistas77 diapositivas
[1A6]Docker로 보는 서버 운영의 미래 por
[1A6]Docker로 보는 서버 운영의 미래[1A6]Docker로 보는 서버 운영의 미래
[1A6]Docker로 보는 서버 운영의 미래NAVER D2
25.1K vistas133 diapositivas

Más contenido relacionado

La actualidad más candente

Docker란 무엇인가? : Docker 기본 사용법 por
Docker란 무엇인가? : Docker 기본 사용법Docker란 무엇인가? : Docker 기본 사용법
Docker란 무엇인가? : Docker 기본 사용법pyrasis
67.9K vistas38 diapositivas
제2회 난공불락 오픈소스 인프라 세미나 Kubernetes por
제2회 난공불락 오픈소스 인프라 세미나 Kubernetes제2회 난공불락 오픈소스 인프라 세미나 Kubernetes
제2회 난공불락 오픈소스 인프라 세미나 KubernetesTommy Lee
4K vistas74 diapositivas
JBoss EAP on Azure Workshop por
JBoss EAP on Azure Workshop JBoss EAP on Azure Workshop
JBoss EAP on Azure Workshop rockplace
167 vistas24 diapositivas
OpenShift 4버전의 변경사항 및 OPENMARU APM의 CoreOS, CRI-O 모니터링 기능 por
OpenShift 4버전의 변경사항 및 OPENMARU APM의 CoreOS, CRI-O 모니터링 기능OpenShift 4버전의 변경사항 및 OPENMARU APM의 CoreOS, CRI-O 모니터링 기능
OpenShift 4버전의 변경사항 및 OPENMARU APM의 CoreOS, CRI-O 모니터링 기능Opennaru, inc.
335 vistas23 diapositivas
Tech planet 2015 Docker 클라우드 구축 프로젝트 - d4 por
Tech planet 2015 Docker 클라우드 구축 프로젝트 - d4Tech planet 2015 Docker 클라우드 구축 프로젝트 - d4
Tech planet 2015 Docker 클라우드 구축 프로젝트 - d4Sangcheol Hwang
7.1K vistas50 diapositivas
2015년, 리눅스를 뜨겁게 만들고 있는 5가지 기술(?) por
2015년, 리눅스를 뜨겁게 만들고 있는 5가지 기술(?)2015년, 리눅스를 뜨겁게 만들고 있는 5가지 기술(?)
2015년, 리눅스를 뜨겁게 만들고 있는 5가지 기술(?)Sangkon Han
41.6K vistas31 diapositivas

La actualidad más candente(20)

Docker란 무엇인가? : Docker 기본 사용법 por pyrasis
Docker란 무엇인가? : Docker 기본 사용법Docker란 무엇인가? : Docker 기본 사용법
Docker란 무엇인가? : Docker 기본 사용법
pyrasis67.9K vistas
제2회 난공불락 오픈소스 인프라 세미나 Kubernetes por Tommy Lee
제2회 난공불락 오픈소스 인프라 세미나 Kubernetes제2회 난공불락 오픈소스 인프라 세미나 Kubernetes
제2회 난공불락 오픈소스 인프라 세미나 Kubernetes
Tommy Lee4K vistas
JBoss EAP on Azure Workshop por rockplace
JBoss EAP on Azure Workshop JBoss EAP on Azure Workshop
JBoss EAP on Azure Workshop
rockplace167 vistas
OpenShift 4버전의 변경사항 및 OPENMARU APM의 CoreOS, CRI-O 모니터링 기능 por Opennaru, inc.
OpenShift 4버전의 변경사항 및 OPENMARU APM의 CoreOS, CRI-O 모니터링 기능OpenShift 4버전의 변경사항 및 OPENMARU APM의 CoreOS, CRI-O 모니터링 기능
OpenShift 4버전의 변경사항 및 OPENMARU APM의 CoreOS, CRI-O 모니터링 기능
Opennaru, inc. 335 vistas
Tech planet 2015 Docker 클라우드 구축 프로젝트 - d4 por Sangcheol Hwang
Tech planet 2015 Docker 클라우드 구축 프로젝트 - d4Tech planet 2015 Docker 클라우드 구축 프로젝트 - d4
Tech planet 2015 Docker 클라우드 구축 프로젝트 - d4
Sangcheol Hwang7.1K vistas
2015년, 리눅스를 뜨겁게 만들고 있는 5가지 기술(?) por Sangkon Han
2015년, 리눅스를 뜨겁게 만들고 있는 5가지 기술(?)2015년, 리눅스를 뜨겁게 만들고 있는 5가지 기술(?)
2015년, 리눅스를 뜨겁게 만들고 있는 5가지 기술(?)
Sangkon Han41.6K vistas
Docker & Kubernetes 기초 - 최용호 por 용호 최
Docker & Kubernetes 기초 - 최용호Docker & Kubernetes 기초 - 최용호
Docker & Kubernetes 기초 - 최용호
용호 최1.4K vistas
User Story :: Cloudike with KT UCloud Biz por Nalee Jang
User Story :: Cloudike with KT UCloud BizUser Story :: Cloudike with KT UCloud Biz
User Story :: Cloudike with KT UCloud Biz
Nalee Jang2.1K vistas
클라우드 서비스운영 플랫폼 가루다 Open cloudengine_패스트캣_cto 송상욱 por uEngine Solutions
클라우드 서비스운영 플랫폼 가루다 Open cloudengine_패스트캣_cto 송상욱클라우드 서비스운영 플랫폼 가루다 Open cloudengine_패스트캣_cto 송상욱
클라우드 서비스운영 플랫폼 가루다 Open cloudengine_패스트캣_cto 송상욱
uEngine Solutions1K vistas
Jenkins를 활용한 Openshift CI/CD 구성 por rockplace
Jenkins를 활용한 Openshift CI/CD 구성 Jenkins를 활용한 Openshift CI/CD 구성
Jenkins를 활용한 Openshift CI/CD 구성
rockplace755 vistas
셸 스크립트를 이용한 클라우드 시스템 운영 por Nalee Jang
셸 스크립트를 이용한 클라우드 시스템 운영셸 스크립트를 이용한 클라우드 시스템 운영
셸 스크립트를 이용한 클라우드 시스템 운영
Nalee Jang747 vistas
EKS workshop 살펴보기 por Jinwoong Kim
EKS workshop 살펴보기EKS workshop 살펴보기
EKS workshop 살펴보기
Jinwoong Kim1.3K vistas
How to contribute at OpenStack por SK Telecom
How to contribute at OpenStackHow to contribute at OpenStack
How to contribute at OpenStack
SK Telecom1.3K vistas
RancherOS Introduction por Remotty
RancherOS IntroductionRancherOS Introduction
RancherOS Introduction
Remotty3.5K vistas
Windows Kubernetes Bootstrapping and Operations por Jung Hyun Nam
Windows Kubernetes Bootstrapping and OperationsWindows Kubernetes Bootstrapping and Operations
Windows Kubernetes Bootstrapping and Operations
Jung Hyun Nam531 vistas
Docker로 서버 개발 편하게 하기 por Dronix
Docker로 서버 개발 편하게 하기Docker로 서버 개발 편하게 하기
Docker로 서버 개발 편하게 하기
Dronix16.3K vistas
2017 k8s and OpenStack-Helm por SK Telecom
2017 k8s and OpenStack-Helm2017 k8s and OpenStack-Helm
2017 k8s and OpenStack-Helm
SK Telecom7.2K vistas
오픈스택커뮤니티와기술동향 por Nalee Jang
오픈스택커뮤니티와기술동향오픈스택커뮤니티와기술동향
오픈스택커뮤니티와기술동향
Nalee Jang1.6K vistas

Similar a OpenStack Horizon AWS Plugin For Hybrid Cloud

[오픈소스컨설팅]Docker on Kubernetes v1 por
[오픈소스컨설팅]Docker on Kubernetes v1[오픈소스컨설팅]Docker on Kubernetes v1
[오픈소스컨설팅]Docker on Kubernetes v1Ji-Woong Choi
4.4K vistas66 diapositivas
Deview 2013 :: Backend PaaS, CloudFoundry 뽀개기 por
Deview 2013 :: Backend PaaS, CloudFoundry 뽀개기Deview 2013 :: Backend PaaS, CloudFoundry 뽀개기
Deview 2013 :: Backend PaaS, CloudFoundry 뽀개기Nanha Park
11.8K vistas135 diapositivas
[OpenStack Day in Korea] 15분만에 구축하는 오픈스택 기반 크라우드 솔루션: HP CloudSystem por
[OpenStack Day in Korea] 15분만에 구축하는 오픈스택 기반 크라우드 솔루션: HP CloudSystem[OpenStack Day in Korea] 15분만에 구축하는 오픈스택 기반 크라우드 솔루션: HP CloudSystem
[OpenStack Day in Korea] 15분만에 구축하는 오픈스택 기반 크라우드 솔루션: HP CloudSystemSungjin Kang
6.9K vistas28 diapositivas
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축 por
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축Ji-Woong Choi
4.6K vistas55 diapositivas
SOSCON 2017 - Backend.AI por
SOSCON 2017 - Backend.AISOSCON 2017 - Backend.AI
SOSCON 2017 - Backend.AIJoongi Kim
327 vistas42 diapositivas
[17.01.19] docker introduction (Korean Version) por
[17.01.19] docker introduction (Korean Version)[17.01.19] docker introduction (Korean Version)
[17.01.19] docker introduction (Korean Version)Ildoo Kim
472 vistas37 diapositivas

Similar a OpenStack Horizon AWS Plugin For Hybrid Cloud(20)

[오픈소스컨설팅]Docker on Kubernetes v1 por Ji-Woong Choi
[오픈소스컨설팅]Docker on Kubernetes v1[오픈소스컨설팅]Docker on Kubernetes v1
[오픈소스컨설팅]Docker on Kubernetes v1
Ji-Woong Choi4.4K vistas
Deview 2013 :: Backend PaaS, CloudFoundry 뽀개기 por Nanha Park
Deview 2013 :: Backend PaaS, CloudFoundry 뽀개기Deview 2013 :: Backend PaaS, CloudFoundry 뽀개기
Deview 2013 :: Backend PaaS, CloudFoundry 뽀개기
Nanha Park11.8K vistas
[OpenStack Day in Korea] 15분만에 구축하는 오픈스택 기반 크라우드 솔루션: HP CloudSystem por Sungjin Kang
[OpenStack Day in Korea] 15분만에 구축하는 오픈스택 기반 크라우드 솔루션: HP CloudSystem[OpenStack Day in Korea] 15분만에 구축하는 오픈스택 기반 크라우드 솔루션: HP CloudSystem
[OpenStack Day in Korea] 15분만에 구축하는 오픈스택 기반 크라우드 솔루션: HP CloudSystem
Sungjin Kang6.9K vistas
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축 por Ji-Woong Choi
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축
[오픈소스컨설팅]쿠버네티스를 활용한 개발환경 구축
Ji-Woong Choi4.6K vistas
SOSCON 2017 - Backend.AI por Joongi Kim
SOSCON 2017 - Backend.AISOSCON 2017 - Backend.AI
SOSCON 2017 - Backend.AI
Joongi Kim327 vistas
[17.01.19] docker introduction (Korean Version) por Ildoo Kim
[17.01.19] docker introduction (Korean Version)[17.01.19] docker introduction (Korean Version)
[17.01.19] docker introduction (Korean Version)
Ildoo Kim472 vistas
Backend.AI: 오픈소스 머신러닝 인프라 프레임워크 por Jeongkyu Shin
Backend.AI: 오픈소스 머신러닝 인프라 프레임워크Backend.AI: 오픈소스 머신러닝 인프라 프레임워크
Backend.AI: 오픈소스 머신러닝 인프라 프레임워크
Jeongkyu Shin3.6K vistas
Docker 사용가이드 public v0.1 por Steve Shim
Docker 사용가이드 public v0.1Docker 사용가이드 public v0.1
Docker 사용가이드 public v0.1
Steve Shim709 vistas
Machine Learning Model Serving with Backend.AI por Jeongkyu Shin
Machine Learning Model Serving with Backend.AIMachine Learning Model Serving with Backend.AI
Machine Learning Model Serving with Backend.AI
Jeongkyu Shin1.6K vistas
왜 컨테이너인가? - OpenShift 구축 사례와 컨테이너로 환경 전환 시 고려사항 por rockplace
왜 컨테이너인가? - OpenShift 구축 사례와 컨테이너로 환경 전환 시 고려사항왜 컨테이너인가? - OpenShift 구축 사례와 컨테이너로 환경 전환 시 고려사항
왜 컨테이너인가? - OpenShift 구축 사례와 컨테이너로 환경 전환 시 고려사항
rockplace1.1K vistas
DevOps - CI/CD 알아보기 por SeungYong Baek
DevOps - CI/CD 알아보기DevOps - CI/CD 알아보기
DevOps - CI/CD 알아보기
SeungYong Baek199 vistas
JMI Techtalk : Backend.AI por Lablup Inc.
JMI Techtalk : Backend.AIJMI Techtalk : Backend.AI
JMI Techtalk : Backend.AI
Lablup Inc.204 vistas
Docker.소개.30 m por Wonchang Song
Docker.소개.30 mDocker.소개.30 m
Docker.소개.30 m
Wonchang Song11.2K vistas
Cloud Native Days Korea 2019 - kakao's k8s_as_a_service por Dennis Hong
Cloud Native Days Korea 2019 - kakao's k8s_as_a_serviceCloud Native Days Korea 2019 - kakao's k8s_as_a_service
Cloud Native Days Korea 2019 - kakao's k8s_as_a_service
Dennis Hong349 vistas
docker on GCE ( JIRA & Confluence ) - GDG Korea Cloud por Jude Kim
docker on GCE ( JIRA & Confluence ) - GDG Korea Clouddocker on GCE ( JIRA & Confluence ) - GDG Korea Cloud
docker on GCE ( JIRA & Confluence ) - GDG Korea Cloud
Jude Kim2.3K vistas
aws/docker/rails를 활용한 시스템 구축/운용 - docker편 por negabaro
aws/docker/rails를 활용한 시스템 구축/운용 - docker편aws/docker/rails를 활용한 시스템 구축/운용 - docker편
aws/docker/rails를 활용한 시스템 구축/운용 - docker편
negabaro1.5K vistas

Último

성능 테스트 por
성능 테스트성능 테스트
성능 테스트Wonjun Hwang
8 vistas13 diapositivas
CES 처음 가는 분을 위한 가이드 por
CES 처음 가는 분을 위한 가이드CES 처음 가는 분을 위한 가이드
CES 처음 가는 분을 위한 가이드Minsuk Lee
677 vistas31 diapositivas
해커가 되고 싶은 자는 나에게... 정보보안 입문과 길 찾기 por
해커가 되고 싶은 자는 나에게... 정보보안 입문과 길 찾기해커가 되고 싶은 자는 나에게... 정보보안 입문과 길 찾기
해커가 되고 싶은 자는 나에게... 정보보안 입문과 길 찾기Jinkyoung Kim
46 vistas139 diapositivas
클라우드 네이티브 전환 요소 및 성공적인 쿠버네티스 도입 전략 por
클라우드 네이티브 전환 요소 및 성공적인 쿠버네티스 도입 전략클라우드 네이티브 전환 요소 및 성공적인 쿠버네티스 도입 전략
클라우드 네이티브 전환 요소 및 성공적인 쿠버네티스 도입 전략Open Source Consulting
114 vistas25 diapositivas
컴포넌트 설계 por
컴포넌트 설계컴포넌트 설계
컴포넌트 설계Wonjun Hwang
11 vistas21 diapositivas
Exploring Deep Learning Acceleration Technology Embedded in LLMs por
Exploring Deep Learning Acceleration Technology Embedded in LLMsExploring Deep Learning Acceleration Technology Embedded in LLMs
Exploring Deep Learning Acceleration Technology Embedded in LLMsTae Young Lee
26 vistas53 diapositivas

Último(6)

CES 처음 가는 분을 위한 가이드 por Minsuk Lee
CES 처음 가는 분을 위한 가이드CES 처음 가는 분을 위한 가이드
CES 처음 가는 분을 위한 가이드
Minsuk Lee677 vistas
해커가 되고 싶은 자는 나에게... 정보보안 입문과 길 찾기 por Jinkyoung Kim
해커가 되고 싶은 자는 나에게... 정보보안 입문과 길 찾기해커가 되고 싶은 자는 나에게... 정보보안 입문과 길 찾기
해커가 되고 싶은 자는 나에게... 정보보안 입문과 길 찾기
Jinkyoung Kim46 vistas
클라우드 네이티브 전환 요소 및 성공적인 쿠버네티스 도입 전략 por Open Source Consulting
클라우드 네이티브 전환 요소 및 성공적인 쿠버네티스 도입 전략클라우드 네이티브 전환 요소 및 성공적인 쿠버네티스 도입 전략
클라우드 네이티브 전환 요소 및 성공적인 쿠버네티스 도입 전략
Exploring Deep Learning Acceleration Technology Embedded in LLMs por Tae Young Lee
Exploring Deep Learning Acceleration Technology Embedded in LLMsExploring Deep Learning Acceleration Technology Embedded in LLMs
Exploring Deep Learning Acceleration Technology Embedded in LLMs
Tae Young Lee26 vistas

OpenStack Horizon AWS Plugin For Hybrid Cloud

  • 1. 카카오 홍석용 (Dennis Hong) dennis.hong@kakaocorp.com 2017 년 07 월 0 Horizon AWS Pluginfor hybrid cloud 오픈스택 중심 하이브리드 클라우드 플러그인
  • 2. 발표자 소개 클라우드 개발자 전) LG CNS 퍼블릭 클라우드 포탈 및 Open API 서비스 개발/운영 오픈스택 기반의 퍼블릭 클라우드 구축/유지보수 LG전자 및 LG그룹사 프라이빗 클라우드 구축/유지보수 현) 카카오 카카오 클라우드 포탈 개발 Ironic(Bare Metal Provisioning) Inhouse Driver 개발 Mesos기반의 Container Orchestration 홍석용 (Dennis Hong)
  • 3. What : 무엇을 공유할 것인가? 1. Why Hybrid Cloud - 요즘 클라우드의 현실 그리고 하이브리드 클라우드 - 하이브리드 클라우드 정말 유용한가 Horizon AWS Plugin 개발하며 겪은 경험과 소스 코드 2. Horizon AWS Plugin 공유 - Installation - STEP1 : EC2 Instance 관리 기능 - STEP2 : 클라우드간의 자원 이동 기능 - Lesson & learned # 별첨 : Horizon Plugin Starter kit 공유 - Horizon Plugin 개발을 쉽게 시작하기 위한 스켈레톤 코드를 공유합니다.
  • 4. 사내 프라이빗 클라우드 만으로는 모든 요구사항을 수용 불가 많은 기업들이 내부 프라이빗 클라우드를 구축하고도 퍼블릭 클라우드도 별도로 사용 개발자들의 눈높이는 AWS. 그러나 결코 저렴하지는 않은... 다양한 케이스의 인프라 요구사항을 클라우드에 던짐. “외부 접근 가능한 개발 서버 주세요. 외부와 협업이 필요해요.” “독일에 있는 서버 주세요. 컴플라이언스 이슈가 있데요.” “GPU 주세요..” “SSD 주세요.. “ “오토스케일링 주세요” 요즘 클라우드의 현실 그리고 하이브리드 클라우드 Why : Hybrid Cloud
  • 5. 또 다른 Silo 환경이 된 클라우드. 클라우드의 등장으로 기존 가상화 환경에서의 서버별 Silo 환경에서 탈피! 하지만, 클라우드가 범용화 되고 다양한 클라우드를 사용하게 되면서 클라우드가 또 하나의 Silo가 되고 있음. 개별 인터페이스로 개별 관리.. 이쪽에서 했던 설정 저쪽에도 해야하고.. 플랫폼 별로 설정을 새로 해줘야함. 플랫폼을 넘어 VM을 이관해야할 경우는.. 새로 설치..?! 요즘 클라우드의 현실 그리고 하이브리드 클라우드 Why : Hybrid Cloud
  • 6. Why : Hybrid Cloud Hybrid Cloud, What is? 하이브리드 클라우드 공용 클라우드와 사설 클라우드를 결합 하여 데이터와 응용 프로그램을 공유할 수 있는 컴퓨팅 환경. 요즘 클라우드의 현실 그리고 하이브리드 클라우드 우리 오픈스택 환경에도 오픈소스로 간편하게 적용해서 하이브리드 클라우드답게 써볼 수는?
  • 7. 1) 데브스택으로 설치해서 사용해보기(local.conf 1 줄 추가) enable_plugin aws-dashboard https://github.com/dennis-hong/aws-dashboard.git stable/newton 2) 기존 환경에 수동 추가 설치 - README 따라서 Control+C/V - 일반적인 Horizon 플러그인(Trove, Sahara등)처럼 플러그인 파일 복사 à 빌드/인스톨 à 아파치 재시작 - local setting에 AWS API KEY 설정 (경로 : horizon/openstack_dashboard/local/local_settings.d/_30000_aws_dashboard.py ) +@ AWS 홈페이지에서 API KEY 발급 받아 EC2 권한 설정 How to ? Source Code(GIT) : https://github.com/dennis-hong/aws-dashboard 설치 영상 : https://youtu.be/gEXULxQbzIg Installation : AWS Plugin into Horizon
  • 8. How to? ­ AWS API KEY 설정 Project(Tenant) UUID 별로 API Key와 Region을 설정 API Key 권한은 EC2 Full Access 필수 Instance Import/Export 권한과 S3 권한 옵션 (Instance Import/Export 기능 사용시) Installation : AWS Plugin into Horizon (경로 : horizon/openstack_dashboard/local/local_settings.d/_30000_aws_dashboard.py )
  • 9. 권한 통제는 AWS API KEY 권한 설정에서.. Read 권한만 준다거나 Delete 권한을 빼는 형식으로 지정 가능! STEP1 : EC2 Instance 관리 기능 ­ Multi-Tenancy 제공 / 권한 관리
  • 10. 시연 영상 유투브 : https://youtu.be/gEXULxQbzIg?list=PLOrlT6w7S69WUrwld4h6pqM U0TuoShAPa STEP1 : EC2 Instance 관리 기능 ­ EC2 Instance 생성/ 관리 / 삭제
  • 11. - Use Case : EC2 Instance 관리 기능 - 퍼블릭 클라우드 자원을 셀프서비스 (Nova quarter, AWS API 권한 적용) - 해외 로케이션 국가별 서버 제공 - 다양한 스펙과 자원 제공 가능 (GPU, SSD 등) - 금융 거래, 개인정보 등 컴플라이언스를 수용 - HA 및 백업을 위해 분산 배치 STEP1 : EC2 Instance 관리 기능
  • 12. STEP2 : 클라우드간 자원 이동 기능 ­ 보안 그룹/ 키페어 가져오기 시연 영상 유투브 : https://youtu.be/gEXULxQbzIg?list=PLOrlT6w7S69WUrwld 4h6pqMU0TuoShAPa
  • 13. *VM Export / Import 기능은 Horizon 에 있을게 아니라 별도 비동기 배치 모듈로 분리할 예정. STEP2 : 클라우드간 자원 이동 기능 ­ OpenStack 인스턴스를 EC2로 가져오기
  • 14. Convert Image Format (qcow2 -> vhd) Create OpenStack Instance Snapshot Upload To S3 Download Image From Glance Import Image Create Instance Clean Up Create S3 Bucket / Grant Permission 시연 영상 유투브 : https://youtu.be/ycD7Zu0sUCU?list=PLOr lT6w7S69WUrwld4h6pqMU0TuoShAPa *VM Export / Import 기능은 Horizon 에 있을게 아니라 별도 비동기 배치 모듈로 분리할 예정. STEP2 : 클라우드간 자원 이동 기능 ­ OpenStack 인스턴스를 EC2로 가져오기
  • 15. Convert Image Format (vmdk -> qcow2) Export EC2 Instance Upload To Glance Download Image From S3 (AWS Agent가 작업하기 위한 권한 필요) Create OpenStack Instance Clean Up 시연 영상 유투브 : https://youtu.be/472Ti5uXO14?list=PLOrlT 6w7S69WUrwld4h6pqMU0TuoShAPa *VM Export / Import 기능은 Horizon 에 있을게 아니라 별도 비동기 배치 모듈로 분리할 예정. NIC Setting STEP2 : 클라우드간 자원 이동 기능 ­ EC2 인스턴스를 OpenStack으로 가져오기
  • 16. - !!!!!!!!! 1) Instance Import / Export 시 제약 사항 - QCOW2 지원 안함. -> import시 vhd 포맷 선택! - qemu-img로 컨버팅한 vmdk은 안됨. (지원하지 않는 VMDK 포맷이라고 에러) - AWS으로 Import 한 VM만 Export 할 수 있음 - NIC인 VM 1개만 지원 됨 - Instance Import 하면 AWS가 VM interface 설정을 eth0 변경 à 이 과정에서 기존 인터페이스 파일은 vmimport.interfaces 이란 이름으로 백업 해둡니다. 다시 OpenStack 환경으로 Instance 를 가져올때 이 파일을 원복해줘야 합니다. 아니면 인터페이스 이름을 AWS 처럼 eth0로 통일 해주시면 됩니다. - AWS에서 지원하는 OS 만 가능 - 당연히 퍼블릭 IP 바뀜. EC2 정책상 VM을 단순 껏다가 켜도 퍼블릭 IP 바뀔 수 있음. - Import/Export Task는 동시에 5개까지 지원 2) 무서운 Library Dependency - 본인이 좋은 거 아무거나 import 하다가는 사용자에게 대형 참사 - celery 한번 임포트 했다가 키스톤 및 오픈스택 전체를 고장내고 라이브러리 버전 맞추기 지옥 시작 (amqp, paramiko 건들지 맙시다) - AWS boto3 1.4.4 에도 라이브러리 Dependency 버그가.. https://github.com/boto/boto3/issues/843 requirements.txt 에 botocore 버전에 대해 별도 정의 해놨음 *AWS 가이드 : http://docs.aws.amazon.com/ko_kr/vm- import/latest/userguide/vmimport-image- import.html#limitations-image Lesson & Learned
  • 17. "Done Is Better Than Perfect” - 주커버그 맺음말 오픈소스의 첫걸음은 우리 모두의 고민을 같이 해결해보자는 것이라고 생각 합니다. 남들에게 내보이기 부끄러운 코드라도 개발한 기능이 정말 우리에게 가치가 있다면 많은 분들이 함께해서 코드도 훌륭해질 것이라고 생각합니다. 또.. 그러면서 배우는 것 아니겠습니까? J 감사합니다.
  • 18. Platform9 이라는 클라우드플랫폼 솔루션 회사의 주도로 등장. nova, cinder, glance, neutron의 퍼블릭 클라우드용 드라이버를 제공하여 퍼블릭 클라우드들을 마치 오픈스택인 것처럼 사용 할 수있게 API 표준화를 목표로 등장. 퍼블릭클라우드 드라이버를 제공하는 omni 프로젝트 (2016년 10월 경 발표) https://github.com/openstack/omni #별첨 : Hybrid Cloud OpenStack Project • 제약 사항 모든 오픈스택 컴포넌트들을 변경해야함. omni 드라이버가 적용된 별도의 리전 필요. 멀티테넌시, 권한 관리 안됨. 1개의 API KEY와 리전에 대해 등록 할 수 있음. Cloud API 인터페이스 표준화가 목적. 하이브리드 환경을 편리하게 관리하는게 주목적이 아님.