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

相关推荐
Percep_gan6 小时前
Linux中安装Redis,很详细
linux·运维·redis
七七powerful6 小时前
运维养龙虾--AI 驱动的架构图革命:draw.io MCP 让运维画图效率提升 10 倍,使用codebuddy实战
运维·人工智能·draw.io
枕书6 小时前
实战记录:如何使用 Docker 一键部署长亭 PandaWiki 智能知识库
运维·docker·容器
feng_you_ying_li7 小时前
linux之用户的权限详解(4)
linux·运维·服务器
TEC_INO11 小时前
嵌入式 Linux 开发知识总结
linux·运维·服务器
养生技术人11 小时前
Oracle OCP认证考试题目详解082系列第5题
运维·数据库·sql·oracle·开闭原则
坚持就完事了12 小时前
Linux中的权限信息
linux·运维·服务器
殷紫川12 小时前
告别手动部署噩梦:CI/CD 持续交付全链路实战
运维·架构·自动化运维
supersolon12 小时前
WSL2(Linux)升级docker
linux·运维·docker·wsl·升级
人工干智能13 小时前
用AI写Fusion 360脚本:个人版也能免费玩自动化
运维·人工智能·自动化·fusion