EKS Ingress 俺的ハマりポイント
ローカル環境でminikubeを用いてKubernetesを構成して、パブリッククラウド使いたいなぁとおもってAmazon EKSを利用しました。 ekstool便利だし、慣れ親しみのあるAWSですし。
次のようにIngressを作り、kubectl apply -f ingress.yamlなどしてアクセスしてみると上手くいきました。
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
namespace: sample2
name: rails-ing
annotations:
kubernetes.io/ingress.class: alb
alb.ingress.kubernetes.io/scheme: internet-facing
spec:
rules:
- host: 're----ruzu.com'
http:
paths:
- path: /
backend:
serviceName: rails
servicePort: 3000
しかし8b27e02b-sample2-railsing-837f-1682119185.ap-northeast-1.elb.amazonaws.com/hogeにアクセスすると404が返ってきます。🤔ハテ…。
ルート以外のpathはすべて404となってしまうようです。
いろいろ試行錯誤した結果 pathを/*としたらうまくいきました。
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
namespace: sample2
name: rails-ing
annotations:
kubernetes.io/ingress.class: alb
alb.ingress.kubernetes.io/scheme: internet-facing
spec:
rules:
- host: 're----ruzu.com'
http:
paths:
- path: '/*'
backend:
serviceName: rails
servicePort: 3000
メンターさんに相談してみたところ、ALBの挙動だと思うから調べてみなはれとのこと。
ほーん、、、たしかに/以外は404になっていますね。。。 なるほどね。