Deckhouse Platform в kind

Установите kind, если он еще не установлен.

В данном руководстве приводится минимальная конфигурация кластера kind, необходимая для установки Deckhouse. Конфигурация предусматривает установку кластера Kubernetes с одним узлом и проброс в кластер двух портов, необходимых для работы Ingress-контроллера. Вы можете использовать свою конфигурацию кластера в kind, увеличить количество узлов или настроить локальный container registry.

Создайте файл конфигурации кластера kind:

cat <<EOF > kind.cfg
apiVersion: kind.x-k8s.io/v1alpha4
kind: Cluster
nodes:
- role: control-plane
  extraPortMappings:
  - containerPort: 80
    hostPort: 80
    listenAddress: "127.0.0.1"
    protocol: TCP
  - containerPort: 443
    hostPort: 443
    listenAddress: "127.0.0.1"
    protocol: TCP
EOF
cat <<EOF > kind.cfg apiVersion: kind.x-k8s.io/v1alpha4 kind: Cluster nodes: - role: control-plane extraPortMappings: - containerPort: 80 hostPort: 80 listenAddress: "127.0.0.1" protocol: TCP - containerPort: 443 hostPort: 443 listenAddress: "127.0.0.1" protocol: TCP EOF

Перед созданием кластера убедитесь, что у вас не заняты порты 80 и 443.

Создайте кластер kind:

kind create cluster --image "kindest/node:v1.21.12@sha256:6f19412d7d7c4156b3302d4de16168227173f155271be69250893e5c8585cb86" --config kind.cfg
kind create cluster --image "kindest/node:v1.21.12@sha256:6f19412d7d7c4156b3302d4de16168227173f155271be69250893e5c8585cb86" --config kind.cfg

Пример вывода команды создания кластера:

$ kind create cluster --image "kindest/node:v1.21.12@sha256:6f19412d7d7c4156b3302d4de16168227173f155271be69250893e5c8585cb86" --config kind.cfg
Creating cluster "kind" ...
 ✓ Ensuring node image (kindest/node:v1.21.12) 🖼
 ✓ Preparing nodes 📦  
 ✓ Writing configuration 📜 
 ✓ Starting control-plane 🕹️ 
 ✓ Installing CNI 🔌 
 ✓ Installing StorageClass 💾 
Set kubectl context to "kind-kind"
You can now use your cluster with:

kubectl cluster-info --context kind-kind

Have a nice day! 👋