SlideShare a Scribd company logo
2017년 5월, “코딩이랑 무관한 Azure 소개” 연합 세미나 발표
(코딩이랑 무관합니다만, + 오픈스택 한국 커뮤니티)
최영락, 오픈스택 한국 커뮤니티 대표 &
Microsoft MVP (Cloud & Datacenter Management)
2
목차
• Part 1: 클라우드 컴퓨팅과 API
• Part 2: Azure - CLI vs. SDK vs. 콘솔
• Part 3: Azure CLI 2.0 & Cloud Shell
3
Special thanks to…!
(역자 및 출판사 양해를 구하여 일부 설명 및 그림을 인용하였습니다)
클라우드 컴퓨팅과 API
5
클라우드 컴퓨팅
Over-provisioning
Demand
Capacity
t
Resources
Resources
Demand
Capacity
t1 2 3
Under-provisioning
Demand
Capacity
t
Resources
On demand, scalable
[1] http://www.basilit.com/Website/CloudComputing.aspx
[2] Above the Clouds: A Berkeley View of Cloud Computing
• 클라우드 컴퓨팅
• (언제 어디서나) 필요한 IT 자원을 즉시 사용할 수 있는 환경
• 소비자: 클라우드로 off-loading & 원하는 때만 사용
• 서비스 제공자: 자원 utilization 향상을 통한 수익 증대
6
클라우드와 가상화
• 자원, 즉 리소스를 사용하고 소비하는 방식 변화
• 클라우드 이전: 필요하면 구입
• 서버 위치, 서버 및 장비 구입 비용, 수명, 전기세
• 클라우드 등장
• 시간당 지불
• 사용한 만큼 지불
• 빠르게…
• 유연하게…
• 서비스 유형에 따른 구분
• IaaS: 인프라를 서비스로 제공  OpenStack, Microsoft Azure, Amazon AWS, IBM Bluemix
• PaaS: (개발) 플랫폼을 서비스로 제공  Microsoft Azure, Google AppEngine, IBM Bluemix
• SaaS: 소프트웨어를 서비스로 제공  Office 365
• (오늘 설명하는 부분은 인프라 – IaaS와 관련한 부분입니다)
Blue network Red network
물리
네트워크
네트워크 가상화
7
클라우드 환경에서 인프라 구축
• 물리적 장비 설정 방법이나 기능 차이를 신경쓰지 않고 인프라 구축 가능
• 컴포넌트의 추상화
• 방화벽 장치 vs. 보안 그룹
• 서버 사양 vs. 가상 컴퓨터 유형
• Azure: A1, DS2
• AWS: t2.small, m3.large
• OpenStack: tiny, large
• …
• 자동화
(Reference: “그림으로 배우는 클라우드 인프라와 API의 구조”, 신상재 옮김, 2017년 5월)
8
잠깐: API에 관해서
• API (Application Programming Interface)
• 프로그램과 프로그램이 서로 명령을 주고 받기 위해 미리 약속해둔 일종의 규칙
9
API를 사용한 클라우드 컴퓨팅 제어
• 클라우드 인프라에 공개된 API 목록
• Azure: https://docs.microsoft.com/en-us/rest/api/
• AWS: https://aws.amazon.com/ko/documentation/ 내 링크
• OpenStack: https://developer.openstack.org/ko_KR/api-guide/quick-
start/index.html
• API 파악시 장점
• 어떤 구성 요소가 있는지 파악 가능
• 추상화되어 있는 기능에 대한 자세한 이해
• 시스템 구축 표준화 방안 마련
(Reference: “그림으로 배우는 클라우드 인프라와 API의 구조”, 신상재 옮김, 2017년 5월)
10
클라우드 컴퓨팅 제어 방안
• 웹 콘솔 (GUI)을 사용한 제어
• 명령어를 사용한 제어
• 직접 개발한 프로그램을 사용한 제어
• 자동화 툴을 사용한 제어
11
클라우드 컴퓨팅 제어 방안
• 웹 콘솔 (GUI)을 사용한 제어
(Reference: “그림으로 배우는 클라우드 인프라와 API의 구조”, 신상재 옮김, 2017년 5월)
12
클라우드 컴퓨팅 제어 방안
• 명령어를 사용한 제어
(Reference: “그림으로 배우는 클라우드 인프라와 API의 구조”, 신상재 옮김, 2017년 5월)
13
클라우드 컴퓨팅 제어 방안
• 직접 개발한 프로그램을 사용한 제어
(Reference: “그림으로 배우는 클라우드 인프라와 API의 구조”, 신상재 옮김, 2017년 5월)
14
클라우드 컴퓨팅 제어 방안
• 자동화 툴을 사용한 제어
• Chef, puppet, ansible, …
API  CLI vs. SDK vs. 콘솔
16
Azure REST API
• Azure REST (Representational State Transfer) API
• Azure 서비스 자원에 대한 CRUD (create / retrieve / update / delete)를 수행
• API 공식 사이트: https://docs.microsoft.com/en-us/rest/api/
17
Azure 클라이언트 SDK 라이브러리
• Azure NET SDK
• https://docs.microsoft.com/en-us/dotnet/api/
• Azure Java SDK
• https://docs.microsoft.com/en-us/java/api/
• Azure CLI 2.0 SDK
• https://docs.microsoft.com/en-us/cli/azure/
18
Azure 관리 도구
• Azure 포탈
• Windows PowerShell
• Azure Automation
• Azure CLI
• Visual Studio
19
Azure CLI
• CLI: Command-Line Interfaces
• Azure CLI 2.0
• PowerShell 방식이 아닌 MacOS, Linux 등에도 설치 가능하며 공통된 명령어 집합을 사용하는
관리 도구
• (이전) xPlat Azure CLI: the cross-platform Microsoft Cloud CLI tool
• NodeJS (npm) 기반
• https://github.com/Azure/azure-xplat-cli
• Python 기반 새로운 Azure CLI 개발
 Azure CLI 2.0: 2017년 2월 27일 릴리즈
• https://docs.microsoft.com/en-us/cli/azure/release-notes-azure-cli
• 참고 – GA (Generally Availabile)
• https://github.com/Azure/azure-cli
20
Azure CLI 2.0 특징
• Compute를 포함한 다양한 명령어 집합 지원
• MacOS, Linux, Windows 모두 설치 가능
(심지어 라즈베리파이에서도 가능)
• 단, Windows에서는 Cygwin, Python, Bash on Windows 등의 환경을 추가로 필요로 함
• NodeJS 기반보다 설치가 상대적으로 쉬움
• 모두 동일한 명령어 집합 사용
21
cf. openstackclient
• OpenStack은 각 구성요소별로 API 제공
• Nova (Compute API): https://developer.openstack.org/api-ref/compute/
• Neutron (Networking API): https://developer.openstack.org/api-ref/networking/
• Keystone (Identity API): https://developer.openstack.org/api-ref/identity/
• …
• 통합 CLI 툴 제작
• 이전에는 nova / neutron / keystone 등 따로 CLI 개발 작업을 하였음
• 현재 통합 클라이언트 openstackclient 버전 사용 권장
22
Azure CLI 2.0 with Python
• azure-cli
• azure-cli-core, azure-cli-vm, …
Azure CLI 2.0 & Cloud Shell
24
Azure Cloud Shell (preview)
• (웹 브라우저에서 콘솔을 사용한다고?!)
• https://docs.microsoft.com/ko-kr/azure/cloud-shell/overview
25
Azure Cloud Shell - tips
• 아직은 preview (미리보기)
• 스토리지 리소스 그룹 필요 (5GB + clouddrive 디렉터리)
• $ az configure
• $ az account list
• $ az account list-locations
• Azure
26
Conclusion
• 코딩은 아닌데…
• (기존 PowerShell 등 보다 친숙하게 다가오고 있다?)
• 쉘 스크립트는 코딩일까?
• DevOps
• Dev  Ops
• Dev  Ops
• Dev & Ops
• API interoperability (상호 운용성)
• OpenStack API & Amazon EC2 API
• Cloud Foundry (PaaS) REST API
Finished!
28
(참고)
29
(참고)
30
(참고)
31
(참고)

More Related Content

PDF
OpenStack과 업스트림 컨트리뷰션 (2016 IT 21 글로벌 컨퍼런스)
PDF
오픈소스 개발 Upstream - ONOS/CORD 워킹 그룹 2차 세미나
PDF
[SOSCON 2016] 오픈스택을 살펴보는 오픈 소스 컨트리뷰션
PDF
OpenStack DevStack Install - 1부 (All-in-one)
PDF
Tokyo Upstream Training 후기 @OpenStack 한국 커뮤니티 2015년 하반기 스터디
PDF
OpenStack DevStack Install - 2부 (Multi-nodes)
PDF
OpenStack을 중심으로 한 오픈 소스 & 상용 하이브리드 클라우드
PDF
무엇이 무엇이 닮았을까?- OpenStack과 Azure
OpenStack과 업스트림 컨트리뷰션 (2016 IT 21 글로벌 컨퍼런스)
오픈소스 개발 Upstream - ONOS/CORD 워킹 그룹 2차 세미나
[SOSCON 2016] 오픈스택을 살펴보는 오픈 소스 컨트리뷰션
OpenStack DevStack Install - 1부 (All-in-one)
Tokyo Upstream Training 후기 @OpenStack 한국 커뮤니티 2015년 하반기 스터디
OpenStack DevStack Install - 2부 (Multi-nodes)
OpenStack을 중심으로 한 오픈 소스 & 상용 하이브리드 클라우드
무엇이 무엇이 닮았을까?- OpenStack과 Azure

What's hot (20)

PDF
2019년 커뮤니티 활동 보고: 오픈스택 한국 커뮤니티
PDF
오픈스택커뮤니티와기술동향
PDF
Launchpad 활용 사례 in OpenStack: 다루어본 Bug & Blueprint를 중심으로
PDF
2016 상반기 오픈스택 한국 커뮤니티 개발팀 활동 소개
PDF
OpenStack 개요 및 활용 사례 @ Community Open Camp with Microsoft
PDF
[OpenInfra Days Korea 2018] (Track 3) Zuul v3 - OpenStack 인프라 코드로 CI/CD 살펴보기
PDF
OpenStack Pike PTG 참석 후기
PDF
[2018 KOSSLAB 컨트리뷰톤] 오픈스택 (OpenStack) 프로젝트 소개 + 업스트림 컨트리뷰션
PDF
[12월 번역 Meetup] Hands on-lab 오픈스택: 번역으로 contributor 활동하기
PDF
오픈스택 커뮤니티 소개 및 기술 동향
PDF
OpenSource! OpenStack!
PDF
오픈스택 커뮤니티 하반기 스터디: 안내
PDF
OpenStack 2018 Vancouver Summit 후기
PDF
Openstack에 컨트리뷰션 해보기
PDF
퍼블릭 & 프라이빗 클라우드 구축을 위한 오픈소스SW
PDF
KT 안재석 박사 - 오픈 소스 기반 클라우드 컴퓨팅 솔루션 open stack 이야기 (2011Y05M28D)
PDF
How to contribute at OpenStack
PDF
[OpenStack Days Korea 2016] Track1 - 카카오는 오픈스택 기반으로 어떻게 5000VM을 운영하고 있을까?
PDF
제2회 난공불락 오픈소스 인프라 세미나 Kubernetes
PDF
[OpenStack Days Korea 2016] Track2 - 아리스타 OpenStack 연동 및 CloudVision 솔루션 소개
2019년 커뮤니티 활동 보고: 오픈스택 한국 커뮤니티
오픈스택커뮤니티와기술동향
Launchpad 활용 사례 in OpenStack: 다루어본 Bug & Blueprint를 중심으로
2016 상반기 오픈스택 한국 커뮤니티 개발팀 활동 소개
OpenStack 개요 및 활용 사례 @ Community Open Camp with Microsoft
[OpenInfra Days Korea 2018] (Track 3) Zuul v3 - OpenStack 인프라 코드로 CI/CD 살펴보기
OpenStack Pike PTG 참석 후기
[2018 KOSSLAB 컨트리뷰톤] 오픈스택 (OpenStack) 프로젝트 소개 + 업스트림 컨트리뷰션
[12월 번역 Meetup] Hands on-lab 오픈스택: 번역으로 contributor 활동하기
오픈스택 커뮤니티 소개 및 기술 동향
OpenSource! OpenStack!
오픈스택 커뮤니티 하반기 스터디: 안내
OpenStack 2018 Vancouver Summit 후기
Openstack에 컨트리뷰션 해보기
퍼블릭 & 프라이빗 클라우드 구축을 위한 오픈소스SW
KT 안재석 박사 - 오픈 소스 기반 클라우드 컴퓨팅 솔루션 open stack 이야기 (2011Y05M28D)
How to contribute at OpenStack
[OpenStack Days Korea 2016] Track1 - 카카오는 오픈스택 기반으로 어떻게 5000VM을 운영하고 있을까?
제2회 난공불락 오픈소스 인프라 세미나 Kubernetes
[OpenStack Days Korea 2016] Track2 - 아리스타 OpenStack 연동 및 CloudVision 솔루션 소개
Ad

Similar to 명령 프롬프트, Azure CLI 2.0은 과연 코딩일까? (20)

PDF
Ms Azure fundamentals
DOCX
병렬처리
PPTX
170325 스마트앱개발자포럼-세선1-부산창조혁신센터
PDF
[열린기술공방] Container기반의 DevOps - 클라우드 네이티브
PDF
비트교육센터-AWS활용 1주차: EC2, S3, Elastic Beanstalks 사용
PDF
게임 산업을 위한 네이버클라우드플랫폼(정낙수 클라우드솔루션아키텍트) - 네이버클라우드플랫폼 게임인더스트리데이 Naver Cloud Plat...
PDF
Intro to hpe helion stackato_paa_s
PPTX
4. 대용량 아키텍쳐 설계 패턴
PDF
오픈소스 기반의 레드햇 클라우드 플랫폼 RhCI & Docker with PaaS
PDF
Ship it! ⛴️ AKS에 스프링 앱 배포하기 at Microsoft x GitHub Roadshow 2023
PPTX
Getting started with Azure Services Platform
PDF
(Red hat]private cloud-osp-introduction(samuel)2017-0530(printed)
PPTX
1611 azure-live-세션-2
PPTX
[SW 아키텍처 컨퍼런스] 클라우드 아키텍처 개론
PDF
[오픈소스컨설팅] 2019년 클라우드 생존전략
PDF
클라우드란 (기획자대상)
PDF
20180602 BIT computer - AWS를 활용한 클라우드 기반 웹 개발 1주차
PDF
Digital transformation and cloud impact(NBP CTO Kieun Park)
PPTX
MSA와 infra
PDF
[애플리케이션 현대화 및 개발] 파트너 세션 | 모던 인프라스트럭쳐 아키텍쳐 - 서호석 이사, 영우디지탈
Ms Azure fundamentals
병렬처리
170325 스마트앱개발자포럼-세선1-부산창조혁신센터
[열린기술공방] Container기반의 DevOps - 클라우드 네이티브
비트교육센터-AWS활용 1주차: EC2, S3, Elastic Beanstalks 사용
게임 산업을 위한 네이버클라우드플랫폼(정낙수 클라우드솔루션아키텍트) - 네이버클라우드플랫폼 게임인더스트리데이 Naver Cloud Plat...
Intro to hpe helion stackato_paa_s
4. 대용량 아키텍쳐 설계 패턴
오픈소스 기반의 레드햇 클라우드 플랫폼 RhCI & Docker with PaaS
Ship it! ⛴️ AKS에 스프링 앱 배포하기 at Microsoft x GitHub Roadshow 2023
Getting started with Azure Services Platform
(Red hat]private cloud-osp-introduction(samuel)2017-0530(printed)
1611 azure-live-세션-2
[SW 아키텍처 컨퍼런스] 클라우드 아키텍처 개론
[오픈소스컨설팅] 2019년 클라우드 생존전략
클라우드란 (기획자대상)
20180602 BIT computer - AWS를 활용한 클라우드 기반 웹 개발 1주차
Digital transformation and cloud impact(NBP CTO Kieun Park)
MSA와 infra
[애플리케이션 현대화 및 개발] 파트너 세션 | 모던 인프라스트럭쳐 아키텍쳐 - 서호석 이사, 영우디지탈
Ad

More from Ian Choi (18)

PDF
클라우드 컴퓨팅 기본 사항 (Fundamentals)
PDF
디자인에 이어 코딩까지 AI가 프로그램 개발을 척척?: GitHub Copilot, 어디까지 알아보셨나요
PDF
마이크로소프트 애저 및 클라우드 트렌드 소개 (부제: Beyond IaaS)
PDF
Evolving Translation and Internationalization in OpenStack & Kubernetes commu...
PDF
쿠버네티스 오픈 소스와 클라우드 매니지드 서비스 접점 소개
PDF
오픈 소스 프로그래밍 - NoSQL with Python
PDF
Azure 클라우드 학생 계정 & Ubuntu VM 셋업 (Mar 2022)
PDF
OpenStack I18n Product Update at Shanghai: how OpenStack translation started ...
PDF
[OpenInfra Days Vietnam 2019] Innovation with open sources and app modernizat...
PDF
Microsoft loves communities - Korea DevRel Team
PDF
DevOps와 함께 살펴보는 (해커톤의 성패를 좌우하는) 협업/개발 툴
PDF
국제화/번역과 함께 하는 오픈소스에 대한 경험 및 노하우
PDF
[201808] GitHub 사용하기 - GIt & 협업 활용
PDF
[OpenStack] 공개 소프트웨어 오픈스택 입문 & 파헤치기
PDF
[2018 공개SW그랜드챌린지] 오픈 인프라와 오픈 커뮤니티에서의 협력
PDF
"docs.microsoft.com"에 기여하기
PDF
[Pycon KR 2017] Rst와 함께하는 Python 문서 작성 & OpenStack 문서 활용 사례
PDF
South Korea OpenStack UG - Study & Development team activities
클라우드 컴퓨팅 기본 사항 (Fundamentals)
디자인에 이어 코딩까지 AI가 프로그램 개발을 척척?: GitHub Copilot, 어디까지 알아보셨나요
마이크로소프트 애저 및 클라우드 트렌드 소개 (부제: Beyond IaaS)
Evolving Translation and Internationalization in OpenStack & Kubernetes commu...
쿠버네티스 오픈 소스와 클라우드 매니지드 서비스 접점 소개
오픈 소스 프로그래밍 - NoSQL with Python
Azure 클라우드 학생 계정 & Ubuntu VM 셋업 (Mar 2022)
OpenStack I18n Product Update at Shanghai: how OpenStack translation started ...
[OpenInfra Days Vietnam 2019] Innovation with open sources and app modernizat...
Microsoft loves communities - Korea DevRel Team
DevOps와 함께 살펴보는 (해커톤의 성패를 좌우하는) 협업/개발 툴
국제화/번역과 함께 하는 오픈소스에 대한 경험 및 노하우
[201808] GitHub 사용하기 - GIt & 협업 활용
[OpenStack] 공개 소프트웨어 오픈스택 입문 & 파헤치기
[2018 공개SW그랜드챌린지] 오픈 인프라와 오픈 커뮤니티에서의 협력
"docs.microsoft.com"에 기여하기
[Pycon KR 2017] Rst와 함께하는 Python 문서 작성 & OpenStack 문서 활용 사례
South Korea OpenStack UG - Study & Development team activities

명령 프롬프트, Azure CLI 2.0은 과연 코딩일까?

  • 1. 2017년 5월, “코딩이랑 무관한 Azure 소개” 연합 세미나 발표 (코딩이랑 무관합니다만, + 오픈스택 한국 커뮤니티) 최영락, 오픈스택 한국 커뮤니티 대표 & Microsoft MVP (Cloud & Datacenter Management)
  • 2. 2 목차 • Part 1: 클라우드 컴퓨팅과 API • Part 2: Azure - CLI vs. SDK vs. 콘솔 • Part 3: Azure CLI 2.0 & Cloud Shell
  • 3. 3 Special thanks to…! (역자 및 출판사 양해를 구하여 일부 설명 및 그림을 인용하였습니다)
  • 5. 5 클라우드 컴퓨팅 Over-provisioning Demand Capacity t Resources Resources Demand Capacity t1 2 3 Under-provisioning Demand Capacity t Resources On demand, scalable [1] http://www.basilit.com/Website/CloudComputing.aspx [2] Above the Clouds: A Berkeley View of Cloud Computing • 클라우드 컴퓨팅 • (언제 어디서나) 필요한 IT 자원을 즉시 사용할 수 있는 환경 • 소비자: 클라우드로 off-loading & 원하는 때만 사용 • 서비스 제공자: 자원 utilization 향상을 통한 수익 증대
  • 6. 6 클라우드와 가상화 • 자원, 즉 리소스를 사용하고 소비하는 방식 변화 • 클라우드 이전: 필요하면 구입 • 서버 위치, 서버 및 장비 구입 비용, 수명, 전기세 • 클라우드 등장 • 시간당 지불 • 사용한 만큼 지불 • 빠르게… • 유연하게… • 서비스 유형에 따른 구분 • IaaS: 인프라를 서비스로 제공  OpenStack, Microsoft Azure, Amazon AWS, IBM Bluemix • PaaS: (개발) 플랫폼을 서비스로 제공  Microsoft Azure, Google AppEngine, IBM Bluemix • SaaS: 소프트웨어를 서비스로 제공  Office 365 • (오늘 설명하는 부분은 인프라 – IaaS와 관련한 부분입니다) Blue network Red network 물리 네트워크 네트워크 가상화
  • 7. 7 클라우드 환경에서 인프라 구축 • 물리적 장비 설정 방법이나 기능 차이를 신경쓰지 않고 인프라 구축 가능 • 컴포넌트의 추상화 • 방화벽 장치 vs. 보안 그룹 • 서버 사양 vs. 가상 컴퓨터 유형 • Azure: A1, DS2 • AWS: t2.small, m3.large • OpenStack: tiny, large • … • 자동화 (Reference: “그림으로 배우는 클라우드 인프라와 API의 구조”, 신상재 옮김, 2017년 5월)
  • 8. 8 잠깐: API에 관해서 • API (Application Programming Interface) • 프로그램과 프로그램이 서로 명령을 주고 받기 위해 미리 약속해둔 일종의 규칙
  • 9. 9 API를 사용한 클라우드 컴퓨팅 제어 • 클라우드 인프라에 공개된 API 목록 • Azure: https://docs.microsoft.com/en-us/rest/api/ • AWS: https://aws.amazon.com/ko/documentation/ 내 링크 • OpenStack: https://developer.openstack.org/ko_KR/api-guide/quick- start/index.html • API 파악시 장점 • 어떤 구성 요소가 있는지 파악 가능 • 추상화되어 있는 기능에 대한 자세한 이해 • 시스템 구축 표준화 방안 마련 (Reference: “그림으로 배우는 클라우드 인프라와 API의 구조”, 신상재 옮김, 2017년 5월)
  • 10. 10 클라우드 컴퓨팅 제어 방안 • 웹 콘솔 (GUI)을 사용한 제어 • 명령어를 사용한 제어 • 직접 개발한 프로그램을 사용한 제어 • 자동화 툴을 사용한 제어
  • 11. 11 클라우드 컴퓨팅 제어 방안 • 웹 콘솔 (GUI)을 사용한 제어 (Reference: “그림으로 배우는 클라우드 인프라와 API의 구조”, 신상재 옮김, 2017년 5월)
  • 12. 12 클라우드 컴퓨팅 제어 방안 • 명령어를 사용한 제어 (Reference: “그림으로 배우는 클라우드 인프라와 API의 구조”, 신상재 옮김, 2017년 5월)
  • 13. 13 클라우드 컴퓨팅 제어 방안 • 직접 개발한 프로그램을 사용한 제어 (Reference: “그림으로 배우는 클라우드 인프라와 API의 구조”, 신상재 옮김, 2017년 5월)
  • 14. 14 클라우드 컴퓨팅 제어 방안 • 자동화 툴을 사용한 제어 • Chef, puppet, ansible, …
  • 15. API  CLI vs. SDK vs. 콘솔
  • 16. 16 Azure REST API • Azure REST (Representational State Transfer) API • Azure 서비스 자원에 대한 CRUD (create / retrieve / update / delete)를 수행 • API 공식 사이트: https://docs.microsoft.com/en-us/rest/api/
  • 17. 17 Azure 클라이언트 SDK 라이브러리 • Azure NET SDK • https://docs.microsoft.com/en-us/dotnet/api/ • Azure Java SDK • https://docs.microsoft.com/en-us/java/api/ • Azure CLI 2.0 SDK • https://docs.microsoft.com/en-us/cli/azure/
  • 18. 18 Azure 관리 도구 • Azure 포탈 • Windows PowerShell • Azure Automation • Azure CLI • Visual Studio
  • 19. 19 Azure CLI • CLI: Command-Line Interfaces • Azure CLI 2.0 • PowerShell 방식이 아닌 MacOS, Linux 등에도 설치 가능하며 공통된 명령어 집합을 사용하는 관리 도구 • (이전) xPlat Azure CLI: the cross-platform Microsoft Cloud CLI tool • NodeJS (npm) 기반 • https://github.com/Azure/azure-xplat-cli • Python 기반 새로운 Azure CLI 개발  Azure CLI 2.0: 2017년 2월 27일 릴리즈 • https://docs.microsoft.com/en-us/cli/azure/release-notes-azure-cli • 참고 – GA (Generally Availabile) • https://github.com/Azure/azure-cli
  • 20. 20 Azure CLI 2.0 특징 • Compute를 포함한 다양한 명령어 집합 지원 • MacOS, Linux, Windows 모두 설치 가능 (심지어 라즈베리파이에서도 가능) • 단, Windows에서는 Cygwin, Python, Bash on Windows 등의 환경을 추가로 필요로 함 • NodeJS 기반보다 설치가 상대적으로 쉬움 • 모두 동일한 명령어 집합 사용
  • 21. 21 cf. openstackclient • OpenStack은 각 구성요소별로 API 제공 • Nova (Compute API): https://developer.openstack.org/api-ref/compute/ • Neutron (Networking API): https://developer.openstack.org/api-ref/networking/ • Keystone (Identity API): https://developer.openstack.org/api-ref/identity/ • … • 통합 CLI 툴 제작 • 이전에는 nova / neutron / keystone 등 따로 CLI 개발 작업을 하였음 • 현재 통합 클라이언트 openstackclient 버전 사용 권장
  • 22. 22 Azure CLI 2.0 with Python • azure-cli • azure-cli-core, azure-cli-vm, …
  • 23. Azure CLI 2.0 & Cloud Shell
  • 24. 24 Azure Cloud Shell (preview) • (웹 브라우저에서 콘솔을 사용한다고?!) • https://docs.microsoft.com/ko-kr/azure/cloud-shell/overview
  • 25. 25 Azure Cloud Shell - tips • 아직은 preview (미리보기) • 스토리지 리소스 그룹 필요 (5GB + clouddrive 디렉터리) • $ az configure • $ az account list • $ az account list-locations • Azure
  • 26. 26 Conclusion • 코딩은 아닌데… • (기존 PowerShell 등 보다 친숙하게 다가오고 있다?) • 쉘 스크립트는 코딩일까? • DevOps • Dev  Ops • Dev  Ops • Dev & Ops • API interoperability (상호 운용성) • OpenStack API & Amazon EC2 API • Cloud Foundry (PaaS) REST API