1、制作引导U盘
2、了解服务器型号,和如何进入引导
3、确定业务类型,和分区规划
4、每特殊要求就最小化安装和配置网络,管理网测试连通性(如果是dell iDrac口远程进来的另说)
5、打补丁,加固
如编写各种脚本用于监控,备份,部署,
监控的重点是监控指标,不在脚本,因为监控脚本会根根监控平台的变化而改变。
之前的zabbix、nagios到现在的prometheus,2017年以前是zabbix使用最普遍,因为界面好看,社区活跃。
nagios免费版没有图形化界面。prometheus随着云原生而兴起。
这些监控平台我都搭建过,这两年以prometheus+grafana为主
1、确认网络传输协议SMB路径,NAS的用户名密码作为变量,
2、卸载卸载本地挂载点再mount
3、tar -cvpzf压缩文件,文件名加时间标签,复制到NAS的挂载点等待
4、检查、删除过期备份,关闭链接
5、对重要系统定期测试恢复情况,异常要有告警日志
RAID0无冗余,速度双倍
RAID1一比一备份,速度是一倍的磁盘
RAID10是先组0再组1
RAID5多用于NAS大容量存储器,用的是奇偶校验码原理,恢复较慢,且有一定风险,同样的奇偶校验码原理还有在储存中间件minio里面用到。
磁盘管理涉及到的是磁盘、物理卷、逻辑卷。
磁盘底层raid容灾,一般固态和机械硬盘的性能差三倍。
物理卷是关联的磁盘物理分区。
卷组将分区合并,随后再划分逻辑卷。
每一层的拆分和组合都是为了功能多样化。
最近一次是安装系统是给根分区划小了,只有200G,因为docker的一些数据默认留在根分区没挂到其他分区。
后面需要从home划过来1300G。
流程是:
1、测试环境先模拟,写出处理流程在文档
2、df -h 查看分区情况,确认可转移的空间
3、确定从/home分区划走1300G给根分区
4、确认home分区没有业务数据写入,复制一份数据到其他分区,umount
5、lvreduce -L划出空间,重新格式化,数据迁移回来
6、lvextend 1300G到centos-root,然后xfs_growfs拓展空间
7、最后df -hT确认
如果是云服务器,那买一块空白盘添加或者停机扩容,不用自己操作。
prometheus有对Linux监控的探针
| 分类 | 功能 | 命令 | 说明 |
|---|---|---|---|
| 系统管理 | 查看系统信息 | uname -a |
显示系统信息,包括内核版本和系统架构 |
| 查看内核版本 | uname -r |
显示当前运行的内核版本 | |
| 查看系统发行版信息 | cat /etc/centos-release |
显示当前的 CentOS 版本信息 | |
| 查看当前用户 | whoami |
显示当前登录用户 | |
| 切换用户 | su - [username] |
切换到指定用户 | |
| 查看登录历史 | last |
显示系统最近的登录记录 | |
| 系统重启 | reboot |
重启系统 | |
| 系统关机 | shutdown -h now |
立即关机 | |
| 定时关机 | shutdown -h +30 |
系统将在 30 分钟后关机 | |
| 查看系统启动时间 | uptime |
显示系统的启动时间、当前时间、运行时间、用户数和系统负载 | |
| 进程管理 | 查看进程 | ps -aux |
显示所有进程的详细信息 |
| 实时监控进程 | top |
实时显示系统进程状态和资源使用情况 | |
| 结束进程 | kill [PID] |
结束指定的进程 | |
| 强制结束进程 | kill -9 [PID] |
强制结束指定的进程 | |
| 查看进程树 | pstree |
以树状图显示进程 | |
| 磁盘管理 | 查看磁盘使用情况 | df -h |
显示磁盘分区的挂载信息和使用情况 |
| 查看目录大小 | du -sh [directory] |
显示指定目录的大小 | |
| 挂载文件系统 | mount |
挂载文件系统 | |
| 卸载文件系统 | umount |
卸载文件系统 | |
| 格式化磁盘 | mkfs.ext4 /dev/sdX |
格式化指定的磁盘分区为 ext4 文件系统 | |
| 检查和修复文件系统 | fsck |
检查和修复文件系统 | |
| 网络管理 | 查看网络配置 | ifconfig |
显示网络接口的配置信息 |
| 配置网络接口 | nmcli |
使用 NetworkManager 命令行工具配置网络接口 | |
| 查看路由表 | route -n |
显示路由表信息 | |
| 测试网络连通性 | ping |
发送 ICMP 回显请求以测试网络连通性 | |
| 显示网络连接 | netstat -tunlp |
显示系统的所有网络连接 | |
| 解析 DNS | dig [domain] |
进行 DNS 解析查询 | |
| 用户管理 | 添加用户 | useradd [username] |
创建新用户 |
| 删除用户 | userdel [username] |
删除用户 | |
| 修改用户密码 | passwd [username] |
修改指定用户的密码 | |
| 添加组 | groupadd [groupname] |
创建新组 | |
| 删除组 | groupdel [groupname] |
删除组 | |
| 文件管理 | 查看文件内容 | cat [file] |
显示文件内容 |
| 分页查看文件内容 | less [file] |
分页查看文件内容 | |
| 创建文件 | touch [file] |
创建一个空文件 | |
| 删除文件 | rm [file] |
删除文件 | |
| 复制文件 | cp [source] [destination] |
复制文件 | |
| 移动文件 | mv [source] [destination] |
移动或重命名文件 | |
| 查找文件 | find [path] -name [name] |
查找文件 | |
| 包管理 | 安装软件包 | yum install [package] |
使用 YUM 包管理器安装软件包 |
| 删除软件包 | yum remove [package] |
使用 YUM 包管理器删除软件包 | |
| 更新系统 | yum update |
更新系统所有已安装的软件包 | |
| 列出已安装的软件包 | yum list installed |
列出系统中所有已安装的软件包 | |
| 日志管理 | 查看系统日志 | journalctl |
查看使用 systemd 管理的系统日志 |
| 查看特定服务日志 | journalctl -u [service] |
查看特定服务的日志 | |
| 实时查看日志 | tail -f [logfile] |
实时查看日志文件内容 | |
| 性能监控 | 查看系统性能 | vmstat |
显示系统的进程、内存、分页、块 I/O、陷阱和 CPU 活动信息 |
| 查看磁盘 I/O 性能 | iostat |
显示 CPU 使用情况和磁盘 I/O 性能信息 | |
| 跟踪系统调用 | strace [command] |
跟踪指定命令的系统调用 | |
| 分析系统性能 | perf |
强大的 Linux 性能分析工具,用于分析 CPU 性能瓶颈、跟踪系统调用等 | |
| 安全管理 | 配置防火墙 | firewall-cmd |
使用 firewalld 管理和配置防火墙 |
| 检查端口状态 | nmap |
网络扫描工具,用于检查开放端口和服务 | |
| 查看和设置 SELinux 模式 | sestatus / setenforce |
查看和设置 SELinux 模式 | |
| 配置 SSH 服务 | sshd |
配置和管理 SSH 服务 |