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证书(私钥)

相关推荐
Csxyzj14 分钟前
Nginx:企业高性能web服务器(一)
运维·服务器·nginx
Eloudy16 分钟前
sunshine - ubuntu 22.04, moonlight - mac OS26 远程桌面
linux·运维·ubuntu
旗开得胜马到成功21 分钟前
工控系统备份的底层技术解析:老旧协议、零停机窗口与中科热备的专项破局
运维·服务器·vr
AC赳赳老秦23 分钟前
企业标签体系搭建:基于 OpenClaw 采集的多维度公开数据,构建企业画像标签库
java·运维·服务器·python·信息可视化·deepseek·openclaw
苍狗T24 分钟前
K8s 集群实战:基于 Harbor 私有仓库 + cri‑dockerd 完整部署
linux·运维·云原生·容器·kubernetes
EXI-小洲31 分钟前
Docker 容器部署 EMQX|MQTT 消息代理服务安装与配置教程
运维·mqtt·docker·emqx
石小千32 分钟前
X86下载 ARM 架构的包
linux·运维
殷忆枫34 分钟前
嵌入式Linux下基于FFmpeg实现MP4解码为JPG图片(SSD202D交叉编译实战)
linux·运维·ffmpeg
牢姐与蒯1 小时前
Linux进程(二)之进程概念
linux·运维·服务器·ubuntu
HiDev_1 小时前
【非标自动化】2、认识元器件(模拟量模块)
运维·自动化