SRE技能积累

1.如何配置一个公网域名

由于国内域名需要进行备案,本文仅介绍,如何配置一个海外能访问的公网域名。

1.1 DNS配置

选取一个DNS服务商,比如aws route53或dns.com

host zone配置根域名(root domain)

根据页面进行配置

创建record,对应子域名(sub domain)

子域名中可以配置可访问的公网IP或SLB的CNAME地址,例如Cloudflare等等。

  • 如果是公网IP,又分两种情况
    • 公网SLB,配置对应后端ECS或EC2,服务器中nginx接收处理域名请求
    • 公网ECS或EC2,服务器中nginx接收处理域名请求

2.弹性网卡、ECS和SLB分别是什么?

VPC 是一种云计算服务,提供了一个隔离的虚拟网络环境,允许用户在云平台上定义和管理自己的网络。它相当于在云中搭建一个专属的网络空间。

弹性网卡 是云服务器的虚拟网络接口卡,用户可以创建、关联、配置和解除关联虚拟网络接口,一个ECS可以绑定多个弹性网卡。可以有多个ip,主网卡和辅助网卡,可以通过不同价格来路由流量。删除ECS实例,会释放绑定的所有网卡。

SLB 通过对多台ECS进行负载均衡流量分发调度,清除单点故障并提升应用系统的可靠性与吞吐能力。 使用场景:申请一个SLB有公网地址,然后设置服务器组(工作场景只需设置一台ECS),然后制定监听端口(80/443),通过访问SLB即可访问到ECS。

ECS 阿里云提供的一种 弹性云服务器 服务,它是云计算环境下的虚拟化计算资源,相当于传统物理服务器的云端版本。用户可以使用 ECS 快速创建、管理和扩展虚拟机实例来运行各种应用程序和服务。

3.如何对服务器进行扩容

扩容脚本适合ubuntu或debian

bash 复制代码
#!/bin/bash
set -e
[[ $EUID -ne 0 ]] && echo 'Error: This script must be run as root!' && exit 1
#确定架构及系统
command -v apt >/dev/null 2>&1 || { apt=0; }
command -v yum >/dev/null 2>&1 || { yum=0; }
[[ ! -n "$yum" ]] && os='centos'
[[ ! -n "$apt" ]] && os='debian'
[[ "$os" == '' ]] && echo 'Error: Your system is not supported to run it!' && exit 1
if [ "$os" == 'centos' ]; then
    # 安装lvm2
    yum install -y lvm2 &>/dev/null
    rpm -q lvm2 >/dev/null 2>&1 || { echo "LVM2 package detection failed"; exit 1; }
fi
if [ "$os" == 'debian' ]; then
    # 安装lvm2
    apt install -y lvm2 &>/dev/null
    dpkg -s lvm2 >/dev/null 2>&1 || { echo "LVM2 package detection failed"; exit 1; }
fi
#适合扩容已有数据盘,并且vg为vg01,且lvpath为/dev/mapper/vg01-lv01
# 获取所有未分区的磁盘
for disk in $(lsblk -do NAME,TYPE | awk '$2=="disk" {print "/dev/"$1}'|grep "/dev/s");do
    [[ $(lsblk -n ${disk} 2>/dev/null | wc -l) == 1 ]] && disks="${disks} ${disk}"
done
# 检测是否有未分区的磁盘
test -z ${disks} && echo "No unpartitioned disks" && exit 1
# 分区
for disk in ${disks}
do
    # 通过fdisk命令创建分区
    echo -e "n\np\n1\n\n\nw" | fdisk ${disk}
    sleep 1
    # 重新加载分区表
    partprobe ${disk}1
done
# 扩容
for disk in ${disks}
do
    pvcreate ${disk}1
    sleep 1
    vgextend vg01 ${disk}1
    sleep 1
    lvextend -l +100%FREE /dev/mapper/vg01-lv01
    sleep 1
    resize2fs  /dev/mapper/vg01-lv01
done
df -h|grep mapper

如何记住这个图,我们先想下如何我们最熟悉的两个事务:磁盘和文件系统。

磁盘:图中 Disk /dev/sda

文件系统:逻辑卷和目录 一一对应, lv_backup

LVM的核心概念

  1. 物理卷 (PV)

物理磁盘或分区,例如 /dev/sda1,经过初始化后成为LVM的基础单元。

  1. 卷组 (VG)

把多个物理卷组合在一起形成一个存储池,可以动态分配和管理空间。

  1. 逻辑卷 (LV)

从卷组中分配的虚拟存储单元,用于挂载文件系统(如 ext4 或 xfs)。逻辑卷可以看作一个可变大小的"虚拟分区"。

适用场景

虚拟化环境:动态调整存储空间需求。

数据库存储:需要高效管理和扩展存储空间。

多磁盘管理:整合多块磁盘,统一分配存储空间。

4.利用nginx作为边缘节点,实现CDN

NFS,nginx的关键配置

5.grafana如何做移植数据库

需要把有些表清理,然后把不同数据库相同表的字段对齐

6.如何使用helm chart部署prometheus

CRD:ServiceMonitor的配置 Prometheus additionalScrape

7.ETCD如何读取监控数据

etcd的启动参数

ca证书(根证书)、cert证书(公钥)、key证书(私钥)

相关推荐
腾科IT教育5 小时前
Oracle认证怎么选?2026年OCP/OCM报考指南
linux·运维·华为认证·hcie·开闭原则·datacom
幸福指北6 小时前
🚀 开源了,一个人 + AI 肝出一个 AI 终端 | AShell 技术分享
运维·人工智能·ai·终端
肥胖小羊7 小时前
微信社群自动化管理与防骚扰系统的设计与实现
运维·自动化
AI办公探索者8 小时前
仓储物流AI任务执行的技术拆解:从WMS自动化到多设备协同的落地路径
运维·人工智能·ai·自动化
longerxin20209 小时前
nano编辑器插入、编辑完整操作教程(Linux日志/配置专用)
linux·运维·编辑器
cesium vue10 小时前
nginx 流媒体配置
运维·nginx
木心术110 小时前
GitHub Actions自动化运维实战:从CI/CD到全链路DevOps
运维·自动化·github
糯米导航10 小时前
实践教程|搭建电商 AI 无限画布,实现百款商品主图自动化批量生成
运维·人工智能·自动化
朴马丁10 小时前
从制造到智造:PLM如何赋能企业研发创新
大数据·运维·人工智能·食品行业·流程行业plm·化工新材料行业·新能源材料行业
爱小黄11 小时前
使用docker搭建集群-使用 Docker 搭建 KingbaseES 集群
运维·docker·容器