Chapter 6. Supported standards and protocols
Skupper supports the following protocols for your service network:
- TCP - default
- HTTP1
- HTTP2
When exposing or creating a service, you can specify the protocol, for example:
$ skupper expose deployment hello-world-backend --port 8080 --protocol <protocol>
where <protocol>
can be:
- tcp
- http
- http2
When choosing which protocol to specify, note the following:
-
tcp
supports any protocol overlayed on TCP, for example, HTTP1 and HTTP2 work when you specifytcp
. -
If you specify
http
orhttp2
, the IP address reported by a client may not be accessible. All service network traffic is converted to AMQP messages in order to traverse the service network.
TCP is implemented as a single streamed message, whereas HTTP1 and HTTP2 are implemented as request/response message routing.
6.1. CLI options
For a full list of options, see the Skupper Kubernetes CLI reference and Skupper Podman CLI reference documentation.
When you create a site and set logging level to trace
, you can inadvertently log sensitive information from HTTP headers.
$ skupper init --router-logging trace
By default, all skupper
commands apply to the cluster you are logged into and the current namespace. The following skupper
options allow you to override that behavior and apply to all commands:
--namespace <namespace-name>
Apply command to
<namespace-name>
. For example, if you are currently working onfrontend
namespace and want to initialize a site in thebackend
namespace:$ skupper init --namespace backend
--kubeconfig <kubeconfig-path>
-
Path to the kubeconfig file - This allows you run multiple sessions to a cluster from the same client. An alternative is to set the
KUBECONFIG
environment variable. --context <context-name>
- The kubeconfig file can contain defined contexts, and this option allows you to use those contexts.