第一节-k8s架构图

部署运行你感兴趣的模型镜像

在这里插入图片描述

  • 一个Deployment,可以由多个不同Node下的Pod组成,每个Pod又由多个Container组成。

  • 区分Deployment是用Labels(key:value),区分Pod是用PodName,区分Container是用ContainerName。

  • 一个Node可以包含多个不同Deployment中的pod,一个Node就是一个系统节点(一般是物理机)

  • Namespace 更大,是用来区分用户或者项目的,一个Namespace就是一个项目,可以包含多个Deployment

  • deployment 是一个逻辑概念,一个deployment可以包含多个pod,一个pod可以包含多个container

  • deployment 可以用来做同一类应用组件的合集,比如一个项目可以包含多个deployment

您可能感兴趣的与本文相关的镜像

ACE-Step

ACE-Step

音乐合成
ACE-Step

ACE-Step是由中国团队阶跃星辰(StepFun)与ACE Studio联手打造的开源音乐生成模型。 它拥有3.5B参数量,支持快速高质量生成、强可控性和易于拓展的特点。 最厉害的是,它可以生成多种语言的歌曲,包括但不限于中文、英文、日文等19种语言

### Kubernetes 微服务项目架构设计概述 Kubernetes(简称 k8s)是一种用于自动化部署、扩展和管理容器化应用程序的开源平台。它为微服务架构提供了强大的支持,能够解决微服务带来的运维复杂性和分布式系统的挑战。 #### 1. Kubernetes 的核心组件及其作用 Kubernetes 提供了一系列的核心组件来管理和编排微服务应用: - **Pod**: Pod 是 Kubernetes 中最小的部署单元,通常包含一个或多个紧密耦合的容器[^1]。 - **Service**: Service 定义了一组逻辑上的 Pods 和访问它们的策略,使得微服务之间的通信更加高效和可靠[^2]。 - **Ingress Controller**: Ingress 控制器提供了一个统一的入口点,可以用来配置外部访问集群内部资源的方式[^3]。 #### 2. 微服务架构中的常见模式与 Kubernetes 集成 以下是几种常见的微服务架构模式以及如何利用 Kubernetes 来实现这些模式: ##### (a) API 网关模式 API 网关作为客户端请求进入微服务系统的单一入口,负责路由、负载均衡和服务发现等功能。在 Kubernetes 上实现 API 网关可以通过以下方式完成: - 使用 NGINX 或 Traefik 等工具作为 Ingress Controller 实现反向代理功能。 - 结合 Istio 或 Linkerd 这样的服务网格技术增强流量管理能力。 ##### (b) 数据库分片模式 为了提高性能并减少单点故障风险,在每个独立的服务实例旁边设置专用数据库副本成为一种流行做法。这种情况下,StatefulSet 资源可以帮助创建具有稳定身份标识符的状态保持型工作负载。 ##### (c) 断路器模式 断路器机制防止级联失败传播至整个系统之外的部分区域。Prometheus 加上 Grafana 可视化监控面板可用于检测异常情况;同时结合 OpenTelemetry 收集追踪数据以便快速定位问题所在位置。 #### 3. 架构案例分析 下面是一个基于 Spring Boot 开发的应用程序迁移到 Kubernetes 平台上的实际例子说明: 假设我们有一个电商网站由订单处理模块(order-service),库存查询模块(stock-checker-svc), 用户认证授权中心(authentication-server) 组成。那么对应的 K8S Manifest 文件结构大致如下所示: ```yaml apiVersion: apps/v1 kind: Deployment metadata: name: order-service-deployment spec: replicas: 3 selector: matchLabels: app: order-service template: metadata: labels: app: order-service spec: containers: - name: order-service-container image: myrepo/order-service:v1 --- apiVersion: v1 kind: Service metadata: name: order-service-cluster-ip spec: type: ClusterIP ports: - port: 8080 targetPort: 8080 selector: app: order-service ``` 上述 YAML 片段定义了一个名为 `order-service` 的 Deployment 对象,并为其分配了三个副本(replica sets)[^1]。另外还设置了相应的 service resource 将端口映射到 pod 内部监听地址之上从而允许其他部分调用此 api 接口。 #### 4. 架构图解 由于无法直接展示图片文件,请参阅官方文档或者第三方博客文章获取更多详细的图表资料链接。一般而言完整的解决方案应该至少包括以下几个层面的信息表示形式:物理拓扑布局(Physical Topology Diagram); 应用依赖关系(Application Dependency Graph); 流量路径描述(Traffic Flow Description). ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值