GCP의 고급 부하 분산 및 클러스터링

카테고리 보기

GCP의 고급 부하 분산 및 클러스터링

3 분 읽음

GCP 클러스터링 개요 #

이 문서에서는 설정 방법을 설명합니다. 고급 부하 분산 및 고가용성 를 사용하여 RELIANOID 로드 밸런서 in 구글 클라우드 플랫폼(GCP).
배포 및 구성의 전체 프로세스를 보여드리겠습니다. RELIANOID 클러스터가상 IP(VIP) 장애 조치 및 백엔드 서버 팜 HTTP 부하 분산을 위해.
목표는 한 노드(마스터)에 장애가 발생하거나 재부팅될 경우 가상 IP와 서비스가 자동으로 보조 노드로 장애 조치되어 중단 없는 애플리케이션 가용성을 제공하는 것입니다.

Cloud Load Balancer 클러스터링 환경 #

우리는 그것이 어떻게 구현될 수 있는지 보여드리겠습니다. Google Cloud Platform (GCP) 네이티브 GCP 서비스를 사용합니다. 다음 다이어그램은 웹 부하 분산 설정을 배포하려는 아키텍처를 보여줍니다. RELIANOID 애플리케이션 제공 컨트롤러 고가용성 및 장애 조치를 위해 GCP에서 제공됩니다.

아키텍처 다이어그램 #

GCP의 reliadnoid 로드 밸런서 클러스터 스키마

각각의 RELIANOID VM은 하나로 구성됩니다. 네트워크 인터페이스(nic0) 에 연결된 VPC 네트워크 그리고 둘 다 할당됨 내부의정적 외부 IP.

  • LB1:
    • 내부 IP: 10.0.1.9
    • 외부 IP: 34.122.145.90
  • LB2:
    • 내부 IP: 10.0.1.8
    • 외부 IP: 35.233.210.70

추가 2차 내부 IP(VIP) LB1의 네트워크 인터페이스에 생성됩니다.

  • VIP(가상 서비스):10.0.1.11
    • 이 IP는 장애 조치 중에 노드(마스터/슬레이브) 간에 자동으로 이동합니다.
    • 외부 고정 IP를 통해 게시됩니다. 예: 34.172.119.80사용자가 가상 ​​서비스에 액세스할 수 있도록 합니다.

The 백엔드 서버 (실제 애플리케이션)은 동일한 개인 네트워크에 배포됩니다.10.0.1.0/24) 그리고 인터넷에 직접 노출되지 않음.

GCP에서 Cloud Load Balancer 클러스터링 구현 #

1. 배포 RELIANOID 로드 밸런서 인스턴스 #

배포할 수 있습니다 RELIANOID 로드 밸런서 이미지를 직접 Google 클라우드 마켓플레이스.

  1. We Buy Orders 신청서를 클릭하세요. Google Cloud Console → Compute Engine → VM 인스턴스 → 인스턴스 만들기.
  2. 선택 RELIANOID 로드 밸런서 이미지 "사용자 정의 이미지"에서 "마켓플레이스"를 선택하세요.
  3. 구성 :
    • 기계 유형 : e2-micro(테스트에는 충분함; 생산에는 n2-standard 사용)
    • 지역/구역: 두 노드 모두 동일한 지역
    • 네트워크 인터페이스 :
      • 네트워크 : relianoid-vpc
      • 하위 네트워크: relianoid_subnet
      • 외부 IP: 고정(새로운 고정 IP 할당)
    • 방화벽 :TCP 22(SSH), TCP 444(웹 GUI), TCP 80(HTTP 서비스용)을 허용합니다.
  4. 고급 옵션 → 보안 → 액세스 범위
    • 왼쪽 메뉴에서 모든 Cloud API에 대한 전체 액세스 허용 or 사용자 정의 서비스 계정 설정 (권장).
    • 할당 서비스 계정 Compute Admin Compute Network Admin 역할.

두 노드(LB1과 LB2)를 모두 동일한 VPC와 서브넷에 배포합니다.

2. 서비스 계정 활성화 및 구성(ID 액세스) #

RELIANOID 를 사용하여 Google 클라우드 API Azure Managed Identities와 유사한 장애 조치 관리용입니다.

  • We Buy Orders 신청서를 클릭하세요. IAM 및 관리자 → 서비스 계정.
  • 만들기 새로운 서비스 계정 이름 relianoid-cluster-sa.
  • 다음 역할을 할당하세요.
    • Compute Instance Admin (v1)
    • Compute Network Admin
    • Service Account User

이것을 첨부하세요 서비스 계정LB1과 LB2 모두 VM(편집 → 서비스 계정 변경).

그런 다음 각 노드의 액세스를 확인합니다.

sudo systemctl status google-guest-agent
gcloud auth list
gcloud projects get-iam-policy <YOUR_PROJECT_ID>

에이전트가 설치되지 않은 경우 다음을 실행하세요.

sudo apt-get install google-cloud-sdk google-compute-engine

3. 네트워크 인터페이스 및 가상 IP 구성 #

GCP에서는 콘솔이나 CLI를 통해 보조 내부 IP를 수동으로 추가할 수 있습니다.

LB1(마스터 노드)에서:

  • We Buy Orders 신청서를 클릭하세요. VPC 네트워크 → VM 인스턴스 → LB1 → 편집 → 네트워크 인터페이스 → 보조 내부 IP 추가
  • 양수인:
    • IP : 10.0.1.11
    • 이름: vip-lb
    • 유형: Static

LB2(백업 노드)에서:

  • 이 보조 IP를 할당하지 마세요.
  • The RELIANOID 클러스터 서비스는 장애 조치 중에 자동으로 이를 다시 할당합니다.

4. 보안 규칙(방화벽 구성) #

In VPC 네트워크 → 방화벽, 다음을 허용하는 규칙을 만듭니다.

프로토콜 포트 목적
TCP 22 SSH 액세스
TCP 444 웹 GUI
TCP 80 백엔드 HTTP 서비스

이 규칙을 태그가 지정된 인스턴스에 적용합니다. relianoid-lb.

5. 그 (것)들을 활성화하십시오 RELIANOID 특허 #

각 노드에 접근:

  • LB1: https://34.122.145.90:444
  • LB2: https://35.233.210.70:444

사용

  • 사용자 이름: root
  • 암호: 인스턴스 ID

호스트 이름과 인증서 키 검색 → 방문
https://www.relianoid.com/activate-enterprise-edition-cloud-evaluation/
다운로드한 것을 업로드하세요. .pem 각 노드에 라이센스 파일을 추가합니다.

6. 구성 RELIANOID 클러스터 #

이와 같은 서비스: LB1 웹 GUI → 시스템 → 클러스터, 작성하세요:

분야 가치관
로컬 IP nic0(10.0.1.9)을 선택하세요
원격 IP 10.0.1.8
원격 노드 비밀번호 (LB2 인스턴스 ID)

GCP를 사용한 Relianoid 로드 밸런서 클러스터 구성

생성하다.

LB1은 다음과 같습니다. 석사, LB2은 다음과 같습니다. 노예 자동으로.

GCP에서 부하 분산 서비스 만들기 #

이제 간단한 웹 로드 밸런싱 팜을 구성해 보겠습니다.
이동 :
LSLB → 농장 → 농장 생성

매개 변수 :

  • 농장 이름: 웹팜
  • 요일: 10.0.1.11
  • 포트 : 80
  • 연산: 원형으로 서명한 청원서
  • 고집: 소스 IP(60초)
  • 건강 체크: check_tcp

백엔드 서버 추가:

  • 백엔드 1: 10.0.1.20:80
  • 백엔드 2: 10.0.1.21:80

구성을 적용합니다.

이제 다음에서 가상 서비스에 접속하세요.

http://34.172.119.80/

트래픽은 다음을 통해 백엔드 서버 간에 분산됩니다. RELIANOID 클러스터.

장애 조치를 테스트하려면:

  • 마스터 노드(LB1)를 재부팅합니다.
  • LB2가 활성화되어 VIP(10.0.1.11)를 제어하는 ​​것을 확인하세요.
  • 공용 IP를 통한 연결은 중단되지 않습니다.

문제 해결: 이 호스트는 서비스 계정을 할당하지 않았습니다. #

다음 메시지를 받으면:

    "이 호스트는 서비스 계정을 할당하지 않았습니다. GCP 콘솔에서 구성해 주세요."

GCP를 나타냅니다 서비스 계정 구성되지 않았거나 Google 게스트 에이전트 누락되었습니다.

확인하려면:

sudo systemctl status google-guest-agent
gcloud auth login --brief
gcloud auth print-access-token

에이전트 또는 SDK가 없는 경우:

sudo apt-get install google-cloud-sdk google-compute-engine

다음을 확인하십시오.

  • 인스턴스에는 유효한 서비스 계정 붙여진.
  • The 서비스 계정컴퓨팅 관리자 네트워크 관리자 역할.

GCP에서 고급 부하 분산 및 클러스터링을 즐겨보세요. RELIANOID! #

📄 이 문서를 PDF 형식으로 다운로드하세요 #

    이메일 : *

    에 의해 구동 더 나은 문서