| ################################################################################ |
| # Licensed to the Apache Software Foundation (ASF) under one |
| # or more contributor license agreements. See the NOTICE file |
| # distributed with this work for additional information |
| # regarding copyright ownership. The ASF licenses this file |
| # to you under the Apache License, Version 2.0 (the |
| # "License"); you may not use this file except in compliance |
| # with the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| ################################################################################ |
| |
| apiVersion: flink.apache.org/v1beta1 |
| kind: FlinkDeployment |
| metadata: |
| name: pod-template-example |
| spec: |
| image: flink:1.15 |
| flinkVersion: v1_15 |
| flinkConfiguration: |
| taskmanager.numberOfTaskSlots: "2" |
| serviceAccount: flink |
| podTemplate: |
| apiVersion: v1 |
| kind: Pod |
| metadata: |
| name: pod-template |
| spec: |
| containers: |
| # Do not change the main container name |
| - name: flink-main-container |
| volumeMounts: |
| - mountPath: /opt/flink/log |
| name: flink-logs |
| - mountPath: /opt/flink/downloads |
| name: downloads |
| # Sample sidecar container for log forwarding |
| - name: fluentbit |
| image: fluent/fluent-bit:1.9.6-debug |
| command: [ 'sh','-c','/fluent-bit/bin/fluent-bit -i tail -p path=/flink-logs/*.log -p multiline.parser=java -o stdout' ] |
| volumeMounts: |
| - mountPath: /flink-logs |
| name: flink-logs |
| volumes: |
| - name: flink-logs |
| emptyDir: { } |
| - name: downloads |
| emptyDir: { } |
| jobManager: |
| resource: |
| memory: "2048m" |
| cpu: 1 |
| podTemplate: |
| apiVersion: v1 |
| kind: Pod |
| metadata: |
| name: task-manager-pod-template |
| spec: |
| initContainers: |
| # Sample init container for fetching remote artifacts |
| - name: busybox |
| image: busybox:latest |
| volumeMounts: |
| - mountPath: /opt/flink/downloads |
| name: downloads |
| command: |
| - /bin/sh |
| - -c |
| - "wget -O /opt/flink/downloads/flink-examples-streaming.jar \ |
| https://repo1.maven.org/maven2/org/apache/flink/flink-examples-streaming_2.12/1.15.2/flink-examples-streaming_2.12-1.15.2.jar" |
| taskManager: |
| resource: |
| memory: "2048m" |
| cpu: 1 |
| job: |
| jarURI: local:///opt/flink/downloads/flink-examples-streaming.jar |
| entryClass: org.apache.flink.streaming.examples.statemachine.StateMachineExample |
| parallelism: 2 |