Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
2
Help us understand the problem. What is going on with this article?
@icchi_h

GKEで限定公開クラスタ構築時のtimeoutエラー問題と解決策

More than 1 year has passed since last update.

はじめに

GKE(Google Kubernetes Engine)の限定公開クラスタを構築する際に、以下のような接続エラーが起こりkubectlコマンドが使えずハマったのでメモ。

$ kubectl version
Unable to connect to the server: dial tcp <Your Cluster IP>:443: i/o timeout 

やりたかったこと

GKEと連携しているAPIの制約上、外部への通信のIPを固定する必要がありました。Cloud NATと限定公開クラスタ(Nodeに外部IPが付与されない)の構築してオートスケールしてもIPを固定にすることが目的でした。

そのために限定公開クラスタをを構築する必要がありました。現在では限定公開クラスタの作成はコンソール上で可能です。ただし、IngressのLet's Encrypt連携といったkubernetesの詳細な設定はkubectlを使わないと出来ません。(←違ってたらすみません)

通常のクラスタじゃだめなの?

通常のクラスタはオートスケール時にデフォルトで自動的に新規の外部IPが付与され、クラスタが格納されているネットワークにCloud NATを構築していてもその外部IPで通信してしまいます。ノードのテンプレートを設定、適用することで新規作成ノードに外部IPを付与させないことが可能ですが、私の環境では数ヶ月に一度、適用しているテンプレートが勝手に更新される現象が発生しました。そのため、GKEでノードに外部IPが付与できないよう限定公開クラスタを構築しました。

やったこと

以下の公式ドキュメントに従って限定公開クラスタを作成した。

原因

ドキュメントのサンプルコマンドに含まれている--enable-master-authorized-networksオプションが原因でした。これのオプションは許可されたIP以外からのクラスタへの通信を防ぐオプションです。実行するコマンドのオプションぐらいは最低限把握しとけって話ですね。ちなみに--master-authorized-networks [CIDR]オプションで許可するIPを指定します。

解決策

限定公開クラスタ作成コマンドから--enable-master-authorized-networksオプションを除く。

example
$ gcloud container clusters create private-cluster-0 \
    --create-subnetwork name=my-subnet-0 \
    --enable-ip-alias \
    --enable-private-nodes \
    --master-ipv4-cidr 172.16.0.0/28 \
    --no-enable-basic-auth \
    --no-issue-client-certificate
2
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
icchi_h
都内のメディア企業で働く高専出身エンジニア

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
2
Help us understand the problem. What is going on with this article?