kubernetes-the-hard-way/docs/ja/10-configuring-kubectl.md

2.3 KiB
Raw Blame History

kubectlのリモートアクセス設定

このラボでは、adminユーザーの資格情報に基づいてkubectlコマンドラインユーティリティ用のkubeconfigファイルを生成します。

このラボのコマンドはjumpboxマシンから実行してください。

Admin Kubernetes設定ファイル

各kubeconfigには接続するKubernetes APIサーバーが必要です。

前のラボで設定した/etc/hostsのDNSエントリに基づいて、server.kubernetes.localにpingできるはずです。

curl -k --cacert ca.crt \
  https://server.kubernetes.local:6443/version
{
  "major": "1",
  "minor": "28",
  "gitVersion": "v1.28.3",
  "gitCommit": "a8a1abc25cad87333840cd7d54be2efaf31a3177",
  "gitTreeState": "clean",
  "buildDate": "2023-10-18T11:33:18Z",
  "goVersion": "go1.20.10",
  "compiler": "gc",
  "platform": "linux/arm64"
}

adminユーザーとして認証するためのkubeconfigファイルを生成します

{
  kubectl config set-cluster kubernetes-the-hard-way \
    --certificate-authority=ca.crt \
    --embed-certs=true \
    --server=https://server.kubernetes.local:6443

  kubectl config set-credentials admin \
    --client-certificate=admin.crt \
    --client-key=admin.key

  kubectl config set-context kubernetes-the-hard-way \
    --cluster=kubernetes-the-hard-way \
    --user=admin

  kubectl config use-context kubernetes-the-hard-way
}

上記のコマンドを実行すると、kubectlコマンドラインツールが使用するデフォルトの場所~/.kube/configにkubeconfigファイルが作成されます。これにより、configを指定せずにkubectlコマンドを実行できるようになります。

検証

リモートKubernetesクラスターのバージョンを確認します

kubectl version
Client Version: v1.28.3
Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3
Server Version: v1.28.3

リモートKubernetesクラスターのードをリストします

kubectl get nodes
NAME     STATUS   ROLES    AGE   VERSION
node-0   Ready    <none>   30m   v1.28.3
node-1   Ready    <none>   35m   v1.28.3

次: Pod Network Routesのプロビジョニング