找人做網(wǎng)站價格2345網(wǎng)址大全設主頁
文章目錄
- 部署
- 1. Kubernetes是什么
- 2. Kubernetes的優(yōu)勢
- 3. 環(huán)境搭建
- 4. 應用部署
部署
1. Kubernetes是什么
- Kubernetes是一個用于自動部署、擴展和管理容器化應用程序的開源系統(tǒng)
2. Kubernetes的優(yōu)勢
- 自動化容器部署
- 資源管理與容器調度
- 服務注冊發(fā)現(xiàn)與負載均衡
- 內置配置與秘鑰管理
- 豐富的社區(qū)組件
- 極強的可擴展性
3. 環(huán)境搭建
- 安裝Docker Desktop
- 安裝Kubernetes
- 安裝Helm
- 部署基礎設施
Docker Desktop內置了Kubernetes,勾選并確定即可啟用
Helm是在Kubernetes中部署應用的包管理,可以將應用像Nuget包一樣打包,然后將部署文件打包成Helm目錄,使用Helm命令去部署應用程序,這樣可以版本化管理部署腳本
安裝Helm之前需要安裝Chocolatey,官方安裝腳本如下:
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
安裝Helm,安裝腳本
//Use Chocolatey on Windows //注:安裝的時候需要保證網(wǎng)絡能夠訪問googleapis這個域名 //本行命令需要需要管理員身份 choco install kubernetes-helm//Change helm repo helm repo add stable http://mirror.azure.cn/kubernetes/charts///Update charts repo helm repo update
安裝Ingress,dashboard
kubectl apply -f mandatory.yaml kubectl apply -f ingress-port.yaml kubectl apply -f kubernetes-dashboard.yaml kubectl apply -f kubernetes-dashboard-ingress.yaml $TOKEN=((kubectl -n kube-system describe secret default | Select-String "token:") -split " +")[1] kubectl config set-credentials docker-for-desktop --token="${TOKEN}" echo $TOKEN "Any key to exit" ; Read-Host | Out-Null ; Exit
安裝Prometheus,alertManager和Grafana到集群腳本
helm repo add stable http://mirror.azure.cn/kubernetes/charts/ helm repo update helm upgrade prometheus-operator stable/prometheus-operator --version 8.10.0 --values .\prometheus-operator\values.yaml --namespace kube-system
4. 應用部署
- 準備Dockerfile
- 構建鏡像
- 準備部署
- 部署應用
應用入口基于Ingress,其內置實際是Nginx,實現(xiàn)了網(wǎng)絡復雜均衡并且支持一定的路由策略;
Prometheus是一個持續(xù)數(shù)據(jù)庫,作用是收集監(jiān)控的指標數(shù)據(jù);
AlertManager是與Prometheus結合,檢測指標是否有異常,當指標異常是負責發(fā)起告警
Granfana則是將AlertManager和Prometheus展示出來,最強大的能力就是制作監(jiān)控看板
注意點
- 使用Nuget.config配置編譯時的私有包倉庫
- 時區(qū)設置