I remember testing the operator with the rest service exposed as NodePort.
NodePort requires rbac.nodeRoules.create: true (default is false) in
values.yaml. Maybe you missed that?

https://github.com/apache/flink-kubernetes-operator/blob/release-1.1/helm/flink-kubernetes-operator/values.yaml#L34-L38

On Thu, Sep 1, 2022 at 11:45 PM Vignesh Kumar Kathiresan via user <
user@flink.apache.org> wrote:

> Hi Yang,
>
> Yeah, I gathered that from the operator code soon after posting. I am
> using the aws alb ingress class [1]. There under considerations it is
> mentioned if the alb target type is "instance" which is the default traffic
> mode, the kubernetes service type has to be nodeport or loadbalancer.
>
> Also alb target if changed to "ip" might work. Let me try that. I believe
> there should be a reason to always override the "REST_SERVICE_EXPOSED_TYPE"
> to "ClusterIP".
>
> [1] https://docs.aws.amazon.com/eks/latest/userguide/alb-ingress.html
>
> On Thu, Sep 1, 2022 at 7:01 PM Yang Wang <danrtsey...@gmail.com> wrote:
>
>> I am afraid the current flink-kubernetes-operator always overrides the
>> "REST_SERVICE_EXPOSED_TYPE" to "ClusterIP".
>> Could you please share why the ingress[1] could not meet your
>> requirements? Compared with NodePort, I think it is a more graceful
>> implementation.
>>
>> [1].
>> https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-release-1.1/docs/operations/ingress/
>> <https://urldefense.com/v3/__https://nightlies.apache.org/flink/flink-kubernetes-operator-docs-release-1.1/docs/operations/ingress/__;!!Op6eflyXZCqGR5I!FZvr8XAEWiEa176d0PfqyLJQoxTGIsDkpV-xqs5JNRCJc3Kv43nm-sa2l275jTPk50K2mjrI3COxrj0op5P5cw$>
>>
>> Best,
>> Yang
>>
>> Vignesh Kumar Kathiresan via user <user@flink.apache.org> 于2022年9月2日周五
>> 04:57写道:
>>
>>> Hello Flink community,
>>>
>>> Need some help with "flink kubernetes operator" based cluster setup.
>>>
>>> My flink cluster is set up using the flink-kubernetes-operator in AWS
>>> EKS. The required resources(deployments, pods, services, configmaps etc)
>>> are created as expected. But the service "*-rest" is created as a
>>> "ClusterIP" type. I would want it created as a NodePort type.
>>>
>>> I want to expose the UI to external viewing via ingress using the aws
>>> alb class. This aws-load balancer-controller requires my service to be of
>>> type NodePort.
>>>
>>> I have tried a few options but the service is always created as
>>> ClusterIP.
>>> 1) In the FlinkDeployment CRD, under spec.flinkConfiguration
>>> added kubernetes.rest-service.exposed.type: "NodePort"
>>> 2) In the operator helm values.yaml
>>>
>>> defaultConfiguration:
>>>   create: true
>>>   # Set append to false to replace configuration files
>>>   append: true
>>>   flink-conf.yaml: |+
>>>     # Flink Config Overrides
>>>     kubernetes.rest-service.exposed.type: NodePort
>>>
>>> Neither option gives me a NodePort type service for the UI.
>>> Any suggestions?
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>

Reply via email to