Kubernetes 本地設置?
我想知道如何在我的 Ubuntu 20 DPS 上設置 kubernetes 集群我的意思是,我已經安裝了 docker 和 kubeadm 我知道如何進行部署、服務和很少的入口,我使用了一個已經配置好的 kubernetes 集群(aks)
我需要設置我的 dps 以公開一些 Web 應用程序(網站、api、cdn 等)我需要哪些步驟來配置 kubernetes?我如何在特定的子 dns 上公開某個網站(例如 3 級域:trd.mysite.com)
我是否需要安裝一些外掛,如 nginx-controller、metallb 和 flannel?我不明白這些網路的東西,我也對課程/教程感興趣,請幫助我,謝謝!
編輯:這些是我的 yamls,現在我只想在主域 (xxxx.com) 上公開一個 webapp,然後我將添加一個內部 REST api 和另一個將使用其餘 api 並在第三級域上公開的 webapp ( yyy.xxxxx.com) http://www.mediafire.com/file/c7qwouqri441wek/Kube.zip/file
好的,那就看吧。為了能夠成功執行伺服器,您需要:
1. 碼頭工人
**2.**如果您更喜歡使用kubeadm安裝- 您需要以下 Kubernetes 包。我們在這個答案中只討論 kubeadm 方式。請訪問內部文件以獲取其他工具。
否則,您可以使案例如minikube、kubespray和kind。我喜歡 minikube 和善良。
- kind 是一個使用 Docker 容器“節點”執行本地 Kubernetes 集群的工具。kind 主要是為測試 Kubernetes 本身而設計的,但也可以用於本地開發或 CI。
- MiniKube 通常是有人想要開始時發現的第一個 Kubernetes 技術(Kubernetes 官方文件提供了使用 miniKube 部署您的第一個集群的教程)。這是一個安裝在筆記型電腦上的非常簡單的解決方案,專為學習和測試而設計。啟動時,它將部署一個單節點集群(最小的大小)。
您可以在此處閱讀所有工具:
3. CNI - 用於集群內部的正確網路。
有十幾個 CNI 外掛,你應該選擇一些。
最受歡迎的是法蘭絨和印花布。有時(取決於您的需要),您可以安裝Canal。簡而言之 - 您同時安裝 Calico for Network Policies + Flannel 作為網路的正常 CNI。
這是重要的提示!要正確安裝 CNI - 您應該在創建集群之前提前選擇它。那是因為您必須使用正確的
--pod-network-cidr=
標誌來初始化集群。
kubeadm init --pod-network-cidr=10.244.0.0/16
法蘭絨kubeadm init --pod-network-cidr=192.168.0.0/16
為印花布管理對集群中服務的外部訪問的 API 對象,通常是 HTTP。
Ingress 可以提供負載平衡、SSL 終止和基於名稱的虛擬主機。
為了使 Ingress 資源正常工作,集群必須執行一個入口控制器。
最受歡迎的:Nginx Ingress 控制器、Kubernetes 入口控制器(OOB,同樣基於 nginx。但這些是不同的)、Traefik
創建集群的步驟:
- 您可以使用以下優秀文章Single node Kubernetes setup。從它開始 - 它會正確顯示所有步驟。
- 你可以使用我的回答:Kubernetes api server is not started on a single kubeadm cluster。這個答案為您提供瞭如何使用 kubeadm 啟動集群的詳細分步說明。一注。
- 官方文件:使用 kubeadm 創建集群
您應該 Untaint master 以便您可以在其上執行 pod。沒有這個,你將無法在你的 master 上執行 pod。
kubectl taint nodes --all node-role.kubernetes.io/master-