Azure로 시작하는 클라우드 애플리케이션 개발


Published on

클라우드 애플리케이션 경진대회에서 사용한 Azure 소개 Deck

Published in: Technology
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • 클라우드 애플리케이션 개발을 위해서 Windows Azure 개발환경 구축부터 실제로 돌아가는 간단한 클라우드용 애플리케이션을 같이 만들어 봅니다.
  • Slide objectives: Explain what the cloud is in relationship to on-premises servers and hosted severs. Speaking Points: To put the cloud in perspective, let’s first think about the available options for deploying and running your application today. Today, there are a few established approaches for deploying and running applications.ServerOn one side you have on-premises servers or a self-hosted model. With on-premises servers, you bring your own machines, connectivity, software, and in some cases software licenses.You have complete control of the environment, the software stack, the hardware, etc.However, you also have complete responsibility. Your organization must have the skills and expertise to operate and manage the environment and software. You must take on the responsibility of patching the environment, replacing hardware, etc.These days, very few people want to be in this business. However, on-premises servers are not going away anytime soon. In some cases organizations have to maintain solutions running in an on-premises environment due to regulatory, data, or privacy requirements.Hosted ServersAn established alternative to the on-premises model is with a hosted environment.With hosted servers, you are effectively renting capacity – including machines, connectivity, and in some cases software.With this model, you have less control then when you’re managing your own servers. For instance, you can’t walk up to a machine, and plug in an external drive to load data. Or easily make hardware or software adjustments to optimize for performance. However, you also have fewer responsibilities when it comes to operating, updating, patching, and managing the environment. What is generally much more attractive about a hosted model is the cost model.The upfront capital costs can be much lower then building out your own infrastructure. However, one of the downsides is that you generally pay for the fixed capacity on a monthly basis – even if your application is idle. CloudWhat we are starting to see in the industry is the emergency of the cloud as a platform for building and running applications. So what is the cloud and how does it relate to these established options for running your apps?A cloud platform is designed as a shared, multi-tenant infrastructure.Cloud platforms utilize virtualization to: share hardware resources, provide isolation of applications or tenants, and also to provide a more dynamic infrastructure.Ability to scale out your application over multiple server instances.Because it is a shared infrastructure, there is even less control compared to a hosted environment. As this is an emerging space, there is a wide range of different types of cloud solutions. Some of the solutions focus purely on providing virtualized infrastructure. Servers you can remote into. However, many cloud platforms are starting to focus on raising the level of abstraction – so you can focus on building and deploying applications rather than remoting into machines and maintaining or patching servers. Old:Level of abstraction varies greatly today with the solutions in the marketWithin the cloud, there are things that are delivered as an infrastructureServices – services provided by the infrastructure and services you would consume programmaticallyFinally, one of the primary reasons why organizations ranging from startups, independent software vendors, and large enterprises are starting to investigate the cloud is the pricing model. With a cloud platform, you can expect a pay as you go pricing model – where you pay for what you use. [build arrow] I believe it’s important to understand that the cloud is part of a continuum. It is one ofpotential approaches that you can begin to use to deploy and run your applications. However, it’s important to understand that the cloud is not the silver bullet. It is not the perfect solution for every application. Notes:We view cloud as scale out, automated service management, high availability and multi-tenantBut cloud has other considerations: location, infrastructure, business model, ownership and management
  • Azure로 시작하는 클라우드 애플리케이션 개발

    1. 1. Azure로 시작하는클라우드 애플리케이션 개발<br />한국 마이크로소프트<br />Developer Evangelist<br />박중석<br />
    2. 2. 목차<br />Windows Azure 소개<br />Azure 적용 사례<br />Azure 개념 설명<br />Azure 용 애플리케이션 개발<br />간단한 애플리케이션 개발<br />Azure에 올려서 서비스<br />
    3. 3. 클라우드 컴퓨팅?<br />
    4. 4. 구름위의 트위터 클라이언트 TwittZure<br /><br />
    5. 5. 구름을 통한 소프트웨어 배포 Siemens<br />Siemens Expands Software Delivery Service, Significantly Reduces TCO <br /><br />
    6. 6. 웹 기반의 디자인 프로세스를 구름속으로... 3M<br />3M Launches Web-Based Visual Attention Service to Heighten Design Impact <br /><br />
    7. 7. 플랫폼의 범위<br />On-Premises<br />서버<br />Hosted <br />서버<br />클라우드<br />플랫폼<br /><ul><li>Bring your own machines, connectivity, software, etc.
    8. 8. Complete control
    9. 9. Complete responsibility
    10. 10. Static capabilities
    11. 11. Upfront capital costs for the infrastructure
    12. 12. Renting machines, connectivity, software
    13. 13. Less control
    14. 14. Fewer responsibilities
    15. 15. Lower capital costs
    16. 16. More flexible
    17. 17. Pay for fixed capacity, even if idle
    18. 18. Shared, multi-tenant infrastructure
    19. 19. Virtualized & dynamic
    20. 20. Scalable & available
    21. 21. Abstracted from the infrastructure
    22. 22. Higher-level services
    23. 23. Pay as you go</li></li></ul><li>Windows Azure 플랫폼<br />Compute:Virtualized compute environment based on Windows Server<br />Storage: Durable, scalable, & available storage<br />Management: Automated, model-driven management of the service<br />Database:Relational processing for structured/unstructured data<br />Service Bus: General purpose application bus<br />Access Control: Rules-driven, claims-based access control<br />AppFabric<br />
    24. 24. Windows Azure<br />Your<br />Service<br />DNS<br />LB<br />Web Portal<br />(API)<br />LB<br />Fabric<br />Controller<br />
    25. 25. Service<br />Service<br />Service<br />Model<br />Your<br />Service<br />DNS<br />LB<br />Web Portal<br />(API)<br />DNS<br />config<br />LB<br />서비스 배포<br />Fabric<br />Controller<br />
    26. 26. Your<br />Service<br />Service<br />Service<br />DNS<br />Service<br />Service<br />Service<br />Service<br />Service<br />LB<br />Service<br />Web Portal<br />(API)<br />LB<br />Model<br />서비스 확장<br />Fabric<br />Controller<br />
    27. 27. 서비스 모니터링과복구<br />Your<br />Service<br />Service<br />DNS<br />Service<br />Service<br />Service<br />LB<br />Web Portal<br />(API)<br />!<br />LB<br />Model<br />Fabric<br />Controller<br />
    28. 28. 애플리케이션 개발자를 위한 Windows Azure <br />Hosted<br />Service<br />포털<br />SDK<br />Storage<br />개발<br />실행<br />배포<br />
    29. 29. Roles<br />Role<br />Code<br />Configuration<br />
    30. 30. Load Balanced Instances<br />Role<br />Instance 1<br /><br />Instance 2<br />
    31. 31. Web vs Worker Role<br />Worker Role<br />Web Role<br />System Host<br />IIS Host<br />Your Code<br />Your Code<br />
    32. 32. Storage<br />Storage<br />Queue<br />Blob<br />Account<br />Tables<br />
    33. 33. Blobs<br />Blobs<br />Containers<br />Photo1.png<br />Photo2.png<br />Pictures<br />Photo3.png<br />
    34. 34. Queues<br />Messages<br />Queues<br />“Body1”<br />“Body2”<br />ThumbnailJobs<br />“Body3”<br />
    35. 35. Development Fabric 과Storage<br />Local Machine<br />Windows Azure 시뮬레이션 환경<br />Development Storage<br />Development Fabric<br />
    36. 36. 포털<br />
    37. 37. Overview<br />Hello Cloud<br />
    38. 38. Hello Cloud<br />Worker Role<br />Web Role<br />Queue<br />Blob<br />
    39. 39. Web Role<br />Hello Cloud<br />
    40. 40. Hello Cloud – Web Role<br />Web Role<br />
    41. 41. 개발할 결과물<br />
    42. 42. 개발할 순서<br />Step 1 - Create a Cloud Service project with a Web Role<br />Step 2 - Write our code and test it locally<br />Step 3 – Deploy to the Cloud<br />
    43. 43. Web Role<br />Demo<br />
    44. 44. 포털 – Allocated<br />
    45. 45. 포털 - Run<br />
    46. 46. 포털 - Initializing<br />
    47. 47. 포털 - Busy<br />
    48. 48. 포털 - Ready<br />
    49. 49. 참고 사항<br />개발 환경 구축 관련해서 아래 문서 체크<br /><br />Windows Azure tool 설치가 안되실 때 아래 URL 참고 해서 Registry Fix<br /><br />Azure 애플리케이션 개발 시에는 Visual Studio 실행시에 관리자 권한으로 실행<br />
    50. 50. 관련자료<br />Windows Azure Team Blog<br /><br />Windows Azure Platform Developer Center<br /><br />Windows Azure Platform<br /><br />Windows Azure Platform Library<br /><br />Windows Azure Tools for Microsoft Visual Studio (November 2009)<br /><br />Windows Azure Platform Training Kit - December Update<br /><br />Windows Azure Platform Training Course<br /><br />Windows Azure at PDC 2009: Replays Now Available!<br /><br />Architect Journal<br /><br />VSTS 2010 Team blog - Cloud Development<br /><br />
    51. 51. 질문이나 제안<br />http://joongs.net<br />
    52. 52. 감사합니다.<br />