I am having issues trying to use a localstack Kinesis stream with Flink Statefun. I am getting the following error
flink-compose-kinesis-master-1 | org.apache.flink.kinesis.shaded.com.amazonaws.SdkClientException: Unable to execute HTTP request: Certificate for doesn't match any of the subject alternative names: [*.amplifyapp.localhost.localstack.cloud, *.cloudfront.localhost.localstack.cloud, *.execute-api.localhost.localstack.cloud, *.localhost.localstack.cloud, *.opensearch.localhost.localstack.cloud, *.s3.localhost.localstack.cloud, *.scm.localhost.localstack.cloud, localhost.localstack.cloud]
If I try to use HTTP I get:
Caused by: java.lang.IllegalArgumentException: Invalid service endpoint url: http://localstack:4566; Only custom service endpoints using HTTPS are supported
Is there any way to allow HTTP for testing purposes whilst I develop locally? I can see that in the Apache Flink library they can disable the cert checking when running tests against local stack:
Here is my Docker image, I'm wondering if I can use the flink-conf.yaml
to disable cert checking.
FROM apache/flink-statefun:3.2.0
RUN mkdir -p /opt/statefun/modules/remote
COPY module.yaml /opt/statefun/modules/remote/module.yaml
COPY flink-conf.yaml $FLINK_HOME/conf/flink-conf.yaml
COPY log4j-cli.properties $FLINK_HOME/conf/log4j-cli.properites
COPY log4j-console.properties $FLINK_HOME/conf/log4j-console.properties