업그레이드 절차의 일부로 Kf 설치에서 최신 버전의 Kf 연산자를 사용하는지 확인합니다.
- 현재 Kf 버전을 Kf v2.9.0으로 업그레이드할 수 있는지 확인합니다.
- Kf v2.9.0으로 업그레이드합니다.
- 종속 항목을 업그레이드합니다(필요한 경우).
시작하기 전에
필요한 사항은 다음과 같습니다.
- Kf가 설치된 기존 클러스터
gcloud
,kf
,kubectl
이 설치된 머신에 대한 액세스 권한
업그레이드 준비
대상 클러스터에 연결
gcloud container clusters get-credentials CLUSTER_NAME \
--zone CLUSTER_ZONE \
--project CLUSTER_PROJECT_ID
현재 Kf CLI와 서버 버전이 일치하는지 확인
kf debug
를 실행하고 Kf CLI와 Kf 서버 버전이 일치하는지 검사합니다.
- CLI 버전은
Kf Client
아래에 나열됩니다. - Kf 서버 버전은
kf["app.kubernetes.io/version"]
아래에 나열됩니다.
$ kf debug
...
Version:
Kf Client: v2.7.3
Server version: v1.21.6-gke.1500
kf["app.kubernetes.io/version"]: v2.7.3
...
Kf 클라이언트와 Kf 서버 값이 일치하지 않지만 서버 버전이 v2.7.x이면 Kf v2.9.0 CLI를 설치한 후 계속합니다.
Kf 서버 값이 v2.7.x 이전이면 먼저 Kf v2.7.x로 점진적으로 업그레이드한 후 계속해야 합니다.
업그레이드하기 전에 Kf가 정상인지 확인
kf doctor
를 실행하여 클러스터의 상태를 확인합니다. 계속 진행하려면 모든 테스트를 통과해야 합니다.
$ kf doctor
...
=== RUN doctor/user
=== RUN doctor/user/ContainerRegistry
--- PASS: doctor/user
--- PASS: doctor/user/ContainerRegistry
...
FAIL
또는 Error: environment failed checks
메시지가 표시되면 kf doctor
출력의 안내를 따르거나 문제 해결 가이드를 참조하여 문제를 해결하고 성공할 때까지 명령어를 재시도합니다.
연산자 업그레이드
Kf 연산자는 자동으로 업그레이드를 수행합니다.
연산자 yaml을 적용합니다.
kubectl apply -f "https://storage.googleapis.com/kf-releases/v2.9.0/operator.yaml"
Kf 종속 항목 업그레이드
Tekton을 업그레이드합니다.
kubectl apply -f "https://storage.googleapis.com/tekton-releases/pipeline/previous/v0.32.1/release.yaml"
Cloud Service Mesh v1.12로 업그레이드합니다.
- Cloud Service Mesh 업그레이드 가이드의 단계를 따릅니다.
Config Connector를 업그레이드/설치합니다.
Kf v2.8에서 업그레이드하는 경우: Kf 설치의 'Config Connector 설치' 단계의 단계를 따르세요.
Kf v2.7에서 업그레이드하는 경우:
필수 Config Connector 연산자 tar 파일을 다운로드합니다.
tar 파일의 압축을 풉니다.
tar zxvf release-bundle.tar.gz
클러스터에 Config Connector 연산자를 설치합니다.
kubectl apply -f operator-system/configconnector-operator.yaml
Kf v2.9.0 CLI로 업그레이드
CLI를 설치합니다.
Linux
이 명령어는 시스템의 모든 사용자에 대해 Kf CLI를 설치합니다. Cloud Shell 탭의 안내에 따라 직접 설치합니다.
gcloud storage cp gs://kf-releases/v2.9.0/kf-linux /tmp/kf
chmod a+x /tmp/kf
sudo mv /tmp/kf /usr/local/bin/kf
Mac
이 명령어는 시스템의 모든 사용자에 대해
kf
를 설치합니다.gcloud storage cp gs://kf-releases/v2.9.0/kf-darwin /tmp/kf
chmod a+x /tmp/kf
sudo mv /tmp/kf /usr/local/bin/kf
Cloud Shell
이 명령어는
bash
를 사용하는 경우 Cloud Shell 인스턴스에kf
를 설치합니다. 다른 셸의 경우 지침을 수정해야 할 수 있습니다.mkdir -p ~/bin
gcloud storage cp gs://kf-releases/v2.9.0/kf-linux ~/bin/kf
chmod a+x ~/bin/kf
echo "export PATH=$HOME/bin:$PATH" >> ~/.bashrc
source ~/.bashrc
Windows
kf
를 현재 디렉터리에 다운로드합니다. 현재 디렉터리 이외의 다른 곳에서 호출하려는 경우 경로에 추가합니다.gcloud storage cp gs://kf-releases/v2.9.0/kf-windows.exe kf.exe
Kf CLI 및 Kf 서버 버전이 일치하는지 확인합니다.
- CLI 버전은
Kf Client
아래에 나열됩니다. - Kf 서버 버전은
kf["app.kubernetes.io/version"]
아래에 나열됩니다.
$ kf debug ... Version: Kf Client: v2.9.0 Server version: v1.21.6-gke.1500 kf["app.kubernetes.io/version"]: v2.9.0 ...
- CLI 버전은
Kf가 성공적으로 업그레이드되었는지 확인
doctor
를 실행하여 새로 설치된 버전이 정상인지 확인합니다.kf doctor --retries=20
이 명령어는 클러스터 확인을 여러 번 실행합니다. 새 컨트롤러가 시작되는 도중에 시도가 여러 번 실패하는 것은 정상입니다.
명령어가
Error: environment failed checks
메시지와 함께 실패하는 경우doctor
출력의 안내에 따라 문제를 해결하고 성공할 때까지 명령어를 다시 시도합니다.
확인 단계가 통과되면 클러스터가 성공적으로 업그레이드된 것입니다. 문제가 있으면 지원 페이지에서 안내를 검토하세요.