Linux
未读6bfaebf3e9f67b5202b8d6c1cdcd16f7b5ba01cd0c86fe46b43ae97bedd417e201620164b95ab1b7fa7df1a594d7fac3de1d2b98ec0ba9d635085ab0d01ce782cc5ba6be68db2dff3e03d603a2589e330e6cbbbd8891357e2af7f9c72c0e07eca71661352b6620d51ec97fc0d9a3f543d1e4d60192fda0b9e1241db59a4ee1bace263228d6dae35af9c3de71b46352defcb10439cca417504c48ac07074c1383cff39a90364ee45615584e683a93978ac089bee7df9f50e79d6d25834ecb36e7e23569fda2ae5436a84024cd0e1e02be4830f9714faddab2382427bb850f7b3809c8b071c835673fd8b911dc945a6e23eba17f3cffc295aee ...
6bfaebf3e9f67b5202b8d6c1cdcd16f7b5ba01cd0c86fe46b43ae97bedd417e2de80d7cccb76f7bec7f0746223308235cb572adde79c988c2e3966deff928490f920e9711b05534f930fc7f56655905afa24188175b82eca3077025de83891f920fc8892bcc5f29076149e05c8012dbcb9f90ae8699c957124931fe3d75930850577bf12d3d21d5dcc42b4ae9353a401d9b0067ba9316b4a43696217c2c13e2e710769e64d40ad28997f9869eec8fb1b39a2887ba6f5485955ff238772570d2e99b57fae82b9aad9042ff8d5f040d070a71b0e67dfde267227b14e6d0cb38ceb37f0e9c68058162458b27db05963eb61cd76c2b0532d2d83f ...
Linux
未读检查是否安装,如已安装,先卸载 1rpm -qa | grep Mariadb* 配置要安装的[mariadb](MariaDB Server - All releases - MariaDB.org))版本对应的yum源 https://mariadb.org/mariadb/all-releases 选择要下载的版本,这里以10…11演示 点击 MariaDB Repositories 后,选择对应的版本,然后复制下方内容 按照提示信息创建yum源信息文件 vi /etc/yum.repos.d/MariaDB.repo 这里选择的阿里云 1234567891011# MariaDB 10.11 CentOS repository list - created 2023-02-17 07:13 UTC# https://mariadb.org/download/[mariadb]name = MariaDB# rpm.mariadb.org is a dynamic mirror if your preferred mirror goes offline. See https: ...
Linux
未读适用场景:数据备份、跨服务器同步、增量传输 简介 rsync 是一个快速、多功能的文件传输工具,支持增量传输、压缩等功能。它可以通过 SSH 或者通过 xinetd 启动的服务模式来同步文件。 核心优势: 增量传输:仅传输文件变化部分,减少带宽消耗。 压缩数据:传输过程中自动压缩,节省网络流量。 多平台支持:Linux、Windows、macOS 均可使用。 安全性:通过 SSH 加密 或 独立服务模式 确保数据安全。 安装rsync 12345# 检查是否已安装rpm -qa | grep rsync || whereis rsync# 未安装则执行yum -y install rsync 服务端配置 方法一:xinetd 启动模式(低负载场景) 步骤: 安装 xinetd: xinetd 是一个超级服务器,可以用来启动 rsync 服务。 1yum -y install xinetd 编辑 xinetd 配置文件 /etc/xinetd.d/rsync: 确保包含以下内容: 12345678910service rsync{ disable = no ...
前提条件:配置ssh免密码登陆 通过 SSH 运行命令的问题在于,通常您必须自己键入它们或上传脚本文件。但是,通过一些 bash 知识,您可以通过 SSH 传递整个脚本,而无需.sh 在远程计算机上保存该文件。 解决方案:通过标准输入传递脚本 SSH 命令有一种模式,您可以在其中在远程服务器上运行任何单个命令。为了运行多个命令,您必须使用以下技巧: 1ssh user@remotehost 'bash -s' < script.sh 该bash -s 命令的意思是“在新的 bash 会话中执行以下命令”。该-s 标志使其从标准输入读取,该< script.sh 位将本地脚本文件读入标准输入。 该文件完全在本地读取,并且全部发送到远程服务器而无需上传任何内容。这确实需要您将所有命令放入一个单独的脚本文件中。 一条指令ssh $ip "ls /home/" 在脚本中运行许多远程命令 如果您想在另一台服务器上运行 shell 脚本的一部分,而不是全部,您可以在脚本中包含如下嵌套块: 123456789101112131415161718ss ...
Docker
未读什么是Controller 集群的智能管家 Controller是Kubernetes的核心控制回路,通过持续监控集群状态并驱动实际状态向期望状态收敛。它解决了分布式系统中的状态维护难题,确保应用在节点故障、资源波动等情况下保持稳定运行。 典型案例:当Node节点意外宕机时,ReplicaSet Controller会立即检测到Pod缺失,并在健康节点上重新创建Pod,整个过程通常在10-30秒内完成。 Controller与Pod的协同关系 特性 独立Pod Controller管理的Pod 生命周期 随节点销毁永久丢失 自动重建保障持续运行 扩缩容 需手动操作 支持声明式伸缩(如kubectl scale) 更新策略 无滚动更新能力 支持蓝绿/金丝雀等高级策略 自愈能力 依赖外部监控 内置健康检查与自动恢复 Controller和Pod是通过label标签建立关系的 Deployment控制器核心应用场景 无状态应用管理(如Web服务) 滚动更新:分批次替换Pod实现零停机升级 版本回滚:一键回退到历史稳定版本 副本维持:确保指定数量的P ...
Docker
未读标签(Label)系统:Kubernetes的资源组织核心 Label 本质与特性 特性 说明 数据结构 键值对(key=value)附着在资源对象(如Pod)上的元数据 核心作用 资源分类/筛选/关联(Controller通过Label选择其管理的Pod) 不可变性 创建后不可修改(需删除重建),确保资源关系稳定性 多标签支持 单个资源可拥有多个Label(如app=frontend, env=prod, version=v1.2.0) Label 操作示例 12345678# 创建Pod时定义Labelkubectl run nginx --image=nginx -l "app=web,env=prod"# 为已有Pod添加Labelkubectl label pods my-pod backup=true# 按Label筛选资源kubectl get pods -l "app=web, !canary" # 查询web应用的非金丝雀版本 Controller 与 Pod 的标签绑定关系 工作原理 ...
Docker
未读初识 Pod:Kubernetes 的最小运行单元 Pod 是什么? 在 Kubernetes(K8s)的世界中,Pod 是最小的可部署和管理单元。它不仅是容器的“家”,更是 Kubernetes 资源对象模型的核心。无论是部署应用、管理网络,还是配置存储,所有操作最终都会通过 Pod 来实现。 Pod 的核心特性 资源共享: Pod 内的多个容器可共享网络(对外同一 IP 和 端口 空间)和存储卷。例如亲密性应用,一个 Tomcat 容器和一个 Redis 容器可以共享数据卷,实现高效通信。 生命周期短暂: Pod 可能因节点故障被重新调度到其他节点,但新 Pod 与旧 Pod 完全无关。因此,状态数据必须存储在外部(如持久卷)。 平坦网络: 所有 Pod 处于同一共享网络空间,可通过 IP 直接访问,无需额外配置。 Pod 的内部结构:Pause 容器与多容器协作 Pause 容器:Pod 的“守护者” 每个 Pod 都包含一个由 Kubernetes 自动创建的Pause 容器,它是 Pod 的“根容器”。其作用是: 共享资源:为其他容器提供网络和存储的共享基础。 生命周 ...
简介 什么是 kubectl? kubectl 是 Kubernetes 官方提供的命令行工具,用于与 Kubernetes 集群交互。它支持对集群、节点、Pod、服务等资源的创建、查询、更新和删除(CRUD)操作,是管理 Kubernetes 的核心工具。 支持声明式和命令式两种资源管理方式: 声明式:通过定义资源清单(YAML/JSON)描述期望状态,由 Kubernetes 自动调整。 命令式:直接通过命令操作资源(如增删改查)。 kubectl 的核心功能 查看资源状态(get, describe)。 创建、更新、删除资源(create, apply, delete)。 管理部署与滚动更新(rollout)。 调试与日志查看(logs, exec)。 配置多集群访问与上下文切换。 基础命令 命令结构 1kubectl [command] [TYPE] [NAME] [flags] command:指定要对资源执行的操作,例如get, describe, create, delete, apply 等。 TYPE:资源类型(如 pod, deployment, s ...