web-dev-qa-db-ja.com

kubectl applyコマンドが機能せず、接続拒否エラーが発生する

以下を使用してポッドネットワークをセットアップしようとしているとき

Sudo kubectl apply -f https://docs.projectcalico.org/v3.1/getting-started/kubernetes/installation/hosted/rbac-kdd.yaml

このエラーが発生しました。助けてください

unable to recognize "https://docs.projectcalico.org/v3.1/getting-started/kubernetes/installation/hosted/rbac-kdd.yaml": Get http://localhost:8080/api?timeout=32s: dial tcp 127.0.0.1:8080: connect: connection refused
unable to recognize "https://docs.projectcalico.org/v3.1/getting-started/kubernetes/installation/hosted/rbac-kdd.yaml": Get http://localhost:8080/api?timeout=32s: dial tcp 127.0.0.1:8080: connect: connection refused

PDATE:他の質問とは異なり、許可の問題ではないようです

13
Jibin Mathew

Kubectlが正しく構成されていないことが問題であることがわかりました。

Calicoネットワークに対して次のコマンドを使用して発行された問題を修正しました(ネットワークアドオンプラグインに合わせて変更してください)

Sudo kubeadm init --pod-network-cidr=192.168.0.0/16
mkdir -p $HOME/.kube
Sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
Sudo chown $(id -u):$(id -g) $HOME/.kube/config

そして実行する

Sudo kubectl apply -f https://docs.projectcalico.org/v3.1/getting-started/kubernetes/installation/hosted/rbac-kdd.yaml

それに応じて残りに従います

9
Jibin Mathew

Google Cloud Platform Cloud Shellでクラスタコマンドを発行すると、このエラーが発生しました。

ここで説明します

Google Cloud Consoleまたは別のコンピューターからgcloudを使用してクラスターを作成する場合、環境のkubeconfigは更新されません。

Kubeconfigを自動修正するには、次のgcloudコマンドを使用して構成を修正します。

gcloud container clusters get-credentials my-xyz-cluster --zone=us-central1-a

完了すると、エラーなしでクラスターの変更を発行できました。

1
Leblanc Meneses

次の issue は、api-serverが実行されていない可能性があるという結論に導きます。

マスターノードのkubeletサービスのステータスを確認することをお勧めします

systemctl status kubelet.service 

ログで詳細を確認し、APIサーバーが実行されていない理由と問題の修正方法を確認してください

journalctl -xn --unit kubelet.service 
0
papanito

私にとっての問題は、コマンドを実行してワーカーノードでyamlファイルを実行する必要のある非ルートユーザーがいたことです。この非ルートユーザーは、ワーカーノードにパスワードなしでログインし、ルートになる機能を持っている必要がありました。この非rootユーザーがパスワードなしでkubeworkerにsshするように構成した後、問題は解決されました。

0
user3630391

基本的に、Kubernetesを起動するとポート6443でサービスが開始されますが、上記のコマンドはポート8080で実行されているサービスを検索しています。これは、Sudoを実行すると、Sudoからの変数を使用して実行され、 Kubernetesが実行されているポート。デフォルトは8080です。マスターノードでrootユーザーとして次のコマンドを実行します。

cp -i /etc/kubernetes/admin.conf $HOME/

kubectl applyコマンドをrootユーザーとして以下のように入力します。

kubectl apply -f https://docs.projectcalico.org/v3.1/getting-started/kubernetes/installation/hosted/rbac-kdd.yaml
0
Anirudha Singh