- 博客(368)
- 收藏
- 关注
原创 天翼云高级解决方案架构师认证重点知识点串讲
一、架构设计基础必备掌握知识点:传统IT架构演进过程: IT架构是指导IT投资和设计决策的IT框架,是建立企业信息系统的综合蓝图。IT架构通常分为数据架构、应用架构和技术架构三部分。此外,随着数据安全的问题日益受到重视,许多企业的IT架构也将安全架构置于重要的位置上。单体引用:通常服务器操作系统使用linux,应用程序使用...
2023-08-30 18:21:56 3752 1
原创 CentOS Linux 7&8安全基线检查
阿里云标准-CentOS Linux 7/8安全基线检查检查项类别描述加固建议等级密码复杂度检查身份鉴别检查密码长度和密码是否使用多种字符类型编辑/etc/security/pwquality.conf,把minlen(密码最小长度)设置为8-32位,把minclass(至少包含小写字母、大写字母、数字、特殊字符等4类字符...
2023-08-15 11:19:15 1773
原创 ES 跨集群搜索 Cross-cluster search (CCS)
跨集群查询跨集群搜索(cross-cluster search)使你可以针对一个或多个远程集群运行单个搜索请求。 例如,你可以使用跨集群搜索来筛选和分析存储在不同数据中心的集群中的日志数据。环境准备角色IP系统dev172.16.122.244CentOS 7.9prod172.16.122.245CentOS 7.9ES...
2023-07-13 10:25:50 1423
原创 简易搭建 ES 集群
环境准备角色IP系统master, data10.189.254.217CentOS 7.9data10.189.254.219CentOS 7.9ES 软件下载地址 https://elasticsearch.cn/download,我使用的版本是 7.13。wget https://artifacts.elastic....
2023-06-22 11:51:02 519
原创 如何考取 AWS 技术认证
因为工作需要,前几年接触到了 AWS。开始接触云计算的我,对云计算简单的认识就是创建虚拟机,很多云上的概念,最佳实践并不清楚。一个偶然的机会,我看到了 AWS Summit 的海报信息,从中看到了 AWS 认证培训讲座,并且在 summit 当天参加了AWS SAA 认证培训讲座,在两个小时的讲座中,了解到了很多云计算的理...
2022-09-08 14:48:42 1588
原创 Linux CPU 平均负载和利用率是什么关系?
一、平均负载作为系统管理员,我们会经常遇到服务器负载比较高,我们一般都是会快速登录到服务器上面,使用 top 或者 uptime 指令来查看 CPU 的负载情况,以及哪个进程占用 CPU 比较高。当发现 load average 数字超过 CPU 核心数的时候,就认为业务量太大,CPU 不够了,需要...
2022-04-16 11:29:51 1221
原创 Kubernetes 为什么需要 Pod(37)
容器的本质是什么在前面的文章中提到了这样一个知识点:Pod,是 Kubernetes 项目中最小的 API 对象。如果换一个更专业的说法,我们可以这样描述:Pod,是 Kubernetes 项目的原子调度单位。不过,我相信你在学习和使用 Kubernetes 项目的过程中,已经不止一次地想要问这样一个问题:为什么我们会需要...
2022-04-11 22:46:50 343
原创 Docker volume 的实现原理(36)
Volume 挂载前面我已经介绍过,容器技术使用了 rootfs 机制和 Mount Namespace,构建出了一个同宿主机完全隔离开的文件系统环境。这时候,我们就需要考虑这样两个问题:容器里进程新建的文件,怎么才能让宿主机获取到?宿主机上的文件和目录,怎么才能让容器里的进程访问到?这正是 Docker Volume 要...
2022-04-07 11:02:26 390
原创 Docker exec 的实现原理(35)
我使用了 docker exec 命令进入到了容器当中。在了解了 Linux Namespace 的隔离机制后,你应该会很自然地想到一个问题:docker exec 是怎么做到进入容器里的呢?实际上,Linux Namespace 创建的隔离空间虽然看不见摸不着,但一个进程的 Namespace 信息在宿主机上是确确实实存...
2022-04-01 14:35:17 489
原创 Docker 镜像文件系统技术解析(34)
在前两次的分享中,我讲解了 Linux 容器最基础的两种技术:Namespace 和 Cgroups。希望此时,你已经彻底理解了“容器的本质是一种特殊的进程”这个最重要的概念。而正如我前面所说的,Namespace 的作用是“隔离”,它让应用进程只能看到该 Namespace 内的“世界”;而 Cgroups 的作用是“限...
2022-03-25 21:00:21 481
原创 Docker 文件系统-OverlayFS 原理解析(33)
前面分别介绍了 Docker 常见的联合文件系统解决方案: AUFS 和 Devicemapper。今天我给你介绍一个性能更好的联合文件系统解决方案—— OverlayFS。OverlayFS 的发展分为两个阶段。2014 年,OverlayFS 第一个版本被合并到 Linux 内核 3.18 版本中,此时的 Overla...
2022-03-20 21:43:44 1666
原创 Docker 文件系统-Devicemapper 原理解析(32)
前面学习了什么是联合文件系统,以及 AUFS 的工作原理和配置。我们知道 AUFS 并不在 Linux 内核主干中,所以如果你的操作系统是 CentOS,就不推荐使用 AUFS 作为 Docker 的联合文件系统了。那在 CentOS 系统中,我们怎么实现镜像和容器的分层结构呢?我们通常使用 Devicemapper 作为...
2022-03-17 09:49:08 1657
原创 Docker 文件系统-AUFS 原理解析(31)
我们知道,Docker 主要是基于 Namespace、cgroups 和联合文件系统这三大核心技术实现的。前面的课时我详细讲解了 Namespace 和 cgroups 的相关原理,那么你知道联合文件系统是什么吗?它的原理又是什么呢?首先我们来了解一下什么是联合文件系统。什么是联合文件系统联合文件系统(Union Fil...
2022-03-11 14:08:07 638
原创 Docker 技术原理-隔离与限制(30)
为什么 Docker 比虚拟机受欢迎在上一篇文章中,详细介绍了 Linux 容器中用来实现“隔离”的技术手段:Namespace。而通过这些讲解,你应该能够明白,Namespace 技术实际上修改了应用进程看待整个计算机“视图”,即它的“视线”被操作系统做了限制,只能“看到”某些指定的内容。但对于宿主机来说,这些被“隔离”...
2022-03-10 09:43:11 229
原创 从进程去理解 Docker (29)
起源“容器”这项技术的来龙去脉:容器技术的兴起源于 PaaS 技术的普及;Docker 公司发布的 Docker 项目具有里程碑式的意义;Docker 项目通过“容器镜像”,解决了应用打包这个根本性难题。 容器本身没有价值,有价值的是“容器编排”。也正因为如此,容器技术生态才爆发了一场关于“容器编排”的“战争”。而这次战争...
2022-03-07 09:29:03 150
原创 #yyds干货盘点# Kubernetes 中也有定时任务吗?(28)
前面我们学习了 Deployment、Statefulset、Daemonset 这些工作负载,它们可以帮助我们在不同的场景下运行(Long Running)的服务。但是有一类业务(一次性作业和定时任务)运行完就结束了,不需要长期运行,如果使用上述的那些工作负载就无法满足我们的要求。比如 Pod 运行结束后,会被 Depl...
2022-03-06 09:55:37 164
原创 #yyds干货盘点# 如何通过 Operator 扩展 Kubernetes API?(27)
我们学习了如何通过一个 YAML 文件来定义一个 CRD,即扩展 API。这种扩展 API 跟 Kubernetes 内置的其他 API 同等地位,都可以通过 kubectl 或者 REST 接口访问,在使用过程中不会有任何差异。但只是定义一个 CRD 并没有什么作用。虽说 kube-apiserver 会将其数据存放到 ...
2022-03-05 10:28:41 187
原创 #yyds干货盘点# Kubernetes 如何根据需求自定义你的 API?(26)
随着使用的深入,你会发现 Kubernetes 中内置的对象定义,比如 Deployment、StatefulSet、Configmap,可能已经不能满足你的需求了。你很希望在 Kubernetes 定义一些自己的对象,一来可以通过 kube-apiserver 提供统一的访问入口,二来可以像其他内置对象一样,通过 kub...
2022-03-04 10:04:32 369
原创 #yyds干货盘点# Kubernetes 搞定网络原来可以如此简单?(25)
相信你对 Kubernetes 越来越熟悉了。理论上,Kubernetes 可以跑在任何环境中,比如公有云、私有云、物理机、虚拟机、树莓派,但是任何基础设施(Infrastructure)对网络的需求都是最基本的。网络同时也是 Kubernetes 中比较复杂的一部分。我们今天就来聊聊 Kubernetes...
2022-03-03 12:45:46 149
原创 #yyds干货盘点# Kubernetes 带你剖析容器运行时以及 CRI 原理(24)
当一个 Pod 在 Kube-APIServer 中被创建出来以后,会被调度器调度,然后确定一个合适的节点,最终被这个节点上的 Kubelet 拉起,以容器状态运行。那么 Kubelet 是如何跟容器打交道的呢,它是如何进行创建容器、获取容器状态等操作的呢?今天我们就来了解一下。容器运行时 (Conta...
2022-03-02 12:03:22 244
原创 #yyds干货盘点# Kubernetes 如何高效调度 Pod?(23)
我们已经学会如何部署业务,发布 Pod。但是 Pod 创建好以后,Kubernetes 又如何调度这些 Pod 呢?如果我们希望把一个 Pod 跑在我们期望的节点上,该如何操作呢?如果我们希望把某些关联性强的 Pod 跑在特定的节点上,或者同一个节点上,又该怎么操作呢?今天我们就来揭晓。Kubernete...
2022-03-01 10:58:46 197
原创 #yyds干货盘点# 怎样对 Kubernetes 集群进行灾备和恢复?(22)
Kubernetes 隐藏了所有容器编排的复杂细节,让我们可以专注在应用本身,而无须过多关注如何去做部署和维护。此外,Kubernetes 还支持多副本,可以保证我们业务的高可用性。而对于集群本身而言,我们一样也要保证其高可用性,你可以参考官方文档:利用 Kubeadm 来创建高可用集群。但是这些并不足以让...
2022-02-28 09:49:51 335
原创 #yyds干货盘点# Kubernetes 如何保障集群安全?(21)
Kubernetes 作为一个分布式集群的管理工具,提供了非常强大的可扩展能力,可以帮助你管理容器,实现业务的高可用性和弹性能力,保障业务的规模。现在也有越来越多的企业正在逐步将核心应用部署到 Kubernetes 集群中。但是当业务规模扩大,集群的承载能力变大的时候,Kubernetes 平台自身的安全性...
2022-02-27 09:35:55 222
原创 #yyds干货盘点# Kubernetes 你必须掌握的 Pod 抢占式资源调度(20)
随着我们在 Kubernetes 集群中部署越来越多的业务,势必要考虑集群的资源利用率问题。尤其是当集群资源比较紧张的时候,如果此时还要部署一些比较重要的关键业务,那么该如何去提前“抢占”集群资源,从而使得关键业务在集群中跑起来呢?这里一个最常见的做法就是采用优先级方案。通过给 Pod 设置高优先级,让其比...
2022-02-26 11:12:20 602
原创 #yyds干货盘点# Kubernetes 中有 GC(垃圾回收)吗?(19)
Garbage Collector 即垃圾回收,通常简称 GC,和你之前在其他编程语言中了解到的 GC 基本上是一样的,用来清理一些不用的资源。Kubernetes 中有各种各样的资源,当然需要 GC啦,今天我们就一起来了解下 Kubernetes 中的 GC。你可能最先想到的就是容器的清理,即 Kubel...
2022-02-25 09:56:12 356
原创 #yyds干货盘点# 如何保障你的 Kubernetes 集群资源不会被打爆(18)
前面的章节中,我们曾提到通过 HPA 控制业务的资源水位,通过 ClusterAutoscaler 自动扩充集群的资源。但如果集群资源本身就是受限的情况下,或者一时无法短时间内扩容,那么我们该如何控制集群的整体资源水位,保障集群资源不会被“打爆”?今天我们就来看看 Kubernetes 中都有哪些能力可以帮...
2022-02-24 09:55:46 229
原创 #yyds干货盘点# Kubernetes 集群权限管理那些事儿(17)
通过前面的章节学习,你已经学会了使用kubectl命令行,或者直接发送 REST 请求,以及使用各种语言的 client 库来跟 APIServer 进行交互。那么你是否知道在这其中Kubernetes 是如何对这些请求进行认证、授权的呢?这节课,我们就来一探究竟。任何请求访问 Kubernetes 的 k...
2022-02-23 14:01:41 182
原创 #yyds干货盘点# Kubernetes 怎样控制业务的资源水位?(16)
相信你已经见识到了 Kubernetes 的强大能力,它能帮你轻松管理大规模的容器服务,尤其是面对复杂的环境时,比如节点异常、容器异常退出等,Kubernetes 内部的 Service、Deployment 会动态地进行调整,比如增加新的副本、关联新的 Pod 等。当然 Kubernetes 的这种自动伸...
2022-02-22 14:37:10 585
原创 #yyds干货盘点# Kubernetes 怎样实现自动化服务监控告警?(15)
我们已经对 Kubernetes 有了一定的理解,也知道如何在 Kubernetes 中部署自己的业务系统。Kubernetes 强大的能力让我们非常方便地使用容器部署业务。Kubernetes 自带的副本保持能力,可以避免部署的业务系统出现单点故障,提高可用性。各种探针也可以帮助我们对运行中的容器进行一些...
2022-02-21 10:07:19 264
原创 #yyds干货盘点# 如何在 Kubernete 中做日志收集与管理(14)
说到日志,你应该不陌生。日志中不仅记录了代码运行的实时轨迹,往往还包含着一些关键的数据、错误信息,等等。日志方便我们进行分析统计及监控告警,尤其是在后期问题排查的时候,我们通过日志可以很方便地定位问题、现场复现及问题修复。日志也是做可观测性(Observability)必不可少的一部分。因此在使用 Kube...
2022-02-20 12:02:07 250
原创 #yyds干货盘点# 如何在 Kubernete 中运行 DaemonSet 守护进程?(13)
通过前面章节的学习,我们对 Kubernetes 中一些常见工作负载已经有所了解。比如无状态工作负载 Dployment 可以帮助我们运行指定数目的服务副本,并维护其状态,而对于有状态服务来说,我们同样可以采用 StatefulSet 来做到这一点。但是,在实际使用的时候,有些场景,比如监控各个节点的状态,...
2022-02-19 00:13:47 479
原创 #yyds干货盘点# Kubernetes helm 如何在生产环境中释放部署生产力?(12)
相信你对 Kubernetes 中的对象有了很多了解。Kubernetes 是一个强大的容器调度系统,你可以通过一些声明式的定义,很方便地在 Kubernetes 中部署业务。现在你一定很想尝试在 Kubernetes 中部署一个稍微复杂的系统,比如下面这个典型的三层架构:前端、后端和数据层。也许你内心...
2022-02-18 10:03:57 310
原创 #yyds干货盘点# Kubernetes 轻松搞定服务发现和负载均衡(11)
经过前面几章节的学习,我们已经可以发布高可用的业务了,通过 PV 持久化地保存数据,通过 Deployment或Statefulset 这类工作负载来管理多实例,从而保证服务的高可用。想一想,这个时候如果有别的应用来访问我们的服务的话,该怎么办呢?直接访问后端的 Pod IP 吗?不,这里我们还需要做服务发...
2022-02-17 10:07:27 146
原创 #yyds干货盘点# Kubernetes 怎样对业务数据进行持久化存储?(10)
通过前面的讲解,我们知道了如何在 Pod 中使用 Volume 来保存数据。Volume 跟 Pod 的生命周期是绑定的,当 Pod 被删除后,Volume 中的数据有可能会一同被删除,具体需要看对应的 volume plugin 的使用要求,你可以看上节的对比表格。存储需求而这里我们还需要考虑如下几个问...
2022-02-16 10:31:02 254
原创 #yyds干货盘点# 如何挑选合适的 Kubernetes 存储插件?(09)
在以前玩虚拟机的时代,大家比较少考虑存储的问题,因为在通过底层 IaaS 平台申请虚拟机的时候,大多数情况下,我们都会事先预估好需要的容量,方便虚拟机起来后可以稳定的使用这些存储资源。但是容器与生俱来就是按照可以“运行在任何地方”(run anywhere)这一想法来设计的,对外部存储有着天然的诉求和依赖,...
2022-02-15 09:38:10 330
原创 #yyds干货盘点# Kubernetes 管理业务配置方式有哪些?(08)
通过前面章节的学习,我们已经对 Kubernetes 中的 Pod 以及一些业务负载有所了解。你可以根据课程中提供的示例,自己动手尝试在集群中实践起来。在使用过程中,我们常常需要对 Pod 进行一些配置管理,比如参数配置文件怎么使用,敏感数据怎么保存传递,等等。有些人可能会觉得,为什么不把这些配置(不限于参...
2022-02-14 10:12:53 171
原创 #yyds干货盘点# Kubernetes 如何通过 StatefulSet 支持有状态应用?(07)
我们学习了 Kubernetes 中的无状态工作负载,并上手实践了 Deployment 对象,相信现在你已经慢慢喜欢上 Kubernetes 了。那么本节课,我们来一起看看 Kubernetes 中的另外一种工作负载 StatefulSet。从名字就可以看出,这个工作负载主要用于有状态的服务发布。关于有状...
2022-02-13 12:17:45 136
原创 #yyds干货盘点# 剖析 Kubernete 业务副本及水平扩展底层原理(06)
我们已经了解了 Kubernetes 中最关键的对象 Pod,也学习了一些 Pod 的常见用法。每一个 Pod 都是应用的一个实例,但是通常来说你不会直接在 Kubernetes 中创建和运行单个 Pod。因为 Pod 的生命周期是短暂的,即“用后即焚”。理解这一点很重要,这也是“不可变基础设施”这一理念在...
2022-02-12 11:57:58 126
原创 #yyds干货盘点# Kubernetes 最小调度单元 Pod 的使用进阶及实践(05)
相信你已经知道了 Pod 是 Kubernetes 中原子化的部署单元,它可以包含一个或多个容器,而且容器之间可以共享网络、存储资源。在日常使用过程中,也应该尽量避免在一个 Pod 内运行多个不相关的容器。在实际生产使用的过程中,通过 kubectl 可以很方便地部署一个 Pod。但是 Pod 运行过程中还...
2022-02-11 10:50:23 726
原创 #yyds干货盘点# Kubernetes 是如何搞定“不可变基础设施”的?(04)
我们已经了解了 Kubernetes 集群的搭建方式。从现在开始,我们就要跟 Kubernetes 集群打交道了。本节课我们会学习 Kubernetes 中最重要、也最核心的对象——Pod。在了解 Pod 之前,我们先来看一下CNCF 官方是怎么定义云原生的。云原生技术有利于各组织在公有云、私有云和混合...
2022-02-10 10:29:01 697
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人