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になっていますね。。。 なるほどね。