...
1# Description
2
3DaemonsetDNS kubernetes manifests to install the daemonsetdns deployment in the `daemonsetdns` namespace.
4
5A `daemonsetdns` service is created allowing all clients to find the IP of a pod in a daemonset on a particular node.
6
7Requests should be made to port 53 of the service at
8
9```
10daemonsetdns.daemonsetdns.svc.cluster.local.
11```
12
13Requests should be of the form
14
15```
16<node name>.<daemonset name>.<namespace>.pod-locator.
17```
18
19Further details can be found in the daemonsetdns Readme at `cmd/sds/daemonsetdns/README.md`
20
21# Manifest updates
22
23The daemonsetdnstest component embeds the base kustomization of these manifests.
24If these manifests are modified you should recreate the generated manifest using
25the command
26
27```bash
28bazel run //pkg/sds/k8s/daemonsetdns/daemonsetdnstest:daemonsetdns_base_manifests
29```
30
31# Environment Variables
32
33## Environment Setup
34
35Create an `.env` file with the following variables:
36
37```dotenv
38# gke, sds, or generic. use "generic" for any K8s cluster that isn't GKE or
39# SDS.
40export CLUSTER_PROVIDER=
41# uuid is necessary for generating a cluster_hash, existing resources should
42# have this in their annotations already but one can be created by using
43# uuidgen
44export CLUSTER_UUID=
45# google cloud project id
46export GCP_PROJECT_ID=
47# defaults to us and east1-b, otherwise needs to be valid GCP value
48export GCP_REGION=
49export GCP_ZONE=
50# set to same value as gcp project ID when developing within a single
51# project.
52export FOREMAN_GCP_PROJECT_ID=
53# enables split scheduling
54export INFRA=true
55# name of the kubeconfig context to use to schedule infra objects;
56# default behavior is to apply all objects to the same K8s context
57# To deploy to local IEN clusters, set the INFRA_CONTEXT to the context name specified in local kubeconfig
58export INFRA_CONTEXT=
59# target namespace for all applied infrastructure resources, including
60# dependencies; the namespace is created if it does not already exist.
61export INFRA_NAMESPACE=
62```
63
64# Applying the Pallet
65
66The following is the example applying daemonsetdns to an sds cluster
67
68```shell
69source ~/.env
70
71lift pack config/pallets/sds/daemonsetdns
72lift apply config/pallets/sds/daemonsetdns
73```
74
75NOTE: For pushing to local registry, add the flag -registry localhost:21700 to the pack and apply commands.
View as plain text