클라우드 전문가처럼 들리는 방법
게시 됨: 2022-03-10코드가 작성되고 디자인이 멋지게 보입니다. 클라이언트가 "클라우드에서 실행해야 합니까?"라고 물으면 새 프로젝트를 거의 진행할 준비가 된 것입니다.
당신은 식은땀을 흘리고 있습니다. 질문이 방대합니다. 지역 및 영역 , 고가용성 , 로드 밸런싱 — 클라우드에는 고유한 언어가 있습니다.
걱정하지 마십시오. 당신은 이것을 가지고 있습니다. 이 문서에서는 클라우드에 대한 현명한 결정을 내리고 클라이언트의 클라우드 질문에 답하는 방법을 알려줍니다.
네 가지 큰 질문
귀하와 귀하의 고객이 원하는 클라우드 유형을 알기 전에 다음 네 가지 질문에 대해 논의해야 합니다.
- 실행해야 하는 소프트웨어는 얼마나 복잡합니까?
- 얼마나 확장해야 합니까?
- 절대 떨어지지 않는다는 것이 얼마나 중요한가?
- 전 세계 사용자를 위해 얼마나 빨리 실행해야 합니까?
이 문서에서는 이러한 질문에 답하고 클라우드 전문가처럼 들리는 데 필요한 배경과 정보를 제공합니다.
의 시작하자.
- 클라우드란?
- 고객이 클라우드에 관심을 갖는 이유
- 클라우드는 호스팅 서비스와 어떻게 다릅니까?
- 가상 머신이 중요한 이유
- 네트워킹에 대해 조금 이야기해 봅시다.
- 다양한 유형의 구름
- 클라우드의 기본 조각
- 고객이 질문할 가능성이 있는 질문
클라우드란?
우리가 클라우드 컴퓨팅 에 대해 이야기할 때, 우리는 실제로 다른 사람에게서 컴퓨터 조각을 빌릴 수 있는 능력을 의미합니다. 그게 전부입니다.
Amazon 및 Google과 같은 회사는 많은 컴퓨터를 보유하고 있으며 귀하에게 컴퓨터의 일부를 기꺼이 임대합니다. 컴퓨터를 임대하면 자체 데이터 센터를 구축하거나 이를 운영하기 위해 자체 전문가 직원을 고용할 필요가 없기 때문에 비용 효율적입니다.
컴퓨터의 일부를 임대할 때 원하는 소프트웨어를 실행할 수 있도록 전체 컴퓨터처럼 보이도록 해야 합니다. 이것이 공급자가 가상 머신(VM)을 제공하는 이유입니다. 가상 머신은 사용자가 별도의 컴퓨터에서 실행되는 것처럼 보이게 하는 소프트웨어입니다.
고객이 클라우드에 관심을 갖는 이유
클라우드에 대해 자세히 알아보기 전에 고객이 관심을 갖는 이유를 이해하는 것이 중요합니다. 유행어의 매력을 무시하지 맙시다. 클라우드는 지금 정말 유행입니다. 당신의 클라이언트는 그저 멋진 아이들이 다 하고 있기 때문에 묻는 것일 수도 있지만, 멋진 아이들이 하는 데에는 이유 가 있습니다.
기본부터 시작하겠습니다. 자체 데이터 센터를 호스팅하는 것은 골치 아픈 일입니다. 전력 소비, 하드웨어를 최신 상태로 유지, 전문가 팀을 고용하여 운영하는 것, 비즈니스와 아무 관련이 없는 수천 가지 다른 문제에 대해 걱정해야 합니다. 정전이 되거나 홍수가 나거나 지붕이 무너지면 어떻게 됩니까? 이것이 거실에서 실행되는 서버에서 웹사이트를 호스팅하지 않는 이유입니다.
모든 골칫거리를 다른 사람에게 전가할 수 있을 뿐만 아니라 데이터 센터를 운영하게 하면 세 가지 큰 이점이 있습니다.
- 클라우드는 글로벌 합니다.
클라이언트 근처를 포함하여 전 세계의 데이터 센터에 존재합니다. 그것은 속도를 의미 합니다. 미국에서 데이터가 로드되기를 기다리는 중국 고객을 원하지 않습니다. Google.com에 가면 시카고나 LA에 있는 것과는 다른 데이터 센터가 보스턴에 있습니다. 바로 미국에 있습니다. 이것이 바로 Google의 속도를 가능하게 하는 큰 부분입니다. - 구름은 성장하고 축소 됩니다.
서버를 구입하면 하나의 서버가 있습니다. 내 앱에 전체 컴퓨터가 필요하지 않더라도 해당 서버에 대한 비용을 지불해야 합니다. 내 앱이 정말 유명해지면 더 많은 서버를 빨리 구매해야 합니다. 클라우드는 그렇게 작동하지 않습니다. 서버 공유를 임대한다는 것은 임대하는 금액을 변경할 수 있다는 것을 의미합니다. 바쁠 때 주문을 확장하고 많이 필요하지 않을 때 주문을 축소할 수 있습니다. - 구름은 절대 내려가지 않습니다 .
절대로 ...라고 말하지 마십시오. 그러나 거의 하지 않습니다. 클라우드 제공업체는 "99.999%의 시간(1년에 가동 중지 시간이 5.26분)"에 불과하다는 것을 의미합니다. 로드 밸런싱 및 장애 조치(failover)와 같은 서비스를 사용하면 더 작게 만들 수 있습니다.
이것이 클라우드가 멋진 이유가 되지만 일부는 간단한 호스팅 서비스에서 얻을 수 있습니다. 고객이 클라우드에 대해 묻는다면 차이점을 알아야 합니다.
클라우드는 호스팅 서비스와 어떻게 다릅니까?
Media Temple이라는 호스팅 서비스에 개인 웹사이트가 있습니다. 내 사이트는 WordPress를 실행하므로 몇 가지 사항이 필요합니다.
- 내 파일을 넣을 디렉토리
- HTTP 서버
- 데이터베이스
- PHP
내 디렉토리는 Linux에서 실행되고 HTTP 서버는 Apache이고 데이터베이스는 MySQL이며 모두 PHP에서 실행됩니다. 이것이 그들이 LAMP 스택 (Linux-Apache-MySQL-PHP)이라고 부르는 이유입니다. 많은 조각처럼 들릴 수 있지만 제한적입니다. 예를 들어 새 소프트웨어를 설치할 수 없습니다. PostgreSQL에서 데이터베이스를 실행하려면 운이 좋지 않습니다. 저는 Python이나 Go와 같은 다른 언어를 실행할 수 없습니다. 나는 내 자신의 별도의 프로그램을 작성할 수 없습니다. 나는 내가 할 수 있는 매우 제한적이고 미리 구성된 일들만 얻습니다.
내 웹사이트도 한 곳에서 한 서버에서만 실행됩니다. 그 서버는 어디에 있습니까? 나는 아무 생각이 없다. 미국 어딘가에 있는 것 같은데, 그 외에는 잘 모르겠고, 별로 신경도 안 써요. 호스팅 제공업체에서 단일 서버를 제공하고 URL을 입력하면 내 사이트가 나타납니다(대부분).
호스팅 제공업체는 이를 간단하게 유지합니다. 그들 중 일부는 다른 스택을 호스팅하고 일부는 좀 더 많은 구성을 허용하지만 항상 세트 패키지입니다.
호스팅 서비스와 클라우드의 근본적인 차이점은 가상 머신입니다. 호스팅 서비스는 기존 운영 체제의 일부만 제공합니다. 가상 머신은 나에게 전체 운영 체제를 제공합니다.
가상 머신이 중요한 이유
가상 머신은 실제 머신처럼 작동합니다. Linux 또는 Windows를 실행할 수 있으며 일반 컴퓨터가 할 수 있는 모든 작업을 수행할 수 있습니다. Apple은 가상 머신에서 OS X를 실행하는 것을 허용하지 않습니다(몇몇 사람들이 작동하도록 만들어 "Hackintosh"를 구축함).
가상 머신이 있으면 완전히 제어할 수 있습니다. 데이터베이스, 이메일 서버, 암호화, 외계인 검색 등 원하는 모든 것을 실행할 수 있습니다. 가상 머신을 사용하면 원하는 모든 작업을 수행할 수 있습니다.
전체 운영 체제를 혼자 소유하는 것은 정말 강력하지만 유용한 작업을 수행하려면 먼저 VM에 액세스해야 합니다.
네트워킹에 대해 조금 이야기해 봅시다.
가상 머신은 접근할 수 없으면 쓸모가 없습니다. 네트워킹이 약간 복잡해질 수 있지만 네트워킹이 필요합니다.

그러나 이러한 기본 사항은 시작하는 데 필요한 정보를 제공합니다. 여러분이 잘 알고 있는 예부터 시작하겠습니다. 아마 지금 당신의 집에서 실행 중일 것입니다.

집에 컴캐스트가 있어요. Comcast는 10.0.0.89
와 같은 IP 주소를 가진 케이블 모뎀을 제공합니다. 그것은 나에게 하나의 IP만 제공하지만 두 대의 랩톱, iPad 및 전화가 있습니다. 제 아내와 딸은 더 많은 장치를 가지고 있습니다. 이를 위해 케이블 모뎀에 연결하는 무선 라우터가 있습니다. 내 무선 라우터는 192.168.0.100
, 192.168.0.101
등과 같은 IP 주소를 가진 모든 장치에 제공하지만 해당 주소는 내 네트워크 전용입니다.
이러한 개인 주소에 대한 기술 용어는 라우팅 할 수 없습니다. 개인용으로 설정된 주소가 몇 개 있습니다. 대부분은 10.
또는 192.168
로 시작하여 이러한 주소가 야생에서 허용되지 않는다는 인터넷 라우터에 대한 신호입니다. 이 특수 주소는 재사용이 가능하기 때문에 사용하고 있습니다.
모든 IP 주소는 주어진 네트워크에서 고유해야 합니다. 그렇지 않으면 라우터는 내가 연결하려는 컴퓨터를 알지 못합니다. 4,294,967,296개의 가능한 IP 주소가 있습니다. 이 모든 것이 1970년대에 시작되었을 때 네트워크 설계자들은 이것이 많다고 생각했지만 지금은 고갈되고 있습니다. 앞으로 이 문제를 해결할 수 있는 IPv6과 같은 다른 프로토콜이 있지만 오늘날 우리는 NAT(Network Address Translation)로 이 문제를 해결합니다. 어떻게 작동하는지 보여드리겠습니다.
집에 있는 장치에는 집에만 있는 고유한 주소가 있지만 전 세계에는 없는 주소가 있습니다. 인터넷에 접속하고 싶을 때 번역할 무선 라우터가 필요합니다. 링크를 클릭할 때마다 내 랩톱은 무선 라우터와 통신하여 나를 요청합니다. 차례로 무선 라우터는 나를 대신하여 전 세계와 통신하지만 자체 주소를 사용합니다. 그런 다음 내 케이블 모뎀은 Comcast와 통신할 때 동일한 작업을 수행하고 Comcast는 내 요청을 일반 인터넷으로 보낼 때 훨씬 더 큰 규모로 동일한 작업을 다시 수행합니다. 각 라우터는 이전 라우터의 IP 주소를 변환합니다. 이 모든 것은 많은 컴퓨터가 192.168.0.101
과 같은 IP 주소를 재사용할 수 있고 충돌 없이 작동한다는 것을 의미합니다.
그렇다면 실제 인터넷에서 내 실제 IP 주소는 무엇입니까? 지금 내 실제 IP 주소는 66.30.118.150
이고 개인 IP 주소는 192.168.0.103
입니다.
주소 66.30.118.150
은 어디에서 왔습니까? Comcast가 소유한 IP 주소입니다. 내가 미국 북동부의 매사추세츠 주 케임브리지에 있다는 것이 분명해졌습니다. 나는 세부 사항이 필요하지 않습니다. 내가 알아야 할 것은 그것이 Comcast가 나를 위해 관리하는 실제 공개 주소라는 것뿐입니다. Comcast는 아마도 수백 또는 수천 명의 다른 사람들에게 동일한 주소를 사용할 것입니다.
이 모든 주소 변환은 다른 매우 중요한 작업을 수행합니다. 내 홈 네트워크에 들어가는 모든 것을 제어하는 단일 액세스 지점을 제공합니다. 외부인은 192.168.0.103
에 액세스할 수 없습니다. 그들에게는 다른 주소입니다. 들어오고 나갈 수 있는 트래픽을 제어하여 많은 보안을 얻습니다. 내 무선 라우터는 무슨 일이 일어나는지 제어할 수 있는 핀치 포인트입니다.
대부분의 클라우드는 내 홈 네트워크처럼 작동합니다. 컴퓨터는 가상이고 네트워크는 서브넷 , 무선 라우터는 게이트웨이 라고 하지만 모두 같은 것입니다. 개인 주소와 이를 공용 주소로 변환하는 게이트웨이가 있는 가상 머신이 있습니다. 그들은 또한 집에서 내 무선 라우터처럼 사용할 수 있는 주소 공간이 있습니다. 이와 같이:

복잡하게 들릴 수 있지만 그리 어렵지 않습니다. 클라우드는 내가 다른 사람에게서 컴퓨터를 임대하고 내 홈 네트워크처럼 보이도록 설정하는 방법입니다.
기억해야 할 가장 중요한 사항은 다음과 같습니다.
- 사설 IP는 사설 네트워크에서만 사용할 수 있습니다.
- 공개 IP는 인터넷에서 사용할 수 있습니다.
- NAT를 사용하면 사설 IP가 공용 IP처럼 보일 수 있습니다.
그것이 클라우드 네트워킹에서 발생하는 모든 것이 아니지만 클라우드를 시작 및 실행하고 액세스하기에 충분합니다. 이제 원하는 클라우드 종류를 결정해야 합니다.
다양한 유형의 구름
클라우드 는 무정형 용어입니다. 사람들은 이를 다양한 의미로 사용합니다. 구름에는 실제로 세 가지 범주가 있습니다.
인프라 클라우드
가상 머신과 네트워크는 IaaS (Infrastructure as a Service)라고도 하는 인프라 클라우드 의 빌딩 블록입니다. 사용자가 완전히 제어할 수 있는 가상화된 인프라를 제공합니다. 운영 체제와 그 위에서 실행되는 모든 것을 결정합니다.
유연성과 통제력을 얻을 수 있지만 설치하는 모든 것을 관리하고 지원할 책임은 사용자에게 있습니다.
인프라 클라우드는 정적 이거나 탄력적 입니다. 정적 클라우드는 내 홈 네트워크처럼 작동합니다. 필요한 모든 것을 실행하는 가상 머신 세트가 있습니다. 그들은 인터넷에 대한 액세스를 허용하는 공개 게이트웨이가 있는 개인 네트워크에 살고 있습니다. 정적 클라우드는 데이터 처리, 추가 컴퓨팅 성능 또는 호스팅 공급자가 처리할 수 있는 것보다 더 복잡한 사이트 호스팅에 적합합니다. 또한 정적 클라우드를 전 세계의 다른 데이터 센터에 복제할 수 있습니다.
탄력적 클라우드는 정적 클라우드처럼 작동하지만 동적입니다. 고정된 가상 서버 세트 대신 필요에 따라 확장하거나 축소할 수 있는 세트가 있습니다. 사이트나 서비스에 대한 수요가 많을 때 클라우드가 확장되고 그렇지 않으면 다시 정상 크기로 축소됩니다. 모든 확장 및 축소는 비용을 절감합니다. 필요하지 않을 때 필요하지 않은 컴퓨팅 성능을 되돌려 줍니다.
넷플릭스는 IaaS를 사용합니다. Amazon Web Services는 인프라를 제공하고 Netflix는 전체 시스템을 맨 위에 구현합니다. 고화질 콘텐츠 스트리밍을 위한 고도로 맞춤화된 지원을 제공하기 위해 자체 소프트웨어를 작성했습니다. Weather Company는 또 다른 예입니다. IBM Cloud에서 실행됩니다.
플랫폼 클라우드
PaaS (Platform as a Service)라고도 하는 플랫폼 클라우드 는 클라우드 공급자가 인프라 및 소프트웨어 스택을 관리하는 동안 애플리케이션을 위한 소프트웨어 빌딩 블록을 제공하는 특수 클라우드입니다.
예를 들어 웹 애플리케이션이 필요한 경우 PaaS에서 사용할 수 있는 기본 WordPress 또는 Drupal을 제공할 수 있습니다. 데이터베이스가 필요한 경우 MySQL 또는 PostgreSQL을 선택할 수 있습니다. 개발 도구가 필요한 경우 Node, Java 또는 PHP 중에서 선택할 수 있습니다. 실행 중인 운영 체제나 MySQL 보안 패치를 적용해야 하는지 여부에 대해 걱정할 필요가 없습니다. 클라우드 제공업체에서 알아서 처리해 드립니다.
Heroku는 PaaS 클라우드입니다. 아래에 소프트웨어를 제공하고 그 위에 원하는 것을 작성하기만 하면 됩니다. 약간의 유연성을 제공하지만 IaaS 클라우드보다 훨씬 더 많은 관리를 수행합니다.

소프트웨어 클라우드
SaaS (Software as a Service)라고도 하는 소프트웨어 클라우드 는 잘 정의된 온라인 서비스를 제공하는 매우 전문화된 유형의 클라우드입니다. 호스팅 공급자는 특별한 유형의 SaaS 클라우드입니다. 그들은 매우 제한된 방식으로 작동합니다.
Wix는 SaaS의 또 다른 예입니다. 훌륭한 편집기, 사용자 로그인 및 지불 지원, 선택할 수 있는 다양한 템플릿이 있는 완벽한 웹 애플리케이션 호스팅 서비스를 제공합니다. Wix는 하나의 작업에만 집중합니다. 기능이 매우 제한되어 있지만 사용하기 더 쉽습니다.
클라우드의 기본 조각
다양한 유형의 클라우드와 클라우드가 필요한 이유에 대해 이야기했습니다. 클라우드 전문가처럼 들리기 전에 클라우드를 구성하는 다양한 구성 요소를 알아야 합니다.
가상 머신
가상 머신은 하드웨어처럼 실행되는 소프트웨어로 어디에도 별도의 서버가 필요 없이 실제 머신처럼 작동합니다. VM으로 원하는 모든 작업을 수행할 수 있으며 오리 테스트를 통과합니다. 실제 서버처럼 걷고 꽥꽥 거립니다. 귀하의 소프트웨어는 그 차이를 결코 알지 못할 것입니다.
이러한 유연성에는 대가가 있습니다. 귀하는 가상 머신을 유지 관리할 책임이 있습니다. 클라우드 제공업체는 하드웨어가 최상의 상태인지 확인하지만 사용자는 운영 체제와 그 위에서 실행되는 기타 모든 것(보안 패치, 소프트웨어 업데이트, 구성)을 선택해야 합니다. 모든 것은 당신에게 달려 있습니다.
탄력적 클라우드를 사용하고 있지 않다면 더 이상 필요하지 않은 가상 머신을 해제하는 것이 좋습니다. 공급자는 VM이 작동하는지 여부에 따라 비용을 청구합니다.
서브넷
우리는 이미 클라우드 네트워킹을 다루었습니다. 서브넷은 클라우드에서 실행되는 네트워크입니다.
사설 IP 및 공용 IP
클라우드 네트워크는 서브넷의 가상 머신에 라우팅할 수 없는 IP 주소를 할당합니다. 그것들은 내 네트워크에 사적인 것이기 때문에 사설 IP로 알려져 있습니다. 가상 머신이 인터넷에 요청을 보내면 공용 게이트웨이가 해당 요청을 번역합니다. 이를 클라우드 제공업체의 이 그레스 트래픽 이라고 합니다.
커피숍에서 가정용 프린터에 액세스할 수 없는 것처럼 클라우드에서 가상 머신에 액세스하려면 공용 IP가 필요합니다.
가상 머신에 공용 IP를 할당하여 수신 트래픽 (인터넷에서 가상 머신으로 라우팅되는 트래픽)을 허용할 수 있습니다. 클라우드 공급자가 수신 및 송신 트래픽에 대해 요금을 다르게 청구하기 때문에 중요합니다.
SSH 키
SSH 키는 클라우드에 액세스할 수 있는 개인 정보입니다. 2개의 파일로 구성되어 있습니다. 다음과 같은 공개 키가 있습니다.
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC5b8xmtjUd1taP4svy9FM/WZc/n5gkqKVkhIsqW27hw2WuhfTVNLA6IBBOs9+br+HlqGYwgYB3DSh0Zm/3Bok1uQhinH77FmKsrPGDpvtJv16weIvGiTMVp+Mct8DVKl48KZxvQKa0Hp6MxEc7cQ9WPvzWn9BPLHERSkSNwXSUobqpFBgIPy9UBWr5DsI2Li5HeMgMgTcbuVVdO/8I/rhKoIyTqkhY4CZcyssmWhMvPmk6+9IcOr0O4SyW9TL+CZgDH1mW2dUypT+1j6HgFjr9H8NfJ4EKnWnFkQXo8HZ4oh6lSTaIfDQfnbrjVUO14N7FW9ZgXbL9cJVx5FLw3ny9 [email protected]
다음과 같은 개인 키가 있습니다.
-----BEGIN RSA PRIVATE KEY----- MIIEogIBAAKCAQEAuW/MZrY1HdbWj+LL8vRTP1mXP5+YJKilZISLKltu4cNlroX0 1TSwOiAQTrPfm6/h5ahmMIGAdw0odGZv9waJNbkIYpx++xZirKzxg6b7Sb9esHiL xokzFafjHLfA1SpePCmcb0CmtB6ejMRHO3EPVj781p/QTyxxEUpEjcF0lKG6qRQY CD8vVAVq+Q7CNi4uR3jIDIE3G7lVXTv/CP64SqCMk6pIWOAmXMrLJloTLz5pOvvS HDq9DuEslvUy/gmYAx9ZltnVMqU/tY+h4BY6/R/DXyeBCp1pxZEF6PB2eKIepUk2 iHw0H52641VDteDexVvWYF2y/XCVceRS8N58vQIDAQABAoIBAHU7UKW+m2X55Dui zf0SqW5rXUtDwhOq6qTZhoGIvFjOBwKGfXosjRyyGJ0o6jyqvM1L4Q7ZUDXzg5fT CwXIhAYKrFprRXvHcypnS2hHsKW27k3yZ6tkIX+XW+VT5fzdhCXUyKks3jcRBHtJ ux7BI0kLGR02e6MSHYkowp47p1Auukx1saRkFTwvy+znABgqVETvtHBxAiElXndL JfQntaQacgWWDjl2qUj+06IB/Qzd9/Mo1Vtdb8SUZxv/Qc2raSi3LL0N4aSJGLGU pq395ggv9NdhUQf+DN9uGaOC4hYeGdO8gm27yysZ4rTT5iln5wOaCAcMTMrGL4+k GoU/nKECgYEA7AP/Mh9sUi9AX/17a3A/zxNAO1ZrvM+Caj/X/t/pt3HEOhqLz7o5 z3g8/Z+H0CJLZNiP9XbMak2wvOiqRj0y+FihX/ESll6XgIEPTBUcFSirWMe4f9og FltrnelUjHG9MTDW0P4jmmp1E5V8RgnCCv2VjN40ulP5zHPXXdU2FP8CgYEAySNs /qlFL7DTB/A851y6cUzQC5kiKlr/T8aUtOHeBo626jlnHDy/VY9vIJ0ttsYyHCdM OSdqZh5wRwvshr94tpOBQNnDTI4Xv7t2couHl7q2xTOYeWViwGyZaatNYlWWFh/u YSCTd2jn6cvBZOZP3BAiWoF9nzLcsjfpNLdzAkMCgYAx8TaTOKsHSRBqP41aUspt 2zkAVW0+6vpB2Xivalpegyhu0yc6scGB8YOWd6eZl2g00s7DtnvTEtWPY/yEGHcs rjSXxL+WKjYM70J5aw4iPBTmGH0mMNYRZQ8Ev1cw0PCj9B3A48ZM6rITjtJZT79L 7BU1Vd/6fcKiTPEJ3hAvqQKBgBKOQBnmR8m0iGNtGFFHzrNxIKhRQkOiDXewnDtr su3r8Jf/H7INMKGWD+x0U6lO84SBY5jKOBifqkADq5hqxZoiVYREEq5XVX2Mr8q1 cJbg1MewkNpyLgAOhMCo2wS9XJFB9N3lAXW8qdh5waerT6a/nku3Mn2jVZTjb5I7 clK9AoGAZLuvLAJpFOf/mweajULV+oFMGzIArvbk1c+cGySeI5uZwfQ9lv2MOb0N DuFTXZt6QpKV9Nix/8KgBIP2Vac6gSAeF6kIXk2+nV6gXm5tojYrf6gG1jY8ceRD IFSeGlnBhYVrFcQ79fYwJtSQgGde4PtNF1yq9ipluAyLuy1cLUc= -----END RSA PRIVATE KEY-----
암호 대신 이 두 파일을 함께 사용합니다.
SSH 공개 키 인증은 표준 사용자 이름 및 암호보다 더 안전한 원격 시스템에 로그인하는 강력한 방법입니다. (SSH는 "secure shell"의 약자입니다.) Github 키의 형태로 SSH 키를 본 적이 있을 것입니다.
SSH 키는 무차별 대입 공격 및 기타 위협을 방지하기 위해 공개 키 암호화 및 시도 응답 인증에 의존합니다.
이러한 키는 사용자만 가상 머신에 액세스할 수 있도록 하며 스크립트 및 기타 자동화된 작업과 잘 작동합니다.
데이터 센터
데이터 센터는 컴퓨터로 가득 찬 큰 건물입니다. 클라우드 제공업체는 그 일부를 귀하에게 임대합니다.

컴퓨터는 동시에 많은 가상 머신을 호스팅할 수 있는 강력한 서버입니다. 이러한 서버는 많은 전력을 소비하고 많은 열을 발생시키며 물리적으로 서로 가까이 있어야 네트워킹이 빨라집니다. 따라서 데이터 센터는 클라우드 공급자가 클라우드의 일부를 실행하는 모든 물리적 하드웨어를 수용하는 시설입니다. 데이터 센터에는 적절한 냉각, 예비 전원 공급 장치, 방대한 네트워크 대역폭, 액세스 제어 및 모든 기계가 계속 작동하도록 하는 숙련된 직원이 필요합니다.
데이터 센터는 많은 부하를 처리할 수 있지만 한 곳에만 있습니다. 글로벌 클라우드 제공업체는 전 세계에 데이터 센터를 분산하여 모든 클라이언트가 서버에 대해 허용 가능한 네트워크 액세스 대기 시간을 갖도록 해야 합니다.
지역 및 영역
클라우드 제공업체는 정전, 홍수, 허리케인 및 기타 재해 중에도 요청을 계속 이행할 수 있도록 데이터 센터를 구성해야 합니다. 공급자는 이것을 서비스 품질 이라고 하며 이는 모두 클라우드가 다운되지 않도록 하는 일부입니다.
지역은 특정 왕복 네트워크 대기 시간(어디에서 어디로?)이 있는 지리적 영역입니다. 지역에는 댈러스, 도쿄 또는 프랑크푸르트와 같은 이름이 있습니다. 해당 영역 내에서 지불하는 네트워크 대기 시간을 보장합니다.
영역은 하나 이상의 영역으로 구성됩니다. 영역은 다른 영역 간에 단일 장애 지점이 공유되지 않도록 설계된 독립적인 전기, 기계 및 네트워크 인프라가 있는 지역의 격리된 데이터 센터입니다. 이를 통해 지역의 여러 영역에 배포하여 고가용성 내결함성 응용 프로그램을 구축할 수 있습니다. 영역이 충돌하면 영역이 계속될 수 있지만 모든 영역이 다운되면 정말 나쁩니다.
데이터 센터는 영역을 호스팅합니다. 여러 데이터 센터가 함께 클러스터링되어 다중 영역 영역을 생성합니다. 영역에는 us-south-1, us-south-2 및 us-south-3과 같은 이름이 있습니다. 소규모 지역은 하나의 강력한 데이터 센터에서 서비스를 제공할 수 있지만 인구가 많은 지역에서는 네트워크 및 컴퓨팅 수요를 처리하기 위해 여러 데이터 센터가 필요할 수 있습니다.
재해 복구, 고가용성 및 내결함성
이러한 개념은 가장 뛰어난 IT 설계자도 땀 흘리게 만듭니다. 그들은 구름이 절대 내려가지 않도록 하는 방법을 궁금해하며 밤에 깨어 있습니다.
하지만 당신은 이것을 가지고 있습니다! 클라우드는 (거의) 다운되지 않으며 다운된 경우에도 쉽게 보호할 수 있습니다. 이러한 개념을 하나씩 검토해 보겠습니다.
재해 복구 (DR)는 주요 사고 중 및 이후에 수행할 작업을 자세히 설명하는 일련의 정책 및 절차입니다. 시스템이 정상적으로 실패하도록 설계하고(즉, 사용자가 무언가 잘못되었다는 것을 이해하지만 사용자는 이를 처리할 수 있음을 의미함), 사고 후 가능한 빨리 복구하는 방법을 알고 있습니다. 전체 지역이 다운되거나 서비스가 사이버 공격을 받거나 취약하여 서비스를 중단해야 하는 경우 DR이 필요합니다.
고가용성 (HA)은 이전에 언급한 "99.9999999"라는 목표에 불과합니다. 애플리케이션이 실패에 대한 탄력성을 갖기를 원합니다. 거실에서 서버를 실행하면 거의 불가능하지만 클라우드에서는 가능합니다. 클라우드의 내결함성 인프라에 의존하여 고가용성 목표를 달성합니다. 모든 것이 알아서 처리됩니다.
내결함성 인프라 는 문제가 발생하면 백업이 인계받도록 하는 설계입니다. 클라우드는 내결함성 시스템입니다. 지역 내의 영역에 장애가 발생하면 다른 영역에서 서비스 연속성을 보장합니다. 로드 밸런서와 같은 구성 요소를 사용하여 내결함성을 활용해야 합니다.
로드 밸런서
고가용성은 애플리케이션의 여러 인스턴스를 동시에 실행할 때 발생합니다. 로드 밸런서 는 사용자의 트래픽을 활성 상태인 인스턴스 중 하나로 라우팅하는 장비입니다. 요청을 받아 다음 정상 서버로 보냅니다.
로드 밸런서는 가상 머신의 상태를 모니터링하며 다양한 매개변수를 고려할 수 있습니다. 가상 머신이나 앱이 충돌하는지 감지할 수 있지만 네트워크 대기 시간, 요청 헤더의 특정 데이터 등을 확인할 수도 있습니다.
고객이 질문할 가능성이 있는 질문
따라서 귀하의 애플리케이션은 훌륭하게 실행되고 있지만 클라이언트는 클라우드 수용에 대해 생각하고 있습니다. 준비가 되셨나요? 다음은 클라우드 전문가처럼 대답할 수 있어야 하는 일반적인 질문입니다.
호스팅 공급자 이상을 원하는 경우는 언제입니까?
클라이언트는 모든 서비스를 클라우드로 마이그레이션하는 데 전속력으로 참여할 수 있습니다. 더 큰 유연성, 탄력성 및 지리적으로 분산된 존재로 인해 클라우드는 쉽게 흥분할 수 있습니다.
그러나 클라우드가 더 빠르고 유연하며 신뢰할 수 있지만 비용도 더 많이 듭니다. 클라이언트의 시스템을 계속 실행하려면 추가 IT 지원이 필요할 수도 있습니다. 클라우드는 모든 사람을 위한 것이 아닙니다.
클라이언트의 시스템이 현재 호스팅 제공업체에서 실행 중인 경우 클라우드로 이동해야 합니까?
현재와 미래의 요구 사항 고려: 고객이 규정 준수를 위해 고가용성을 찾고 있다면 클라우드로 이동하십시오. 고객이 전 세계 고객을 대상으로 하는 경우 클라우드로 이동하십시오. 일년 내내 수요가 급격히 증가할 것으로 예상되는 경우 클라우드로 이동하십시오.
특정 지역 내에서 로컬 사용자가 시스템에 주로 액세스하거나 클라이언트에게 중요하지 않은 경우 클라우드로 이동 하지 마십시오 .
중요한 정보: 클라이언트의 시스템이 호스팅 제공업체에서 제대로 실행되는 경우 클라우드의 복원력과 성능을 제공하는 동시에 불필요한 IT 비용으로부터 클라이언트를 격리하는 기존 SaaS 제품을 고려해야 합니다. 클라우드 기반 서비스를 제공하는 Bluehost와 같은 기존 호스팅 제공업체와 호스팅 서비스를 제공하는 클라우드 제공업체가 있습니다.
어떤 유형의 클라우드를 사용해야 합니까?
각 제공업체가 다양한 서비스와 옵션을 제공하기 때문에 적합한 유형의 클라우드를 찾는 것이 어려울 수 있습니다. 가장 먼저 고려해야 할 사항은 클라이언트의 소프트웨어 스택과 현재 실행 중인 하드웨어의 복잡성입니다.
전체 스택이 재컴파일된 오픈 소스 라이브러리, 사용자 정의 Linux 커널 또는 특수 스토리지 최적화로 고도로 사용자 정의된 경우 IaaS를 먼저 살펴봐야 합니다. 일부 공급자는 고객이 고도로 맞춤화된 구성 요소에 대해 IaaS를 사용하고 다른 부분에 대해 PaaS를 선택하여 혼합 및 일치하도록 허용합니다.
그러나 클라이언트의 요구 사항이 대부분 기성 라이브러리 위에 구축된 경우 PaaS가 더 나은 출발점일 가능성이 큽니다. 클라우드 공급자는 클라이언트의 코드가 항상 최신 종속성을 기반으로 실행되도록 합니다.
올바른 클라우드 모델이 식별되면 요구 사항과 평가 기준이 고객에게 고유합니다. 그러나 항상 비기능적 요구 사항에 주의를 기울일 가치가 있습니다. 고객이 도메인별 규정, 인증 또는 표준을 준수해야 합니까? 특정 공급업체에 의존하거나 파트너십을 맺고 있습니까?
마지막으로 클라우드 제공업체의 마이그레이션 지원과 공급업체 종속성에 대해 생각해 보십시오. 시스템이 실행되고 나면 고객이 경쟁업체로 마이그레이션하는 것이 얼마나 어려운지 알 수 있습니다. 고객이 이사할 계획이 없더라도 출구 계획을 고려하십시오.
내 사이트가 다운되지 않도록 하려면 어떻게 해야 합니까?
귀하의 고객이 미국 의료 산업에서 일하고 있다고 가정해 보겠습니다. HIPAA는 모든 조직에 일종의 재해 복구 계획이 있어야 하며 여기에는 웹사이트가 포함됩니다. 사이트가 다운되면 클라이언트의 비즈니스가 실패하므로 클라우드의 복원력이 필요합니다.
클라우드는 사이트가 다운되지 않도록 하는 데 필요한 도구를 제공합니다. 동시에 실행 중인 애플리케이션의 여러 인스턴스와 사용자가 잘못된 인스턴스에 액세스하지 못하도록 트래픽을 제어하는 방법이 필요합니다.
클라이언트가 IaaS 클라우드에 사이트를 배포하는 경우 트래픽을 제어하기 위해 애플리케이션의 여러 인스턴스와 로드 밸런서가 필요합니다. 클라이언트에 PaaS 클라우드가 있는 경우 클라우드가 라우팅 부분을 자동으로 제공하므로 여러 인스턴스가 실행 중인지 확인하십시오.
사이트에서 데이터베이스를 사용하는 경우 모든 사용자 트래픽이 동일한 가상 머신으로 라우팅되도록 하는 방법인 세션 선호도 ( 고정 세션 이라고도 함)를 지원하도록 클라이언트의 클라우드가 구성되어 있는지 확인합니다.
전 세계 모든 사람을 위해 내 사이트를 빠르게 만들려면 어떻게 해야 합니까?
클라이언트가 글로벌화되고 애플리케이션이 전 세계의 최종 사용자에게 빠른 서비스를 제공해야 하는 경우 클라우드의 유연성과 지리적 범위가 필요합니다.
클라우드는 글로벌이지만 사용자가 있는 곳에서 가까운 곳에서 애플리케이션 인스턴스를 실행해야 합니다.
클라이언트와 협력하여 사용자 기반에 가장 적합한 클라우드 지역과 클라이언트가 사이트를 지원하는 API를 호스팅하는 위치를 식별합니다. 인스턴스는 두 가지 모두에 가까워야 합니다. 또한 사용자의 위치에 따라 다른 지리적 영역으로 트래픽을 라우팅하는 글로벌 프록시 설정에 대해 논의할 수도 있습니다.
결론
인터넷을 통해 증가하는 고객 기반에 확장 가능하고 탄력적인 서비스를 제공하는 것은 매우 복잡합니다. 우리는 여기에서 표면을 거의 긁지 않았습니다. 그렇기 때문에 Amazon, Google 및 기타 클라우드 제공업체에 세부정보를 맡기고자 합니다. 귀하의 임무는 서비스 사용 방법에 대해 올바른 결정을 내리는 것입니다.
클라이언트가 클라우드에서 실행해야 하는지 묻는 질문을 하면 다음 네 가지 질문을 해야 합니다.
- 실행해야 하는 소프트웨어는 얼마나 복잡합니까?
- 얼마나 확장해야 합니까?
- 절대 떨어지지 않는다는 것이 얼마나 중요한가?
- 전 세계 사용자를 위해 얼마나 빨리 실행해야 합니까?
이 네 가지 간단한 질문으로 시작하면 클라우드 전문가처럼 들릴 것입니다. 다양한 유형의 클라우드를 고려하여 이러한 질문에 대한 답변이 고객에게 무엇을 의미하는지 고객과 협력하면 고객의 요구 사항을 해결하는 데 큰 역할을 할 수 있습니다.