우리 회사는 수명 종료 날짜가 2023년 6월이기 때문에 EC2 인스턴스의 운영 체제를 AML 1에서 AML 2로 업그레이드해야 합니다. 우리는 최근 애플리케이션에 매우 큰 추가 기능을 출시했기 때문에 인스턴스 유형 업그레이드에 대해서도 이야기하고 있습니다. 현재 인스턴스 크기는 m3.large이고 최근에 약간의 지연이 발생하고 있습니다. 명확히 말하면 운영 체제 업그레이드는 물론 프로덕션 환경의 인스턴스 유형 업그레이드도 필요합니다.
이 문제를 해결하는 가장 좋은 방법을 찾으려고 노력하는 동안 현재 서버를 복구할 수 있는 방법이 있는지 궁금합니다. 관리자 중 한 명이 인프라를 완전히 재구축할 필요가 없도록 현재 인스턴스를 사용하여 운영 체제를 업그레이드하는 방법을 배울 것입니다. 하위 수준 환경에는 골든 이미지를 사용하고 서버에서 하위 수준 다운로드/구성이 발생할 때 개발 서버에서 프로덕션 환경으로 해당 이미지를 배포합니다. 인프라를 업그레이드하기 위한 최선의 조치를 결정하는 데 몇 가지 질문이 있습니다.
다양한 환경에 이미지를 배포하기 위한 종속성은 무엇입니까? 운영체제인가요? 인스턴스 유형인가요? 모든 환경에서 이미지를 사용할 수 있으려면 모든 환경 간에 일치해야 하는 것은 무엇입니까?
내 프로덕션 인스턴스 유형이 하위 환경 인스턴스 유형보다 큰 경우 하위 환경에서 상위 환경으로 이미지를 배포하는 데 영향을 미치나요?
현재 인스턴스에서 OS를 업그레이드한 다음 더 큰 프로덕션 인스턴스 유형을 확보하고, DEV 환경 OS를 업그레이드하고, 해당 이미지를 사용하고 상위 환경에 배포할 수 있습니까?
서버를 완전히 재구축하지 않고도 Amazon EC2 인스턴스의 운영 체제를 업그레이드할 수 있습니까?
감사해요.
답변1
저는 Amazon Linux를 거의 사용하지 않지만 제가 사용한 다른 배포 AMI의 경우 AWS는 다양한 지역에서 다양한 이미지(AMI)를 유지 관리합니다. 이미지에 로컬 영역별 구성이 있을 수 있으며(다른 영역에서는 작동하지 않음) AWS가 다른 영역에서 이미지를 읽어 EC2 서버 시작 속도를 늦추는 것을 원하지 않습니다. 그렇게 하지 않습니다. 모르겠습니다.
그러나 지역마다 다른 AMI가 필요하다는 것이 밝혀졌습니다. 저는 일반적으로 사용되는 각 지역에서 사용자 지정 AMI를 구축하지만, 사용자 지정 AMI가 다른 지역에 복사되어 그곳에서 EC2 서버를 시작하는 데 사용되는 경우도 보았습니다. 내 빌드 단계는 지역마다 다르지 않습니다. 단지 원래 소스 AMI가 해당 지역에만 국한되고 해당 지역에서 시작된 EC2 서버에서 실행된다는 것뿐입니다.
나는 사용했다Hashcorp 패커사용자 지정 AMI를 구축합니다. 하지만 이제 AWS에는 사용자 지정 AMI 빌더 서비스가 있는 것으로 보이며 항상 EC2 서버에서 AMI를 생성할 수 있는 기능이 있었습니다.
제가 작업한 작업에서는 일반적으로 하위 비프로덕션 환경과 상위 프로덕션 환경 사이의 운영 체제에 차이가 없습니다. 내 시스템이 다른 AMI를 사용하는 유일한 경우는 하위 환경이 상위 환경과 다른 AWS 계정 또는 AWS 리전에 있지만 AMI가 동일한 소스 이미지에서 구축되고 동일한 자동화 스크립트로 구성된 경우입니다.
내 이미지가 다르지 않은 이유는 서버 기능(웹 서버, 데이터베이스 서버 등)에 대한 주요 사용자 정의가 구성 관리 도구(Puppet, Chef, Ansible, Saltstack 등)에서 나오기 때문입니다. 일부 팀은 구성 관리 계층을 제거하고 이미지를 사용자 지정하는 것을 선호합니다. 이는 더 높은 환경의 이미지를 더 낮은 환경의 이미지와 다르게 만들 수 있습니다. 두 방법 모두 장점과 단점이 있습니다.
AWS에서는 이미지에 사용할 수 있는 인스턴스 유형/크기가 많지만 HVM
이미지에 사용할 수 있는 인스턴스 유형/크기는 많지 않습니다 PV
. 이는 이미지를 구축 HVM
하고 이를 사용하여 매우 작은 머신, 매우 큰 머신 및 그 사이의 모든 머신을 부팅할 수 있음을 의미합니다. 인스턴스 유형별로 서로 다른 이미지를 유지할 필요가 없습니다.
인스턴스 유형별 이미지에 사용자 지정을 추가하면 문제가 발생할 수 있지만 핵심 Linux 이미지에는 문제가 없었습니다. AWS가 이에 대해 경고하지 않는 한 Linux2에도 아무런 문제가 없을 것이라고 믿습니다.
EC2 서버에서 Linux1을 Linux2로 업그레이드하는 것이 가능한지 기억이 나지 않습니다. AWS 설명서에서 알려드립니다.