Azure部署程序


文章目录

  • 项目地址
  • 一、程序部署微服务
    • [1.1 App Services](#1.1 App Services)
    • [1.2 Azure Container Registry](#1.2 Azure Container Registry)
      • [1. 创建Registry](#1. 创建Registry)
      • [2. 上传image](#2. 上传image)
    • [1.3 K8s](#1.3 K8s)
  • 二、程序部署
    • [2.1 概念](#2.1 概念)
      • [1. Namespace](#1. Namespace)
      • [2. pod](#2. pod)
      • [3. 创建Deployment](#3. 创建Deployment)

项目地址

  • 教程作者:
  • 教程地址:
复制代码
  • 代码仓库地址:
复制代码
  • 所用到的框架和插件:

    dbt
    airflow

一、程序部署微服务

  1. App Services(单体架构可自动伸缩)
  2. Container Apps
  3. Kubernetes services

1.1 App Services

1.2 Azure Container Registry

1. 创建Registry

2. 上传image

  1. 查看当前registry的所有images

    az acr list --output table

  2. 登录ACR

    az acr login --name harshacontainerregistry

  3. 创建docker image 指定docker file的路径,并创建到当前目录

    docker build -t demowebapp:latest -f ./DemoWebaaplication/Dockerfile .

  4. 给image添加tag

    docker tag demowebapp:latest harshacontinerregistry.azurecr.io/demowebapp:latest

  5. 由于已经登录过了ACR所以直接push image

    dokcer push harshacontainerregistry.azurecr.io/demowebapp:latest

  6. 上传成功可以看到

1.3 K8s

  • 流程

1.创建k8s

  1. 创建resource group
  2. 创建k8s所需的服务
  3. 创建aks
  4. 获取crendentials用于本地登录
  5. 绑定container registry到k8s项目,这样他就会自动拉去images

2. 常用命令

  1. 获取当前所有的node
cs 复制代码
kubectl get nodes
  1. 获取namespace
cs 复制代码
kubectl get namespaces

二、程序部署

2.1 概念

1. Namespace

  • 同一个集群重的资源划分为项目隔离的组,同一命名空间的资源名称要唯一,它用来隔离资源而不是网络
  • 初始化会生成默认的4个namespace:①default;②kube-node-lease;③kube-public;③kube-system
  1. 使用yaml文件创建namespace,创建一个my-namespace.yaml文件

    apiVersion: V1
    king: Namespace
    metadata:
    name: test-namespace

  2. 运行

    kubectl apply -f my-namespace.yaml

2. pod

  • pod是k8s的最小单元,一个podl里可以有多个container或者一个,一个node下可以有多个pod
  • 同一个Pod内container共享同一个ip地址和端口,他们之间可以直接通过localhost通讯,也可以直接访问共享的volumes

3. 创建Deployment

  • 用于管理应用程序副本,主要功能有:自动修复/滚动升级

    apiVersion: apps/v1
    kind: Deployment
    metadata:
    # 部署名字
    name: test-k8s
    spec:
    replicas: 2
    # 用来查找关联的 Pod,所有标签都匹配才行
    selector:
    matchLabels:
    app: test-k8s
    # 定义 Pod 相关数据
    template:
    metadata:
    labels:
    app: test-k8s
    spec:
    # 定义容器,可以多个
    containers:
    - name: test-k8s # 容器名字
    image: ccr.ccs.tencentyun.com/k8s-tutorial/test-k8s:v1 # 镜像

相关推荐
Unity粉末状在校生9 小时前
清除microsoft edge账户信息
前端·microsoft·edge
专注VB编程开发20年12 小时前
Windows11 ARM系统直接运行X86 exe,高通CPU同时运行安卓APP,任意软件
microsoft
Meme Buoy16 小时前
11.2统一建模语言UML-事务关系图
microsoft·uml
ZC跨境爬虫16 小时前
海南大学交友平台登录页开发实战day4(解决python传输并读取登录信息的问题)
开发语言·前端·python·flask·html
code小生18 小时前
微软 Microsoft Edge 浏览器插件开发者注册指南
前端·microsoft·edge·edge浏览器·浏览器插件开发者
帐篷Li18 小时前
【Vibe Coding】一口气搞懂AI黑话:Vibe Coding、Agent、提示词、MCP、Skills全解析
人工智能·microsoft
拓端研究室18 小时前
2026中国医疗健康行业趋势报告:投融资回暖、AI渗透与产业链提价|附100+份报告PDF、数据、可视化模板汇总下载
人工智能·物联网·microsoft
Eiceblue19 小时前
Python 如何实现 Excel 数据分列?一列拆分为多列
python·microsoft·excel
q_354888515319 小时前
计算机毕业设计:Python智慧水文监测与流量预测系统 Flask框架 多元线性回归 数据分析 可视化 水网 流量预测 水位预测(建议收藏)✅
大数据·python·信息可视化·数据挖掘·flask·线性回归·课程设计
yu859395819 小时前
WinForm 嵌入 WordExcel 实现方案
开发语言·microsoft·c#