차례:
- 개발자 관점에서 보면 EC2의 탄력적 인 특성으로 인해 개발 환경을 과거에 시뮬레이션 할 수있는 것으로 바꿀 수 있습니다. 다양한 구성에 의해 제시되는 절충 사항을 고려할 수 있습니다. 탄력적 인 환경을 보유한다는 것은 실제 상황을 기반으로 구성 권장 사항을 작성할 수 있도록 다양한 조건에서 응용 프로그램을 실제로 테스트 할 수 있음을 의미합니다.
- AWS는 별개의 보안 기능도 제공합니다. 개발자는 일반적으로 프로그래밍 관점에서 이러한 기능의 대부분을 잘 알고 있습니다. 그러나 다음은 EC2에서 사용되는 보안 기능에 대한 요약입니다.
- 최종 고려 사항은 저장 공간 사용입니다. 각 인스턴스에는 사용자가 생성 한 인스턴스의 종류에 따라 특정 양의 스토리지가 제공됩니다. 인스턴스 저장소가 필요한 기능이나 용량을 제공하지 않으면 Elastic Block Store (EBS) 지원을 추가 할 수도 있습니다. 용량 및 유연성 외에도 EBS를 사용하면 응용 프로그램이 예상대로 실행되도록 특정 수준의 저장소 성능을 정의 할 수 있습니다.
비디오: Amazon EC2 고급 활용 기법 및 모범 사례 - 이진욱 테크니컬 트레이너(AWS) 2024
많은 AWS 서비스 이름에서 탄성 의 의미를 고려하십시오. elastic, 이라는 단어를 볼 때 신장과 수축 능력을 생각해야합니다. 모든 AWS 문서는 이러한 사실을 암시하지만 실제로는 그렇지 않을 때 전체 프로세스 사운드를 복잡하게 만듭니다. 더 많은 리소스와 계약이 필요할 때 스트레칭을 할 수있는 컴퓨터에 대해 생각해보십시오.
AWS를 사용하면 실제로 사용하는 서비스에 대해서만 비용을 지불하므로 확장 및 계약 기능이 중요합니다. 이는 조직에서 적은 비용을 지출하면서도 적절한 금액으로 끝낼 수 있다는 것을 의미하기 때문에 중요합니다. 필요한 서비스.
조직의 일부 구성원이 화폐 문제를 해결할 수도 있지만, 탄력적 인 용어의 진정한 가치는 시간입니다. 크기를 줄여야 할 때 특히 자신의 장비를 적당한 크기로 유지하는 것은 시간 소모적입니다. EC2를 사용하면 몇 주 또는 몇 개월이 아닌 단 몇 분만에 컴퓨팅 용량을 추가하거나 제거 할 수 있습니다. 새로운 요구 사항은 오늘날 빠르게 변화하는 경향이 있기 때문에 특히 유료 인상을 원한다면 용량을 몇 분 만에 올바른 크기로 조정하는 것이 중요합니다.
개발자 관점에서 보면 EC2의 탄력적 인 특성으로 인해 개발 환경을 과거에 시뮬레이션 할 수있는 것으로 바꿀 수 있습니다. 다양한 구성에 의해 제시되는 절충 사항을 고려할 수 있습니다. 탄력적 인 환경을 보유한다는 것은 실제 상황을 기반으로 구성 권장 사항을 작성할 수 있도록 다양한 조건에서 응용 프로그램을 실제로 테스트 할 수 있음을 의미합니다.
인스턴스 (하나 이상의 관련 작업을 수행하는 데 사용되는 단일 세션)를 만들 때 선택할 수 있습니다. 인스턴스는 다음 특성을 가질 수 있습니다: 운영 체제:
- Linux 또는 Windows. 인스턴스 크기:
- 인스턴스의 크기를 조정하여 적은 수의 서비스를 제공하거나 대규모 컴퓨팅 작업 (및 중간에 모든 작업)을 수행하는 컴퓨터 클러스터로 작동 할 수 있습니다. 실제로 다음 영역에서 더 많은 리소스가 필요한 작업에 대해 최적화 된 인스턴스를 만들 수 있습니다. CPU
- 메모리
- 저장소
- GPU
- 인스턴스에 할당하는 작업이 변경되므로 인스턴스 구성을 할 수 있습니다.인스턴스의 메모리 할당 만 조정하거나 필요할 때 더 많은 스토리지를 제공 할 수 있습니다. 대부분의 개발자는 비용이 얼마나 들지는 크게 걱정하지 않지만 클라우드로 이동할 때 상황은 변화합니다. 테스트 시스템에는 투자가 필요하므로 옵션을 알고 있으면 운영 비용이 절감되고 사장의 눈을 더 잘 볼 수 있습니다. EC2에서 사용할 수있는 가격 책정 모델은 다음과 같습니다.
On Demand:
- 사용하는 제품에 대해 지불합니다. 예약 인스턴스:
- 근무 방식에서 필요할 것으로 생각되는 것을 기반으로 일회성 지불에 대한 대가로 상당히 저렴한 가격을 제공합니다. 스팟 인스턴스:
- 받는 서비스의 가격에 영향을 미치는 가격으로 지불하고자하는 가격을 지정할 수 있습니다. 자동 크기 조절은 EC2 기능으로 인스턴스의로드가 변경 될 때 인스턴스가 자동으로 구성을 변경하도록합니다. 프로덕션 시스템 관리자는 훌륭한 솔루션이지만 테스트 환경의 개발자는 테스트 설정의 특성에 대해 확신 할 수 없으므로 문제가 될 수 있습니다. 일반적으로 테스트 시스템에 대한 자동 확장 기능을 사용하지 않기 때문에 테스트 조건을보다 강력하게 제어 할 수 있습니다.
보안 설정 정의
AWS는 별개의 보안 기능도 제공합니다. 개발자는 일반적으로 프로그래밍 관점에서 이러한 기능의 대부분을 잘 알고 있습니다. 그러나 다음은 EC2에서 사용되는 보안 기능에 대한 요약입니다.
가상 사설망 (VPC):
- 물리적 서버에서 실행되는 모든 인스턴스를 다른 모든 인스턴스와 구분합니다. 이론적으로 아무도 다른 사람의 인스턴스에 액세스 할 수 없습니다 (실제 상황에서도 발생할 수 있음) (해커가 과거에 EC2 인스턴스에 침입 한 방법에 대한 자세한 내용 참조) 네트워크 액세스 제어 목록 (ACL) (선택 사항):
- 서브넷 수준에서 들어오는 요청과 나가는 요청을 모두 제어하는 방화벽 역할 IAM (Identity and Access Management) 사용자 및 사용 권한:
- 개별 사용자 및 사용자 그룹에 부여 된 액세스 수준을 제어합니다. 보안 그룹:
- 인스턴스 수준에서 들어오는 요청과 나가는 요청을 모두 제어하는 방화벽 역할을 수행합니다. 각 인스턴스는 최대 5 개의 보안 그룹을 가질 수 있습니다. 이 보안 기능은 네트워크 ACL보다 액세스를 세부적으로 제어 할 수 있지만 가상 시스템 전체가 아닌 각 인스턴스별로 유지 관리해야합니다. 하드웨어 보안 장치:
- 하드웨어 기반 온 - 프레미스 네트워크와 AWS 클라우드 간의 보안을 제어하기 위해 설치하는 보안 장치. 침입자를 저지하는 보안은 없습니다. 서버에 대한 액세스 권한을 얻으려는 사람은 아무리 벽을 쌓더라도 아무리 잘 할 수 있습니다. 훌륭한 보안 외에도 침입자가 침입 할 것이라는 가정하에 시스템을 모니터링해야하며 침입자를 최대한 빨리 처리해야합니다.보안을 제공하면 덜 숙련 된 침입자는 물론 정직한 사람들을 정직하게 유지하는 데 도움이되지만 숙련 된 침입자는 항상 길을 찾을 수 있습니다.
이러한 침해의 심각성은 다양하지만 실제로는 기업이 실패 할 수 있습니다 Code Spaces의 경우. 많은 보안 연구가들은 AWS가 보안 결실을 낳기 쉽다고 경고합니다. 그러나 다른 클라우드 서비스가 더 나은 보안을 제공한다고 가정하지 마십시오. 외부 서비스를 사용할 때마다 상당한 위험을 감수해야합니다.
표준 저장 옵션 사용