Korea Evangelist

Developer & Platform Evangelism, Microsoft Korea

  • Korea Evangelist

    Windows Azure에서 리눅스 가상머신을 생성하고 연결 - (2) - 20140402

    • 0 Comments

    안녕하세요, 김대우입니다.

    지난 포스팅에 이어 이번에는 SSH 키를 생성해 리눅스 가��머신에 접속하는 방식을 소개.

    Windows Azure에서 리눅스 가상머신을 생성하고 연결 - (1)

    Windows Azure에서 리눅스 가상머신을 생성하고 연결 - (2)

    1. Windows Azure의 리눅스 가상머신에 윈도우 – PuTTY & SSH로 접속

    여러 제공되는 방법으로 openssl로 X509 인증서를 2048비트 RSA key pair로 만들고, 공개키를 Azure 포털에서 업로드. 이후, SSH client로 PuTTY를 쓸 경우 puttygen에서 개인키를 ppk 포맷으로 만들고 PuTTY로 접속한다.

    (1) openssl 설치 - 윈도우

    msysgit, GitHub, cygwin을 이용하라고 공식 문서는 가이드 하고 있음. 개인적으로, openssl 설치를 위해 cygwin은 좀 오버 같은 느낌. 이 포스팅에서는 msysgit 설치 진행

    http://msysgit.github.com/ 링크에서 msysgit 설치 진행.

    msys를 설치해 bin 폴더로 가거나, 명령프롬프트로 설치한 폴더의 bin 폴더로 이동 후 아래 명령 실행.

    개인적으로는, 명령프롬프트로 실행

    openssl.exe req -x509 -nodes -days 365 -newkey rsa:2048 -keyout c:\temp\myPrivateKey.key -out c:\temp\myCert.pem

    image_thumb.png

    인증서에 필요한 정보를 적절히 입력 한다.

    c:\temp 폴더에 키를 생성. 공개키인 myCert.pem은 Windows Azure 가상머신 생성시 업로드 하고, 개인키는 PuTTY 접속시 이용한다.

    이제 가상머신 생성 진행

    (2) 가상머신 생성 – 생성 중 인증을 위한 SSH 인증서 업로드

    image_thumb_1.png

    가상컴퓨터 구성 단계에서 사용자 이름과 SSH 키 업로드에서 위에서 생성한 SSH 공개키 파일을 업로드 한다.

    가상머신 생성을 완료 한다.

    (3) PuTTY로 접속하기 위해 PuTTYgen으로 키 변환 과정 실행

    먼저, PuTTY가 요구하는 PPK로 개인키를 변환 해야 한다.

    PuTTY 다운로드 페이지에서 Puttygen을 다운로드 하고 실행한다.

    image_thumb_2.png

    Puttygen의 file – Load private key 선택 후 행성한 개인키를 지정 필요할 경우 리스트되는 확장자를 *.*로 바꿔야 한다.

    image_thumb_3.png

    생성되었다. 가능하다면, 여기서 꼭 Key passphrase를 지정해 추가적인 보안을 제공 받는다.

    Save Private Key를 클릭해 저장한다.

    (4) PuTTY로 리눅스 가상머신에 접속

    PuTTY 다운로드 페이지에서 PuTTY를 다운로드 후 Putty를 실행하고, Connection 화면의 SSH - Auth에서 화면처럼 PuTTYgen에서 변환한 SSH 키를 선택한다.

    image_thumb_5.png

    ppk 파일을 선택한다.

    image_thumb_6.png

    Session에서 가상머신에 접속을 진행한다.

    image_thumb13_5.png

    참고로, 가상머신 접속 정보는 Windows Azure 관리자 포털의 해당 가상머신 - 대쉬보드에서 볼 수 있다.

    image_thumb_9.png

    SSH 접속 완료. 따로, Key passphrase로 추가 암호를 지정하지 않았다면 바로 접속된다.

    2. Windows Azure의 리눅스 가상머신에 리눅스로 SSH 접속

    각 배리눅스 포판이 제공하는 패키지 관리자로 openssl을 설치해 키를 생성하고, 이어서 가상머신에 SSH로 접속하면 된다.

    (1) openssl 설치 – 리눅스

    각각의 배포판이 제공하는 패키지 관리자를 이용해 설치 가능

    Redhat/CentOS: yum install openssl
    Debian: apt-get install openssl
    Ubuntu: apt-get install openssl

    openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout myPrivateKey.key -out myCert.pem

    명령으로 X509 인증서를 2048비트 RSA key pair로 생성.

    chmod 600 myPrivateKey.key

    옵션 - 퍼미션을 변경해 개인키 보호

    (2) 리눅스에서 Windows Azure의 리눅스 가상머신에 SSH 접속

    image_thumb13_5.png

    Azure 관리자 포털 화면 가상머신 대쉬보드에서 SSH 링크 및 포트를 확인 후 SSH로 접속

    ssh -i myPrivateKey.key -p <port> username@servicename.cloudapp.net

    이렇게 해서, Windows Azure에서 리눅스 가상머신을 생성하고 접속하는 두 가지 방법을 모두 알아 보았다.

    감사합니다.

    참고링크

    Windows Azure에서 리눅스 가상머신을 생성하고 연결 - (1)

    Windows Azure에서 리눅스 가상머신을 생성하고 연결 - (2)

    How to Log on to a Virtual Machine Running Linux

    How to Use SSH with Linux on Windows Azure

    Introduction to Linux on Windows Azure

    Create a Virtual Machine Running Linux

    Putty 다운로드 링크

  • Korea Evangelist

    Windows Azure에서 리눅스 가상머신을 생성하고 연결 - (1) - 20140402

    • 0 Comments

    안녕하세요, 김대우입니다.

    이번에 소개해 드릴 내용은 Windows Azure 위에서 리눅스 가상머신을 생성하고 가상머신에 접근하는 방법에 대해서 소개해 드립니다.

    Windows Azure에서 리눅스 가상머신을 생성하고 연결 - (1)

    Windows Azure에서 리눅스 가상머신을 생성하고 연결 - (2)

    개인적으로 리눅스 쪼금 만졌던게 90년대 말 알짜 레드햇 리눅스 5.1대 였어요. 아마 리눅스 커널 버전은 2.1 이었을 겁니다.

    당시, 적수네 동네에서 리눅스와 네트워크 공부하고 커널 컴파일 프로젝트 참여했던 기억이 아련하군요.

    본 내용은 당연하겠지만 리눅스에 대해 기본적인 이해가 있는 분들을 대상으로 하기 때문에 상세한 설명은 생략.

    (1) 리눅스 가상머신 생성 절차

    Windows Azure 관리 포털에 접속 https://manage.windowsazure.com – 아래 “새로 만들기” 선택

    image_thumb.png

    원하는 리눅스 VM을 선택 가능 2014년 4월 현재 Ubuntu, CentOS, SUSE Liunx 선택 가능

    OSS 가 구성된 또는 더 다양한 리눅스 기반 VM 종류를 원할 경우 VMDepot으로 확인

    Windows Azure에서 더 많은(1,000+) 오픈소스 프로젝트 가상 머신 이미지를 - VM Depot

    또는, “갤러리에서” 버튼을 누르면 조금 더 비주얼한 화면에서 리눅스 가상머신 선택 가능

    image_thumb_1.png

    원하는 가상머신을 선택하고 다음 – 갤러리에서 진행 시작

    image_thumb_2.png

    가상컴퓨터 이름과 크기를 적절히 지정. 사용자명과 암호를 정함.

    SSH 키의 경우 openssl에서 key를 만들고 업로드 한다 (다음 포스팅에서 소개. 간략히, openssl로 X509 인증서를 2048비트 RSA key pair로 만들고, 공개키를 Azure 포털에서 업로드. 이후, SSH client로 PuTTY를 쓸 경우 puttygen에서 개인키를 ppk 포맷으로 만들고 PuTTY로 접속한다.)

    이 포스팅에서는 SSH 키 업로드 없이 putty를 이용, 암호로 접속하는 과정을 진행. OpenSSH와 같은 SSH 클라이언트도 물론 이용 가능.

    image_thumb_3.png

    다음 화면. 지역은 일본 서부로 정하고 다음 진행. (클라우드 서비스로 묶으면 여러 가상머신들의 컨테이너로 auto scaling등의 작업이 가능. 저장소나 가용성 집합은 다른 포스팅에서 소개된 내용 참조)

    image_thumb_4.png

    끝점은 end point로 가상머신에서 오픈할 포트를 지정 현재는 SSH로 접속할 포트 22번을 오픈

    image_thumb_5.png

    잠시 후 VM이 생성되고, Putty로 접속 한다.

    (2) 생성된 가상머신 SSH 접속 정보 확인

    image_thumb_6.png

    Azure 관리자 포털에서 해당 VM을 선택하고, 대쉬보드를 보면 우측 하단에 이렇게 SSH 세부 정보를 볼 수 있다.

    포트는 VM 생성시 마지막 단계였던 끝점에서 지정한 포트로 처리 된다.

    (3) PuTTY로 가상머신에 접속

    image_thumb_8.png

    Host Name 부분만 처리하고 접속한다.

    image_thumb_9.png

    보안경고 – 접속을 계속 하고

    image_thumb_10.png

    VM 생성시 지정했던 login id와 암호를 지정해 접속하면 된다.

    감사합니다.

    참고링크

    Windows Azure에서 리눅스 가상머신을 생성하고 연결 - (1)

    Windows Azure에서 리눅스 가상머신을 생성하고 연결 - (2)

    How to Log on to a Virtual Machine Running Linux

    How to Use SSH with Linux on Windows Azure

    Introduction to Linux on Windows Azure

    Create a Virtual Machine Running Linux

    Putty 다운로드 링크

  • Korea Evangelist

    Windows Azure 중국 데이터센터 서비스 공식발표 - 0401

    • 0 Comments

    안녕하세요. 김대우입니다.

    이번에 소개해 드릴 내용은 드디어 공식 발표된 중국 내 Windows Azure 서비스(데이터센터) 입니다.

    Windows_Azure_China_Datacenter.png

    현재 글로벌 클라우드 플랫폼 업체 중에서는 처음으로 중국 내 공식 서비스라, 대 중국 클라우드 서비스에 활용하시면 큰 도움 되실 듯 합니다.

     

    Microsoft becomes the first global public cloud provider in China with the general availability of Microsoft Azure in the region

    http://blogs.technet.com/b/microsoft_blog/archive/2014/03/26/microsoft-becomes-the-first-global-public-cloud-provider-in-china-with-the-general-availability-of-microsoft-azure-in-the-region.aspx

     

    요즘 중국 내 베이징 부근 서비스를 준비하는 교육 업체 분들과 검토를 진행 중인데, 중국 내에서는 빠른 속도와 서비스를

    제공하고 있습니다. 국내 미디어 업체 중 한곳은 중국 내 E&M 서비스를 Windwos Azure 홍콩 데이터센터를 통해 중국 내 서비스를

    하고 있는데요, 응답속도나 대역폭 모두 충분히 대 중국 서비스 가능할 정도로 좋다고 합니다. 중국 내 서비스를 위해 홍콩 데이터 센터를 이용하는 것도 좋은 대안이 될 듯 합니다.

    이하, 중국 Windows Azure 데이터센터 공식발표 내용이니 참고 하시길 바랍니다.

    - 중국 Windows Azure 데이터센터는 전세계 Azure 데이터센터와 같은 하드웨어/소프트웨어 기술 적용. 전원공급이나 보안 설비도 글로벌 규정에 맞춰 적용되어 있음. 관리 운영 주체는 21Vianet이 운영

    - 중국 법규정으로 인해 EA 계약은 중국 파트너사와 별도 계약이 필요. 중국 현지에 법인이 있는 고객만 계약 가능

    - 중국 Azure 공식 웹사이트는 도메인이 다름 - www.windowsazure.cn

    - 중국 Windows Azure 포털에서는 중국어와 영문 사용 가능

    - 중국 Windows Azure 데이터센터의 클라우드 서비스는 중국 내부 서비스만을 전제로 서비스 중.

    일본 데이터센터 공식발표 소식이 며칠 전 같은데 벌써 중국 DC가 발표 되었네요.

    한국에도 어서 빨리 데이터센터가 들어오면 좋겠습니다.

    감사합니다.

  • Korea Evangelist

    Windows Azure에서 더 많은(1,000+) 오픈소스 프로젝트 가상 머신 이미지를 - VM Depot

    • 0 Comments

    안녕하세요. 김대우입니다.

    이번에 소개해 드릴 내용은 Windows Azure에 대한 내용 보다는, 오픈소스 프로젝트에 대한 내용이기도 해요.

    고객사나 파트너사를 다니면서 종종 논의되는 내용인데요.

    “Windows Azure에는 지원하는 리눅스 VM 이미지가 다양하지 않은것 같아요. MS가 만들어서 그런가요?”

    “Django 프레임워크를 우분투에서 돌리려는데, 새로 Azure 깡통 이미지 위에서 만들어야 하나요?”

    “VM에서 구동시켜야만 하는 OSS 어플이 있어요. Azure에 최적화 시켜 잘 구성해 놓은 검증된 VM 있을까요?”

    이런 경우라면 분명 VM Depot이 원하시는 답이 되실거에요.

    VM Depot이 뭔가요?

    image_thumb_1.png

    링크 : VM Depot 웹사이트

    VM Depot은 커뮤니티가 리드하는 OS, 어플리케이션, 프레임워크 및 개발 스택 카탈로그 서비스로 Windows Azure로 바로 배포 가능한 VM 프로젝트 입니다.

    VM 이미지를 검색해 보시면 대단히 많은 종류의 이미지들이 보이실 거에요. 현재, 약 천개 이상의 VM이 리스트 되고 있습니다.

    다양한 버전의 WordPress와 같은 블로그 엔진 어플리케이션부터, Joomla나 Drupal같은 CMS를 비롯해, 수많은 버전의 리눅스 기반 OSS 어플리케이션 VM 중 선택해 즉시 Azure로 배포시켜 서비스 가능하죠.

    최근 인기 있는 파이선의 Django 프레임워크나 루비 온 레일즈 프레임워크와 같은 거의 모든 오픈소스 스택 VM들도 바로 배포 후 사용 가능해요.

    이 VM들은 리눅스와 OSS 전문 회사들(Alt Linux, Basho, Bitnami, Hupstream)이 제공하고 있어서 대부분 최적화된 VM을 제공하고 있다고 해요.

    VM Depot의 이미지를 Windows Azure에 배포 하는 방법

    리스트를 하고 보기만 하면 의미가 없겠지요. 즉시 Azure로 배포해 인스턴스화 시켜서 서비스가 되어야 의미 있을 겁니다.

    1) 우리에게 익숙한 관리 포털에서 어떻게 처리 가능한지 알아보죠.

    image_thumb_5.png

    가상컴퓨터 – 이미지 – VM Depot 찾아보기를 선택하면 됩니다.

    image_thumb_6.png

    그럼 이렇게 VM 카탈로그를 볼 수 있어요. 기본 Azure VM 갤러리와 유사하죠? 필요한 VM을 선택하고 다음을 누르면?

    image_thumb_7.png

    어느 지역, 저장소 등 필요한 입력 항목들을 선택하고 확인을 누르면 바로 배포가 진행됩니다.

    이렇게 간단히 다양한 VM들을 관리 포털 웹에서 배포 가능해요.

    2) VM Depot에서는 스크립트 기반으로도 배포가 가능한데요.

    리눅스 쉘 또는 MAC에서도 이 스크립트 기반으로 배포가 가능한 게 특징이지요.

    image_thumb_3.png

    원하는 VM 이미지를 검색하면, 윗쪽에 Deployment script가 있습니다.

    image_thumb_2.png

    클릭하면, 이렇게 Azure Cli  명령 스크립트가 나와요. 바로 윈도우는 물론, MAC나 리눅스에서 스크립트 기반으로 Azure를 관리하기 위한 인터페이스입니다. 이 명령을 CLI에서 수행하면 배로 Azure VM이 배포 됩니다. 오예~

    Windows Azure CLI 도구에 대해서는 예전에 제가 포스팅 했던 아래 링크를 참고하세요.

    참고링크 : 스크립트 기반 클라우드 관리 자동화? Windows Azure Command-Line Tool

    더 안전한, 더 최적화된 VM 선택을 위해...

    하지만, 오픈 기술로 진행되는 프로젝트이고 공식 Azure VM 갤러리가 아니기 때문에 사용시 주의가 필요합니다. 일반 개발자도 VM을 출판(publish) 가능하기 때문이에요. 최적화는 물론, 안전한 VM을 선택하기 원한다면, 게시자가 Alt Linux, Basho, Bitnami, Hupstream와 같은 Microsoft Open Technologies와 파트너쉽을 맺고 있는 VM을 이용하는 게 최선일 거에요.

    많은 도움 되시길 바랍니다.

    참고링크 :

    Windows Azure and VM Depot – Better Together

    스크립트 기반 클라우드 관리 자동화? Windows Azure Command-Line Tool

    Deploying Linux VMs to Azure from VM Depot

    Over 400 Virtual Machine Images of open source software stacks in the VM Depot Azure Gallery

  • Korea Evangelist

    Windows Azure 가상머신에 여러 개의 끝점(Endpoint)을 추가하는 스크립트

    • 0 Comments

    안녕하세요. 김대우입니다.

    고객사나 파트너사 분들과 회의를 진행하면서 Windows Azure 도입을 검토 할때 자주 질문 받는 내용이에요.

    바로 특정 TCP나 UDP 포트를 Windows Azure에서 개방하는 방법이지요. 이럴 경우에는 끝점(Endpoint)을 이용하시면 됩니다.

    가상머신 자체의 방화벽에서도 포트 개방이 필요하지만, 추가적인 보안으로 이렇게 끝점을 이용한 보안 구성도 가능합니다.

     

    그런데, 생각보다 많은 포트를 노출시켜서 현재 On-premise나 IDC에서 서비스 하는 분들이 많이 계시는 것 같아요.

     

    Windows Azure에서는 가상머신 앞단의 보안 기능으로, 끝점(End point)를 열어 줘야 하는데요. 

    2014년 3월 현재, Windows Azure 관리 포털 GUI에서는 TCP나 UDP 포트를 개별적으로 열어주도록 설정이 되어 있어요.

     

     image_thumb.png

    이런 형태로 끝점들이 구성 되어 있지요. 여기에 끝점을 추가 하려면.

     

     image_thumb_1.png

    추가 버튼을 누르고 진행하면 됩니다.

    네, 2014년 3월 현재, UI로 끝점을 구성해 가상머신의 개별 포트를 열어야 합니다.

     

    하지만, 한 두개의 포트가 아니라 여러 개의 포트를 열어 줘야 하는 경우라면 이야기가 틀려 집니다.

    예를 들어 20대의 VM에서 30개의 포트를 열어야 한다면? UI로 하는 것 자체가 어렵겠지요.

    이럴 때 파워쉘 스크립트를 이용하시면 편리 합니다.

     

    파워쉘에 대한 기본 설정이나 파워쉘 최초 구성을 시작하기 위해서는 아래 링크를 참조하세요.

    Windows Azure 관리 자동화 파워쉘(Powershell) 스크립트 실행 준비 절차

     

    파워쉘 스크립트를 이용해 여러 개의 끝점을 여는 방법 스크립트

    $i=[START PORT]
    do
    { Get-AzureVM -ServiceName "[CLOUDNAME]" -Name "[MACHINENAME]" | Add-AzureEndpoint -LocalPort $i -PublicPort $i -Name [NAME]$i -Protocol [PROTOCOL] | Update-AzureVM; $i+=1}
    until ($i -gt [END PORT] )

    위의 명령은 실행 되지 않습니다. - 이런 패턴 형태로 스크립트를 이용 가능해요. do until로 내부에서 루프를 돌면서 필요한 수만큼 추가하는 단순한 루틴입니다.

     

    파워쉘 실행코드

    $i=2000
    do
    { Get-AzureVM -ServiceName "server1" -Name "server1" | Add-AzureEndpoint -LocalPort $i -PublicPort $i -Name MW3Port$i -Protocol TCP | Update-AzureVM; $i+=1}
    until ($i -gt 2010 )

    포트 2000번부터 2010번까지 끝점을 생성하려면, 위의 방식을 쓰면 되지요.

    만약, “ServiceName”이나 “Name”이 뭔지 모르겠다면, 파워쉘에서 Get-AzureVM 실행하시면 현재 구독의 VM 리스트를 볼 수 있습니다. 해당 VM을 선택해 위에서 파라미터로 넣으시면 됩니다.

     

    아래의 링크는 또 다른 방식의 파워쉘 기반 끝점을 열어 주는 스크립트 입니다. Load Balancer 끝점 추가도 가능하고, CSV 파일을 엑셀에서 편집 후 파워쉘에서 바로 내용을 가져와 실행하는 스크립트 입니다.

    Adding multiple endpoints to your Windows Azure Virtual Machines by using a CSV file

    도움 되시길 바랍니다.

     

    Windows Azure 관리자 포털에서 UI로 끝점 구성을 위한 범위(Range) 지정

    2014년 3월 현재 Windows Azure는 끝점을 범위(Range)로 추가할 수 없어요, 하지만 곧 범위지정이 가능해 질 예정이라고 하니 많은 도움 되시길 바랍니다.

     

    참고링크 :

    파워쉘 스크립트를 이용해 여러 개의 끝점을 여는 방법

    Adding multiple endpoints to your Windows Azure Virtual Machines by using a CSV file 

    Windows Azure 관리 자동화 파워쉘(Powershell) 스크립트 실행 준비 절차

    How to Set Up Endpoints to a Virtual Machine

    파워쉘을 이용한 Windows Azure 가상머신 생성과 삭제 - Create or Delete Virtual Machines Using Windows Azure Cmdlets

    파워쉘을 이용한 Windows Azure 가상머신 관리 - Manage Virtual Machines Using Windows Azure Cmdlets

Page 8 of 126 (627 items) «678910»