Compartilhar via


모던 비즈니스를 위한 클라우드 (4) 클라우드 플랫폼의 주인공은 PaaS! Azure Website

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

이번에 소개해 드릴 내용은 최근에 홍수처럼 Azure 관련 새로운 소식들이 쏟아진 Azure Conf와 TechED의 내용을 모아 진행해 드리는 시리즈 포스팅입니다.

이어지는 Azure 소식이에요. 이번에는 PaaS 서비스인 Azure Website와 관련된 업데이트 소식들을 모아봤습니다.

모던 비즈니스를 위한 클라우드 (1) Microsoft Azure의 숨가쁘게 달려온 1년

모던 비즈니스를 위한 클라우드 (2) 엔터프라이즈 클라우드, 하이브리드 클라우드

모던 비즈니스를 위한 클라우드 (3) 클라우드 서비스의 초석, 인프라스트럭처

모던 비즈니스를 위한 클라우드 (4) 클라우드 플랫폼의 주인공은 PaaS! Azure Website

모던 비즈니스를 위한 클라우드 (5) 모바일 디바이스를 위한 Mobile Service

모던 비즈니스를 위한 클라우드 (6) Azure 데이터 서비스 – DaaS

Azure Website에 추가된 기능들의 면면을 살펴보면, 클라우드 서비스와의 격차가 점차 줄어들고 서로 닮아가고 있다는 생각이 들어요.

저와 같이 차근차근 살펴 보도록 하지요.

image_thumb.png

Azure Website 첫 소식으로, 여러 개발 프레임워크를 지원 – 특히, Java 지원 소식입니다. 물론 Java 지원에 대해서는 예전에도 몇 번 소개해 드렸던 부분이지요.

오랬 동안 커뮤니티에서 Java 하시는 분들과 만날 기회가 있어 소개해 드린 적이 있었는데요, 관리되는 서비스로 제공되는 PaaS 기반 Java Website에 많이 관심을 가져 주셨어요. 국내에도 조금씩 Azure Website로 Java 웹사이트를 운영하려는 분들이 생기는 것 같아요.

간단히, Azure 관리자 포털의 “구성” 부분에서 Java 버전을 활성화 하시면 됩니다.

물론 스케일 업이나 스케일 아웃, 오토스케일과 같은 PaaS의 장점들을 그대로 Java에서 활용 가능해요.

image_thumb_6.png

Azure Website에서 Java를 지원하는 상세한 소식들은 아래 링크를 참고 하시길 바랍니다.

Java on Azure Web Sites

Azure Friday - Azure WebSites - Java runs great in Azure!

Get started with Azure websites and Java

클라우드의 기본은 유연한 고무줄 서비스! - Azure Autoscale

image_thumb_1.png

Azure의 클라우드 서비스들이 제공하는 AutoScale 부분입니다. 관리포털에서 클릭 몇 번만으로 오토스케일을 활성화시켜 자동으로 성능 조절이 가능해요. 많이 소개된 내용이라 생략 하겠습니다. ^_^

Azure Webiste의 스테이징 서비스 제공

음 스테이징 환경 지원이 많은 분들이 기다리신 따끈한 소식이에요. 스테이징 환경과 프러덕션 환경을 제공해 양쪽을 스왑도 가능하고, 스테이징 상태에서 테스트 역시 가능합니다.

스테이징 환경을 이용하기 위해서는 아래 절차를 참고 하시면 되는데요.

image_thumb_2.png

Azure Website에서 해당 웹사이트의 “크기 조정” 메뉴에서 “웹호스팅 계획 모드”가 표준 이어야 합니다.

이어서 대시보드의 우측 “새 배포 슬롯 추가”를 실행하면 스테이징 환경 생성이 가능해져요.

image

이런 식으로 하나 뿐이던 웹사이트 항목에 스테이징 항목이 하단에 추가됩니다.

스테이징 웹사이트와 프러덕션 웹사이트를 스왑하려면? 아래 메뉴의 SWAP을 실행하면 됩니다.

image

이렇게 스왑 하시면 바로 프러덕션과 스테이징이 즉시 스왑되지요. 프러덕션 후 문제가 된다면 다시 스테이징으로 스왑해 내린 후 오류를 확인 하시면 됩니다.

Azure의 클라우드 서비스에서 제공하던 기능인데 Website에도 들어왔어요. 유용합니다!!!

Azure website의 스테이징 처리에 대해 추가적인 내용은 아래 링크에서 확인해 보실 수 있습니다.

Staged Deployment on Microsoft Azure Websites
Windows Azure: Staging Publishing Support for Web Sites, Monitoring Improvements, Hyper-V Recovery Manager GA, and PCI Compliance

다음 소개해 드릴 내용은 Azure Website들의 백그라운드 작업을 위한 WebJobs 입니다.

Azure Website에서 백그라운드로 실행되는 작업들은 모두 WebJobs!

WebJob은 Azure Website에서 실행되는 백그라운드 응용프로그램이나 스크립트로 원하는 주기(필요할 때문, 연속적으로, 또는 스케줄 된 시각에)에 실행 가능한 작업을 의미합니다.

image_thumb_4.png

소개 슬라이드에는 보통 이런 식으로 예시되곤 하는데요, 꼭 큐 서비스와 연계될 필요는 없습니다. Webjob에서 실행 가능한 응용프로그램 및 스크립트는 아래와 같이 여러 종류를 지원하고 있어요.

◾.exe - .NET assemblies compiled with the WebJobs SDK
◾.cmd, .bat, .exe (using windows cmd)
◾.sh (using bash)
◾.php (using php)
◾.py (using python)
◾.js (using node)

첫 줄에 보이시나요? 복잡한 비즈니스 로직이라도 exe 실행 파일을 .NET으로 제작해 원하는 작업은 대부분 다 가능할 거에요.

Webjob을 설정하고 실행하는 방법은 아래와 같습니다.

On Demand Task

Website의 Webjob 항목에서 이렇게 필요한 파일들을 zip으로 묶어(실행 파일이나 스크립트, 필요한 콘텐트용 이미지 등 포함) 업로드 하고, 실행 방식을 선택 하시면 됩니다.

Websob을 실행하는 방법은 해당 website의 Webjob을 선택하고 하단에서 실행 하시면 됩니다.

Task List

배치성 작업으로 필요할 경우나 주기적인 처리가 필요하실 경우에도 사용 가능하고, 설명 드린 것처럼 연속적으로 실행해 윈도 서버의 서비스 어플리케이션이나, 클라우드 서비스의 Worker Role과 유사한 형태로 사용도 가능합니다.

Use WebJobs to run background tasks in Azure Websites
Introducing Windows Azure WebJobs
Azure WebJobs Recommended Resources

Azure Website인 만큼, Webiste의 작업자 프로세스로 Azure의 여러 Storage나 Service Queue와 연계될 일들이 자주 있을 거에요. 고맙게도, 개발자들이 맨땅에 헤딩하지 말라고 이를 위해 WebJob SDK를 제공하고 있습니다. 아래 링크에서 SDK 및 추가 정보들을 확인 가능합니다.

What is the Azure WebJobs SDK

잠시 Azure Website의 Staging 기능과 WebJob에 대해서 살펴 보았는데요, 클라우드 서비스의 대표 기능들이 점차 Azure Website에 적용되는 것 같아요.

이어지는 내용은 Azure Traffic Manager 입니다.

image_thumb_5.png

트래픽 매니저는 글로벌 부하 분산 서비스를 위한 장치로, 예전에 제가 소개를 해드린적이 있으니 링크만 전달해 드리도록 할게요.

클라우드 트래픽 부하 분산 - (1) Windows Azure 트래픽 관리자(Traffic Manager)

클라우드 트래픽 부하 분산 - (2) Windows Azure 트래픽 관리자 서비스 시나리오

클라우드 트래픽 부하 분산 - (3) Windows Azure 트래픽 관리자 서비스 구축

감사합니다.

참고링크 :

모던 비즈니스를 위한 클라우드 (1) Microsoft Azure의 숨가쁘게 달려온 1년

모던 비즈니스를 위한 클라우드 (2) 엔터프라이즈 클라우드, 하이브리드 클라우드

모던 비즈니스를 위한 클라우드 (3) 클라우드 서비스의 초석, 인프라스트럭처

모던 비즈니스를 위한 클라우드 (4) 클라우드 플랫폼의 주인공은 PaaS! Azure Website

모던 비즈니스를 위한 클라우드 (5) 모바일 디바이스를 위한 Mobile Service

모던 비즈니스를 위한 클라우드 (6) Azure 데이터 서비스 – DaaS

TechED 유럽 공식웹사이트

AzureConf 공식웹사이트

Java on Azure Web Sites

Azure Friday - Azure WebSites - Java runs great in Azure!

Get started with Azure websites and Java

Staged Deployment on Microsoft Azure Websites
Windows Azure: Staging Publishing Support for Web Sites, Monitoring Improvements, Hyper-V Recovery Manager GA, and PCI Compliance Use WebJobs to run background tasks in Azure Websites
Introducing Windows Azure WebJobs
Azure WebJobs Recommended Resources

What is the Azure WebJobs SDK

클라우드 트래픽 부하 분산 - (1) Windows Azure 트래픽 관리자(Traffic Manager)

클라우드 트래픽 부하 분산 - (2) Windows Azure 트래픽 관리자 서비스 시나리오

클라우드 트래픽 부하 분산 - (3) Windows Azure 트래픽 관리자 서비스 구축

Windows Azure 90일 무료 평가판 - Windows Azure Mobile Service도 사용 가능

Windows Azure 공식 웹사이트

[동영상 강좌] (1) Windows Azure 개요
[동영상 강좌] (2) Windows Azure 웹 사이트
[동영상 강좌] (3) Azure에서 실행되는 ASP.NET 웹 사이트 만들기
[동영상 강좌] (4) Windows Azure 클라우드 서비스
[동영상 강좌] (5) Cloud Service 프로젝트 처음 만들어보기
[동영상 강좌] (6) 기존 ASP.NET 웹 사이트를 Windows Azure로 옮기기
[동영상 강좌] (7) Windows Azure 가상 컴퓨터
[동영상 강좌] (8) Windows 가상 컴퓨터 소개
[동영상 강좌] (9) SQL 데이터베이스 소개
[동영상 강좌] (10) SQL 데이터베이스 실습하기
[동영상 강좌] (11) Windows Azure 저장소
[동영상 강좌] (12) Windows Azure 저장소 실전 예제 살펴보기
[동영상 강좌] (13) Windows Azure 서비스 버스
[동영상 강좌] (14) 서비스버스 Queue와 Topic
[동영상 강좌] (15) 클레임 기반 인증 구현하기
[동영상 강좌] (16) 확장성 전역성 높은 가용성을 지닌 앱 만들기
[동영상 강좌] (17) 캐시 클러스터를 이용하여 신축성있는 클라우드 서비스 만들기
[동영상 강좌] (18) 트래픽 관리자를 이용한 24x365 글로벌 서비스 구축하기
[동영상 강좌] (19) WPNS와 Windows Azure로 알림 서비스 구현하기
[동영상 강좌] (20) Windows Azure 미디어 서비스 API 활용하기