InfoGrab Docs

수동 업그레이드

요약

최소한의 수동 오버헤드로 Teleport 클러스터를 최신 상태로 유지하려면 클라우드 호스팅 Teleport Enterprise 계정에 가입하고 에이전트를 관리형 업데이트에 등록하는 것을 권장합니다. 이 가이드를 읽기 전에 클러스터에서 컴포넌트를 업그레이드하는 순서를 설명하는 업그레이드 호환성 개요 가이드를 숙지하세요.

최소한의 수동 오버헤드로 Teleport 클러스터를 최신 상태로 유지하려면 클라우드 호스팅 Teleport Enterprise 계정에 가입하고 에이전트를 관리형 업데이트에 등록하는 것을 권장합니다.

이 가이드를 읽기 전에 클러스터에서 컴포넌트를 업그레이드하는 순서를 설명하는 업그레이드 호환성 개요 가이드를 숙지하세요.

이 가이드는 Teleport를 수동으로 업그레이드하는 방법을 보여줍니다. 자체 호스팅 클러스터에서 실행 중인 Teleport Auth 서비스 및 프록시 서비스 인스턴스와 모든 Teleport 에이전트에 수동 업그레이드를 수행할 수 있습니다.

Teleport 에이전트#

SystemD가 있는 모든 Linux 서버는 자체 호스팅 클러스터에서도 이 워크플로 대신 에이전트 관리형 업데이트를 사용해야 합니다. 그렇지 않으면 클러스터가 업그레이드될 때 에이전트의 연결이 끊길 수 있습니다.

  1. 을 Teleport 계정 또는 Teleport 프록시 서비스의 호스트 및 포트로 대체하여 Teleport 프록시 서비스의 webapi 엔드포인트를 쿼리하여 최신 호환 가능한 Teleport 에이전트 버전을 확인합니다:

    $ curl https:///webapi/find
      ...
      "auto_update": {
        "tools_version": "(=teleport.version=)",
        "tools_auto_update": true,
        "agent_version": "(=teleport.version=)",
        "agent_auto_update": true,
        "agent_update_jitter_seconds": 60
      },
      ...
    
  2. tctl inventory ls 명령을 사용하여 연결된 에이전트와 현재 버전을 나열합니다. --older-than 플래그를 사용하여 업그레이드 가능한 에이전트를 나열합니다:

    $ tctl inventory ls --older-than=v(=teleport.version=)
    Server ID                            Hostname       Services       Version Upgrader
    ------------------------------------ -------------- -------------- ------- --------
    00000000-0000-0000-0000-000000000000 ip-10-1-6-130  Node           v14.4.5 none
    00000000-0000-0000-0000-000000000001 teleport-proxy Proxy          v15.2.0 none
    00000000-0000-0000-0000-000000000002 teleport-auth  Auth,Discovery v15.2.0 none
    ...
    
  3. tctl inventory ls 명령이 반환한 각 에이전트 ID에 대해, ID를 복사하고 다음 tctl 명령을 실행하여 tsh를 통해 호스트에 접근합니다:

    $ HOST=00000000-0000-0000-0000-000000000000
    $ USER=root
    $ tsh ssh "${USER?}@${HOST?}"
    
  4. 각 Linux 서버에서 다음 섹션의 지침에 따라 새 버전의 teleport 바이너리를 설치합니다.

  5. teleport-kube-agent Helm 차트를 사용하여 Kubernetes에 에이전트를 배포한 경우 지침에 따라 Helm 릴리즈를 업그레이드합니다.

Linux 서버의 단일 Teleport 바이너리#

Linux 호스트에서 실행 중인 단일 Teleport 바이너리를 현재 버전보다 높은 버전으로 일반 설치 스크립트를 실행하여 업그레이드할 수 있습니다.

자체 호스팅 클러스터에서 Teleport를 업그레이드하기 전에 올바른 순서로 컴포넌트를 업그레이드하고 있는지 확인하려면 호환성 개요를 읽으세요.

Auth 서비스 및 프록시 서비스를 실행하는 모든 서버에서 다음 단계를 완료한 다음 각 에이전트에서 수행합니다:

  1. 현재 버전을 확인합니다:

    $ teleport version
    
  2. Teleport 에디션에 따라 에 다음 중 하나를 할당합니다:

    에디션
    Teleport Enterprise (Cloud) cloud
    Teleport Enterprise (자체 호스팅) enterprise
    Teleport Community Edition oss
  3. 설치하려는 버전에 을 할당합니다.

  4. Linux 서버에 새 Teleport 버전을 설치합니다:

    $ curl (=teleport.teleport_install_script_url=) | bash -s  
    

    설치 스크립트는 Linux 서버의 패키지 관리자를 감지하여 Teleport 바이너리를 설치합니다. 설치를 사용자 정의하려면 설치 가이드에서 Teleport 패키지 저장소에 대해 알아보세요.

  5. teleport 바이너리의 버전이 예상한 버전인지 확인합니다:

    $ teleport version
    
  6. Auth 서비스 및 프록시 서비스 인스턴스에 더 최신 teleport 바이너리를 설치했으면 이러한 서버에서 Teleport를 재시작하여 새 버전을 실행합니다.

Configure your Teleport instance to start automatically when the host boots up by creating a systemd service for it. The instructions depend on how you installed your Teleport instance.

You can check the status of your Teleport instance with systemctl status teleport and view its logs with journalctl -fu teleport.

Kubernetes의 자체 호스팅 Teleport 클러스터#

이 섹션의 지침은 teleport-cluster Helm 차트를 values.yaml이라는 values 파일로 구성했고 teleport-cluster 릴리즈 이름이 teleport-cluster라고 가정합니다. Auth 서비스 인스턴스는 업그레이드 중 동시에 재시작되므로 복제본 수를 줄일 필요가 없습니다.

  1. 최신 버전의 teleport-cluster 차트를 설치할 수 있도록 Teleport Helm 차트 저장소를 업데이트합니다:

Configure Helm to fetch Teleport charts from the Teleport Helm repository:

$ helm repo add teleport (=teleport.helm_repo_url=)

Refresh the local Helm cache by fetching the latest charts:

$ helm repo update
  1. teleport-cluster Helm 릴리즈를 업그레이드합니다:

    $ helm upgrade teleport-cluster teleport/teleport-cluster \
      --version= \
      --values=values.yaml
    

    teleport-cluster Helm 차트는 새 버전의 Auth 서비스를 실행하기 전에 이전 버전의 프록시 서비스가 요청에 응답을 중지할 때까지 자동으로 대기합니다.

Kubernetes에서 실행 중인 Teleport 에이전트#

이 섹션의 지침은 teleport-kube-agent Helm 차트를 values.yaml이라는 values 파일로 구성했고 teleport-kube-agent 릴리즈 이름이 teleport-agent라고 가정합니다.

  1. 최신 버전의 teleport-kube-agent 차트를 설치할 수 있도록 Teleport Helm 차트 저장소를 업데이트합니다:

Configure Helm to fetch Teleport charts from the Teleport Helm repository:

$ helm repo add teleport (=teleport.helm_repo_url=)

Refresh the local Helm cache by fetching the latest charts:

$ helm repo update
  1. Helm 릴리즈를 업그레이드합니다:

    $ helm -n "teleport" upgrade teleport-agent teleport/teleport-kube-agent \
      --values=values.yaml \
      --version=
    

수동 업그레이드

원문 보기
요약

최소한의 수동 오버헤드로 Teleport 클러스터를 최신 상태로 유지하려면 클라우드 호스팅 Teleport Enterprise 계정에 가입하고 에이전트를 관리형 업데이트에 등록하는 것을 권장합니다. 이 가이드를 읽기 전에 클러스터에서 컴포넌트를 업그레이드하는 순서를 설명하는 업그레이드 호환성 개요 가이드를 숙지하세요.

최소한의 수동 오버헤드로 Teleport 클러스터를 최신 상태로 유지하려면 클라우드 호스팅 Teleport Enterprise 계정에 가입하고 에이전트를 관리형 업데이트에 등록하는 것을 권장합니다.

이 가이드를 읽기 전에 클러스터에서 컴포넌트를 업그레이드하는 순서를 설명하는 업그레이드 호환성 개요 가이드를 숙지하세요.

이 가이드는 Teleport를 수동으로 업그레이드하는 방법을 보여줍니다. 자체 호스팅 클러스터에서 실행 중인 Teleport Auth 서비스 및 프록시 서비스 인스턴스와 모든 Teleport 에이전트에 수동 업그레이드를 수행할 수 있습니다.

Teleport 에이전트#

SystemD가 있는 모든 Linux 서버는 자체 호스팅 클러스터에서도 이 워크플로 대신 에이전트 관리형 업데이트를 사용해야 합니다. 그렇지 않으면 클러스터가 업그레이드될 때 에이전트의 연결이 끊길 수 있습니다.

  1. 을 Teleport 계정 또는 Teleport 프록시 서비스의 호스트 및 포트로 대체하여 Teleport 프록시 서비스의 webapi 엔드포인트를 쿼리하여 최신 호환 가능한 Teleport 에이전트 버전을 확인합니다:

    $ curl https:///webapi/find
      ...
      "auto_update": {
        "tools_version": "(=teleport.version=)",
        "tools_auto_update": true,
        "agent_version": "(=teleport.version=)",
        "agent_auto_update": true,
        "agent_update_jitter_seconds": 60
      },
      ...
    
  2. tctl inventory ls 명령을 사용하여 연결된 에이전트와 현재 버전을 나열합니다. --older-than 플래그를 사용하여 업그레이드 가능한 에이전트를 나열합니다:

    $ tctl inventory ls --older-than=v(=teleport.version=)
    Server ID                            Hostname       Services       Version Upgrader
    ------------------------------------ -------------- -------------- ------- --------
    00000000-0000-0000-0000-000000000000 ip-10-1-6-130  Node           v14.4.5 none
    00000000-0000-0000-0000-000000000001 teleport-proxy Proxy          v15.2.0 none
    00000000-0000-0000-0000-000000000002 teleport-auth  Auth,Discovery v15.2.0 none
    ...
    
  3. tctl inventory ls 명령이 반환한 각 에이전트 ID에 대해, ID를 복사하고 다음 tctl 명령을 실행하여 tsh를 통해 호스트에 접근합니다:

    $ HOST=00000000-0000-0000-0000-000000000000
    $ USER=root
    $ tsh ssh "${USER?}@${HOST?}"
    
  4. 각 Linux 서버에서 다음 섹션의 지침에 따라 새 버전의 teleport 바이너리를 설치합니다.

  5. teleport-kube-agent Helm 차트를 사용하여 Kubernetes에 에이전트를 배포한 경우 지침에 따라 Helm 릴리즈를 업그레이드합니다.

Linux 서버의 단일 Teleport 바이너리#

Linux 호스트에서 실행 중인 단일 Teleport 바이너리를 현재 버전보다 높은 버전으로 일반 설치 스크립트를 실행하여 업그레이드할 수 있습니다.

자체 호스팅 클러스터에서 Teleport를 업그레이드하기 전에 올바른 순서로 컴포넌트를 업그레이드하고 있는지 확인하려면 호환성 개요를 읽으세요.

Auth 서비스 및 프록시 서비스를 실행하는 모든 서버에서 다음 단계를 완료한 다음 각 에이전트에서 수행합니다:

  1. 현재 버전을 확인합니다:

    $ teleport version
    
  2. Teleport 에디션에 따라 에 다음 중 하나를 할당합니다:

    에디션
    Teleport Enterprise (Cloud) cloud
    Teleport Enterprise (자체 호스팅) enterprise
    Teleport Community Edition oss
  3. 설치하려는 버전에 을 할당합니다.

  4. Linux 서버에 새 Teleport 버전을 설치합니다:

    $ curl (=teleport.teleport_install_script_url=) | bash -s  
    

    설치 스크립트는 Linux 서버의 패키지 관리자를 감지하여 Teleport 바이너리를 설치합니다. 설치를 사용자 정의하려면 설치 가이드에서 Teleport 패키지 저장소에 대해 알아보세요.

  5. teleport 바이너리의 버전이 예상한 버전인지 확인합니다:

    $ teleport version
    
  6. Auth 서비스 및 프록시 서비스 인스턴스에 더 최신 teleport 바이너리를 설치했으면 이러한 서버에서 Teleport를 재시작하여 새 버전을 실행합니다.

Configure your Teleport instance to start automatically when the host boots up by creating a systemd service for it. The instructions depend on how you installed your Teleport instance.

You can check the status of your Teleport instance with systemctl status teleport and view its logs with journalctl -fu teleport.

Kubernetes의 자체 호스팅 Teleport 클러스터#

이 섹션의 지침은 teleport-cluster Helm 차트를 values.yaml이라는 values 파일로 구성했고 teleport-cluster 릴리즈 이름이 teleport-cluster라고 가정합니다. Auth 서비스 인스턴스는 업그레이드 중 동시에 재시작되므로 복제본 수를 줄일 필요가 없습니다.

  1. 최신 버전의 teleport-cluster 차트를 설치할 수 있도록 Teleport Helm 차트 저장소를 업데이트합니다:

Configure Helm to fetch Teleport charts from the Teleport Helm repository:

$ helm repo add teleport (=teleport.helm_repo_url=)

Refresh the local Helm cache by fetching the latest charts:

$ helm repo update
  1. teleport-cluster Helm 릴리즈를 업그레이드합니다:

    $ helm upgrade teleport-cluster teleport/teleport-cluster \
      --version= \
      --values=values.yaml
    

    teleport-cluster Helm 차트는 새 버전의 Auth 서비스를 실행하기 전에 이전 버전의 프록시 서비스가 요청에 응답을 중지할 때까지 자동으로 대기합니다.

Kubernetes에서 실행 중인 Teleport 에이전트#

이 섹션의 지침은 teleport-kube-agent Helm 차트를 values.yaml이라는 values 파일로 구성했고 teleport-kube-agent 릴리즈 이름이 teleport-agent라고 가정합니다.

  1. 최신 버전의 teleport-kube-agent 차트를 설치할 수 있도록 Teleport Helm 차트 저장소를 업데이트합니다:

Configure Helm to fetch Teleport charts from the Teleport Helm repository:

$ helm repo add teleport (=teleport.helm_repo_url=)

Refresh the local Helm cache by fetching the latest charts:

$ helm repo update
  1. Helm 릴리즈를 업그레이드합니다:

    $ helm -n "teleport" upgrade teleport-agent teleport/teleport-kube-agent \
      --values=values.yaml \
      --version=