Skip to content

Instantly share code, notes, and snippets.

@tomotake-koike
Last active May 13, 2020 06:33
Show Gist options
  • Select an option

  • Save tomotake-koike/07f30f467de3e549c723f8b3fb515121 to your computer and use it in GitHub Desktop.

Select an option

Save tomotake-koike/07f30f467de3e549c723f8b3fb515121 to your computer and use it in GitHub Desktop.
Charmed K8s API ServerにLBを介さず接続するためのContextを追加する

Charmed K8s API ServerにLBを介さず接続するためのContextを追加する

CDKのJujuでK8sを構成するとkubeapi-load-balancer経由でAPI Serverに接続する構成となる。
Troubleshooting等でAPI Serverに直接Requestを投げる場合の手順を示す。

kube-configのバックアップ

$ cp .kube/config .kube/config-BK

現状復帰する場合はこのファイルを戻す。

kube-configの編集

以下のように一つ目のclusters.cluster[0]をコピーしてclusters.cluster[1]を生成する。
このときnameには別名を付与し、serverhttp://localhost:8080を設定する。
同様にcontextes.context[0]からcontextes.context[1]を生成する。userは共通のものを使用する。

apiVersion: v1
clusters:
- cluster:
    certificate-authority-data: [ hash strings ]
    server: https://10.189.98.94:6443
  name: juju-cluster
- cluster:
    certificate-authority-data: [ hash strings ]
    server: http://localhost:8080
  name: juju-cluster-01
contexts:
- context:
    cluster: juju-cluster
    user: admin
  name: juju-context
- context:
    cluster: juju-cluster-01
    user: admin
  name: juju-context-01
current-context: juju-context-01
kind: Config
    preferences: {}
users:
- name: admin
  user:
    password: G57kN01LnfPyTIw3euC2BMegimDF1cNV
    username: admin

Contextの切り替え

設定したContext名に以下コマンドで切り換える。以降のkubectlコマンドは設定したContextを使用してAPI Serverに接続する。
(戻す場合には元のContextを指定する。)

$ kubectl config use-context juju-context-01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment