32 lines
1.2 KiB
Bash
Executable File
32 lines
1.2 KiB
Bash
Executable File
#!/bin/bash
|
|
# set -x
|
|
|
|
FLINK_VERSION=$FLINK_VERSION
|
|
occlum_glibc=/opt/occlum/glibc/lib/
|
|
init_instance() {
|
|
# Remove older instance
|
|
rm -rf flink && mkdir flink
|
|
cd flink
|
|
# Init Occlum instance
|
|
occlum init
|
|
new_json="$(jq '.resource_limits.user_space_size = "7000MB" |
|
|
.resource_limits.kernel_space_heap_size="64MB" |
|
|
.resource_limits.max_num_of_threads = 72 |
|
|
.process.default_heap_size = "128MB" |
|
|
.entry_points = [ "/usr/lib/jvm/java-11-openjdk-amd64/bin" ] |
|
|
.env.default = [ "LD_LIBRARY_PATH=/usr/lib/jvm/java-11-openjdk-amd64/lib/server:/usr/lib/jvm/java-11-openjdk-amd64/lib:/usr/lib/jvm/java-11-openjdk-amd64/../lib:/lib:/opt/occlum/glibc/lib/", "OMP_NUM_THREADS=1", "KMP_AFFINITY=verbose,granularity=fine,compact,1,0", "KMP_BLOCKTIME=20" ]' Occlum.json)" && \
|
|
echo "${new_json}" > Occlum.json
|
|
}
|
|
|
|
build_flink() {
|
|
# Copy JVM and class file into Occlum instance and build
|
|
rm -rf image
|
|
copy_bom -f ../cluster_serving.yaml --root image --include-dir /opt/occlum/etc/template
|
|
# build occlum
|
|
occlum build
|
|
}
|
|
|
|
#Build the flink occlum instance
|
|
init_instance
|
|
build_flink
|