简介上一篇文章讲解了如何使用Azure DevOps持续部署应用到Azure Kubernetes上 。但是部署是否成功?会不会遇到什么问题?项目运行中是否会出现问题?我们该怎么样查看这些问题,并且对问题进行针对性解决?这就是今天要讲的 。
Aks_Core部署流程在讲遇到的问题之前我们可以先看看如何在AKS环境上部署Net Core应用资源 。
1、 先决条件
Aks部署.Net Core项目需要条件:
1、本地安装docker环境(生成docker镜像 , 推送镜像到容器注册表)
2、本地安装Azure CLI(连接Azure 并执行相关命令)
2、 部署流程
a) 本地生成Docker镜像
i. 修改编辑Dockerfile文件(Linux环境和Windows环境生成镜像的文件内容不一样)
ii. 本地运行生成镜像命令
docker build -t <镜像名> .iii. 本地docker部署镜像测试运行
docker run -d –name=<运行名> -p 5001:80 <镜像名>b) 创建资源组
i. 切换环境:
国际版-az cloud set -n AzureCloud 。国内版-az cloud set -n AzureChinaCloudii. 通过cmd登录到Azure:
az login (根据浏览器弹出的页面进行验证)iii. 创建资源组(可以通过页面Azure创建 , 也可通过命令运行:)
az group create --name < 资源组名称 > --location eastusc) 在资源组中创建容器注册表并推送镜像
i. 创建容器注册表
az acr create --resource-group <资源组名称> --name <acrName> --sku Basicii. 获取容器注册表登录服务器
az acr list --resource-group <资源组名称> --query "[].{acrLoginServer:loginServer}" --output tableiii. 通过docker命令标记本地镜像
docker tag 镜像名:版本 <acrLoginServer>/镜像名:版本iv. 登录到容器注册表
az acr login --name <acrName>v. 推送镜像到容器注册表
docker push <acrLoginServer>/<镜像名>:版本vi. 检查镜像是否推送成功
az acr repository list --name <acrName> --output tabled) 创建K8S群集并且连接
i. 创建Kubernetes群集(通过azure页面创建或者通过命令创建:)
az aks create \ --resource-group <资源组名称> \ --name <Kuberbetes群集名称> \ --node-count 2 \ --generate-ssh-keys \ --attach-acr <acrName>ii. 如果使用kubectl命令找不到的话就需要安装kubectl
az aks install-cliiii. 通过azure页面上的Kubernetes链接连接到Kubernetes
iv. 通过获取群集节点命令验证Kubernetes是否连接成功
kubectl get nodese) 创建编辑yaml文件并部署
i. 创建更新yaml文件
ii. 使用kubectl命令创建Kubernetes对象
kubectl appy -f <yaml文件名>iii. 使用kubectl命令监视查看service运行状况
kubectl get service azure-vote-front --watch安装Azure CLI我们需要下载Azure CLI:安装适用于 Windows 的 Azure CLI | Microsoft Learn
然后依次安装就行了 。安装成功在CMD窗口检验是否成功即可 。
推荐阅读
- Azure DevOps Pipelines部署.Net Core 应用到Kubernetes
- kubernetes Tcp流量可视化
- Docker Desktop 可以直接启用Kubernetes 1.25 了
- 企业运维 | MySQL关系型数据库在Docker与Kubernetes容器环境中快速搭建部署主从实践
- 广东GURBAKS品牌怎么样?