cloudflow configure
Configures a deployed Cloudflow application.
Examples
$ kubectl cloudflow configure my-app --conf my-config.conf
Configuration files in HOCON format can be passed through with the --conf
flag.
Configuration files are merged by concatenating the files passed with --conf
flags.
The last --conf [file]
argument can override values specified in earlier --conf [file]
arguments.
In the example below, where the same configuration path is used in file1.conf and file2.conf,
the configuration value in file2.conf takes precedence, overriding the value provided by file1.conf:
$ kubectl cloudflow configure swiss-knife --conf file1.conf --conf file2.conf
It is also possible to pass configuration values directly through the command-line as [config-key]=value
pairs separated by
a space. The [config-key] must be an absolute path to the value, exactly how it would be defined in a config file.
Some examples:
$ kubectl cloudflow configure swiss-knife cloudflow.runtimes.spark.config.spark.driver.memoryOverhead=512
$ kubectl cloudflow configure swiss-knife cloudflow.streamlets.spark-process.config-parameters.configurable-message='SPARK-OUTPUT:'
The arguments passed with [config-key]=[value]
pairs take precedence over the files passed through with the --conf flag.
As pointed out in the cloudflow deploy prerequisites, some existing PVC is required to deploy a Flink or a Spark application. Choosing which PVC to use can be also configured through --conf
and this will override the default values mentioned above. Here’s an example:
cloudflow.runtimes.flink.kubernetes.pods.pod {
volumes {
foo {
pvc {
name = cloudflow-another-name
read-only = false
}
}
}
containers.container {
volume-mounts {
foo {
mount-path = "/mnt/flink/storage"
read-only = false
}
}
}
}
This will use then cloudflow-another-name
PVC instead of the default cloudflow-flink
. You may override the default PVC configuration as long as read-only
remains false
and the mount-path
is equal to /mnt/[runtime]/storage
. Where [runtime]
can be flink
or spark
. This configuration can only be applied to runtimes not streamlet individually.
SEE ALSO
-
kubectl cloudflow - Create, manage, deploy, and operate Cloudflow applications.