Hey Sandeep,

here's a project I've recently worked on, that deploys Flink on Minikube:
https://github.com/rmetzger/flink-reactive-mode-k8s-demo
The project is pretty big, but I guess you can pick the bits related to the
Flink deployment on minikube.

On Thu, Mar 25, 2021 at 7:48 PM Sandeep khanzode <sand...@shiftright.ai>
wrote:

> Hi Arvid,
>
> Thanks, will set the scope to Provided and try.
>
> Are there public examples in GitHub that demonstrate a sample app in
> Minikube?
>
> Sandeep
>
> On 23-Mar-2021, at 3:17 PM, Arvid Heise <ar...@apache.org> wrote:
>
> Hi Sandeep,
>
> please have a look at [1], you should add most Flink dependencies as
> provided - exceptions are connectors (or in general stuff that is not in
> flink/lib/ or flink/plugins).
>
> [1]
> https://ci.apache.org/projects/flink/flink-docs-stable/dev/project-configuration.html#setting-up-a-project-basic-dependencies
>
> On Tue, Mar 23, 2021 at 5:28 AM Sandeep khanzode <sand...@shiftright.ai>
> wrote:
>
>> Hi Arvid,
>>
>> I copy the JAR to the usrlib folder. This works in the Cloud EKS cluster.
>> I wanted to set this up for my testing purposes.
>>
>> Below is the Dockerfile:
>>
>> FROM apache/flink:1.12.1-java11
>> RUN mv /opt/flink/opt/flink-queryable-state-runtime_2.12-1.12.1.jar 
>> /opt/flink/lib/flink-queryable-state-runtime_2.12-1.12.1.jar
>> ADD myJar.jar /opt/flink/usrlib/myJar.jar
>>
>>
>> … But, in my process, this is a Fat JAR created by the Maven Shade
>> Plugin. Are you saying that all Flink classes should not be part of the
>> user JAR? How does that work? Do we set the scope of the dependencies to
>> compile (or, not runtime) for Flink Jars? Do we have any samples/examples
>> that shows this? Would be really helpful.
>>
>>
>> On 22-Mar-2021, at 8:00 PM, Arvid Heise <ar...@apache.org> wrote:
>>
>> Hi Sandeep,
>>
>> The first error definitively indicates a classloading issue, which may
>> also be the cause for the second error.
>>
>> Can you describe where you put your jar inside the docker image and which
>> execution mode you are using? As a general rule, the jar is not supposed to
>> go into flink/lib.
>> Also make sure to never shade non-connector classes of Flink into your
>> jar. A typical user jar should be ~1MB.
>>
>> On Fri, Mar 19, 2021 at 8:58 PM Sandeep khanzode <sand...@shiftright.ai>
>> wrote:
>>
>>> Hello,
>>>
>>> I have a fat JAR compiled using the Man Shade plugin and everything
>>>  works correctly when I deploy it on a standalone local cluster i.e. one
>>> job and one task manager node.
>>>
>>> But I installed Minikube and the same JAR file packaged into a docker
>>> image fails with weird serialization  errors:
>>>
>>> Caused by: java.lang.ClassCastException: cannot assign instance of
>>> java.lang.invoke.SerializedLambda to field
>>> org.apache.flink.streaming.runtime.partitioner.KeyGroupStreamPartitioner.keySelector
>>> of type org.apache.flink.api.java.functions.KeySelector in instance of
>>> org.apache.flink.streaming.runtime.partitioner.KeyGroupStreamPartitioner
>>>
>>>
>>> … or in certain cases, if I comment out everything except the Kafka
>>> Source, then ...
>>> Caused by: java.lang.NoClassDefFoundError: Could not initialize class
>>> org.apache.kafka.common.requests.MetadataRequest$Builder
>>>
>>>
>>> Is there anything I am missing with the Minikube setup? I initially
>>> tried with the steps for the Job Application cluster on the website, but I
>>> was unable to get the /usrlib mounted from the hostpath.
>>>
>>>
>>> So, I created a simple docker image from ...
>>>
>>> apache/flink:1.12.1-java11
>>>
>>>
>>> But I have not had any success getting the same job to run here. Please
>>> let me know if there are well-known steps or issues that I can check.
>>>
>>> Thanks,
>>> Sandeep
>>>
>>
>>
>

Reply via email to