2012-09-03 4 views
1

저는 DevOps 사용자이고 현재 우분투 ec2에서 Ruby on Rails 응용 프로그램을 실행하고 있습니다. 응용 프로그램과 웹 서버가 동일한 상자 안에 있지만 우리는 mysql을 사용하고 있습니다. RDS 클러스터 나는 웹 사이트에 더 많은 트래픽으로 인해 스파이크가 많이 발생할 수 있습니다. 그래서 나는 시스템을 바꿀 계획이다. 별도의 인스턴스에 웹 서버 nginx를 별도의 인스턴스에두고 싶습니다. 그러나 이것은 nginx 상자에 있어야하는로드 밸런서를 필요로합니다. 그러나 트래픽이 올라 오면 nginx 인스턴스는 자동 확장으로 구성 될 수 있습니다. 앱 서버 인스턴스는 어떻습니까? 자동으로 크기 조정할 수 있지만 웹 서버에 자체를 연결해야하며 웹 서버는 생성 된 새 응용 프로그램 서버를 검색해야합니다. 어떻게 이것을 달성 할 수 있습니까? 이 일을 끝내기 위해 나를 도우십시오.aws 스택의 여러 응용 프로그램 서버가있는 nginx 웹 서버 구성

답변

1

현재 단일 웹 서버를 사용하고 있다면 정적 웹 서버로 nginx를 사용하고 다른 인스턴스에서 다른 백엔드 웹 서버를 프록시로 사용하는 것이 실제로 의미가 있으며 성능이 향상됩니다.

그러나 실제로 자동 조절이 필요한지 확실하지 않습니다. 자동 확장은 빠른 트래픽 급증 등에 대응하고 싶다면 대부분 의미가 있습니다. 시간이 지남에 따라 계속 증가 할 수있는 워크로드가 많거나 적다면 수동으로 실행하고 nginx config에 다른 백엔드 서버를 추가하는 것이 더 쉬워야합니다. 이 방법으로 문제가 해결되지 않으면 Amazon's Elastic Loadbalancers을보고 나중에 자동 크기 조정을 할 수 있습니다.

+0

예기치 않은 트래픽이 발생할 수 있으므로 nginx 웹 서버 인스턴스가 자동 크기 조정으로 구성되어 LB 아래에 위치하게됩니다. –

+0

이 경우에는 nginx 뒤에 ELB를 추가합니다. nginx에서 모든 백엔드 트래픽을 ELB로 전달합니다. ELB 뒤에 다른 응용 프로그램 서버가있는 자동 크기 조정 그룹을 가질 수 있습니다. nginx 설정을 변경하지 않고도 위아래로 확장 할 수 있습니다. – j0nes

+0

2 ELB를 갖고 싶다고 생각합니다. 교통 상황에 따라 다릅니다. 하나는 웹 서버 앞에, 다른 하나는 앱 서버 앞에 있습니다. 그런 다음 필요에 따라 둘 다 독립적으로 자동 크기 조정할 수 있습니다. –

관련 문제