로드 밸런싱을 위한 Lightsail 인스턴스 구성 - Amazon Lightsail

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

로드 밸런싱을 위한 Lightsail 인스턴스 구성

Amazon Lightsail 로드 밸런서에 인스턴스를 연결하기 전에 먼저 애플리케이션 구성을 평가해야 합니다. 예를 들어 로드 밸런서는 데이터 계층이 애플리케이션의 나머지 부분과 분리되어 있을 경우 기능을 더 잘 발휘합니다. 이 주제에서는 각 Lightsail 인스턴스에 대해 설명하고 로드 밸런싱 (또는 수평 확장) 여부 및 애플리케이션을 가장 잘 구성하는 방법에 대한 권장 사항을 제공합니다.

일반 지침: 데이터베이스를 사용하는 애플리케이션

데이터베이스를 사용하는 Lightsail 애플리케이션의 경우 데이터베이스 인스턴스를 나머지 애플리케이션과 분리하여 데이터베이스 인스턴스를 하나만 만드는 것이 좋습니다. 이렇게 하는 가장 큰 이유는 데이터베이스에 데이터를 여러 번 쓰지 않도록 하기 위해서입니다. 데이터베이스 인스턴스가 하나가 아니면 인스턴스 히트와 상관없이 데이터베이스게 데이터를 쓰게 됩니다.

WordPress

수평 확장 조정이 가능합니까? 예. WordPress 블로그나 웹 사이트 중 하나에 해당됩니다.

Lightsail 로드 밸런서를 사용하기 전의 구성 권장 사항

  • 로드 밸런서 뒤에서 실행되는 모든 WordPress 인스턴스가 같은 위치에서 정보를 저장하고 검색하도록 데이터베이스를 분리하십시오. 데이터베이스 성능을 높여야 할 경우, 웹 서버와 독립적으로 처리 능력과 메모리를 복제하거나 변경할 수 있습니다.

  • 파일 및 정적 콘텐츠를 Lightsail 버킷으로 오프로드하십시오. 이렇게 하려면 WordPress 웹 사이트에 WP 오프로드 미디어 라이트 플러그인을 설치하고 Lightsail 버킷에 연결하도록 구성해야 합니다. 자세한 내용은 자습서: 스토리지 버킷에 WordPress 인스턴스 연결을 참조하십시오.

Node.js

수평 확장 조정이 가능합니까? 예, 몇 가지를 고려하여 가능합니다.

Lightsail 로드 밸런서를 사용하기 전의 구성 권장 사항

  • Lightsail에서 Bitnami가 패키징한 Node.js 스택에는 Node.js, 아파치, Redis (인메모리 데이터베이스) 및 Python이 포함되어 있습니다. 배포하는 애플리케이션에 따라 일부 서버에 대해 로드 밸런싱을 수행할 수 있습니다. 하지만 모든 웹 서버에 대해 트래픽 로드 밸런싱을 수행하고 Redis를 다른 서버로 이동하도록 로드 밸런서를 구성해야 합니다.

  • Redis 서버를 모든 인스턴스와 통신하도록 다른 서버로 분할합니다. 필요한 경우 데이터베이스 서버를 추가합니다.

  • Redis의 주요 사용 사례 중 하나는 중앙 데이터베이스를 계속 히트하지 않아도 되도록 데이터를 로컬 캐시에 저장하는 것입니다. 세션 지속성을 활성화하여 Redis의 성능 향상을 활용하는 것이 좋습니다. 자세한 내용은 로드 밸런서에 대한 세션 지속성 활성화를 참조하세요.

  • Redis 노드를 공유할 수도 있으므로 세션 지속성을 사용하여 각 머신에서 로컬 캐시를 사용하거나 노드를 공유할 수 있습니다.

  • Apache를 사용하여 로드 밸런서를 배포하려면 Apache 서버에 mod_proxy_balancer를 포함시켜 보십시오.

자세한 내용은 Node.js 애플리케이션 확장 조정을 참조하십시오.

Magento

수평 확장 조정이 가능합니까? 예.

Lightsail 로드 밸런서를 사용하기 전의 구성 권장 사항

GitLab

수평 확장 조정이 가능합니까? 예, 고려 사항이 있으나 가능합니다.

Lightsail 로드 밸런서를 사용하기 전의 구성 권장 사항

다음 요소를 갖춰야 합니다.

  • 실행 중이고 사용 가능한 Redis 노드.

  • 공유 네트워크 스토리지 서버 () NFS

  • 응용 프로그램의 중앙 데이터베이스 (My SQL 또는 PostgreSQL). 위의 데이터베이스에 대한 일반 지침을 참조하십시오.

자세한 내용은 웹 사이트의 고가용성을 참조하십시오. GitLab

참고

위에서 언급한 공유 네트워크 스토리지 서버 (NFS) 는 현재 GitLab 청사진과 함께 사용할 수 없습니다.

Drupal

수평 확장 조정이 가능합니까? 예. Drupal은 애플리케이션을 수평 확장 조정하는 방법을 설명하는 공식 문서인 서버 확장 조정을 제공합니다.

Lightsail 로드 밸런서를 사용하기 전의 구성 권장 사항

여러 인스턴스 간에 파일을 동기화하도록 Drupal 모듈을 설정해야 합니다. Drupal 웹 사이트에서 몇 가지 모듈을 제공하지만, 이들은 프로덕션 용도보다는 프로토타입에 더 적합할 수 있습니다.

Amazon S3에 파일을 저장할 수 있는 모듈을 사용합니다. 이렇게 하면 각 대상 인스턴스에 별도의 사본을 두는 대신 한곳에서 파일을 관리할 수 있습니다. 즉, 파일을 편집할 경우 중앙 저장소에서 업데이트본을 가져오므로 히트 인스턴스에 상관없이 사용자가 동일한 파일을 볼 수 있습니다.

자세한 내용은 클라우드에서의 Drupal 수평 확장 조정을 참조하십시오.

LAMP스택

수평 확장 조정이 가능합니까? 예.

Lightsail 로드 밸런서를 사용하기 전의 구성 권장 사항

  • 별도의 인스턴스에 데이터베이스를 만들어야 합니다. 로드 밸런싱 대상의 모든 인스턴스가 동일한 장소에서 정보를 저장하고 가져올 수 있도록 이 데이터베이스 인스턴스를 지정해야 합니다.

  • 배포하려는 애플리케이션에 따라 파일 시스템 (NFSLightsail 블록 스토리지 디스크 또는 Amazon S3 스토리지) 을 공유하는 방법을 생각해 보십시오.

MEAN스택

수평 확장 조정이 가능합니까? 예.

Lightsail 로드 밸런서를 사용하기 전의 구성 권장 사항

MongoDB를 다른 시스템으로 이동하고 Lightsail 인스턴스 간에 루트 문서를 공유하는 메커니즘을 구성합니다.

Redmine

수평 확장 조정이 가능합니까? 예.

Lightsail 로드 밸런서를 사용하기 전의 구성 권장 사항

  • Redmine_S3 플러그인을 받아서 로컬 파일 시스템이 아니라 Amazon S3에 첨부 파일을 저장합니다.

  • 데이터베이스를 다른 인스턴스와 분리합니다.

Nginx

수평 확장 조정이 가능합니까? 예.

Nginx를 실행하고 Lightsail 로드 밸런서에 연결된 Lightsail 인스턴스를 하나 이상 가질 수 있습니다. 자세한 내용은 1부를 사용하여 NGINX 웹 애플리케이션 확장, 1부: 로드 밸런싱을 참조하십시오.

Joomla!

수평 확장 조정이 가능합니까? 예, 고려 사항이 있으나 가능합니다.

Lightsail 로드 밸런서를 사용하기 전의 구성 권장 사항

Joomla! 웹 사이트에 대한 공식 문서는 없지만 해당 커뮤니티 포럼에 몇 가지 설명이 있습니다. 일부 사용자는 클러스터가 있는 Joomla! 인스턴스를 다음과 같은 구성으로 수평 확장 조정할 수 있었습니다.

  • 세션 지속성을 지원하도록 구성된 Lightsail 로드 밸런서입니다. 자세한 내용은 로드 밸런서에 대한 세션 지속성 활성화를 참조하세요.

  • Joomla를 실행하는 여러 Lightsail 인스턴스가 Joomla! 의 문서 루트를 사용하여 로드 밸런서에 연결되었습니다. 동기화되었습니다. Rsync와 같은 도구를 사용하거나, 모든 Lightsail 인스턴스 간의 콘텐츠 동기화를 담당하는 NFS 서버를 두거나, 를 사용하여 파일을 공유하는 등의 도구를 사용하여 이 작업을 수행할 수 있습니다. AWS

  • 복제 클러스터로 구성된 데이터베이스 서버 여러 개.

  • 각 Lightsail 인스턴스에 구성된 동일한 캐시 시스템 다음과 같은 몇 가지 유용한 확장 프로그램이 있습니다. JotCache