2017-06-14 5 views
0

documentationによると、deployer.time.memoryプロパティを持つアプリケーションの-Xmxを設定できるはずです。Kubernetesで動作するSpring CDFアプリケーション用に-Xmxを設定するには?

私は、次のストリーム定義作成:

dataflow:>stream create --name ticktock --definition "time | log" 

をそして、私はいくつかの方法で私のKubernetes CDF上でそれを展開しようとしました:

dataflow:>stream deploy --name ticktock --properties "deployer.time.memory=2048m" 

dataflow:>stream deploy --name ticktock --properties "deployer.time.local.memory=2048m" 

dataflow:>stream deploy --name ticktock --properties "deployer.time.local.javaOpts=2048m" 

それぞれ展開した後、私は次のコマンドを実行してきました:

# ps aux | grep time | grep -i xmx 
# 

# docker ps 
CONTAINER ID  IMAGE            COMMAND     CREATED    STATUS    PORTS    NAMES 
52a31b764112  springcloudstream/time-source-rabbit:1.2.0.RELEASE "java -jar /maven/tim" 7 minutes ago  Up 7 minutes       k8s_ticktock-time.a4ab30e_ticktock-time-kqckg_default_53b3e059-5049-11e7-a0d4-000c29df937a_3cc76216 

なぜ-Xmxがに設定されていないのですかアプリ?

答えて

0

上記のプロパティは、kubernetesデプロイヤーのプロパティではなく、localデプロイヤーのプロパティーです。 Kubernetesの展開プロパティについては、http://docs.spring.io/spring-cloud-dataflow-server-kubernetes/docs/current-SNAPSHOT/reference/htmlsingle/

+0

私は最初はそう思っていましたが、その中に-Xmxを設定する章は見つかりませんでした。それはそれを設定することができないことを意味しますか? – aturkovic

+0

アプリのプロパティを渡すためのオプションがいくつかあります。これは 'spring.cloud.deployer.kubernetes.entryPointStyle'によって制御され、' exec'、 'shell'、または' boot'をデフォルトとして 'exec'のオプションとして受け取ります。これがグローバルなデプロイヤー・プロパティーに設定されている場合は、 'deployer.time.memory'が考慮されなければなりません。また、すべてのアプリケーションのメモリをオーバーライドしようとする場合は、 'spring.cloud.deployer.kubernetes.memory'をグローバルプロパティとして使用することもできます。 –

+0

すべてのアプリケーションでkubernetesのメモリ制限を2 GiBに設定しました。私はドッカーのJavaが本当にうまく動作しないので、アプリからアプリに-Xmxを設定したいと思います。だから私はそれをグローバルに設定したくありません。 'spring.cloud.deployer.kubernetes.entryPointStyle'はデフォルトですが、私の質問から' deployer.time.memory'を渡したが、javaプロセスに渡された-Xmxはないことがわかります。 – aturkovic

関連する問題