kubectlコマンドでリモートクラスタに接続する

kubectlコマンドでリモートクラスタに接続する

リモートサーバーに構築したkubernatesにローカルからアクセスできるようにします。

目次

認証情報を出力する

本例ではmicrok8sでKubernetesクラスターを構築しています。

まずは、リモートサーバーにSSH等で接続し、認証情報を取得します。

$ microk8s kubectl config view --raw

上記コマンドで出力すると、以下のような内容が出力されます(一部、内容を変更しています)。

apiVersion: v1
clusters:
- cluster:
    certificate-authority-data:xxxxxx
    server: https://127.0.0.1:16443
  name: microk8s-cluster
contexts:
- context:
    cluster: microk8s-cluster
    user: admin
  name: microk8s
current-context: microk8s
kind: Config
apiVersion: v1
clusters:
- cluster:
    server: https://192.168.0.16:16443
  name: microk8s-cluster
contexts:
- context:
    cluster: microk8s-cluster
    user: admin
  name: microk8s
current-context: microk8s
kind: Config
preferences: {}
users:
- name: admin
  user:
    password: xxxxx
    username: admin
apiVersion: v1
apiVersion: v1
apiVersion: v1
preferences: {}
users:
- name: admin
  user:
    token: xxxxx

ローカルに認証情報を設定する

前述の出力内容のうち、以下の部分が127.0.0.1になっているため、IPアドレスをリモートアドレスに書き換えます。

- cluster:
    certificate-authority-data:xxxxxx
    server: https://127.0.0.1:16443
  name: microk8s-cluster

server欄をリモートアドレスに書き換えます。

- cluster:
    certificate-authority-data:xxxxxx
    server: https://192.168.0.16:16443
  name: microk8s-cluster

これを~/.kube/configに設定します。

ファイル自体がない場合はそのまま設定してもらってよいのですが、すでに設定がある場合は必要な部分だけを追記してください。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次