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.
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.
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
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 the scdf-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 a LoadBalancer
type resource, skip to step 3.
If the scdf-server
service uses a LoadBalancer
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 a LoadBalancer
resource, you can use port forwarding to access the service. Run the following kubectl
command (this example uses a local port of 8080
):
$ 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
To run the Spring Cloud Data Flow shell, you must have the following installed on your local machine:
Note 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.
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
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 the scdf-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 a LoadBalancer
type resource, skip to step 3.
If the scdf-server
service uses a LoadBalancer
resource, start the shell and pass the dataflow.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 a LoadBalancer
resource, you can use port forwarding to access the service. Run the following kubectl
command (this example uses a local port of 8080
):
$ 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 of http://localhost:8080
:
$ java -jar spring-cloud-dataflow-shell-2.9.2.jar --dataflow.uri=http://localhost:8080
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.
For steps to begin building a data pipeline, see Creating a data pipeline with VMware Spring Cloud® Data Flow for Kubernetes.