<p>Name: spring-cloud-dataflow-server
Version: 2.2.0.RELEASE</p>

<p>Deployed a simple stream http|log and while deploy from dashboard set following for the 'http' app </p>

<p>spring.cloud.deployer.kubernetes.createLoadBalancer=true
app.http.spring.cloud.deployer.kubernetes.createLoadBalancer=true</p>

<p>but still don't get External IP automatically. Any help appreciated.</p>

<p><em>Note:</em> If manually change the type from ClusterIP to LoadBalancer in Http Service directly from kubernetes dashboard it works</p>

<p>When deploying a stream with deployer properties, you'd have to use the <code>deployer</code> prefix.</p>

<p>For instance, consider the following stream.</p>

<blockquote>
  <p>stream create task-stream --definition "http | task-launcher-dataflow --spring.cloud.dataflow.client.server-uri=<a href="http://192.168.99.139:30578" rel="nofollow noreferrer">http://192.168.99.139:30578</a> --platform-name=fooz"</p>
</blockquote>

<p>When deploying it, you can supply the deployer property to create a load-balancer for a particular app, which in this case is the <code>http-source</code> application.</p>

<blockquote>
  <p>stream deploy task-stream --properties "deployer.http.kubernetes.createLoadBalancer=true"</p>
</blockquote>

<p>When deploying the same stream from the Dashboard, though, you'd have to supply it in the freeform textbox in the deployment page.</p>

<pre><code>deployer.http.kubernetes.createLoadBalancer=true
</code></pre>
