![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
云原生
文章平均质量分 92
云原生(CloudNative)是一个组合词,Cloud+Native。Cloud表示应用程序位于云中,而不是传统的数据中心;Native表示应用程序从设计之初即考虑到云的环境,原生为云而设计,在云上以最佳姿势运行,充分利用和发挥云平台的弹性+分布式优势。
Lansonli
CSDN大数据领域博客专家,InfoQ写作社区2022年度影响力作者、华为云社区2022年度十佳博主、华为云享专家、阿里云专家博主、腾讯云开发者社区2022年度最佳作者、腾云先锋(TDP)核心成员、51CTO专家博主,全网二十万多粉丝,知名互联网公司大数据高级开发工程师
展开
-
云原生(四十) | Kubernetes篇之整合EFK
简单的ElasticSearch。转换 compose为k8s文件。使用Es官方Operator方式。ElasticSearch 的。原创 2022-10-25 06:00:00 · 2142 阅读 · 71 评论 -
云原生(三十九) | Kubernetes篇之kustomize入门了解
kubectl apply -k path 会自动找path下的kustomization.yaml。以后我们公司自己部署的一些中间件等,可以封装为 kustomize 管理的文件结构。Kubernetes本地的配置管理工具,相当于轻量版的helm。每个环境层定义自己的 kustomization.yaml。kustomization.yaml 文件名是固定的;其他环境层可只定义变量覆盖。即可快速部署不同环境应用。原创 2022-10-24 16:28:06 · 1246 阅读 · 2 评论 -
云原生(三十八) | Kubernetes篇之Jenkins入门和安装
每个打包机都应该hostPath模式挂载/etc/hosts文件。或者全系统内部都不用域名,都使用ip进行交互也可以【但是推荐域名,域名可以统一修改,ip变化所有引用的地方都来修改很麻烦】1、提前创建好maven的settings.xml,并且以configMap的形式保存到k8s集群的devops名称空间。jenkins-url如果是一个域名,测试环境下可能不能访问,此时需要给各个主机配置域名转发到vpc网络的ip。的pvc 在 devops名称空间下。的pvc 在 devops名称空间下。原创 2022-10-08 07:42:53 · 1377 阅读 · 40 评论 -
云原生(三十七) | Kubernetes篇之Gitlab入门和安装
GitLab是一个用于仓库管理系统的开源项目,使用git作为代码管理工具,并在此基础上搭建起来的Web服务。Docker Hub。原创 2022-10-03 20:51:14 · 1170 阅读 · 15 评论 -
云原生(三十六) | Kubernetes篇之Harbor入门和安装
Harbor是一个用于存储和分发Docker镜像的企业级Registry服务器。作为一个企业级私有Registry服务器,Harbor提供了更好的性能和安全。提升用户使用Registry构建和运行环境传输镜像的效率。Harbor支持安装在多个Registry节点的镜像资源复制,镜像全部保存在私有Registry中,确保数据和知识产权在公司内部网络中管控。另外,Harbor也提供了高级的安全特性,诸如用户管理,访问控制和活动审计等。...原创 2022-07-19 09:16:54 · 2520 阅读 · 100 评论 -
云原生(三十五) | Prometheus入门和安装
是一个开源监控解决方案,用于收集和聚合指标作为时间序列数据。更简单地说,商店中的每个项目都是一个指标事件,并带有它发生的时间戳。最初是在Soundcloud开发的,但现在是一个由CloudNativeComputingFoundation(CNCF)支持的社区项目。在过去十年中,它迅速发展壮大,因为它结合了查询功能和云原生架构,使其成为现代应用程序的理想监控堆栈。......原创 2022-07-16 12:26:26 · 894 阅读 · 10 评论 -
云原生(三十四) | Kubernetes篇之平台存储系统实战
文章目录Kubernetes平台存储系统实战一、块存储(RDB)1、配置二、STS案例实战三、文件存储(CephFS)1、配置2、测试四、pvc扩容动态卷扩容RDB: RADOS Block DevicesRADOS: Reliable, Autonomic Distributed Object Store不能是RWX模式RWO:(ReadWriteOnce)参考文档:Ceph Docs常用块存储 。RWO模式;STS删除,pvc不会删除,需要自己手动维护常用 文件存储。 RWX模式;如:1原创 2022-07-11 16:17:49 · 1429 阅读 · 33 评论 -
云原生(三十三) | Kubernetes篇之平台存储系统部署
文章目录Kubernetes平台存储系统部署一、查看前提条件二、部署&修改operator三、部署集群四、部署dashboard五、神坑六、卸载官方文档:https://rook.io/docs/rook/v1.6/ceph-quickstart.htmlRaw devices (no partitions or formatted filesystems); 原始磁盘,无分区或者格式化Raw partitions (no formatted filesystem);原始分区,无格式化文件系统vd原创 2022-07-08 23:24:53 · 1190 阅读 · 46 评论 -
云原生(三十二) | Kubernetes篇之平台存储系统介绍
目录Kubernetes平台存储系统介绍一、Ceph1、基本概念二、Rook1、基本概念2、operator是什么存储系统是个专业性的整个体系,我们只用常见方式搭建,具体优化需要参照公司自己的产品等各种进行调整官方网址:https://ceph.io/Ceph可以有Ceph对象存储:键值存储,其接口就是简单的GET,PUT,DEL等。如七牛,阿里云oss等Ceph块设备:AWS的EBS,青云的云硬盘和阿里云的盘古系统,还有Ceph的RBD(RBD是Ceph面向块存储的接口)Ceph文件系统:它比块存储具有更原创 2022-07-06 10:28:44 · 1591 阅读 · 75 评论 -
云原生(三十一) | Kubernetes篇之平台基本预装资源
文章目录Kubernetes平台基本预装资源一、metrics-server二、ingress-nginx三、dashboard四、helm应用商店GitHub - kubernetes-sigs/metrics-server: Scalable and efficient source of container resource metrics for Kubernetes built-in autoscaling pipelines.https://github.com/kubernetes-sigs/原创 2022-06-29 10:02:34 · 1398 阅读 · 43 评论 -
云原生(三十) | Kubernetes篇之应用商店-Helm介绍
每个Helm版本都提供了各种操作系统的二进制版本,这些版本可以手动下载和安装。下载 需要的版本解压()在解压目中找到程序,移动到需要的目录中()Chart 代表着 Helm 包。它包含在 Kubernetes 集群内部运行应用程序,工具或服务所需的所有资源定义。你可以把它看作是 Homebrew formula,Apt dpkg,或 Yum RPM 在Kubernetes 中的等价物。Repository(仓库) 是用来存放和共享 charts 的地方。它就像 Perl 的CPAN 档案库网络或是 F原创 2022-06-27 08:05:08 · 2104 阅读 · 113 评论 -
云原生(二十九) | Kubernetes篇之自建高可用k8s集群优化
文章目录自建高可用k8s集群优化一、Docker配置优化二、优化kubelet三、时区问题可参照官方文档: Kubelet 配置 (v1beta1) | Kubernetes验证集群kube-proxy使用ipvs模式工作; 10249是每个节点kube-proxy的metrics信息端口,可以访问/proxyMode或者/metrics等很多应用镜像时区都是UTC,而不是本机时间(当然,前提是本机时间是对的,云服务器不存在这个问题)我们不用每一个Pod都设置挂载本地时间原创 2022-06-24 00:43:33 · 1556 阅读 · 63 评论 -
云原生(二十八) | Kubernetes篇之自建高可用k8s集群搭建
目录自建高可用k8s集群搭建一、所有节点基础环境1、环境准备与内核升级2、安装Docker二、PKI三、证书工具准备1、下载证书工具2、ca根配置3、ca签名请求4、生成证书5、k8s集群是如何使用证书的四、etcd高可用搭建1、etcd文档2、下载etcd3、etcd证书4、etcd高可用安装五、k8s组件与证书1、K8s离线安装包2、master节点准备3、apiserver 证书生成4、front-proxy证书生成5、controller-manage证书生成与配置6、scheduler证书生成与配原创 2022-06-21 06:30:00 · 3480 阅读 · 158 评论 -
云原生(二十七) | Kubernetes篇之自建高可用k8s集群前置概念与操作
自建高可用k8s集群前置概念与操作原创 2022-06-16 17:45:30 · 2858 阅读 · 125 评论 -
云原生(二十六) | Kubernetes篇之Kubernetes(k8s)持久化
Kubernetes 支持很多类型的卷。Pod可以同时使用任意数目的卷类型临时卷类型的生命周期与 Pod 相同,但持久卷可以比 Pod 的存活期长当 Pod 不再存在时,Kubernetes 也会销毁临时卷;Kubernetes 不会销毁 持久卷。对于给定 Pod 中任何类型的卷,在容器重启期间数据都不会丢失。使用卷时, 在 字段中设置为 Pod 提供的卷,并在 字段中声明卷在容器中的挂载位置。有时,在单个 Pod 中共享卷以供多方使用是很有用的。 属性可用于指定所引用的卷内的子路径,而不是其根路径。原创 2022-06-14 19:53:54 · 1072 阅读 · 20 评论 -
云原生(二十五) | Kubernetes篇之Kubernetes(k8s)临时存储
Kubernetes 为了不同的目的,支持几种不同类型的临时卷:emptyDir: Pod 启动时为空,存储空间来自本地的 kubelet 根目录(通常是根磁盘)或内存configMap、downwardAPI 、 secret: 将不同类型的 Kubernetes 数据注入到 Pod 中CSI 临时卷: 类似于前面的卷类型,但由专门支持此特性的指定 CSI 驱动程序提供通用临时卷: 它可以由所有支持持久卷的存储驱动程序提供当 Pod 分派到某个 Node 上时, 卷会被创建在 Pod 在该节点上运行期间,原创 2022-06-13 15:30:00 · 1412 阅读 · 29 评论 -
云原生(二十四) | Kubernetes篇之Kubernetes 配置
Kubernetes 配置配置最佳实战:云原生 应用12要素 中,提出了配置分离。在推送到集群之前,配置文件应存储在版本控制中。 这允许您在必要时快速回滚配置更改。 它还有助于集群重新创建和恢复。使用 YAML 而不是 JSON 编写配置文件。虽然这些格式几乎可以在所有场景中互换使用,但 YAML 往往更加用户友好。建议相关对象分组到一个文件。比如 guestbook-all-in-one.yaml除非必要,否则不指定默认值:简单的最小配置会降低错误的可能性。将对象描述放在注释中,以便更好地进行内省。 对象原创 2022-06-12 22:00:00 · 1165 阅读 · 38 评论 -
云原生(二十三) | Kubernetes篇之Kubernetes 网络策略(NetworkPolicy)
网络策略(网络隔离策略)网络策略 | Kubernetes指定Pod间的网络隔离策略,默认是所有互通。Pod 之间互通,是通过如下三个标识符的组合来辩识的:其他被允许的 Pods(例外:Pod 无法阻塞对自身的访问)被允许的名称空间IP 组块(例外:与 Pod 运行所在的节点的通信总是被允许的, 无论 Pod 或节点的 IP 地址) 默认情况下,Pod网络都是非隔离的(non-isolated),可以接受来自任何请求方的网络请求。如果一个 NetworkPolicy 的标签选择器选中了某个 Pod.....原创 2022-06-11 23:30:00 · 1133 阅读 · 15 评论 -
云原生(二十二) | Kubernetes篇之Ingress案例实战
pathType 详细:Prefix:基于以 / 分隔的 URL 路径前缀匹配。匹配区分大小写,并且对路径中的元素逐个完成。 路径元素指的是由 / 分隔符分隔的路径中的标签列表。 如果每个 p 都是请求路径 p 的元素前缀,则请求与路径 p 匹配。Exact:精确匹配 URL 路径,且区分大小写。ImplementationSpecific:对于这种路径类型,匹配方法取决于 IngressClass。 具体实现可以将其作为单独的 pathType 处理或者与 Prefix 或 Exact 类型作.原创 2022-06-10 15:13:08 · 2584 阅读 · 100 评论 -
云原生(二十一) | Kubernetes篇之深入了解Ingress
为什么需要Ingress?Service可以使用NodePort暴露集群外访问端口,但是性能低下不安全缺少Layer7的统一访问入口,可以负载均衡、限流等Ingress 公开了从集群外部到集群内服务的 HTTP 和 HTTPS 路由。 流量路由由 Ingress 资源上定义的规则控制。我们使用Ingress作为整个集群统一的入口,配置Ingress规则转到对应的Service............原创 2022-06-09 23:29:34 · 1423 阅读 · 28 评论 -
云原生(二十) | Kubernetes篇】深入了解Kubernetes(k8s)Service
Service 创建完成后,会对应一组EndPoint。可以kubectl get ep 进行查看 type有四种,每种对应不同服务发现机制 Servvice可以利用Pod的就绪探针机制,只负载就绪了的Pod。自动剔除没有就绪的Pod 原理:kube-proxy 在负责这个事情 手动指定的ClusterIP必须在合法范围内 None会创建出没有ClusterIP的headless service(无头服务),Pod需要用服务的域名访问原创 2022-06-08 19:57:41 · 1181 阅读 · 32 评论 -
云原生(十九) | Kubernetes篇之Kubernetes(k8s)网络
Kubernetes 网络解决四方面的问题:一个 Pod 中的容器之间通过本地回路(loopback)通信。集群网络在不同 pod 之间提供通信。Pod和Pod之间互通Service 资源允许你对外暴露 Pods 中运行的应用程序,以支持来自于集群外部的访问。Service和Pod要通可以使用 Services 来发布仅供集群内部使用的服务。...............原创 2022-06-07 23:23:00 · 1358 阅读 · 30 评论 -
云原生(十八) | Kubernetes篇之Kubernetes(k8s)工作负载
关于Pod深入介绍已经在之前文章讲述过,有不了解的同学可以再看看以下文章【云原生 | Kubernetes篇】深入了解Pod(六)_Lansonli的博客-CSDN博客关于Deployment深入介绍已经在上一篇文章讲述过,有不了解的同学可以看看以下文章【云原生 | Kubernetes篇】深入了解Deployment_Lansonli的博客-CSDN博客关于这块内容已经在之前文章讲述过,有不了解的同学可以再看看以下文章【云原生 | Kubernetes篇】深入RC、RS、DaemonSet、Statefu原创 2022-06-06 22:00:00 · 4587 阅读 · 86 评论 -
云原生(十七) | Kubernetes篇之深入了解Deployment
一个 Deployment 为 Pods 和 ReplicaSets 提供声明式的更新能力。你负责描述 Deployment 中的 目标状态,而 Deployment 控制器(Controller) 以受控速率更改实际状态, 使其变为期望状态;控制循环。 for(){ xxx controller.spec()}不要管理 Deployment 所拥有的 ReplicaSet我们部署一个应用一般不直接写Pod,而是部署一个DeploymentDeploy编写规约 ReplicaSets基本格式指定deploy原创 2022-06-05 18:54:11 · 1773 阅读 · 28 评论 -
云原生(十六)| Kubernetes篇之深入RC、RS、DaemonSet、StatefulSet
RC (ReplicationController )主要的作用就是用来确保容器应用的副本数始终保持在用户定义的副本数 。即如果有容器异常退出,会自动创建新的Pod来替代;而如果异常多出来的容器也会自动回收Kubernetes 官方建议使用 RS(ReplicaSet ) 替代 RC (ReplicationController ) 进行部署,RS 跟 RC 没有本质的不同,只是名字不一样,并且 RS 支持集合式的 selector RS控制器DaemonSet 控制器确保所有(或一部分)原创 2022-06-04 09:27:28 · 1572 阅读 · 45 评论 -
云原生(十五) | Kubernetes篇之深入了解Pod
我们一般不直接创建Pod,而是创建一些工作负载由他们来创建PodPod的形式Pod对容器有自恢复能力(Pod自动重启失败的容器)Pod自己不能恢复自己,Pod被删除就真的没了(100,MySQL、Redis、Order)还是希望k8s集群能自己在其他地方再启动这个Pod单容器Pod多容器协同Pod。我们可以把另外的容器称为Pod 天生地为其成员容器提供了两种共享资源:网络和存储一个Pod由一个Pause容器设置好整个Pod里面所有容器的网络、名称空间等信息systemctl status可以观测到。....原创 2022-06-02 09:31:43 · 1554 阅读 · 49 评论 -
云原生(十四) | Kubernetes篇之深入万物基础-容器
文章目录深入万物基础-容器一、思考二、镜像三、启动命令四、环境变量五、生命周期容器钩子六、资源限制深入万物基础-容器一、思考我们在k8s里面的容器和docker的容器有什么异同? 其实docker之前有自己的一套编排软件:docker swarm它可以在多台主机中创建一个docker集群,但是也仅限于此了,docker在很早就放弃了这个项目。docker machine 是配合swarm的一个预处理工具k8s全称:kubernetes,因为中间..原创 2022-05-31 19:05:34 · 1247 阅读 · 42 评论 -
云原生(十三) | Kubernetes篇之深入Kubernetes(k8s)概念
文章目录深入Kubernetes(k8s)概念一、基础概念理解二、kubernetes Objects(k8s对象)1、什么是k8s对象2、描述k8s对象3、k8s对象yaml的结构4、管理k8s对象5、对象名称6、名称空间7、标签和选择器8、注解annotation9、字段选择器10、给vscode安装插件11、认识kubectl和kubelet12、自动补全深入Kubernetes(k8s)概念一、基础概念理解 集群 ..原创 2022-05-28 14:53:03 · 1998 阅读 · 64 评论 -
云原生(十二) | Kubernetes篇之Kubernetes基础入门
文章目录Kubernetes基础入门一、基础知识二、部署一个应用三、应用程序探索1、了解Pod2、了解Node3、故障排除4、kubectl run四、应用外部可见1、Kubernetes Service 总览2、Service 和 Label3、kubectl expose五、伸缩应用程序-扩缩容六、执行滚动升级七、使用配置文件方式1、部署一个应用2、暴露应用3、扩缩容4、滚动升级Kubernetes基础入门一、基..原创 2022-05-24 04:45:00 · 2575 阅读 · 63 评论 -
云原生(十一) | Kubernetes篇之Kubernetes原理与安装
Kubernetes集群原理详细介绍和详细安装教程,新手按照顺序直接上手安装原创 2022-05-19 14:02:26 · 2095 阅读 · 43 评论 -
云原生(十) | Kubernetes篇之Kubernetes简介
Kubernetes 是一个可移植的、可扩展的开源平台,用于管理容器化的工作负载和服务,可促进声明式配置和自动化。 Kubernetes 拥有一个庞大且快速增长的生态系统。Kubernetes 的服务、支持和工具广泛可用。名称 Kubernetes 源于希腊语,意为“舵手”或“飞行员”。Google 在 2014 年开源了 Kubernetes 项目。 Kubernetes 建立在Google 在大规模运行生产工作负载方面拥有十几年的经验 的基础上,结合了社区中最好的想法和实践。.............原创 2022-05-18 01:05:47 · 1565 阅读 · 16 评论 -
云原生(九) | Devops篇之Jenkins安装与实战
Jenkins,之前叫做Hudson,由SUN公司启动,2010年oracle收购SUN导致hudson商标归oracle保留,hudson的主要贡献者基于hudson更名为jenkins并持续更新。很长一段时间内lenkins和Hudson继续作为两个独立的项目,每个都认为对方是自己的分支。目前Hudson已经停止开发,最新的版本发布于2016年,而Jenkins的社区和开发却异常活跃。Jenkins是目前市场上使用最多的CICD工具...............原创 2022-05-14 15:23:46 · 2100 阅读 · 31 评论 -
云原生(八) | Devops篇之深入Devops
DevOps: Development 和 Operations 的组合DevOps 看作开发(软件工程)、技术运营和质量保障(QA)三者的交集。突出重视软件开发人员和运维人员的沟通合作,通过自动化流程来使得软件构建、测试、 发布更加快捷、频繁和可靠。DevOps 希望做到的是软件产品交付过程中 IT 工具链的打通,使得各个团队减少时间损 耗,更加高效地协同工作。专家们总结出了下面这个 DevOps 能力图,良好的闭环可以大大 增加整体的产出。...............原创 2022-05-10 22:20:01 · 1953 阅读 · 11 评论 -
云原生(七) | Docker篇之深入Docker Compose
Compose 是用于定义和运行多容器 Docker 应用程序的工具。通过 Compose,您可以使用 YML 文件来配置应用程序需要的所有服务。然后,使用一个命令,就可以从 YML 文件配置中创建并启动所有服务。原创 2022-05-07 19:10:57 · 1969 阅读 · 18 评论 -
云原生(六) | Docker篇之实战Dockerfile
文章目录实战Dockerfile前言运行实例命令第一例、这是我第一个Dockerfile第二例、ARG指令和ENV指令简单使用第三例、ARG指令可任意位置定义第四例、ENV的坑--构建期间就已经确定好值第五例、ADD与COPY指令简单使用第六例、COPY的文件可以改变用户第七例、WORKDIR的应用第八例、VOLUME需要注意的坑与EXPOSE使用第九例、CMD、ENTRYPOINT容器启动指令第十例、 多阶段构建实战Dockerfile....原创 2022-05-02 00:14:53 · 1994 阅读 · 21 评论 -
云原生(五) | Docker篇之深入Dockerfile
Dockerfile由一行行命令语句组成,并且支持以#开头的注释行。一般而言,Dockerfile可以分为四部分:基础镜像信息、维护者信息、镜像操作指令、启动时执行指令。原创 2022-04-26 04:45:00 · 1796 阅读 · 26 评论 -
云原生(四) | Docker篇之网络和存储原理
Docker的网络和存储原理,针对命令去深入讲解,让每个读者都能看懂,深知docker核心的存储原理原创 2022-04-25 06:15:00 · 5459 阅读 · 37 评论 -
云原生(三) | Docker篇之轻松学会 Docker命令
目录前言一、常见的Docker命令二、经典的Docker命令1、docker run1)如何使用Docker部署组件2)常见部署案例2、docker exec3、docker build4、docker push前言一文精讲一个知识点,多了你记不住,一句废话都没有经典语录:世入慌慌张张,不过碎银几两。可就是这碎银几两,能解世间慌张一、常见的Docker命令所有Docker命令手https://docs.docker.com/engine/原创 2022-04-17 09:25:12 · 3924 阅读 · 21 评论 -
云原生(二) | Docker篇之轻松学会原理|架构|安装|加速
目录前言一、Docker架构二、Docker隔离原理三、Docker安装1、移除旧版本2、设置docker yum源3、安装最新docker engine4、安装指定版本docker engine1、在线安装2、离线安装5、启动服务6、镜像加速7、可视化界面-Portainer1、什么是Portainer2、安装前言一文精讲一个知识点,多了你记不住,一句废话都没有经典语录:人情绪的尽头不是脏话不是发泄,人情绪的尽头是沉默..原创 2022-04-16 04:00:00 · 2111 阅读 · 30 评论 -
云原生(一) | 介绍篇之大数据需要拥抱云原生吗?云原生为什么这么火?
目录一、前言二、从招聘需求来看大数据和云原生1、云原生开发工程师2、大数据工程师三、云计算的技术革命1、互联网时代的历程2、云计算到底是什么3、云计算历程4、名词5、云平台的优缺点优势缺点四、云计算技术架构演进变革1、体系变革2、架构变革单体架构阶段集群架构阶段分布式架构阶段微服务架构阶段网格化架构阶段五、云上的挑战1、云上挑战2、技术变革六、云原生的生态系统1、常见技术七、云原生的概念1、专业术语.原创 2022-04-14 04:30:00 · 3031 阅读 · 36 评论