Here you will learn methods of connecting to VMware Spring Cloud Data Flow for Kubernetes (SCDF for Kubernetes). You can do this using either the built-in SCDF dashboard or the SCDF shell.
Using the SCDF dashboard
You can access the SCDF for Kubernetes dashboard in two ways: using the DNS name configured for the Ingress resource (if you installed one), or using the IP address assigned to the Data Flow server Service resource.
If you installed an ingress resource
You can use the DNS name of the Ingress resource to access the SCDF dashboard.
To access the dashboard:
-
Run the following
kubectl
command to determine the DNS name:$ kubectl get ingress scdf-ingress NAME HOSTS ADDRESS PORTS AGE scdf-ingress data-flow.35.232.203.79.xip.io 35.225.206.207 80 23h
The value shown for
HOSTS
is the DNS name. -
Append
/dashboard
to the DNS name obtained in the previous step. In this example, you can access the dashboard by visiting the following URL in your web browser:http://data-flow.35.232.203.79.xip.io/dashboard
If you did not install an ingress resource
You can use the Data Flow server Service resource to access the SCDF dashboard.
To access the dashboard:
-
Run the following
kubectl
command to determine the IP address assigned to thescdf-server
resource:$ kubectl get service scdf-server NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE scdf-server ClusterIP 10.55.253.237 <none> 80/TCP 23h
The value shown for
CLUSTER-IP
is the IP address. -
If you have not configured the
scdf-server
service to use aLoadBalancer
type resource, skip to step 3.If the
scdf-server
service uses aLoadBalancer
resource, append/dashboard
to the IP address obtained in the previous step. In this example, you can access the dashboard by visiting the following address in your web browser:http://10.55.253.237/dashboard
-
If the
scdf-server
service does not use aLoadBalancer
resource, you can use port forwarding to access the service. Run the followingkubectl
command (this example uses a local port of8080
):$ kubectl port-forward service/scdf-server 8080:80 Forwarding from 127.0.0.1:8080 -> 80 Forwarding from [::1]:8080 -> 80 Handling connection for 8080
You can now access the dashboard by visiting the following address in your web browser:
http://localhost:8080/dashboard
Using the SCDF shell
To run the Spring Cloud Data Flow shell, you must have the following installed on your local machine:
- The Spring Cloud Data Flow shell; download from the Spring Artifact repository (JAR file)
- Java version 8 or later
To download the shell, you can also follow the link on the About page of the SCDF dashboard.
You can start the shell using java -jar
. To list all available options, pass the --help
option.
$ java -jar spring-cloud-dataflow-shell-2.9.2.jar --help
Data Flow Options:
--dataflow.uri=<uri> Address of the Data Flow Server [default: http://localhost:9393].
--dataflow.username=<USER> Username of the Data Flow Server [no default].
--dataflow.password=<PASSWORD> Password of the Data Flow Server [no default].
--dataflow.credentials-provider-command=<COMMAND> Executes an external command which must return an
OAuth Bearer Token (Access Token prefixed with 'Bearer '),
e.g. 'Bearer 12345'), [no default].
...
The shell includes various authentication settings to support different security configurations for the Data Flow server. The following examples assume that the server is not secured and that you can connect to the server given only the server URI.
You can connect the shell to the SCDF for Kubernetes server in two ways: using the DNS name configured for the Ingress resource (if you installed one), or using the IP address assigned to the Data Flow server Service resource.
If you installed an ingress resource
You can use the DNS name of the Ingress resource to connect to the SCDF server.
To connect to the server:
-
Run the following
kubectl
command to determine the DNS name:$ kubectl get ingress scdf-ingress NAME HOSTS ADDRESS PORTS AGE scdf-ingress data-flow.35.232.203.79.xip.io 35.225.206.207 80 23h
The value shown for
HOSTS
is the DNS name. -
Start the shell, passing the
dataflow.uri
option with a value matching the DNS name obtained in the previous step. In this example, you can connect to the server by starting the shell with the following command:$ java -jar spring-cloud-dataflow-shell-2.9.2.jar --dataflow.uri=http://data-flow.35.232.203.79.xip.io
If you did not install an ingress resource
You can use the Data Flow server Service resource to connect to the SCDF server.
To connect to the server:
-
Run the following
kubectl
command to determine the IP address assigned to thescdf-server
resource:$ kubectl get service scdf-server NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE scdf-server ClusterIP 10.55.253.237 <none> 80/TCP 23h
The value shown for
CLUSTER-IP
is the IP address. -
If you have not configured the
scdf-server
service to use aLoadBalancer
type resource, skip to step 3.If the
scdf-server
service uses aLoadBalancer
resource, start the shell and pass thedataflow.uri
option with a value matching the IP address obtained in the previous step. In this example, you can connect to the server by starting the shell with the following command:$ java -jar spring-cloud-dataflow-shell-2.9.2.jar --dataflow.uri=http://10.55.253.237
-
If the
scdf-server
service does not use aLoadBalancer
resource, you can use port forwarding to access the service. Run the followingkubectl
command (this example uses a local port of8080
):$ kubectl port-forward service/scdf-server 8080:80 Forwarding from 127.0.0.1:8080 -> 80 Forwarding from [::1]:8080 -> 80 Handling connection for 8080
You can now connect to the server by starting the shell and passing the
dataflow.uri
option with a value ofhttp://localhost:8080
:$ java -jar spring-cloud-dataflow-shell-2.9.2.jar --dataflow.uri=http://localhost:8080
Run shell commands
After the shell is running, you will see the following command prompt:
dataflow:>
You can now issue any of the available commands. For a guide to using the shell, see the Shell section of the Spring Cloud Data Flow Reference Guide.
Next: Create a data pipeline
For steps to begin building a data pipeline, see Creating a data pipeline with VMware Spring Cloud Data Flow for Kubernetes.
Content feedback and comments