tech_memo / Kubernetes


tech_memo

ソース

kubectl get pod のソース

インストール (kubeadm)

環境

  • AWS EC2
  • Amazon Linux2
  • vCPU 1
  • Memory 1GB

手順

  • 参考
  • 注意
    • 本来、kubeadmのインストール要件は、CPU数2以上なので、今回の環境だとエラーになる。--ignore-preflight-errors=NumCPUオプションを設定した
      sudo kubeadm init --pod-network-cidr=10.0.0.0/16 --ignore-preflight-errors=NumCPU
    • ワーカーをクラスタに参加(kubeadm join x.x.x.x:6443 ...)させる前に、ワーカーとマスターを同じセキュリティグループで、ポート6443を疎通可能な設定にした
      • joinした後もいろいろポート使っているっぽいのですべてのポートを同じセキュリティグループ内であればオープンするように再設定した

Stern (複数Podのログ確認)

  • インストール
    sudo curl -L https://github.com/wercker/stern/releases/download/1.10.0/stern_windows_amd64.exe -o /usr/local/bin/stern
    sudo chmod 755 /usr/local/bin/stern
  • コマンド
    stern <Pod名> # 正規表現OK

kubeapiサーバの調べ方

k8sのリソースのapi versionの調べ方

  1. API Groupの調べ方
    kubectl api-resources
  2. API VERSIONの調べ方
    kubectl api-versions

Kubernetesのユーザー管理と認証・権限確認機構 (RBAC)

kubectlの補完

  • bashの場合
    source <(kubectl completion bash)
  • zshの場合
    source <(kubectl completion zsh)

kube-ps1 (プロンプトにクラスタ名とNamespaceを表示)

kubectl top でエラー