网站常见问题如何创建自己公司的网站

张小明 2026/1/2 8:09:22
网站常见问题,如何创建自己公司的网站,石景山区公司网站建设,建设网点是什么意思一、概述 Kubernetes 简称 k8s#xff0c;是支持云原生部署的一个平台#xff0c;起源于谷歌。谷歌早在十几年之前就对其应用#xff0c;通过容器方式进行部署。 k8s 本质上就是用来简化微服务的开发和部署的#xff0c;关注点包括自愈和自动伸缩、调度和发布、调用链监控…一、概述Kubernetes 简称 k8s是支持云原生部署的一个平台起源于谷歌。谷歌早在十几年之前就对其应用通过容器方式进行部署。k8s 本质上就是用来简化微服务的开发和部署的关注点包括自愈和自动伸缩、调度和发布、调用链监控、配置管理、Metrics 监控、日志监控、弹性和容错、API 管理、服务安全等k8s 将这些微服务的公共关注点以组件形式封装打包到 k8s 这个大平台中让开发人员在开发微服务时专注于业务逻辑的实现而不需要去特别关心微服务底层的这些公共关注点大大简化了微服务应用的开发和部署提高了开发效率。官网https://kubernetes.ioGitHubhttps://github.com/kubernetes/kubernetesK8S的由来K8S由google的Borg系统(博格系统google内部使用的大规模容器编排工具)作为原型后经GO语言延用Borg的思路重写并捐献给CNCF基金会开源。云原生基金会CNCF于2015年12月成立隶属于Linux基金会。CNCF孵化的第一个项目就是Kubernetes随着容器的广泛使用Kubernetes已经成为容器编排工具的事实标准。K8S的功能跨主机编排容器。更充分地利用硬件资源来最大化地满足企业应用的需求。控制与自动化应用的部署与升级。为有状态的应用程序挂载和添加存储器。线上扩展或缩减容器化应用程序与它们的资源。声明式的容器管理保证所部署的应用按照我们部署的方式运作。通过自动布局、自动重启、自动复制、自动伸缩实现应用的状态检查与自我修复。为多个容器提供服务发现和负载均衡使得用户无需考虑容器IP问题。K8S解决的问题K8S 解决了裸跑 Docker 的若干痛点单机使用无法有效集群随着容器数量的上升管理成本攀升没有有效的容灾、自愈机制没有预设编排模板无法实现快速、大规模容器调度没有统一的配置管理中心工具没有容器生命周期的管理工具没有图形化运维管理工具K8S 提供了容器编排资源调度弹性伸缩部署管理服务发现等一系列功能。K8S的特性弹性伸缩使用命令、UI 或者基于 CPU 使用情况自动快速扩容和缩容应用程序实例保证应用业务高峰并发时的高可用性业务低峰时回收资源以最小成本运行服务。自我修复在节点故障时重新启动失败的容器替换和重新部署保证预期的副本数量杀死健康检查失败的容器并且在未准备好之前不会处理客户端请求确保线上服务不中断。自动发布默认滚动发布模式和回滚K8S 采用滚动更新策略更新应用一次更新一个 Pod而不是同时删除所有 Pod如果更新过程中出现问题将回滚更改确保升级不影响业务。集中化配置管理和密钥管理管理机密数据和应用程序配置而不需要把敏感数据暴露在镜像里提高敏感数据安全性。并可以将一些常用的配置存储在 K8S 中方便应用程序使用。存储编排支持外挂存储并对外挂存储资源进行编排挂载外部存储系统无论是来自本地存储公有云如 AWS还是网络存储如 NFS、GlusterFS、Ceph都作为集群资源的一部分使用极大提高存储使用灵活性。任务批处理运行提供一次性任务定时任务满足批量数据处理和分析的场景。二、K8S架构与组件K8S架构k8s 总体架构采用了经典的 maste/slave 架构模式分 master 节点和 worker 节点节点可以是虚拟机也可以是物理机。K8S组件master 节点组件Kube-apiserver用于暴露 Kubernetes API任何资源请求或调用操作都是通过 kube-apiserver 提供的接口进行。以 HTTPRestful API 提供接口服务所有对象资源的增删改查和监听操作都交给 API Server 处理后再提交给 Etcd 存储。可以理解成 API Server 是 K8S 的请求入口服务。API Server 负责接收 K8S 所有请求来自 UI 界面或者 CLI命令行工具 然后根据用户的具体请求去通知其他组件干活。可以说 API Server 是 K8S 集群架构的大脑。Kube-controller-manager运行管理控制器是 K8S 集群中处理常规任务的后台线程是 K8S 集群里所有资源对象的自动化控制中心。在 K8S 集群中一个资源对应一个控制器而 Controller manager 就是负责管理这些控制器的。由一系列控制器组成通过 API Server 监控整个集群的状态并确保集群处于预期的工作状态比如当某个 Node意外宕机时Controller Manager 会及时发现并执行自动化修复流程确保集群始终处于预期的工作状态。控制器类型作用Node Controller节点控制器负责在节点出现故障时发现和响应。Replication Controller副本控制器负责保证集群中一个 RC资源对象 Replication Controller所关联的 Pod 副本数始终保持预设值。可以理解成确保集群中有且仅有 N 个 Pod 实例N 是 RC 中定义的 Pod 副本数量。EndpointsController端点控制器填充端点对象即连接 Services 和 Pods负责监听 Service 和对应的 Pod副本的变化。 可以理解端点是一个服务暴露出来的访问点如果需要访问一个服务则必须知道它的 endpoint。Service Account Token Controllers服务帐户和令牌控制器为新的命名空间创建默认帐户和 API 访问令牌。ResourceQuota Controller资源配额控制器确保指定的资源对象在任何时候都不会超量占用系统物理资源。Namespace Controller命名空间控制器管理 namespace 的生命周期。Service Controller服务控制器属于 K8S 集群与外部的云平台之间的一个接口控制器。Kube-scheduler是负责资源调度的进程根据调度算法为新创建的 Pod 选择一个合适的 Node 节点。可以理解成 K8S 所有 Node 节点的调度器。当用户要部署服务时Scheduler 会根据调度算法选择最合适的 Node 节点来部署 Pod。预选策略predicate优选策略priorities好的我们来详细解释 Kubernetes 调度器中关于节点调度的两个核心阶段预选Predicate和优选Priorities。简单来说这是一个“过滤-打分”的两阶段决策过程预选 (Predicate)过滤掉所有不满足Pod 基本运行需求的节点。这是一个“是或否”的布尔判断。优选 (Priorities)在通过预选的节点中根据一系列策略给每个节点打分并选择得分最高的节点。1. 预选策略 (Predicate)预选策略是一组硬性条件用于初步筛选节点。如果任何一个预选策略检查失败该节点就会被立即排除没有资格运行当前 Pod。这个过程是并行的。核心算法/策略包括但不限于策略名称功能描述PodFitsResources检查节点剩余的 CPU 和内存资源是否满足 Pod 的requests配置。这是最基础的资源检查。PodFitsHostPorts检查 Pod 声明的hostPort在节点上是否已经被占用。HostName检查节点名称是否匹配 Pod 配置中的spec.nodeName通常由用户直接指定跳过调度。MatchNodeSelector检查节点的标签 (labels) 是否满足 Pod 配置的nodeSelector或nodeAffinity节点亲和性的要求。NoVolumeZoneConflict在集群跨多个故障域如 AWS 的 Availability Zone时检查 Pod 请求的持久卷 (PV) 是否与节点在同一区域避免跨域挂卷。CheckNodeMemoryPressure检查节点是否存在内存压力。如果存在则不会将新的 Pod 调度到该节点除非 Pod 有特定容忍设置。CheckNodePIDPressure检查节点上的进程 ID (PID) 资源是否不足。CheckNodeDiskPressure检查节点是否存在磁盘空间压力例如根分区可用空间不足。CheckNodeCondition检查节点状态是否正常如Ready、OutOfDisk、NetworkUnavailable等。PodToleratesNodeTaints检查 Pod 的tolerations容忍是否能够容忍匹配节点的taints污点。这是实现污点与容忍机制的核心。工作流程调度器会遍历所有节点对每个节点并行执行所有配置的预选策略。只有通过所有策略的节点才会被加入到“合格节点”列表进入下一阶段优选。2. 优选策略 (Priorities)优选策略用于对通过预选的节点进行排序。每个策略都会给节点计算一个分数通常为 0-10 分 scheduler 会将所有策略的分数按权重加权求和得到节点的最终得分并选择得分最高的节点。如果有多个节点得分相同则随机选择一个。核心算法/策略包括但不限于策略名称功能描述目标LeastRequested得分 ((节点总容量 - Pod请求量 -节点已分配量) / 节点总容量) * 10优先选择资源空闲率更高的节点使集群负载更均衡。BalancedResourceAllocation计算 CPU 和内存使用率的差值差值越小得分越高。优先选择 CPU 和内存使用率更均衡的节点避免一个资源耗尽而另一个资源剩余很多。ImageLocality根据节点上是否已存在 Pod 所需的容器镜像以及镜像的大小来评分。优先选择已有所需镜像的节点减少拉取镜像的时间。NodeAffinity根据preferredDuringSchedulingIgnoredDuringExecution偏好规则进行评分。匹配的表达式越多得分越高。实现Pod 对节点的软性偏好。TaintToleration根据 Pod 对节点污点的容忍程度进行评分。需要容忍的污点越多得分越低。优先选择需要容忍的污点更少的节点。InterPodAffinity根据 Pod 间亲和性 (podAffinity/podAntiAffinity) 的preferred规则进行评分。实现Pod 之间的软性亲和或反亲和。SelectorSpread尽量将属于同一个 Service、StatefulSet 或 ReplicaSet 的 Pod分散到不同的节点、机架或可用区上运行。提高应用的高可用性避免单点故障。工作流程对每个通过预选的节点遍历所有优选策略。每个策略为该节点打一个分score。每个策略都有一个权重weight最终得分是score * weight的加权和。选择总分最高的节点。如果多个节点分数相同则随机选择。总结与类比你可以把这个过程想象成“招聘过程”预选 (Predicate)就像简历筛选。硬性条件“本科以上学历”、“5年以上工作经验”、“必须掌握Go语言”。不符合任何一条的候选人直接淘汰不会进入面试。优选 (Priorities)就像面试打分。面试官们不同策略从不同维度技术能力、沟通能力、文化契合度给候选人打分。每个维度的权重可能不同例如技术能力权重为 2沟通能力权重为 1。最后将加权分相加选择总分最高的候选人。Kubernetes 调度器通过这个强大、灵活且可扩展的两阶段模型能够智能地做出最合适的调度决策满足复杂多样的部署需求。你也可以编写自己的调度器扩展Scheduler Framework来添加自定义的预选和优选策略。etcdK8S 的存储服务。etcd 是分布式键值存储系统存储了 K8S 的关键配置和用户配置K8S 中仅 API Server 才具备读写权限其他组件必须通过 API Server 的接口才能读写数据。node节点组件在 Kubernetes 集群中在每个 Node又称 Worker Node上都会启动一个 kubelet 服务进程。该进程用于处理 Master 下发到本节点的任务管理 Pod 及 Pod 中的容器。每个 kubelet 进程都会在 API Server 上注册节点自身的信息定期向 Master 汇报节点资源的使用情况并通过 cAdvisor 监控容器和节点资源。KubeletNode 节点的监视器以及与 Master 节点的通讯器。Kubelet 是 Master 节点安插在 Node 节点上的“眼线”它会定时向 API Server 汇报自己 Node 节点上运行的服务的状态并接受来自 Master 节点的指示采取调整措施。从 Master 节点获取自己节点上 Pod 的期望状态比如运行什么容器、运行的副本数量、网络或者存储如何配置等 直接跟容器引擎交互实现容器的生命周期管理如果自己节点上 Pod 的状态与期望状态不一致则调用对应的容器平台接口即 docker 的接口达到这个状态。管理镜像和容器的清理工作保证节点上镜像不会占满磁盘空间退出的容器不会占用太多资源。Kube-Proxy在每个 Node 节点上实现 Pod 网络代理是 Kubernetes Service 资源的载体负责维护网络规则和四层负载均衡工作。 负责写入规则至iptables、ipvs实现服务映射访问的。Kube-Proxy 本身不是直接给 Pod 提供网络Pod 的网络是由 Kubelet 提供的Kube-Proxy 实际上维护的是虚拟的 Pod 集群网络。Kube-apiserver 通过监控 Kube-Proxy 进行对 Kubernetes Service 的更新和端点的维护。在 K8S 集群中微服务的负载均衡是由 Kube-proxy 实现的。Kube-proxy 是 K8S 集群内部的负载均衡器。它是一个分布式代理服务器在 K8S 的每个节点上都会运行一个 Kube-proxy 组件。Controller Runtime容器引擎如docker、containerd运行容器负责本机的容器创建和管理工作。当 kubernetes 把 pod 调度到节点上节点上的 kubelet会指示 docker 启动特定的容器。接着kubelet 会通过 docker 持续地收集容器的信息 然后提交到主节点上。docker 会如往常一样拉取容器镜像、启动或停止容器。不同点仅仅在于这是由自动化系统控制而非管理员在每个节点上手动操作的。Podk8s 中特有的一个概念可以理解为对容器的包装是 k8s 的基本调度单位一个 Pod 代表集群上正在运行的一个进程实际的容器是运行在 Pod 中的 可以把 Pod 理解成豌豆荚而同一 Pod 内的每个容器是一颗颗豌豆。一个节点可以启动一个或多个 Pod。生产环境中一般都是单个容器或者具有强关联互补的多个容器组成一个 Pod。三、K8S核心概念概念作用cluster集群Cluster指的是由Kubernetes管理的一组节点和资源池。 由Master和多个Worker节点组成Master用于集群管理和控制而Worker节点用于运行应用程序和Pod。提供了一种可扩展的、弹性的平台用于分布式应用程序和容器的部署和管理。node节点是集群中的工作节点用于运行Pod和容器。 是物理或虚拟机器具有足够的资源CPU、内存、存储来运行容器化的应用。Kubernetes会自动将Pod调度到可用的节点上以实现负载均衡和高可用性。Container容器 容器是一种轻量级的虚拟化技术用于隔离和运行应用程序及其依赖项。将应用程序与其运行时环境进行隔离并提供了一个独立的运行空间使得应用程序可以在不同的环境中移植和部署。Namespace命名空间 Namespace用于在Kubernetes集群中划分虚拟的资源隔离区域。 可用于组织和管理资源以及为不同的团队、项目或环境提供逻辑分离。 在一个集群中可以有多个命名空间每个命名空间都有自己的一组资源和访问策略。Pod容器组Kubernetes基本调度单位可以包含一个或多个容器。这些容器共享相同的网络和存储资源并运行在同一主机上。 提供了一个隔离的运行环境为容器提供了共享的IP地址和端口空间。 通常Pod用于运行关联的容器例如共享相同的资源和上下文的应用程序。Service服务 Service定义了一组Pod的稳定网络终点通过标签选择器与这些Pod进行关联。充当入口和负载均衡器封装了一组Pod并提供一个持久的访问地址Cluster IP或Node IP。 还支持内部服务发现和跨集群通信。ReplicaSet副本集ReplicaSet用于定义Pod的副本数量和在集群中的运行策略确保指定的Pod副本数始终运行并根据需要进行自动扩展或收缩。当Pod由于故障或节点故障而终止时ReplicaSet会自动重新启动新的Pod副本。Deployment部署Deployment是一种用于声明化管理Pod和ReplicaSet的资源对象。可以定义Pod的期望状态自动创建和更新ReplicaSet并实现滚动升级和回滚策略以确保无缝的应用程序更新。ConfigMap配置映射ConfigMap是一种存储配置数据的资源对象用于将配置参数传递给应用程序。可以存储环境变量、配置文件、命令行参数等。 可以与Pod或容器相关联并在容器启动时注入相关的配置信息。Secrets密钥用于安全地存储和管理敏感信息如密码、凭证等。 -Kuberentes中的Secret是一种资源对象用于存储和传递加密的数据。 -密钥可以被挂载到容器中用于应用程序的配置文件或认证凭证。DaemonSetDaemonSet是Kubernetes中的一个重要概念提供了一种简单且可靠的方式来在集群的所有节点上运行相同的Pod适用于许多系统级任务和后台进程的部署场景。 1.每个节点一个Pod副本DaemonSet会在集群的每个节点上启动一个Pod副本以确保每个节点都有该Pod的运行实例。 2. 系统级任务和守护进程DaemonSet通常用于运行系统级任务和守护进程例如日志收集器、监控代理和网络代理等。这些任务通常需要在每个节点上运行并且要与节点的生命周期同步。 3. 自动扩缩容当有新节点加入集群或某个节点从集群中移除时DaemonSet会自动检测节点的状态变化并相应地启动或终止Pod副本。 4. 节点亲和性规则可以通过节点亲和性规则来选择在哪些节点上运行DaemonSet的Pod。这允许你将特定的任务或服务与特定类型的节点关联起来。 5. 资源限制和调度约束可为DaemonSet中的Pod指定资源限制和调度约束以确保它们在节点上均匀分布并满足资源需求。四、Kubetnetes 涉及的端口角色协议方向端口范围组件使用者masterTCP入站6443kube-apiserver所有TCP入站2379~2380etcdkube-apiserverTCP入站10250kubeletkube-apiserver自身TCP入站10259kube-scheduler自身TCP入站10257kube-controller-manager自身nodeTCP入站10250kubeletkube-apiserverTCP入站30000~32767Service NodePort自身
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

网站建设费用皆选网络宁波seo快速优化教程

数据业务模型分析与探讨 1. 开放数据业务模型 开放数据的业务模型有多种,不同的研究者提出了不同的分类。以下是一些常见的开放数据业务模型总结: | 研究者 | 业务模型 | | — | — | | Sheridan 和 Tennison (2011) | Freemium、交叉补贴、网络效应(3种) | | Tennis…

张小明 2026/1/1 5:54:28 网站建设

男和男做的视频网站长沙招聘网58同城

LobeChat 技术解析:一个现代化开源 AI 聊天框架的架构与实践 在大语言模型(LLMs)席卷全球的浪潮中,我们早已不再满足于“输入问题、等待回答”的原始交互模式。用户期待的是更智能、更灵活、更具个性化的对话体验——而这一切的背…

张小明 2026/1/1 18:15:47 网站建设

商标注册网站官网大连建行网点

EmotiVoice语音合成引擎的跨平台兼容性分析 在虚拟助手越来越“懂人心”、游戏NPC开始拥有情绪起伏的今天,用户早已不再满足于那种机械朗读式的语音输出。他们期待的是有温度、有个性、甚至能感知语境情绪的声音——这正是现代文本转语音(TTS&#xff09…

张小明 2026/1/1 13:23:26 网站建设

两人做性视频网站seo优化网站源码

文章目录 一、基础目标 二、维格纳-维利分布的核心原理 三、从零实现WVD的步骤与代码 第一步:实现基础WVD函数 第二步:生成测试信号验证实现 四、WVD的交叉项问题与改进方法 交叉项产生原理 改进方法:伪WVD(PWVD) 多分量信号测试与交叉项演示 五、WVD参数选择与性能分析 性…

张小明 2026/1/1 18:10:44 网站建设

杭州强龙网站建设环球军事最新新闻

BetterNCM插件终极指南:一键解锁网易云音乐隐藏功能 【免费下载链接】BetterNCM-Installer 一键安装 Better 系软件 项目地址: https://gitcode.com/gh_mirrors/be/BetterNCM-Installer 还在使用基础版的网易云音乐吗?BetterNCM插件将彻底改变你的…

张小明 2026/1/1 14:51:24 网站建设

汕头集团做网站方案网站建设动态

从零构建UDS 19服务:一个汽车ECU工程师的实战手记最近接手了一个诊断模块重构任务,客户反馈“偶发故障查不到、DTC列表读不全”,现场技术支持束手无策。我打开CANoe抓包一看——果然是UDS 19服务实现出了问题:状态掩码没生效&…

张小明 2026/1/1 18:15:49 网站建设