MCP를 통해 Teleport Kubernetes 클러스터에 접근하기
Teleport v18.9이 가이드는 MCP 클라이언트로 Teleport Kubernetes 클러스터에 연결하는 방법을 설명합니다. 실행 중인 Teleport 클러스터. Teleport 클러스터의 버전을 확인합니다. 사용 중인 플랫폼에 대한 지침에 따라 `tsh` client를 설치합니다:
이 가이드는 MCP 클라이언트로 Teleport Kubernetes 클러스터에 연결하는 방법을 설명합니다.
사전 요구 사항#
-
실행 중인 Teleport 클러스터. Teleport를 시작하려면 무료 체험판에 가입하거나 데모 환경을 구성하세요.
-
`tsh` client.
Installing \`tsh\` client
-
Teleport 클러스터의 버전을 확인합니다. `tsh` client는 Teleport 클러스터 버전보다 최대 한 개의 메이저 버전까지만 뒤처질 수 있습니다. Proxy Service의
/v1/webapi/find로 GET 요청을 보내고 JSON 쿼리 도구를 사용하여 클러스터 버전을 확인합니다.teleport.example.com:443를 Teleport Proxy Service의 웹 주소로 바꿉니다:$ TELEPORT_DOMAIN=teleport.example.com:443 $ TELEPORT_VERSION="$(curl -s https://$TELEPORT_DOMAIN/v1/webapi/find | jq -r '.server_version')" -
사용 중인 플랫폼에 대한 지침에 따라 `tsh` client를 설치합니다:
-
Mac
\`tsh\` client가 포함된, 서명된 Teleport macOS .pkg 설치 프로그램을 다운로드합니다:
```code
$ curl -O https://cdn.teleport.dev/teleport-${TELEPORT_VERSION?}.pkg
```
Finder에서 `pkg` 파일을 더블 클릭하여 설치를 시작합니다.
Homebrew를 사용하여 Teleport를 설치하는 것은 지원되지 않습니다. Homebrew의
Teleport 패키지는 Teleport에서 유지 관리하지 않으므로 신뢰성이나 보안을
보장할 수 없습니다.
Windows - Powershell
```code
$ curl.exe -O https://cdn.teleport.dev/teleport-v${TELEPORT_VERSION?}-windows-amd64-bin.zip
# Unzip the archive and move the \`tsh\` client to your %PATH%
# NOTE: Do not place the \`tsh\` client in the System32 directory, as this can cause issues when using WinSCP.
# Use %SystemRoot% (C:\Windows) or %USERPROFILE% (C:\Users\<username>) instead.
```
Linux
Linux 설치판의 모든 Teleport 바이너리에는 \`tsh\` client가 포함되어 있습니다. RPM/DEB
패키지 및 i386/ARM/ARM64용 다운로드를 포함한 더 많은 옵션은
[설치 페이지](../installation/installation.mdx)를 참조하세요.
```code
$ curl -O https://cdn.teleport.dev/teleport-v${TELEPORT_VERSION?}-linux-amd64-bin.tar.gz
$ tar -xzf teleport-v${TELEPORT_VERSION?}-linux-amd64-bin.tar.gz
$ cd teleport
$ sudo ./install
# Teleport binaries have been copied to /usr/local/bin
```
- Teleport에 등록된 Kubernetes 클러스터. 가이드를 참조하세요.
1/2단계. 사용 가능한 MCP 서버 목록#
먼저, tsh login을 사용하여 Teleport 클러스터에 로그인합니다:
$ tsh login --proxy=teleport.example.com:443 --user=myuser@example.com
접근 가능한 Kubernetes 클러스터를 목록으로 보려면:
$ tsh kube ls
Kube Cluster Name Labels Selected
----------------- ------- --------
minikube env=dev *
이제 Kubernetes 클러스터에 로그인합니다. minikube를 실제 Kubernetes 클러스터 이름으로 교체하세요:
$ tsh kube login minikube
Logged into Kubernetes cluster "minikube". Try 'kubectl version' to test the connection.
이 명령은 기본 Kubernetes 설정도 업데이트합니다.
2/2단계. MCP 클라이언트 구성#
MCP 클라이언트가
kubernetes-mcp-server
MCP 서버를 사용하도록 구성합니다.
claude_desktop_config.json을 열고 mcpServers 목록에 MCP 서버를 추가합니다:
{
"mcpServers": {
"kubernetes": {
"command": "npx",
"args": [
"-y",
"kubernetes-mcp-server@latest"
]
}
}
}
mcp.json 파일을 편집하여 확장을 설치할 수 있습니다:
{
"mcpServers": {
"kubernetes-mcp-server": {
"command": "npx",
"args": ["-y", "kubernetes-mcp-server@latest"]
}
}
}
다음 명령을 실행하여 확장을 설치할 수 있습니다:
# VS Code용
code --add-mcp '{"name":"kubernetes","command":"npx","args":["kubernetes-mcp-server@latest"]}'
# VS Code Insiders용
code-insiders --add-mcp '{"name":"kubernetes","command":"npx","args":["kubernetes-mcp-server@latest"]}'
MCP 클라이언트를 구성한 후, kubernetes-mcp-server의 Kubernetes 및 Helm 도구를 사용할 수 있습니다.
이제 MCP 클라이언트에서 Teleport를 통해 Kubernetes 클러스터와 상호작용하는 데 이 도구들을 사용할 수 있습니다:

TLS 종료 로드 밸런서 뒤의 Teleport#
Teleport 클러스터가 TLS 종료 로드 밸런서나 리버스 프록시 뒤에 있는 경우, tsh로 로컬 프록시를 시작할 수 있습니다:
$ tsh proxy kube -p 8888
명령 출력에서 KUBECONFIG 경로를 복사하고, MCP 클라이언트 구성에 --kubeconfig 플래그와 함께 추가합니다. 예시:
{
"mcpServers": {
"kubernetes-mcp-server": {
"command": "npx",
"args": ["-y", "kubernetes-mcp-server@latest", "--kubeconfig", "/path/to/your/tsh/localproxy-8888-kubeconfig"]
}
}
}
또는 Teleport Connect를 사용하여 Kubernetes 클러스터에 대한 로컬 프록시를 실행할 수 있습니다. Teleport Connect의 터미널에서 KUBECONFIG 경로를 찾을 수 있습니다:
$ echo $KUBECONFIG
/path/to/your/minikube-kubeconfig