[인프라 솔루션] MS Azure | Cloud Shell, Azure CLI, PowerShell

2020. 6. 17. 17:20노트/Cloud : 인프라

 

Power Shell

  • Only Windows

  • PowerShell ISE : 명령어 스크립트화 
    * 스크립트화 : 저장된 명령어를 재출력 

  • Command Prompt 에서 사용 가능

  • 명령어가 길고 복잡함

  • Powershell vs 명령프롬프트 차이 
    Powershell 명령어 : 동사-명사  
PS C:\> get-command 

PS C:\> md Powershell 

PS C:\> cd .\PowerShell\ 

PS C:\PowerShell> 

         . 은 현재폴더에서 를 의미 

현재폴더 안에있는 PowerShell을 열어라  

PS C:\PowerShell> get-process 

PS C:\PowerShell> ipconfig/all 명령프롬프트 명령어 입력시 오류  

Azure Cloud Shell

  • Azure resource를 관리하기 위해 interactive, authenticated하며 browser에 접속 가능

  • Cloud Shell : Azure Portal에서 사용할 수 있는 쉘 (Bash or PowerShell을 사용 하는 방식)

  • Azure Portal 에서 Power Shell과 Azure CLI 모두 사용 가능

     

Azure CLI

  • Azure resource를 관리하기 위한 명령 줄 환경

  • 사용자 지정 자동화를 빌드하기에 적합

  • Windows, Linux, Mac 등 모든 OS 지원

  • 명령어가 짧고 단순함

Power Shell 시작하기

  • 1. Power Shell 환경 구축

[https://azure.microsoft.com/en-us/downloads]

 

  • 2. Power Shell Turn On

    • get-command

    • get-process

=======Az 모듈 설치 (최신)====================== 

** Powershell에서는 Azure을 사용할 수 없기 때문에 따로 사용가능하도록 모듈 을 설치해줘야함 

[참고]

Install-Module -Name Az -AllowClobber	# Az 모듈 설치  / Y > A  

Set-ExecutionPolicy Unrestricted	# 실행 정책 허용 / A 

import-module Az.Accounts	# 모듈 등록 

 

Connect-AzAccount 

Get-AzSubscription 

Select-AzSubscription -Subscription <Subscription ID>  

 

  • 3. Azure PowerShell Module 설치

    • Install- Module –Name Az - AllowClobber

    • Yes All

 

 

 

  • 4. PowerShell을 통해 Azure 접속

    • Import-Modeul Az.Accounts

    • Commect-AzAccount

 

  • Subscription 선택

    • Get-AzSubscription

 

  • Resource Group 생성

    • New-AzResourceGroup -Name myResourceGroup -Location EastUS

    • All Yes

     

 

========AzureRM 모듈 설치================== 

참고

Install-Module -Name AzureRM -AllowClobber 

Import-Module AzureRM 

 

Connect-AzureRMAccount 

Get-AzureRMSubscription 

Select-AzureRMSubscription -Subscription <Subscription ID>  
  • 6. 가상 머신 만들기

  • 7. 가상 머신 연결 및 원격접속

    • Get-AzPublicIpAddress -ResourceGroupName "myResourceGroup"

  • 8. VM의 PowerShell에 Webserver 설치

    • Install-WindowsFeature -name Web-Server -IncludeManagementTools

     

     

     

 

  • 9. 리소스 삭제

    • Remove-AzResourceGroup -Name myResourceGroup

Azure Cloud Shell 시작하기

  1. Azure Portal – Cloud Shell 환경 설정

  • \> 버튼 클릭

 

  • 정보 입력

    • Storage account, file share에는 대문자 불가능

 

  • 2. Azure Portal - CloudShell - Power Shell

  • 3. Azure Portal – Cloud Shell – 리소스 생성

    • New-AzResourceGroup -Name myResourceGroup -Location EastUS

  • 4. Azure Portal – Cloud Shell – VM 생성

  • 5. Azure Portal - Cloud Shell - VM 원격 접속

    • cmd 화면에서

    • mstsc /v myvm-fe6f58.eastus.cloudapp.azure.com

       

       

     

  • 6. Azure Portal - Cloud Shell - WebServer 설치

    • Install - WindowsFeature -name Web-Server -IncludeManagementTools

     

2-1. Azure Portal - CloudShell - Bash 화면

 

  • Access 할 수 있는 구독을 나열하는 명령어

    • az account list

 

Azure Ansible

  • Cloud Infrastructure 구성, 관리 및 application 배포를 자동화하게 하는 open source 제품

  • Azure Cloud Shell에서 **bash****ansible playbook** **실행**

  • 코딩하기 쉽도록 YML을 사용

  • Ansible을 사용하여 Azure resource group 만들기

    • code rg.yml

    • ansible-playbook rg.yml

 

Azure CLI 시작하기

https://docs.microsoft.com/ko-kr/cli/azure/install-azure-cli-windows?view=azure-cli-latest

azure-cli-2.0.63.msi  <== 설치 

 

  • 설치가 완료되면 명령 프롬프트를 관리자권한으로 실행한 후 아래의 명령어 입력

    • Az login

 

  • 제대로 입력하면 로그인 되고 Cmd창에 정보가 뜸

Azure CLI 명령어 실행해보기

az 

az login 

az account list	<== Subscription 출력 

az account set --subscription <value of the subscription id property> 




Get-Command  

Get-Process  

Get-Help Get-Process # Power Shell 주석 

$env:PSModulePath 

 

Install-Module -Name Az -AllowClobber	1. Azure Module 설치 

 

import-module Az.Accounts	2. Azure Module 등록 

 

Connect-AzAccount 

 

Get-ExecutionPolicy # PowerShell 스크립트 실행 정책  

    # Rescricted  : 제한됨 (*.ps1 파일) 

    # Unrestricted : 실행 (보안상 위험) 

 

Set-ExecutionPolicy Unrestricted 

 

 

  • Az find secret

    • secret이 포함된 명령을 검색하라는 의미

 

  • Az network nsg –help

    • NSG를 사용하는 작업에 대한 CLI 명령을 찾는 것

    • help 인수를 사용하면 명령 및 그룹의 하위 그룹 전체 목록을 보여줌

 

  • az group create --name myResourceGroup --location eastus

    • 리소스 그룹 생성하기

 

  • az vmss create

    • 가상 머신 확장 집합 만들기

 

  • az vmss list-instances

    • 확장 집합의 VM instance list

  • az vmss list-instance-connection-info

    • Scale set의 VM instance에 연결할 주소와 포트 나열

 

  • ssh azureuser@40.76.40.150 -p 50002

    • SSH를 2번째 VM instance와 연결

    • \- p 매개 변수를 사용하여 Public ip와 포트 번호를 지정

 

  • Exit 명령어로 나오기

  • az vm image list –output table

    • 일반적으로 사용되는 이미지 목록 보는 명령어

  • az vm image list --offer CentOS --all --output table

    • CentOS와 일치하는 제품이 있는 모든 이미지 목록을 보는 명령어

Azure Cloud Shell - https://docs.microsoft.com/ko-kr/cli/azure/install-azure-cli?view=azure-cli-latest

Azure Bash - https://docs.microsoft.com/ko-kr/azure/cloud-shell/quickstart

Azure CLI - https://docs.microsoft.com/ko-kr/cli/azure/install-azure-cli-windows?view=azure-cli-latest