183 篇笔记
DevOps学习路线图 学习路径 基础阶段 ├── Linux基础 ├── 网络基础 ├── 编程基础 └── 版本控制(Git) 进阶阶段 ├── 容器化(Docker) ├── CI/CD ├── 配置管理(Ansible) └── 监控基础 高级阶段 ├── Kubernetes ├── 云平...
DevOps未来:趋势与展望 DevOps演进历程 DevOps演进: ├── 传统运维: 手动操作,脚本自动化 ├── DevOps 1.0: 持续集成/持续交付 ├── DevOps 2.0: 云原生和容器化 ├── DevOps 3.0: 平台工程和GitOps └── D...
DevOps文化建设 DevOps核心原则 1. 文化转变:打破开发和运维的壁垒 2. 自动化:自动化一切可自动化的 3. 度量:用数据驱动决策 4. 分享:知识共享和协作 CALMS模型 | 要素 | 说明 | |------|------| | Culture | 文化 | | Automati...
容量规划:资源预测与规划 容量规划框架 容量规划流程: ├── 1. 收集历史数据 ├── 2. 分析使用模式 ├── 3. 预测未来需求 ├── 4. 制定扩展计划 └── 5. 验证和调整 数据收集 系统指标收集 bash !/bin/bash collect-metrics...
成本优化:云资源费用管理 成本优化框架 成本优化框架: ├── 资源右选: 选择合适的资源类型和规格 ├── 使用优化: 提高资源利用率 ├── 采购优化: 利用预留实例和折扣 └── 治理优化: 建立成本管理体系 资源右选 实例类型优化 bash AWS推荐实例类型 aws ce...
云迁移策略 迁移策略(6R) | 策略 | 说明 | 适用场景 | |------|------|----------| | Rehost | 重新托管(lift and shift) | 快速迁移 | | Replatform | 重新平台化 | 优化平台 | | Refactor | 重构 |...
HashiCorp Vault:密钥管理平台 什么是Vault HashiCorp Vault是一个用于安全访问秘密的工具。它提供了一个统一的接口来管理任何秘密,包括KV secrets、密码、证书、API密钥等。 Vault架构 Vault架构组件: ├── Auth Methods: 认证方...
高级监控与告警 监控架构 数据收集 ├── Metrics: Prometheus, Node Exporter ├── Logs: Fluentd, Filebeat └── Traces: Jaeger, OpenTelemetry 数据存储 ├── Prometheus TSDB ├── El...
密钥管理:安全存储敏感信息 什么是密钥管理 密钥管理是指安全地存储、访问和轮换敏感信息(如密码、API密钥、证书等)的实践。良好的密钥管理可以防止敏感信息泄露。 密钥管理原则 密钥管理核心原则: ├── 最小权限: 只授予必要的访问权限 ├── 加密存储: 密钥必须加密存储 ├── 定期...
灾难恢复计划 灾难恢复级别 | 级别 | RTO | RPO | 成本 | |------|-----|-----|------| | 冷备 | 24小时 | 24小时 | 低 | | 温备 | 4小时 | 1小时 | 中 | | 热备 | 1小时 | 15分钟 | 高 | | 双活 | 0 | 0...
零停机部署策略 部署策略对比 | 策略 | 停机时间 | 风险 | 复杂度 | |------|----------|------|--------| | 滚动更新 | 无 | 中 | 低 | | 蓝绿部署 | 无 | 低 | 中 | | 金丝雀发布 | 无 | 低 | 高 | | A/B测试 |...
镜像扫描:容器漏洞管理 什么是镜像扫描 镜像扫描是分析容器镜像中已知漏洞的过程。通过扫描镜像中的软件包和依赖项,识别CVE漏洞和配置问题,帮助团队在部署前修复安全问题。 扫描工具 Trivy bash 安装Trivy sudo apt-get install trivy 扫描镜像 trivy ima...
容器安全:Docker和Kubernetes安全 容器安全架构 容器安全层次: ├── 镜像安全: 扫描和验证镜像 ├── 运行时安全: 容器运行时保护 ├── 网络安全: 网络策略和隔离 ├── 存储安全: 数据加密和访问控制 └── 编排安全: Kubernetes安全配置...
合规与审计 合规框架 | 框架 | 说明 | 适用场景 | |------|------|----------| | SOC 2 | 服务组织控制 | SaaS服务 | | ISO 27001 | 信息安全管理 | 国际标准 | | GDPR | 通用数据保护 | 欧盟用户 | | PCI DSS...
零信任安全:Zero Trust Architecture 什么是零信任 零信任是一种安全模型,核心原则是"永不信任,始终验证"。它假设网络内外都存在威胁,每次访问请求都必须经过验证,无论请求来自何处。 零信任原则 零信任核心原则: ├── 永不信任: 不默认信任任何实体 ├── 始终验证:...
FinOps云财务管理 什么是FinOps FinOps是将财务责任引入云支出管理的运营框架。 FinOps核心原则 1. 问责制:团队对云支出负责 2. 可见性:了解成本构成 3. 优化:持续改进成本效率 4. 治理:建立成本控制机制 成本可见性 标签策略 yaml 必需标签 requiredla...
VPN部署:安全远程访问 VPN类型 VPN类型: ├── 远程访问VPN: 个人设备连接到企业网络 ├── 站点到站点VPN: 连接两个网络 ├── SSL VPN: 基于SSL/TLS的VPN └── IPSec VPN: 基于IPSec的VPN OpenVPN部署 安装配置 b...
生产就绪检查清单 检查清单 可靠性 - [ ] 健康检查配置(liveness、readiness、startup) - [ ] 优雅终止处理 - [ ] 资源限制设置 - [ ] 自动伸缩配置 - [ ] 故障转移机制 - [ ] 数据备份策略 安全性 - [ ] Secret管理 - [ ] R...
WAF安全:Web应用防火墙 什么是WAF WAF(Web Application Firewall,Web应用防火墙)是专门保护Web应用的安全设备,通过过滤和监控HTTP/HTTPS流量来阻止常见的Web攻击。 WAF架构 WAF部署架构: ├── 透明模式: 串联部署,不改变网络拓扑...
容量规划与管理 容量规划原则 1. 预测需求:基于历史数据和业务预测 2. 保留缓冲:预留20-30%的余量 3. 定期评估:每月/季度审查容量 4. 自动化伸缩:使用HPA和Cluster Autoscaler 容量指标 yaml 容量指标定义 capacitymetrics: compute...
混沌工程高级实践 高级故障类型 资源耗尽 yaml apiVersion: chaos-mesh.org/v1alpha1 kind: StressChaos metadata: name: cpu-stress spec: mode: one selector: labelSe...
CDN入门:内容分发网络 什么是CDN CDN(Content Delivery Network,内容分发网络)是通过在全球部署边缘节点,将内容缓存到离用户最近的位置,从而加速内容分发的网络系统。 CDN工作原理 CDN工作流程: ├── 1. 用户请求访问资源 ├── 2. DNS解析到最...
负载均衡:流量分发与优化 负载均衡原理 负载均衡核心概念: ├── 负载均衡器: 分发流量的中间件 ├── 后端服务器: 处理请求的服务实例 ├── 健康检查: 检测后端服务状态 ├── 会话保持: 维持用户会话 └── 故障转移: 自动切换故障节点 负载均衡算法 常见算法 ya...
事件管理与响应 事件管理流程 检测 → 分类 → 响应 → 恢复 → 复盘 事件分级 | 级别 | 影响 | 响应时间 | 升级路径 | |------|------|----------|----------| | P0 | 核心业务不可用 | 5分钟 | CTO | | P1 | 核心功能受损...
完整可观测性平台 可观测性架构 数据源 ├── Metrics → Prometheus → Grafana ├── Logs → Fluentd → Elasticsearch → Kibana └── Traces → Jaeger → Grafana 统一查询 └── Grafana (多数据...
高可用架构:系统可靠性设计 高可用核心概念 高可用设计原则: ├── 冗余设计: 消除单点故障 ├── 故障检测: 快速发现故障 ├── 自动切换: 快速恢复服务 ├── 数据一致性: 保证数据可靠 └── 容错设计: 容忍部分故障 可用性等级 yaml availability...
ArgoCD高级应用 ArgoCD架构 ArgoCD Server ├── API Server ├── Repo Server ├── Application Controller └── Redis (缓存) ApplicationSets yaml apiVersion: argoproj.i...
备份策略:数据保护最佳实践 备份策略框架 备份策略核心要素: ├── 备份类型: 全量、增量、差异 ├── 备份频率: 实时、每小时、每天 ├── 保留策略: 保留周期、版本数量 ├── 存储位置: 本地、异地、云存储 └── 验证机制: 定期测试、完整性检查 备份类型 全量备份...
平台工程实践 什么是平台工程 平台工程是构建和维护内部开发者平台的实践,旨在提高开发者生产力和用户体验。 核心原则 1. 自助服务:开发者可以自主完成常见任务 2. 标准化:提供标准化的工具和流程 3. 抽象复杂性:隐藏底层基础设施复杂性 4. 可观测性:提供统一的监控和日志 平台组件 内部开发者平...
灾难恢复:业务连续性保障 什么是灾难恢复 灾难恢复(Disaster Recovery,DR)是指在发生灾难性事件后,恢复IT系统和数据的策略和流程。目标是最小化业务中断时间,确保数据完整性。 关键指标 灾难恢复关键指标: ├── RPO (Recovery Point Objective):...
事后分析:Postmortem最佳实践 什么是事后分析 事后分析(Postmortem)是在事故或故障发生后进行的系统性回顾,目的是找出根本原因、总结经验教训并制定改进措施。一个良好的事后分析文化能帮助团队从每次事故中学习。 事后分析原则 事后分析核心原则: ├── 1. 无指责文化 (Blam...
CI/CD流水线设计 流水线原则 1. 快速反馈:尽早发现问题 2. 自动化:减少人工干预 3. 可重复:一致的构建过程 4. 可见性:所有步骤可追踪 流水线阶段 代码提交 → 构建 → 单元测试 → 集成测试 → 安全扫描 → 部署到Staging → 验收测试 → 部署到Production G...
Istio服务网格深入 高级流量管理 金丝雀发布 yaml apiVersion: networking.istio.io/v1beta1 kind: VirtualService metadata: name: myapp spec: hosts: - myapp http:...
事故响应:生产事件处理流程 事故响应框架 事故响应流程: ├── 1. 检测与告警 (Detection) ├── 2. 分类与优先级 (Triage) ├── 3. 响应与缓解 (Response) ├── 4. 恢复与验证 (Recovery) └── 5. 事后分析 (Po...
SLO/SLI:服务级别管理 核心概念 服务级别管理体系: ├── SLI (Service Level Indicator): 服务级别指标 ├── SLO (Service Level Objective): 服务级别目标 └── SLA (Service Level Agreeme...
Terraform高级模式 模块设计 模块结构 modules/ ├── vpc/ │ ├── main.tf │ ├── variables.tf │ ├── outputs.tf │ └── README.md ├── ecs/ │ ├── main.tf │ ├── v...
容器安全加固 安全层次 1. 镜像安全 2. 运行时安全 3. 网络安全 4. 集群安全 5. 数据安全 镜像安全 使用可信镜像 dockerfile 使用官方镜像 FROM node:18-alpine 固定版本 FROM node:18.17.0-alpine 使用SHA256 FROM nod...
错误预算:可靠性管理策略 什么是错误预算 错误预算是基于SLO(服务级别目标)计算出的允许失败空间。例如,99.9%的可用性目标意味着每个月允许有43.8分钟的停机时间。错误预算机制帮助团队在可靠性和发布速度之间取得平衡。 错误预算计算 基础计算 bash !/bin/bash error-budg...
SRE实践:Site Reliability Engineering 什么是SRE SRE(Site Reliability Engineering)是Google提出的一套运维方法论,将软件工程的方法应用于基础设施和运维问题。SRE的核心理念是用软件工程的方式解决运维问题,追求系统的可靠性和可扩展...
云成本优化策略 成本优化原则 1. 可见性:了解成本构成 2. 问责制:团队对成本负责 3. 优化:持续改进 4. 治理:建立成本控制机制 成本分析 AWS成本分析 bash 使用AWS CLI查询成本 aws ce get-cost-and-usage \ --time-period Star...
灾备恢复策略 灾备级别 | 级别 | RTO | RPO | 说明 | |------|-----|-----|------| | 冷备 | 小时级 | 天级 | 手动恢复 | | 温备 | 分钟级 | 小时级 | 半自动恢复 | | 热备 | 秒级 | 分钟级 | 自动切换 | | 双活 | 0...
Chaos Mesh:云原生混沌平台 什么是Chaos Mesh Chaos Mesh是CNCF孵化的云原生混沌工程平台,专为Kubernetes设计。它提供了丰富的故障注入能力,支持网络、IO、内核、压力等多种故障类型,并提供可视化Dashboard。 架构组件 Chaos Mesh架构: ├...
多集群管理 多集群场景 | 场景 | 说明 | |------|------| | 灾备 | 主备集群,故障切换 | | 地理分布 | 就近访问,低延迟 | | 环境隔离 | 开发/测试/生产分离 | | 合规要求 | 数据本地化 | 集群联邦 KubeFed bash 安装KubeFed kube...
混沌工程:系统韧性测试 什么是混沌工程 混沌工程是通过在系统中主动注入故障来验证系统韧性的实践。它帮助团队发现和修复潜在问题,在生产事故前提升系统的可靠性。Netflix最早提出并实践了这一理念。 混沌工程原则 混沌工程核心原则: 1. 建立稳态假设 2. 模拟真实世界的事件 3. 在生...
Terraform Provider:多云资源管理 什么是Terraform Provider Provider是Terraform与云平台、SaaS服务或其他API交互的插件。每个Provider负责理解和操作特定资源类型的CRUD操作。Terraform Registry提供了数千个Provid...
云原生架构设计 十二要素应用 | 要素 | 说明 | |------|------| | 1. 基准代码 | 一份代码,多次部署 | | 2. 依赖 | 显式声明依赖 | | 3. 配置 | 在环境中存储配置 | | 4. 后端服务 | 把后端服务当作附加资源 | | 5. 构建、发布、运行 | 严...
Terraform模块:代码复用与组织 什么是Terraform模块 模块是Terraform中实现代码复用的基本单元。它是一组资源和配置的集合,可以被多个项目重复使用。模块化设计能提高代码的可维护性、可测试性和可复用性。 创建模块 模块目录结构 modules/ ├── vpc/ │ ├──...
SRE实践方法论 什么是SRE SRE(Site Reliability Engineering)是将软件工程方法应用于基础设施和运维问题的实践。 核心概念 SLI(服务级别指标) yaml 可用性SLI slis: availability: type: successratio...
Terraform状态管理:State进阶 理解Terraform State Terraform State是Terraform的核心组件,记录了基础设施的当前状态以及配置与实际资源的映射关系。State文件通常存储在本地,但在团队协作中需要使用远程存储。 State文件结构 json { "...
混沌工程基础 什么是混沌工程 混沌工程是通过主动注入故障来验证系统韧性的实践方法。 核心原则 1. 建立稳态假设 2. 引入真实世界的事件 3. 在生产环境运行 4. 自动化持续运行 5. 最小化爆炸半径 混沌工程工具 | 工具 | 类型 | 特点 | |------|------|------|...
Terraform入门:基础设施即代码 什么是Terraform Terraform是HashiCorp开发的开源基础设施即代码(IaC)工具,允许你使用声明式配置文件来定义、部署和管理云基础设施。它支持多云环境,通过状态管理实现基础设施的版本控制。 安装Terraform Linux安装 bash...
微服务架构模式 核心模式 API网关 yaml apiVersion: networking.istio.io/v1beta1 kind: Gateway metadata: name: api-gateway spec: selector: istio: ingressgatewa...
OpenTelemetry:统一的可观测性标准 什么是OpenTelemetry OpenTelemetry(简称OTel)是一个开源的可观测性框架,由OpenTracing和OpenCensus合并而来。它提供了统一的API、SDK和工具集,用于采集Traces(追踪)、Metrics(指标)和L...
消息队列与异步通信 消息队列概念 | 概念 | 说明 | |------|------| | Producer | 消息生产者 | | Consumer | 消息消费者 | | Broker | 消息代理 | | Topic/Queue | 消息主题/队列 | | Partition | 分区 |...
服务发现与注册 服务发现模式 | 模式 | 说明 | 工具 | |------|------|------| | 客户端发现 | 客户端查询注册表 | Eureka | | 服务端发现 | 负载均衡器查询 | Consul, etcd | | DNS发现 | DNS解析 | CoreDNS | Co...
Jaeger分布式追踪:微服务链路追踪 什么是Jaeger Jaeger是Uber开源的分布式追踪系统,用于监控和诊断微服务架构中的请求链路。它基于OpenTracing标准,帮助开发人员理解服务间的调用关系、定位性能瓶颈。 架构组件 Jaeger架构: ├── Agent: 接收应用上报的追踪...
分布式追踪与可观测性 可观测性三支柱 | 支柱 | 说明 | 工具 | |------|------|------| | Metrics | 数值指标 | Prometheus | | Logs | 日志事件 | ELK Stack | | Traces | 请求追踪 | Jaeger/Zipkin...
Alertmanager:Prometheus告警管理 什么是Alertmanager Alertmanager是Prometheus生态中的告警管理组件,负责接收Prometheus发送的告警通知,进行去重、分组、路由和发送。它支持多种通知渠道,包括邮件、Slack、钉钉、企业微信等。 安装Ale...
云原生日志模式 日志类型 | 类型 | 说明 | 示例 | |------|------|------| | 结构化日志 | JSON格式 | 应用日志 | | 非结构化日志 | 纯文本 | 传统应用 | | 访问日志 | HTTP请求 | Nginx/Apache | | 审计日志 | 操作记录...
Grafana入门:数据可视化与监控面板 什么是Grafana Grafana是一个开源的数据可视化和监控平台,支持多种数据源(Prometheus、Elasticsearch、InfluxDB等),能够创建丰富的交互式仪表盘。它是DevOps团队不可或缺的监控工具。 安装Grafana Docke...
Prometheus 监控系统 什么是 Prometheus Prometheus 是一个开源的系统监控和告警工具包,由 SoundCloud 开发。它通过 Pull 模式采集指标数据,使用 PromQL 进行查询,并支持多维数据模型和强大的告警功能。 核心概念 - 指标 (Metric): 可测量...
Kubernetes自动伸缩 自动伸缩类型 | 类型 | 说明 | |------|------| | HPA | 水平Pod自动伸缩 | | VPA | 垂直Pod自动伸缩 | | Cluster Autoscaler | 集群节点自动伸缩 | 水平Pod自动伸缩(HPA) 基本配置 yaml a...
Kubernetes网络策略 什么是网络策略 网络策略用于控制Pod之间的网络流量,实现网络级别的安全隔离。 基本概念 - Ingress:入站流量 - Egress:出站流量 - Pod选择器:目标Pod - 命名空间选择器:目标命名空间 - CIDR:IP地址范围 创建网络策略 限制入站流量 y...
ELK Stack 日志分析 什么是 ELK Stack ELK Stack 是由 Elasticsearch、Logstash 和 Kibana 组成的日志分析平台: - Elasticsearch: 搜索和存储引擎 - Logstash: 数据收集和处理管道 - Kibana: 可视化和分析界面...
Kubernetes Secrets管理 什么是Secrets Kubernetes Secrets用于存储敏感信息,如密码、令牌、证书等。 创建Secret 命令行创建 bash 从字面值创建 kubectl create secret generic mysecret \ --from-...
Elasticsearch 入门基础 什么是 Elasticsearch Elasticsearch 是一个开源的分布式搜索和分析引擎,基于 Apache Lucene 构建。它提供近实时的搜索能力,广泛用于日志分析、全文搜索和数据分析。 安装 Elasticsearch Ubuntu/Debian...
Redis Cluster 集群部署 什么是 Redis Cluster Redis Cluster 是 Redis 的分布式解决方案,通过分片(Sharding)将数据分布到多个节点,实现数据水平扩展和高可用性。 集群架构 ┌────────────────────────────────────...
GitOps工作流实践 什么是GitOps GitOps是一种以Git为中心的运维方法,通过Git仓库管理基础设施和应用配置。 核心原则 1. 声明式配置:所有配置以声明式方式定义 2. 版本控制:所有配置存储在Git中 3. 自动同步:系统自动将实际状态同步到期望状态 4. 持续调和:持续检测和修...
Redis 入门基础 什么是 Redis Redis(Remote Dictionary Server)是一个开源的、基于内存的高性能键值数据库。它支持多种数据结构,包括字符串、哈希、列表、集合和有序集合,广泛用于缓存、消息队列和实时应用。 安装 Redis Ubuntu/Debian bash s...
ELK Stack高级应用 Elasticsearch高级配置 集群配置 yaml elasticsearch.yml cluster.name: my-cluster node.name: node-1 node.roles: [master, data] network.host: 0.0.0....
MySQL 主从复制 什么是主从复制 MySQL 主从复制是将主数据库的数据变更自动复制到从数据库的技术。它实现了数据冗余、读写分离和高可用性。 复制原理 主库 (Master) 从库 (Slave) ┌─────────────┐...
Grafana可视化仪表板 Grafana简介 Grafana是一个开源的数据可视化和监控平台,支持多种数据源。 安装Grafana bash Docker docker run -d --name grafana \ -p 3000:3000 \ -v grafanadata:/v...
Prometheus高级监控 高级配置 服务发现 yaml scrapeconfigs: # 基于文件的服务发现 - jobname: 'file-sd' filesdconfigs: - files: - '/etc/prometheus/targe...
MySQL 备份与恢复 备份类型 逻辑备份 使用 SQL 语句备份,文件为文本格式: bash mysqldump 备份 mysqldump -u root -p mydb > backup.sql 带时间戳的备份 mysqldump -u root -p mydb > "mydb$(date +%...
服务网格Istio入门 什么是服务网格 服务网格是处理服务间通信的基础设施层,提供流量管理、安全和可观测性功能。 Istio架构 数据平面: - Envoy代理:拦截服务间的所有流量 控制平面: - istiod:管理代理的配置和证书 - Pilot:流量管理 - Citadel:安全管理 - Ga...
MySQL 入门基础 什么是 MySQL MySQL 是一个开源的关系型数据库管理系统(RDBMS),广泛用于 Web 应用开发。它支持标准 SQL 语法,具有高性能、高可靠性和易用性。 安装 MySQL Ubuntu/Debian bash sudo apt update sudo apt ins...
Nginx SSL/TLS 配置 什么是 SSL/TLS SSL(Secure Sockets Layer)和 TLS(Transport Layer Security)是用于在互联网上提供安全通信的加密协议。HTTPS 是 HTTP 的加密版本,通过 SSL/TLS 协议保护数据传输安全。 获取...
Helm包管理器 什么是Helm Helm是Kubernetes的包管理器,用于定义、安装和升级复杂的Kubernetes应用。 核心概念 | 概念 | 说明 | |------|------| | Chart | 应用包,包含所有Kubernetes资源定义 | | Repository | Ch...
Nginx 负载均衡配置 什么是负载均衡 负载均衡是将网络流量分发到多个后端服务器的技术,用于提高应用的可用性、可靠性和性能。Nginx 支持多种负载均衡算法。 负载均衡算法 轮询(Round Robin) 默认算法,按顺序依次分配请求: nginx upstream backend { s...
Kubernetes进阶:高级调度策略 调度策略概述 Kubernetes调度器负责将Pod分配到合适的Node节点。 节点亲和性 yaml apiVersion: v1 kind: Pod metadata: name: with-affinity spec: affinity:...
Nginx 反向代理配置 什么是反向代理 反向代理是指 Nginx 代表后端服务器接收客户端请求,然后将请求转发给后端服务器,并将响应返回给客户端。客户端不知道实际的后端服务器地址。 基本反向代理配置 简单代理 nginx server { listen 80; servername...
基础设施即代码实践 什么是IaC 基础设施即代码(Infrastructure as Code)是使用代码来管理和配置基础设施的方法。 核心价值 - 版本控制:基础设施变更可追踪 - 可重复性:相同配置可多次部署 - 自动化:减少手动操作 - 文档化:代码即文档 工具对比 | 工具 | 类型 | 适...
Nginx 入门基础 什么是 Nginx Nginx 是一个高性能的 HTTP 和反向代理服务器,也是一款 IMAP/POP3/Proxy 服务器。它以高并发、低内存消耗和模块化架构著称,广泛用于 Web 服务、负载均衡、缓存和 SSL 终端。 安装 Nginx Ubuntu/Debian bash...
容器编排技术对比 编排工具概览 | 工具 | 特点 | 适用场景 | |------|------|----------| | Docker Swarm | 简单易用 | 小规模部署 | | Kubernetes | 功能强大 | 企业级应用 | | Nomad | 灵活轻量 | 多 workloa...
SSL证书管理 SSL证书类型 | 类型 | 验证方式 | 适用场景 | |------|----------|----------| | DV | 域名验证 | 个人网站 | | OV | 组织验证 | 企业网站 | | EV | 扩展验证 | 金融机构 | | 自签名 | 无验证 | 内部测试...
Ansible Inventory 主机清单 什么是 Inventory Inventory 是 Ansible 中定义和组织被管理主机的清单。它包含主机列表、组、变量和连接参数,是 Ansible 执行任务的基础。 静态 Inventory INI 格式 ini inventory/hosts.i...
负载测试与压力测试 测试类型 | 类型 | 目的 | |------|------| | 负载测试 | 测试系统在预期负载下的表现 | | 压力测试 | 测试系统在超出负载时的行为 | | 浸泡测试 | 测试系统长时间运行的稳定性 | | 尖峰测试 | 测试系统应对突发流量的能力 | Apache...
Ansible Roles 角色管理 什么是 Role Role 是 Ansible 中组织 Playbook 的最佳方式,它将变量、任务、处理程序、模板、文件等组件按目录结构组织,实现代码的模块化和复用。 Role 目录结构 roles/ └── nginx/ ├── defaults/...
Web服务器性能优化 Nginx优化 进程和连接 nginx workerprocesses auto; # 自动匹配CPU核心 workerrlimitnofile 65535; # 最大文件描述符 events { workerconnections 4096; #...
Ansible Playbook 编写 Playbook 基础结构 yaml --- - name: 描述 Playbook 的目的 hosts: 目标主机组 become: yes # 使用 sudo gatherfacts: yes # 收集系统信息 vars:...
高可用架构设计 高可用概念 高可用(High Availability)指系统在面对故障时仍能正常提供服务的能力。 可用性指标 | 等级 | 年停机时间 | 可用性 | |------|-----------|--------| | 2个9 | 3.65天 | 99% | | 3个9 | 8.76小...
Ansible 入门基础 什么是 Ansible Ansible 是一个开源的 IT 自动化工具,用于配置管理、应用部署、任务自动化和编排。它使用 SSH 协议与被管理节点通信,无需在被管理节点上安装代理(Agentless)。 核心概念 - 控制节点 (Control Node): 运行 Ansi...
Linux性能调优进阶 性能分析方法论 USE方法 - Utilization:资源使用率 - Saturation:饱和度 - Errors:错误数 RED方法 - Rate:请求速率 - Errors:错误率 - Duration:请求耗时 CPU调优 CPU亲和性 bash 查看CPU核心 l...
Kubernetes 监控与日志 监控架构 Kubernetes 监控通常采用以下架构: - Prometheus: 指标采集和存储 - Grafana: 可视化展示 - Alertmanager: 告警管理 - EFK/ELK: 日志收集和分析 部署 Prometheus + Grafana 使用...
Redis运维管理 Redis简介 Redis是一个开源的内存数据结构存储系统,用作数据库、缓存和消息代理。 安装Redis bash Ubuntu/Debian sudo apt-get install redis-server CentOS/RHEL sudo yum install redis...
Kubernetes 存储管理 存储概念 PersistentVolume (PV) PV 是集群级别的存储资源,由管理员预先配置或使用 StorageClass 动态创建: yaml apiVersion: v1 kind: PersistentVolume metadata: name: m...
Terraform基础设施即代码 什么是Terraform Terraform是HashiCorp开发的基础设施即代码(IaC)工具,用于定义和管理云资源。 核心特点 - 声明式配置 - 多云支持 - 计划和预览变更 - 依赖关系管理 - 状态管理 安装Terraform bash macOS br...
Kubernetes 网络模型详解 Kubernetes 网络原则 Kubernetes 网络模型遵循以下核心原则: 1. 每个 Pod 有唯一的 IP 地址 2. 所有 Pod 可以直接通信,无需 NAT 3. 节点上的 Agent 可以与该节点上所有 Pod 通信 4. Pod 看到的自身 IP...
Kubernetes Jobs 批处理任务 什么是 Job Job 是 Kubernetes 中用于运行一次性任务的控制器。它会创建一个或多个 Pod,确保指定数量的 Pod 成功完成任务后终止。适用于批处理、数据迁移、备份等场景。 Job 的特点 - 运行一次性任务 - 确保任务成功完成 - 支持...
Jenkins流水线实践 Jenkins Pipeline简介 Pipeline是Jenkins的核心功能,允许定义代码化的构建、测试和部署流程。 安装Jenkins bash Docker方式 docker run -d --name jenkins \ -p 8080:8080 -p 5...
MySQL运维:数据库管理实战 MySQL安装与配置 Docker安装 bash 运行MySQL容器 docker run -d \ --name mysql \ -p 3306:3306 \ -e MYSQLROOTPASSWORD=rootpass \ -e MYSQLDATAB...
Kubernetes DaemonSet 守护进程集 什么是 DaemonSet DaemonSet 是 Kubernetes 中用于确保每个(或指定)节点上运行一个 Pod 副本的控制器。它适用于需要在每个节点上运行的守护进程,如日志收集、监控代理、网络插件等。 DaemonSet 的特点 - 每...
ELK Stack日志管理 ELK Stack简介 ELK Stack是Elasticsearch、Logstash和Kibana的组合,用于日志的收集、存储、搜索和可视化。 架构 数据源 → Logstash → Elasticsearch → Kibana │ │...
Nginx配置:Web服务器运维 Nginx简介 Nginx是一个高性能的HTTP和反向代理服务器,以高并发、低内存消耗著称,广泛用于Web服务器、反向代理和负载均衡。 安装与基本配置 bash Ubuntu/Debian sudo apt update sudo apt install nginx...
Prometheus监控系统 Prometheus简介 Prometheus是一个开源的监控和告警系统,具有多维数据模型和强大的查询语言。 架构 Prometheus Server ├── 数据采集 (Pull) ├── 时序数据库存储 ├── PromQL查询 └── 告警规则 Exporters...
Kubernetes StatefulSet 有状态应用 什么是 StatefulSet StatefulSet 是 Kubernetes 中用于管理有状态应用的控制器。与 Deployment 不同,StatefulSet 为每个 Pod 提供稳定的网络标识和持久存储,适用于数据库、消息队列等需要...
Vagrant开发环境管理 什么是Vagrant Vagrant是一个用于构建和管理虚拟化开发环境的工具,使用单一配置文件即可创建一致的开发环境。 安装Vagrant bash Windows 下载安装包: https://www.vagrantup.com/downloads macOS brew...
Kubernetes Helm 包管理器 什么是 Helm Helm 是 Kubernetes 的包管理器,类似于 Linux 的 apt 或 yum。它将 Kubernetes 资源打包成 Chart,支持模板化、版本管理和依赖管理,极大简化了应用的部署和管理。 安装 Helm bash macO...
Ansible Role:可复用组件 Role概述 Role是Ansible中实现代码复用的核心机制。它将Playbook分解为可重用的组件,包含任务、变量、模板和处理程序。 Role目录结构 roles/ └── nginx/ ├── defaults/ │ └── main....
Kubernetes RBAC 权限控制 什么是 RBAC RBAC(Role-Based Access Control)是 Kubernetes 中基于角色的访问控制机制。它通过定义角色(Role)和绑定(Binding)来控制用户或服务账号对集群资源的访问权限,实现最小权限原则。 核心概念 Ro...
Git版本控制基础 Git简介 Git是一个分布式版本控制系统,用于跟踪文件的变更历史。 基本配置 bash 设置用户信息 git config --global user.name "Your Name" git config --global user.email "your@email.com...
Ansible Playbook:任务编排 Playbook基础 基本结构 yaml deploy.yml --- - name: 部署应用 hosts: webservers become: yes vars: appname: myapp appversion: "1...
MySQL运维管理 安装MySQL bash Ubuntu/Debian sudo apt-get install mysql-server sudo mysqlsecureinstallation CentOS/RHEL sudo yum install mysql-server sudo sys...
Kubernetes Namespace 命名空间 什么是 Namespace Namespace 是 Kubernetes 中用于将集群资源划分为多个虚拟集群的机制。它为不同团队、项目或环境提供逻辑隔离,避免资源名称冲突,并支持基于命名空间的访问控制和资源配额。 默认命名空间 Kubernetes...
Ansible基础:自动化配置管理 Ansible简介 Ansible是一个开源的自动化工具,用于配置管理、应用部署和任务自动化。它使用SSH协议,无需在目标主机安装代理。 核心优势 yaml 优势: - 无代理:通过SSH连接,无需安装agent - 简单易学:使用YAML编写Playbo...
Nginx配置与优化 Nginx简介 Nginx是一个高性能的HTTP和反向代理服务器,以其高并发、低内存消耗著称。 安装Nginx bash Ubuntu/Debian sudo apt-get update sudo apt-get install nginx CentOS/RHEL sudo...
Kubernetes Secrets 密钥管理 什么是 Secret Secret 是 Kubernetes 中用于存储和管理敏感信息(如密码、Token、证书)的 API 对象。Secret 以 Base64 编码存储,相比 ConfigMap 提供了更好的安全性。但请注意,Secret 只是编码...
GitHub Actions:工作流自动化 GitHub Actions简介 GitHub Actions是GitHub的原生CI/CD平台,允许在代码仓库中直接定义自动化工作流。 基础配置 工作流文件结构 yaml .github/workflows/ci.yml name: CI Pipelin...
Kubernetes ConfigMap 配置管理 什么是 ConfigMap ConfigMap 是 Kubernetes 中用于存储非机密配置数据的 API 对象。它允许将配置与容器镜像解耦,使应用配置更加灵活和可维护。ConfigMap 可以存储键值对、配置文件或完整的目录结构。 创建 Con...
GitLab CI:DevOps平台 GitLab CI简介 GitLab CI/CD是GitLab内置的持续集成和交付工具,提供从代码管理到部署的完整DevOps解决方案。 基本配置 .gitlab-ci.yml基础 yaml .gitlab-ci.yml stages: - build...
Ansible自动化运维入门 什么是Ansible Ansible是一个无代理的自动化工具,通过SSH协议管理远程主机,实现配置管理、应用部署和任务自动化。 核心特点 - 无代理:不需要在被管理节点安装客户端 - 简单:使用YAML编写Playbook - 强大:支持复杂的工作流 - 安全:通过SS...
Kubernetes Ingress 入口控制 什么是 Ingress Ingress 是 Kubernetes 中管理外部 HTTP/HTTPS 访问集群内 Service 的 API 对象。它提供域名路由、SSL 终止和基于名称的虚拟主机功能,是替代 NodePort 和 LoadBalance...
Jenkins:自动化服务器 Jenkins简介 Jenkins是一个开源的自动化服务器,用于构建、测试和部署软件。它支持丰富的插件生态系统,可以集成各种DevOps工具。 安装Jenkins Docker安装 bash 运行Jenkins docker run -d \ --name jenk...
CI/CD基础概念 什么是CI/CD CI(持续集成) 开发人员频繁地将代码集成到共享仓库,每次集成都通过自动化构建和测试验证。 CD(持续交付/持续部署) - 持续交付:代码随时可以部署到生产环境 - 持续部署:代码通过所有测试后自动部署到生产环境 CI/CD流程 代码提交 → 自动构建 → 自动...
Kubernetes Service网络 Service概述 Service为Pod提供稳定的网络访问入口,实现服务发现和负载均衡。 Service类型 ClusterIP 集群内部访问: yaml apiVersion: v1 kind: Service metadata: name: mya...
CI/CD基础:持续集成与部署 什么是CI/CD CI/CD是现代软件开发的核心实践,通过自动化流程提高交付效率和代码质量。 - CI(持续集成):开发人员频繁合并代码,自动构建和测试 - CD(持续交付):代码随时可以部署到生产环境 - CD(持续部署):通过所有测试的代码自动部署到生产环境 CI...
Kubernetes Namespace:资源隔离 Namespace概述 Namespace是Kubernetes中实现多租户资源隔离的核心机制。它为集群内的资源提供逻辑隔离,不同Namespace的资源相互独立。 创建Namespace bash 命令行创建 kubectl create nam...
Kubernetes Deployment详解 Deployment概述 Deployment提供声明式的Pod更新,支持滚动更新和回滚。 Deployment配置 yaml apiVersion: apps/v1 kind: Deployment metadata: name: myapp...
Kubernetes Pod详解 Pod概念 Pod是Kubernetes中最小的可部署单元,是一组共享网络和存储的容器。 Pod生命周期 Pending → Running → Succeeded/Failed ↓ 等待调度 运行中 完成/失败 Pod状态 | 状态 | 说明...
Kubernetes配置管理:ConfigMap与Secret ConfigMap概述 ConfigMap用于存储非敏感的配置数据,可以以环境变量或卷挂载的方式注入容器。 创建ConfigMap 从字面值创建 bash kubectl create configmap app-config \...
Kubernetes基础入门 什么是Kubernetes Kubernetes(K8s)是一个开源的容器编排平台,用于自动化容器化应用的部署、扩展和管理。 核心架构 Master节点: ├── kube-apiserver # API服务器 ├── etcd...
Kubernetes Deployment:应用部署与更新 Deployment概述 Deployment是Kubernetes中管理无状态应用的核心对象,提供声明式更新、滚动升级和回滚能力。 创建Deployment 命令行创建 bash 基本创建 kubectl create deploymen...
Kubernetes Service:服务发现与负载均衡 Service概述 Service是Kubernetes中为一组Pod提供稳定访问入口的抽象。它通过标签选择器(Selector)关联Pod,并提供负载均衡能力。 Service类型 ClusterIP(默认) 集群内部访问的虚拟IP: ya...
Docker监控与健康检查 容器监控工具 Docker内置命令 bash 查看容器资源使用 docker stats 查看容器进程 docker top containername 查看容器详情 docker inspect containername 查看容器变化 docker diff cont...
Kubernetes Pod深入:多容器与生命周期 Pod设计模式 Sidecar模式 Sidecar容器与主容器共享网络和存储,提供辅助功能: yaml sidecar-pod.yaml apiVersion: v1 kind: Pod metadata: name: app-with-log...
Docker日志管理 日志驱动 Docker支持多种日志驱动: | 驱动 | 说明 | |------|------| | json-file | JSON格式(默认) | | syslog | 发送到syslog | | journald | 发送到systemd journal | | flue...
Kubernetes基础:集群入门 什么是Kubernetes Kubernetes(简称K8s)是Google开源的容器编排平台,用于自动化容器化应用的部署、扩展和管理。它提供了声明式配置、自动扩缩容、服务发现和负载均衡等核心能力。 核心架构 控制平面(Control Plane) yaml 组件...
Docker安全实践 容器安全原则 1. 最小权限原则 2. 镜像安全扫描 3. 网络隔离 4. 资源限制 5. 日志审计 镜像安全 使用可信镜像 bash 使用官方镜像 docker pull nginx:alpine 验证镜像签名 docker trust inspect --pretty ng...
Dockerfile最佳实践 优化构建层缓存 Docker按层构建镜像,每条指令创建一层。合理安排指令顺序可以利用缓存。 层缓存原则 dockerfile 不好的写法(每改动代码就重新安装依赖) COPY . /app RUN npm install 好的写法(先复制依赖文件,再复制代码) COPY...
Docker Compose:多容器编排 Docker Compose简介 Docker Compose是一个用于定义和运行多容器Docker应用的工具。通过一个YAML文件配置应用的服务,然后一键创建和启动所有服务。 安装与配置 bash 安装Docker Compose sudo curl -L...
Dockerfile编写:最佳实践 Dockerfile指令详解 FROM指令 dockerfile 指定基础镜像 FROM ubuntu:22.04 使用构建参数 ARG BASEIMAGE=ubuntu:22.04 FROM ${BASEIMAGE} 多平台构建 FROM --platform=...
Docker Compose多容器编排 什么是Docker Compose Docker Compose是一个用于定义和运行多容器Docker应用的工具。使用YAML文件配置应用的服务、网络和卷。 安装Docker Compose bash Linux sudo curl -L "https://g...
Docker数据持久化 为什么需要数据持久化 容器是临时的,删除容器后数据会丢失。数据持久化可以: - 保存容器生成的数据 - 在容器间共享数据 - 数据备份和恢复 数据卷(Volume) bash 创建数据卷 docker volume create mydata 查看数据卷 docker vol...
Docker容器操作:生命周期管理 容器生命周期 Docker容器有完整的生命周期:创建(created)→ 运行(running)→ 暂停(paused)→ 停止(stopped)→ 删除(deleted)。 容器创建与运行 基本操作 bash 创建容器(不启动) docker create --...
Docker网络详解 Docker网络模式 | 模式 | 说明 | |------|------| | bridge | 桥接网络(默认) | | host | 主机网络 | | none | 无网络 | | overlay | 跨主机网络 | | macvlan | MAC地址虚拟化 | Brid...
Docker镜像管理:构建与优化 镜像分层原理 Docker镜像采用分层(Layer)存储结构,每一层都是只读的。当容器运行时,会在镜像层之上添加一个可写层。 bash 查看镜像分层 docker history nginx:latest docker inspect nginx:latest |...
Docker基础入门 什么是Docker Docker是一个开源的容器化平台,允许开发者将应用程序及其依赖打包成轻量级、可移植的容器。 核心概念 | 概念 | 说明 | |------|------| | 镜像(Image) | 只读模板,包含运行应用所需的一切 | | 容器(Container)...
Docker基础:容器技术入门 什么是Docker Docker是一个开源的容器化平台,允许开发者将应用及其依赖打包到一个轻量级、可移植的容器中。容器在任何支持Docker的环境中都能以相同方式运行。 核心概念 镜像(Image) 镜像是只读模板,包含运行应用所需的所有内容:代码、运行时、库、环境变...
Linux系统性能优化基础 性能优化原则 1. 先监控,后优化 2. 找到瓶颈点 3. 一次只改一个参数 4. 测试验证效果 性能监控工具 CPU监控 bash 查看CPU使用率 top htop 查看负载 uptime 查看CPU信息 lscpu cat /proc/cpuinfo 查看进程CPU...
Linux自动化运维:脚本实战 自动化运维概述 自动化运维是通过脚本和工具,将重复性运维工作自动执行的过程。掌握Shell脚本编程是运维工程师的核心技能之一。 脚本规范 脚本结构 bash !/bin/bash ============================================...
Linux安全加固:系统安全最佳实践 安全加固概述 系统安全加固是通过一系列配置和措施,减少系统受攻击面的过程。运维工程师需要从账户、文件、网络、审计等多个层面进行加固。 账户安全 密码策略 bash 配置密码复杂度 cat /etc/security/pwquality.conf minlen =...
Linux启动故障修复 常见启动故障 1. GRUB损坏 2. 文件系统损坏 3. 内核问题 4. 配置文件错误 5. 磁盘故障 GRUB修复 GRUB损坏 bash 使用Live CD启动 挂载系统分区 mount /dev/sda1 /mnt 挂载必要目录 mount --bind /dev /...
Shell脚本进阶技巧 数组操作 定义和使用 bash 定义数组 arr=("apple" "banana" "cherry") 访问元素 echo ${arr[0]} # 第一个元素 echo ${arr[@]} # 所有元素 echo ${#arr[@]}...
Linux网络进阶:配置与调试 网络配置基础 ip命令 现代Linux系统使用ip命令替代ifconfig: bash 查看所有网络接口 ip addr show 查看特定接口 ip addr show eth0 启用/禁用接口 sudo ip link set eth0 up sudo ip li...
Linux信号处理机制 什么是信号 信号是Linux系统中进程间通信的一种异步方式。信号可以中断进程的正常执行流程。 常见信号 | 信号 | 编号 | 说明 | 默认动作 | |------|------|------|----------| | SIGHUP | 1 | 挂起 | 终止 | | S...
Linux性能监控:工具与实践 性能监控的重要性 在生产环境中,及时发现和解决性能问题是运维工程师的核心职责。Linux提供了丰富的性能监控工具,帮助我们分析CPU、内存、磁盘和网络的使用情况。 CPU性能监控 top命令 top是最常用的实时性能监控工具: bash 启动top top 按CPU使...
Linux内核基础:理解系统核心 什么是Linux内核 Linux内核是操作系统的核心组件,负责管理系统硬件资源并为上层应用程序提供系统调用接口。它运行在特权模式(Ring 0),直接与硬件交互。 内核架构 Linux采用宏内核(Monolithic Kernel)架构,主要包含以下子系统: 1....
Linux环境变量配置 什么是环境变量 环境变量是系统运行时的动态值,用于存储系统配置、路径信息等。它们可以被子进程继承。 环境变量类型 按作用范围分类 | 类型 | 说明 | |------|------| | 局部变量 | 仅在当前Shell会话中有效 | | 全局变量 | 对所有用户和子进程有...
Linux安全基础 安全原则 1. 最小权限原则 2. 纵深防御原则 3. 默认拒绝原则 4. 职责分离原则 用户安全 密码策略 bash 设置密码过期策略 sudo chage -M 90 -m 7 -W 14 username 查看密码策略 sudo chage -l username 强制用户...
Linux启动流程详解 启动流程概述 Linux启动流程可以分为以下几个阶段: BIOS/UEFI → Bootloader → Kernel → systemd → 系统服务 → 登录界面 阶段1:BIOS/UEFI 1. 上电自检(POST) 2. 查找启动设备 3. 加载Bootloader...
Linux进程间通信 进程间通信概述 进程间通信(IPC)是指不同进程之间交换数据的机制。 主要IPC方式 管道(Pipe) 管道是最简单的IPC方式,用于父子进程之间通信。 c include <unistd.h> int pipefd[2]; pipe(pipefd); // 父进程写入 wri...
Linux软件编译与安装 为什么需要源码编译 1. 获取最新版本 2. 自定义编译选项 3. 优化特定硬件 4. 包管理器中没有的软件 编译基础 基本流程 bash 1. 下载源码 wget http://example.com/software-1.0.tar.gz 2. 解压 tar -xzf...
SSH远程访问与密钥管理 SSH简介 SSH(Secure Shell)是用于安全远程访问的协议,它通过加密通信保护数据传输。 基本连接 bash 基本连接 ssh username@hostname 指定端口 ssh -p 2222 username@hostname 使用指定密钥 ssh -i...
Linux网络故障排查 故障排查思路 网络问题排查应遵循从底层到高层的顺序: 1. 物理层(网线、网卡) 2. 数据链路层(MAC地址) 3. 网络层(IP地址、路由) 4. 传输层(端口、连接) 5. 应用层(DNS、服务) 基本诊断工具 网络连通性测试 bash Ping测试 ping 8.8....
Linux定时任务:Crontab详解 什么是Crontab Crontab是Linux系统中用于设置周期性执行任务的工具。通过crontab,可以定时执行脚本、备份、清理等运维任务。 Crontab命令 bash 编辑当前用户的crontab crontab -e 查看当前用户的crontab c...
Vim编辑器入门 为什么学习Vim Vim是Linux系统中最常用的文本编辑器之一,几乎所有Linux发行版都预装了Vim。掌握Vim能够让你在任何Linux环境下高效编辑文件。 启动和退出Vim bash 启动Vim vim filename 退出(不保存) :q! 保存并退出 :wq ZZ 保存...
Linux文本处理三剑客:grep、sed、awk grep - 文本搜索 grep用于搜索文件中匹配指定模式的行。 基本用法 bash 搜索包含error的行 grep "error" logfile 忽略大小写 grep -i "error" logfile 递归搜索目录 grep -r "er...
Linux日志管理基础 日志的重要性 日志是系统运行的记录,对于故障排查、安全审计和性能分析至关重要。 系统日志文件 | 文件 | 说明 | |------|------| | /var/log/syslog | 系统日志 | | /var/log/auth.log | 认证日志 | | /var/...
Linux磁盘管理 查看磁盘信息 bash 查看所有磁盘 lsblk 查看磁盘详情 sudo fdisk -l 查看磁盘使用情况 df -h 查看目录大小 du -sh /var/log du -sh / | sort -rh | head -10 磁盘分区 MBR分区 bash 启动fdisk s...
Linux包管理基础 包管理器概述 Linux使用包管理器来安装、更新和删除软件包。不同的发行版使用不同的包管理器。 Debian/Ubuntu - APT 基本操作 bash 更新包索引 sudo apt update 安装软件包 sudo apt install nginx 安装多个包 sudo...
Linux服务管理与systemd systemd简介 systemd是现代Linux系统的初始化系统和服务管理器,取代了传统的SysV init。 服务管理命令 基本操作 bash 启动服务 systemctl start nginx 停止服务 systemctl stop nginx 重启服务...
Linux进程管理 进程概念 进程是程序的一次执行实例,是Linux系统资源分配和调度的基本单位。 查看进程 ps命令 bash 查看当前用户进程 ps -ef 查看详细信息 ps aux 查找特定进程 ps aux | grep nginx 按CPU使用排序 ps aux --sort=-%cpu...
Linux系统监控入门 为什么需要系统监控 系统监控可以帮助我们: - 及时发现系统瓶颈 - 预防系统故障 - 优化系统性能 - 规划资源扩展 CPU监控 top命令 bash 启动top top 常用快捷键 P - 按CPU排序 M - 按内存排序 1 - 显示每个CPU核心 q - 退出 top...
Linux防火墙配置基础 防火墙概述 防火墙是网络安全的第一道防线,用于控制进出网络的流量。Linux提供了多种防火墙工具。 iptables基础 四表五链 四表: - raw:连接跟踪 - mangle:修改数据包 - nat:地址转换 - filter:过滤(默认表) 五链: - INPUT:入...
DNS深入学习与配置 DNS工作原理 DNS(Domain Name System)是互联网的"电话簿",将人类可读的域名转换为机器可读的IP地址。 DNS解析流程 1. 客户端检查本地DNS缓存 2. 查询系统hosts文件 3. 向本地DNS服务器发起查询 4. 本地DNS服务器查询根DNS服务...
HTTP协议详解 什么是HTTP HTTP(HyperText Transfer Protocol,超文本传输协议)是Web应用的基础协议,用于客户端和服务器之间的通信。 HTTP请求 请求结构 请求方法 URL 协议版本 请求头字段: 值 ... 请求体 请求方法 | 方法 | 说明 | 特点 |...
网络基础:TCP/IP协议入门 OSI七层模型与TCP/IP四层模型 OSI七层模型 | 层次 | 名称 | 功能 | 典型协议 | |------|------|------|----------| | 7 | 应用层 | 为应用程序提供网络服务 | HTTP, FTP, SMTP, DNS |...
Shell脚本编程入门 什么是Shell脚本 Shell脚本是将一系列命令写入文件中,然后批量执行的程序。它是Linux自动化运维的基础工具。 第一个Shell脚本 bash !/bin/bash 这是一个注释 echo "Hello, World!" 执行脚本: bash chmod +x scr...
Linux权限管理详解 权限的基本概念 Linux采用严格的权限控制机制,每个文件和目录都有所有者(owner)、所属组(group)和其他用户(others)三种权限类别。 权限类型 | 权限 | 文件 | 目录 | |------|------|------| | 读(r) | 查看文件内容 |...
Linux用户与组管理 用户和组的概念 Linux是一个多用户操作系统,通过用户和组来管理系统资源的访问权限。 - 用户(User):系统中的每个登录账户 - 组(Group):用户的集合,便于批量管理权限 - 主组(Primary Group):用户登录时所属的组 - 附加组(Supplement...
Linux命令行基础:Shell入门 什么是Shell Shell是Linux系统的命令行界面,它接收用户输入的命令并将其传递给操作系统内核执行。最常用的Shell是Bash(Bourne Again Shell)。 基本命令操作 文件和目录操作 bash 列出目录内容 ls...
Linux文件系统结构详解 Linux文件系统层次标准(FHS) Linux采用树状目录结构,所有文件都从根目录/开始。Linux文件系统层次标准(Filesystem Hierarchy Standard)定义了各目录的用途。 核心目录详解 / - 根目录 所有目录的起点,是整个文件系统的根。 /...
Linux基础入门:Linux操作系统简介 什么是Linux Linux是一个开源的类Unix操作系统内核,由芬兰大学生Linus Torvalds于1991年首次发布。如今Linux已经发展成为一个完整的操作系统生态,广泛应用于服务器、嵌入式设备、超级计算机和移动设备(Android基于Linux...