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

相关推荐
cws20040133 分钟前
HeidiSQL 使用操作说明书
运维·数据库·windows·mysql·heidisql
prettyxian39 分钟前
【linux】进程概念(1)PCB、系统调用与 proc 目录全解析
linux·运维·服务器
乾元1 小时前
用 AI 做联动:当应用层出现问题,网络如何被“自动拉入决策回路”
运维·开发语言·网络·人工智能·ci/cd·自动化
youxiao_901 小时前
Docker 容器(一)
运维·docker·容器
小尧嵌入式1 小时前
Linux进程线程与进程间通信
linux·运维·服务器·c语言·开发语言·数据结构·microsoft
Arvin6271 小时前
docker /var/lib/docker/overlay2磁盘满的处理方法
运维·docker·容器
Bruce_Liuxiaowei1 小时前
网站敏感文件_目录大全(分类记忆+风险标注)
运维·网络·网络协议·http·网络安全·https
csdn_aspnet1 小时前
MobaXterm 运维实战、技巧与自动化
运维·自动化·mobaxterm
2201_761199041 小时前
jenkins找不到Build when a change is pushed to GitHub
运维·github·jenkins
独角鲸网络安全实验室2 小时前
高危预警!React核心组件曝CVSS 9.8漏洞,数百万开发者面临远程代码执行风险
运维·前端·react.js·网络安全·企业安全·漏洞·cve-2025-11953