728x90
반응형
Load balancer
NCP 에서 Load balancer 만들어 주기 (프록시 로드밸런서 사용예정)
proxy load balancer 는 클라이언트와 서버간의 중개자로 작동하며 클라이언트의 요청을 받아 적절한 타겟 서버로 전달하고 서버의 응답을 클라이언트에게 전달한다.
- Load balancer
- 여러 서버 간의 트래픽을 분산 → 처리시간 단축
- 특정 서버에 문제가 생기면 다른 서버로 routing
- 서버를 추가하거나 제거하며 스케일링
- Subnet : Load balancer 가 동작하는 곳
- 네트워크의 논리적인 분할, 특정 IP 주소 범위
- 범위를 정하고 Gateway 설정
- 리스너 포트 80
- Target : Load balancer 가 트래픽을 분산시킬 서버(인스턴스)
- 프로토콜 : TCP
- 포트 : 8000
- 서버에 타겟 적용
로드밸런서는 지속적으로 타겟서버의 상태를 체크해서 문제가 발생한 서버는 트래픽 분산에서 제외시켜 안정적인 서버운영을 할 수 있도록 돕는다.
운영중으로 바뀌면 접속정보를 통해 접속해서 연결이 되는지 확인 !
Host, CSRF 등록
# settings.py
...
ALLOWED_HOSTS = [
"localhost",
"127.0.0.1",
"lion-lb-18904316-04e720249f4d.kr.lb.naverncp.com", # Load balancer
"101.79.14.79", # Load balancer
# LOCAL_IP,
]
CSRF_TRUSTED_ORIGINS = [
"",
# f"http://{LOCAL_IP}:8888",
"<http://lion-lb-18904316-04e720249f4d.kr.lb.naverncp.com/>", # Load balancer
"", # Load balancer
]
...
push 로 자동 배포실행한 뒤에 서버 확인
docker exec -it 765b658f96bb /bin/sh
# ssh 서버 / django container 안쪽
# settings.py
ALLOWED_HOSTS = [
"localhost",
"127.0.0.1",
"lion-lb-18904316-04e720249f4d.kr.lb.naverncp.com", # Load balancer
"101.79.14.79", # Load balancer
# LOCAL_IP,
]
CSRF_TRUSTED_ORIGINS = [
"",
# f"http://{LOCAL_IP}:8888",
"<http://lion-lb-18904316-04e720249f4d.kr.lb.naverncp.com/>", # Load balancer
"", # Load balancer
]
"""
local 에서 개발한 내용이 그대로 클라우드 서버에서 컨테이너까지 잘 띄워진걸 확인
"""
NCP 에서 제공하는 Load balancer 기능으로 쉽게 도메인을 통한 접속이 가능하게 구현해 보았다.
굉장히 간편하게 잘 만들어 놓았다.
테라폼에서도 쉽게 되면 좋을텐데 ...
728x90
반응형
'Dev. > Cloud' 카테고리의 다른 글
AWS: IAM (Identity and Access Management) (0) | 2023.11.08 |
---|---|
[Cloud] CD - NCP: Rollback tag (0) | 2023.08.22 |
[Cloud]배포 AWS: Secrets Manager (0) | 2023.08.17 |
[Cloud] 배포 - NCP : 클라우드 서버에서 DB 띄우기: NoSQL (0) | 2023.08.15 |
[Cloud] 배포 - NCP : 로컬 서버에서 DB 띄우기: NoSQL (0) | 2023.08.14 |
댓글