リモートサーバーに構築した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に設定します。
ファイル自体がない場合はそのまま設定してもらってよいのですが、すでに設定がある場合は必要な部分だけを追記してください。