Consul을 v1.8.x로 업그레이드

Consul을 v1.8.x로 업그레이드 (Upgrade Consul to v1.8.x)

이 페이지는 Consul 배포를 v1.8.x로 업데이트하고 복제 데이터를 유지하는 과정을 설명해요.

출처: 문서

본문

이 페이지는 Consul 배포를 v1.8.x로 업데이트하고 복제 데이터를 유지하는 과정을 설명해요.

소개 (Introduction)

이 가이드는 복제(replication)를 유지하면서 1.6.9 이상 1.8.19 미만의 Consul 버전을 사용하는 다중 데이터센터 Consul 배포를 업그레이드하는 가장 좋은 방법을 설명해요. 1.6.9보다 오래된 버전이라면 현재 버전에 해당하는 링크를 여기에서 참고해요.

이 가이드에서는 두 데이터센터(DC)가 있는 예시를 사용하며 DC1과 DC2로 지칭해요. DC1이 기본 데이터센터가 돼요.

요구 사항 (Requirements)

  • 모든 Consul 서버는 1.6.9 이상 1.8.19 미만의 Consul 버전이어야 해요.

가정 (Assumptions)

이 가이드는 다음을 가정해요:

  • 최소 두 개의 데이터센터를 구성하고 ACL 복제를 활성화했을 것. 여러 데이터센터를 사용하지 않는다면 복제와 관련된 지침을 건너뛰고 따라 하면 돼요.

고려 사항 (Considerations)

1.6.9에서 업그레이드할 때 문제를 일으킬 수 있는 주요 변경 사항은 많지 않지만, 주목할 만한 변경 사항은 특정 버전 세부 사항 페이지에 명시되어 있어요. 더 세분화된 세부 사항은 전체 변경 로그에서 찾을 수 있어요. 업그레이드 전에 이러한 변경 사항을 살펴보는 것을 강력히 권장해요.

절차 (Procedure)

1. 해당 DC의 Consul 서버에서 다음 curl 명령을 실행해 DC1의 복제 상태를 확인해요:

$ curl --silent --header "X-Consul-Token: $MASTER_TOKEN" "localhost:8500/v1/acl/replication?pretty"

다음과 유사한 출력을 받아야 해요:

{
  "Enabled": false,
  "Running": false,
  "SourceDatacenter": "",
  "ReplicationType": "",
  "ReplicatedIndex": 0,
  "ReplicatedRoleIndex": 0,
  "ReplicatedTokenIndex": 0,
  "LastSuccess": "0001-01-01T00:00:00Z",
  "LastError": "0001-01-01T00:00:00Z"
}

기본 데이터센터(primary_datacenter로 표시)는 항상 복제가 비활성화된 것으로 표시되므로 복제가 일어나고 있어도 이는 정상이에요.

2. 해당 DC의 Consul 서버에서 다음 curl 명령을 실행해 DC2의 복제 상태를 확인해요:

$ curl --silent --header "X-Consul-Token: $MASTER_TOKEN" "localhost:8500/v1/acl/replication?pretty"

다음과 유사한 출력을 받아야 해요:

{
  "Enabled": true,
  "Running": true,
  "SourceDatacenter": "dc1",
  "ReplicationType": "tokens",
  "ReplicatedIndex": 672,
  "ReplicatedRoleIndex": 1,
  "ReplicatedTokenIndex": 677,
  "LastSuccess": "2020-09-14T17:06:07Z",
  "LastError": "2020-09-14T16:53:22Z"
}

3. 일반 업그레이드 과정에 따라 모든 DC의 Consul 에이전트를 버전 1.8.19로 업그레이드해요.

4. 해당 DC의 Consul 서버에서 다음 curl 명령을 실행해 DC2에서 복제가 여전히 작동하는지 확인해요:

$ curl --silent --header "X-Consul-Token: $MASTER_TOKEN" "localhost:8500/v1/acl/replication?pretty"

다음과 유사한 출력을 받아야 해요:

{
  "Enabled": true,
  "Running": true,
  "SourceDatacenter": "dc1",
  "ReplicationType": "tokens",
  "ReplicatedIndex": 672,
  "ReplicatedRoleIndex": 1,
  "ReplicatedTokenIndex": 677,
  "LastSuccess": "2020-09-14T17:15:16Z",
  "LastError": "0001-01-01T00:00:00Z"
}

업그레이드 후 구성 변경 (Post-Upgrade Configuration Changes)

이 업그레이드에는 구성 변경이 필요하지 않아요.

더 알아보기 (Learn more)