Kubernetes
文章平均质量分 93
Kubernetes 学习分享
阿龙先生啊
懂点大数据运维, 会写两三行代码,自学了一些 docker, kubernetes。博客主要分享大数据、Linux、云原生相关知识。 目前职位大数据工程师,长远打算做个会敲代码的厨子。
展开
-
【云原生】kubeadm快速搭建K8s集群Kubernetes1.19.0
Kubernetes 是一个可移植、可扩展的开源平台,用于管理容器化的工作负载和服务,可促进声明式配置和自动化。 Kubernetes 拥有一个庞大且快速增长的生态,其服务、支持和工具的使用范围相当广泛。Kubernetes 这个名字源于希腊语,意为“舵手”或“飞行员”。k8s 这个缩写是因为 k 和 s 之间有八个字符的关系。 Google 在 2014 年开源了 Kubernetes 项目。 Kubernetes 建立在Google 大规模运行生产工作负载十几年经验的基础上, 结合了社区中最优秀的想原创 2024-03-04 11:55:03 · 4900 阅读 · 139 评论 -
【云原生】kubernetes项目部署
基于镜像创建pod,使用deploy控制器暴露服务得到service,使用ingress提供域名访问服务;容器交付流程通常分为四个阶:开发阶段、持续集成阶段、应用部署阶段和运维阶段。对应用程序编译打包、使用Dockerfile构建镜像,把镜像推送到镜像仓库;4.对外暴露应用(Service、Ingress)2.推送到镜像仓库中(阿里云镜像、网易镜像)3.控制器部署镜像(Deployment)1.制作镜像(通过Dockerfile)二、k8s平台部署项目流程。三、在K8s平台部署项目。5.运维(监控、升级)原创 2023-05-03 17:45:55 · 1993 阅读 · 3 评论 -
【云原生】kubernetes安全框架RBAC
Adminssion Control实际上是一个准入控制器插件列表,发送到API Server的请求都需要经过这个列表中的每个准入控制器插件的检查, 检查不通过,则拒绝请求。K8s目前支持多种授权策略,目前企业主要使用RBAC (Role-Based Access Control,基于角色的访问控制)完成授权工作。• 资源操作方法: get , list , create , update , patch ,watch , delete。运行rbac.yaml, 创建RBAC权限策略。原创 2023-05-02 13:05:56 · 1330 阅读 · 0 评论 -
【云原生】Kubernetes 多集群管理工具Rancher使用
Rancher 是为使用容器的公司打造的容器管理平台。Rancher 简化了使用 Kubernetes 的流程,开发者可以随处运行 Kubernetes(Run Kubernetes Everywhere),满足 IT 需求规范,赋能 DevOps 团队。Rancher 1.x 最初是为了支持多种容器编排引擎而构建的,其中包括 Rancher 自己的容器编排引擎 Cattle。但随着 Kubernetes 在市场上的兴起,Rancher 2.x 已经完全转向了 Kubernetes。原创 2023-04-17 13:38:02 · 2479 阅读 · 0 评论 -
【云原生】Kubernetes 多集群管理工具Kuboard v3
Kuboard,是一款免费的 Kubernetes 图形化管理工具,Kuboard 力图帮助用户快速在 Kubernetes 上落地微服务。Kuboard v3.x 支持 Kubernetes 多集群管理。您可以同时使用 Kuboard v3.x 和 Kuboard v2.0.x;Kuboard v3.x 支持 amd64 (x86) 架构和 arm68 (armv8) 架构的 CPU。原创 2023-04-16 21:18:24 · 2046 阅读 · 0 评论 -
【云原生】Kubernetes应用包管理器Helm
Helm是一个Kubernetes的包管理工具,就像Linux下的包管理器,如yum/apt等,可以很方便的将之前打包好的yaml文件部署到kubernetes上。Helm有两个重要概念:helm:一个命令行客户端工具,主要用于Kubernetes应用chart的创建、打包、发布和管理。Chart:应用描述,一系列用于描述 k8s 资源相关文件的集合。Release:基于Chart的部署实体,一个 chart 被 Helm 运行后将会生成对应的一个 release;原创 2023-03-19 18:16:54 · 1623 阅读 · 29 评论 -
【云原生】kubernetes控制器之StatefulSet
StatefulSet控制器用于部署有状态应用, 满足一些有状态应用的需求:• Pod有序的部署、扩容、删除和停止• Pod分配一个稳定的且唯一的网络标识• Pod分配一个独享的存储。原创 2022-12-28 17:29:39 · 829 阅读 · 2 评论 -
【云原生】kubernetes之数据存储详解
一、存储卷的作用一、存储卷的作用容器部署过程中一般有以下三种数据:• 启动时需要的初始数据,例如配置文件• 启动过程中产生的临时数据,该临时数据需要多个容器间共享• 启动过程中产生的持久化数据, 例如MySQL的data目录二、数据卷概述•Kubernetes中的Volume提供了在容器中挂载外部存储的能力•Pod需要设置卷来源(spec.volume)和挂载点(spec.containers.volumeMounts)两个信息后才可以使用相应的。原创 2022-12-25 17:19:51 · 2315 阅读 · 8 评论 -
【云原生】kubernetes管理应用配置之ConfigMap和Secret
将应用打包为容器镜像后,可以通过环境变量或者外挂文件的方式在创建容器时进行配置注入,但在大规模容器集群的环境中,对多个容器进行不同的配置将变得非常复杂。的方式访问到这些 Secret 里保存的信息了。应用部署的一个最佳实践是将应用所需的配置信息与程序进行分离,这样可以使得应用程序被更好地复用,通过不同的配置也能实现更灵活的功能。创建ConfigMap后,数据实际会存储在K8s中Etcd,然后通过创建Pod时引用该数据。,通过Volume挂载的方式将ConfigMap中的内容挂载为容器内部的文件或目录。原创 2022-12-20 19:00:51 · 735 阅读 · 0 评论 -
【云原生】kubernetes对外服务之Ingress
Ingress:只需一个或者少量的公网IP和LB,即可同时将多个HTTP服务暴露到外网,七层反向代理。可以简单理解为service的service,它其实就是一组基于域名和URL路径,把用户的请求转发到一个或多个service的规则。原创 2022-12-18 14:22:57 · 2291 阅读 · 2 评论 -
【云原生】kubernetes深入理解之Service
Service引入主要是解决Pod的动态变化,提供统一访问入口。Kubernetes Service定义了这样一种抽象: Service是一种可以访问 Pod逻辑分组的策略, Service通常是通过 Label Selector访问 Pod组。Service能够提供负载均衡的能力,但是在使用上有以下限制:只提供 4 层负载均衡能力,而没有 7 层功能,但有时我们可能需要更多的匹配规则来转发请求,这点上 4 层负载均衡是不支持的。原创 2022-12-03 18:56:50 · 1225 阅读 · 28 评论 -
【云原生】kubernetes工作负载之控制器(Deployment 、DaemonSet 、Job)
在Kubernetes中,Pod是最小的管理单元,是一组紧密关联的容器组合。但是,单独的Pod并不能保障总是可用,比如我们创建一个nginx的Pod,因为某些原因,该Pod被意外删除,我们希望其能够自动新建一个同属性的Pod。很遗憾,单纯的Pod并不能满足需求。为此,Kubernetes实现了一系列控制器来管理Pod,使Pod的期望状态和实际状态保持一致工作负载控制器(Workload Controllers)是K8s的一个抽象概念,用于更高级层次对象,部署和管理Pod。原创 2022-11-27 17:52:51 · 1492 阅读 · 8 评论 -
【云原生】kubernetes深入理解Pod对象之调度篇
调度大致流程用户使用 create yaml 创建 pod,请求给 apiServer,apiserver 将 yaml 中的属性信息(metadata) 写入 etcdapiServer 触发 watch 机制准备创建 pod,信息转发给调度器,调度器使用调度算法选择node,调度器将node信息给 apiServer,apiServer 将绑定的 node 信息写入etcdapiServer 又通过 watch 机制,调用 kubelet,指定 pod 信息,触发 docker run 命令创建原创 2022-11-26 20:35:34 · 1141 阅读 · 5 评论 -
【云原生】k8s-master扩容
Master节点主要有三个服务kube-apiserver、kube-controller-manager和kube-scheduler,其中kube-controller-manager和kube-scheduler组件自身通过选择机制已经实现了高可用,所以Master高可用主要针对kube-apiserver组件,而该组件是以HTTP API提供服务,因此对他高可用与Web服务器类似,增加负载均衡器对其负载均衡即可,并且可水平扩容。原创 2022-11-26 17:00:47 · 840 阅读 · 0 评论 -
【云原生】Kubernetes 二进制安装详细步骤
分布式中容器编排面临的问题为提高业务并发和高可用,会使用多台服务器,因此会面向这些问题• 多容器跨主机提供服务• 多容器分布节点部署• 多容器怎么升级• 怎么高效管理这些容器1.2Kubernetes解决的问题1.3 Kubernetes是什么• Kubernetes是Google在2014年开源的一个容器集群管理系统,Kubernetes简称K8s。• Kubernetes用于容器化应用程序的部署,扩展和管理,目标是让部署容器化应用简单高效。原创 2022-10-24 23:59:30 · 5758 阅读 · 6 评论 -
【云原生】kubernetes深入理解Pod对象:基本管理
Pod 的共享上下文包括一组 Linux 名字空间、控制组(cgroup)和可能一些其他的隔离 ,即用来隔离 Docker 容器的技术。 在 Pod 的上下文中,每个独立的应用可能会进一步实施隔离。就 Docker 概念的术语而言,Pod 类似于共享名字空间和文件系统卷的一组 Docker 容器。......原创 2022-07-01 20:03:17 · 1335 阅读 · 41 评论 -
【云原生】Kubernetes 是什么 ?
Kubernetes 是一个可移植、可扩展的开源平台,用于管理容器化的工作负载和服务,可促进声明式配置和自动化。 Kubernetes 拥有一个庞大且快速增长的生态,其服务、支持和工具的使用范围相当广泛。Kubernetes这个名字源于希腊语,意为“舵手”或“飞行员”。k8s 这个缩写是因为 k 和 s 之间有八个字符的关系。 Google 在 2014 年开源了 Kubernetes 项目。 Kubernetes 建立在Google 大规模运行生产工作负载十几年经验的基础上, 结合了社原创 2022-06-25 15:03:28 · 678 阅读 · 0 评论