

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Linux 컨테이너로 재설계
<a name="refactor-linux"></a>

.NET Framework 애플리케이션을 .NET Core 또는 .NET 6으로 이식하면 여러 플랫폼에서 애플리케이션을 실행하고 라이선스 비용을 절감하며 성능을 높이고 확장성을 개선할 수 있습니다.

## 사용 사례
<a name="refactor-linux-use-case"></a>

이 마이그레이션 전략은 다음 시나리오에서 유용합니다.
+ 애플리케이션을 리팩터링하는 데 사용할 수 있는 리소스와 시간이 있습니다.
+ 모든 .NET Framework 종속성을 해결할 수 있습니다.
+ 장기 실행 애플리케이션이 있습니다.

## 장점
<a name="refactor-linux-advantages"></a>

이 마이그레이션 접근 방식은 온프레미스 .NET 애플리케이션과 비교할 때 다음과 같은 이점을 제공합니다.
+ 총 소유 비용(TCO) 절감
+ 보안 및 성능 향상
+ 혁신 가속화
+ 클라우드 네이티브 애플리케이션으로 변환할 때의 이점
+ 오픈 소스

## 단점
<a name="refactor-linux-disadvantages"></a>
+ 리팩터링 작업 및 비용

## AWS 서비스
<a name="refactor-linux-services"></a>

컨테이너 이미지 저장:
+ [Amazon ECR](https://aws.amazon.com/ecr)

컨테이너 오케스트레이션의 경우:
+ [Amazon ECS](https://aws.amazon.com/ecs) 또는를 사용하는 Amazon ECS [AWS Fargate](https://aws.amazon.com/fargate/)
+ [Amazon EKS](https://aws.amazon.com/eks) 또는 [Fargate](https://aws.amazon.com/fargate/)를 사용하는 Amazon EKS

AWS Fargate 는 서버 관리 없이 애플리케이션을 구축하는 데 집중할 수 있는 서버리스 종pay-as-you-go 컴퓨팅 엔진입니다. Fargate는 Amazon ECS 및 Amazon EKS와 호환됩니다.

## 도구
<a name="refactor-linux-tools"></a>


****  

| **도구** | **용도** | **리소스** | 
| --- | --- | --- | 
| Porting Assistant for .NET | 이 분석 도구는 .NET Framework 애플리케이션을 스캔하고 .NET Core 호환성 평가를 생성합니다. 평가는 애플리케이션을 Linux로 더 빠르게 이식하는 데 도움이 됩니다. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/ko_kr/prescriptive-guidance/latest/modernization-net-applications/refactor-linux.html) | 
| AWS App2Container(A2C) | A2C는 최소한의 노력으로 .NET 및 Java 애플리케이션을 컨테이너화된 애플리케이션으로 변환하여 현대화하는 명령줄 도구입니다. | [See the AWS documentation website for more details](http://docs.aws.amazon.com/ko_kr/prescriptive-guidance/latest/modernization-net-applications/refactor-linux.html) | 

## 배포 결정
<a name="refactor-linux-deploy"></a>

다섯 가지 배포 옵션 중에서 선택할 수 있습니다.
+ 메모리 및 스토리지 설정을 포함하여 컴퓨팅 환경의 구성을 완벽하게 제어하고 운영 체제 패치를 제어하려면 애플리케이션을 EC2 인스턴스에 Linux 컨테이너로 배포합니다.
+ 컨테이너를 Kubernetes에서 관리하고 서버리스 컨테이너로 실행하려면 Fargate를 사용하여 애플리케이션을 Amazon EKS에 Linux 컨테이너로 배포합니다.
+ Amazon ECS에서 컨테이너를 관리하고 서버리스 컨테이너로 실행하려면 Fargate를 사용하여 애플리케이션을 Amazon ECS에 Linux 컨테이너로 배포합니다.
+ 컨테이너를 Kubernetes에서 관리하려는 경우 컨테이너의 컴퓨팅 리소스를 직접 관리하려면 애플리케이션을 Amazon EKS에 Linux 컨테이너로 배포합니다.
+ Amazon ECS에서 컨테이너를 관리하려는 경우 컨테이너의 컴퓨팅 리소스를 직접 관리하려면 애플리케이션을 Amazon ECS에 Linux 컨테이너로 배포합니다.

 ![Refactoring .NET applications as Linux containers on AWS](http://docs.aws.amazon.com/ko_kr/prescriptive-guidance/latest/modernization-net-applications/images/rearchitect-linux.png) 