質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Ingress

Ingressとは、Googleがリリースしたスマートフォン向けのゲームアプリ。Googleマップでの技術と地図情報に拡張現実(AR)を融合し、ゲームのフィールドに現実世界の風景を使った位置ゲーです。現実世界を探索して拠点に印を置き、自陣の勢力範囲を拡大していきます。

nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

Q&A

解決済

1回答

2701閲覧

オンプレのk8sでingress-nginxの設定がapplyできない

chicken_curry

総合スコア16

Ingress

Ingressとは、Googleがリリースしたスマートフォン向けのゲームアプリ。Googleマップでの技術と地図情報に拡張現実(AR)を融合し、ゲームのフィールドに現実世界の風景を使った位置ゲーです。現実世界を探索して拠点に印を置き、自陣の勢力範囲を拡大していきます。

nginx

nginixは軽量で高性能なwebサーバーの1つです。BSD-likeライセンスのもとリリースされており、あわせてHTTPサーバ、リバースプロキシ、メールプロキシの機能も備えています。MacOSX、Windows、Linux、上で動作します。

Docker

Dockerは、Docker社が開発したオープンソースのコンテナー管理ソフトウェアの1つです

0グッド

0クリップ

投稿2020/05/31 14:18

編集2020/05/31 14:20

前提・実現したいこと

自宅のPC上でkubernetesの勉強をするためクラスタを作りました。
ingress-nginxをセットアップしており、controllerのデプロイはできて404は見れている状態なのですが、kind: ingressの設定をデプロイしようとするとtimeoutしてしまします。こちらの原因が分からず心当たりがある方がいらっしゃいましたら幸いです。

現在のおおまかな状態

初期セットアップを行い、metrics-serverを動かして全nodeのメトリクスが見れている状態です。
metallbをセットアップ後、以下の定義でLayer2モードに変更しています。

apiVersion: v1 kind: ConfigMap metadata: namespace: metallb-system name: config data: config: | address-pools: - name: default protocol: layer2 addresses: - 192.168.30.130-192.168.30.159
  • node:4台
  • 各nodeは master / worker1 / worker2 / router の役割となっています
  • kubeadmを使用して構築
  • flannel v0.11.0

nodeのホストはすべてHyper-V上で起動しているVMで以下の構成です

  • centos 7.8.2003
  • docker 19.03.10
  • kubeadm v1.18.3
  • kubelet v1.18.3

nginx-controllerはrouterノードにデプロイしています。
versinは0.32.0です。
インストールは公式のマニュアルの以下yamlをダウンロード後、nodeの指定のあたりだけ修正したものをapplyしました。
kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-0.32.0/deploy/static/provider/cloud/deploy.yaml

# diff deploy.yaml my-ingress-nginx-0.32.0.yaml 410a411,416 > nodeSelector: > node-role.kubernetes.io/router: "" > tolerations: > - key: "node-role.kubernetes.io/router" > operator: "Exists" > effect: "NoSchedule"

この状態でingress-nginx-controllerのExternalIPにアクセスするとnginxの404のページが表示できています。

発生している問題・エラーメッセージ

以下のyamlをapply後、

apiVersion: apps/v1 kind: Deployment metadata: name: docker-hello-world labels: app: docker-hello-world spec: replicas: 3 selector: matchLabels: app: docker-hello-world template: metadata: labels: app: docker-hello-world spec: containers: - name: docker-hello-world image: scottsbaldwin/docker-hello-world:latest ports: - containerPort: 80 --- apiVersion: v1 kind: Service metadata: name: docker-hello-world-svc spec: selector: app: docker-hello-world ports: - port: 8088 targetPort: 80 type: ClusterIP

こちらのyamlをapplyするとtimeoutしてしまいます。

apiVersion: extensions/v1beta1 kind: Ingress metadata: name: hello-world-ing annotations: kubernetes.io/ingress.class: "nginx" spec: tls: - secretName: tls-secret rules: - http: paths: - backend: serviceName: docker-hello-world-svc servicePort: 8088

エラーですが、何パターンかあるんですがいずれもtimeoutしたといった内容です。
kube-apiserverのログです。

Failed calling webhook, failing closed validate.nginx.ingress.kubernetes.io: failed calling webhook "validate.nginx.ingress.kubernetes.io": Post https://ingress-nginx-controller-admission.ingress-nginx.svc:443/extensions/v1beta1/ingresses?timeout=30s: context deadline exceeded (Client.Timeout exceeded while awaiting headers) の場合とか、 Failed calling webhook, failing closed validate.nginx.ingress.kubernetes.io: failed calling webhook "validate.nginx.ingress.kubernetes.io": Post https://ingress-nginx-controller-admission.ingress-nginx.svc:443/extensions/v1beta1/ingresses?timeout=30s: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers) の場合があります。 10回以上試しましたが同じでした。 なお、ingress-nginx-controllerにはapply後のログは特に出ておりませんでした。

こちら上記以上のエラーが見つけられず止まってしまいました。
心当たりある方がいらっしゃいましたらご助言いただけませんでしょうか。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

こちら根本解決してませんが、クラスタを作り直してhelmでingress-nginxをインストールして解決しました。

投稿2020/06/06 02:25

chicken_curry

総合スコア16

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問