-
Notifications
You must be signed in to change notification settings - Fork 7
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
231ac29
commit 11f5e11
Showing
8 changed files
with
123 additions
and
24 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
# Kuma | ||
|
||
Need to look into those features to enable the Service Mesh things. | ||
|
||
<https://kuma.io/features> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,20 +1,47 @@ | ||
# Kuma Deployments | ||
|
||
```bash | ||
$ helm install --namespace kuma-system --set "controlPlane.mode=zone" kuma kuma/kuma | ||
``` | ||
Follow the documents for installting the kuma control plane | ||
|
||
## Single-zone deployment | ||
```bash | ||
make kuma | ||
``` | ||
|
||
### Deploy a single-zone control plane | ||
This will install the kuma in local with only control plan configuration, there is no global zone config settings. | ||
|
||
Default helm chart will install the single-zone control plane. | ||
## Zone Ingress | ||
|
||
```bash | ||
$ helm install --create-namespace --namespace kuma-system \ | ||
--set "controlPlane.mode=zone" \ | ||
kuma kuma/kuma | ||
- All requests that are sent from one zone to another will be directed to the proper instance by the Zone Ingress. | ||
- Because ZoneIngress uses Service Name Indication (SNI) to route traffic, mTLS is required to do cross zone communication. | ||
|
||
$ make kuma | ||
``` | ||
> **Note:** You shouldn't run zoneEgress when running the CP in global | ||
|
||
|
||
## Zone Egress | ||
|
||
ZoneEgress proxy is used when it is required to isolate outgoing traffic (to services in other zones or external services in the local zone). and you want to achieve isolation of outgoing traffic (to services in other zones or external services in the local zone), you can use ZoneEgress proxy. | ||
|
||
TODO to test for routing the traffic via Egress | ||
|
||
```yaml | ||
echo "apiVersion: kuma.io/v1alpha1 | ||
kind: Mesh | ||
metadata: | ||
name: default | ||
spec: | ||
routing: | ||
zoneEgress: true | ||
mtls: # mTLS is required to use ZoneEgress | ||
[...]" | kubectl apply -f - | ||
``` | ||
### Configure zone proxy authentication | ||
To obtain a configuration from the control plane, a zone proxy (zone ingress / zone egress) must authenticate itself. There are several authentication methods available. | ||
```bash | ||
export ADMIN_TOKEN=$(kubectl get secrets -n kuma-system admin-user-token -ojson | jq -r .data.value | base64 -d) | ||
kumactl config control-planes add --name=kind --headers "authorization=Bearer $ADMIN_TOKEN" --address=http://kuma.example.com --overwrite | ||
``` | ||
|
||
### Mesh Secrets |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
apiVersion: v1 | ||
kind: Namespace | ||
metadata: | ||
name: kuma-demo | ||
labels: | ||
kuma.io/sidecar-injection: enabled | ||
kuma.io/mesh: ranjithka | ||
--- | ||
apiVersion: kuma.io/v1alpha1 | ||
kind: Mesh | ||
metadata: | ||
name: ranjithka | ||
--- | ||
apiVersion: kuma.io/v1alpha1 | ||
kind: Mesh | ||
metadata: | ||
name: ranjithka # change to `default` to apply for default mesh | ||
spec: | ||
mtls: | ||
enabledBackend: ca-1 | ||
backends: | ||
- name: ca-1 | ||
type: builtin | ||
dpCert: | ||
rotation: | ||
expiration: 1d | ||
conf: | ||
caCert: | ||
RSAbits: 2048 | ||
expiration: 10y |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,34 @@ | ||
apiVersion: networking.k8s.io/v1 | ||
kind: Ingress | ||
metadata: | ||
name: kuma | ||
namespace: kuma-system # Added namespace | ||
labels: | ||
app.kubernetes.io/name: kuma | ||
app.kubernetes.io/app: kuma-control-plane | ||
app.kubernetes.io/instance: kuma-control-plane | ||
app.kubernetes.io/managed-by: ranjith-ka | ||
annotations: | ||
nginx.ingress.kubernetes.io/enable-cors: "true" | ||
nginx.ingress.kubernetes.io/enable-rewrite-log: "true" | ||
nginx.ingress.kubernetes.io/force-ssl-redirect: "false" | ||
nginx.ingress.kubernetes.io/http2-push-preload: "true" | ||
nginx.ingress.kubernetes.io/proxy-body-size: 8k | ||
nginx.ingress.kubernetes.io/proxy-buffer-size: 8k | ||
nginx.ingress.kubernetes.io/proxy-buffering: "on" | ||
nginx.ingress.kubernetes.io/proxy-http-version: "1.1" | ||
nginx.ingress.kubernetes.io/proxy-read-timeout: "180" | ||
nginx.ingress.kubernetes.io/proxy-send-timeout: "180" | ||
spec: | ||
ingressClassName: dev-nginx | ||
rules: | ||
- host: "kuma.example.com" | ||
http: | ||
paths: | ||
- path: / | ||
pathType: Prefix | ||
backend: | ||
service: | ||
name: kuma-control-plane | ||
port: | ||
number: 5681 |