Linux常用脚本

一、服务器初始化脚本

1.1 安装常用软件包

1
2
3
4
#!/bin/bash
# 安装常用软件包
yum update -y
yum install -y vim wget curl git net-tools sysstat ntpdate lrzsz

1.2 设置时区为中国标准时间

1
2
3
#!/bin/bash
# 设置时区为中国标准时间
timedatectl set-timezone Asia/Shanghai

二、应用部署脚本

2.1 Nginx一键安装

1
2
3
4
5
6
#!/bin/bash
# 安装Nginx
yum install -y epel-release
yum install -y nginx
systemctl start nginx
systemctl enable nginx

2.2 MySQL一键安装

1
2
3
4
5
6
7
#!/bin/bash
# 安装MySQL
yum install -y mysql-server
systemctl start mysqld
systemctl enable mysqld
# 获取临时root密码
grep 'temporary password' /var/log/mysqld.log

2.3 Redis一键安装

1
2
3
4
5
#!/bin/bash
# 安装Redis
yum install -y redis
systemctl start redis
systemctl enable redis

三、监控与日志配置脚本

3.1 Zabbix Agent一键安装

1
2
3
4
5
6
#!/bin/bash
# 安装Zabbix Agent
yum install -y zabbix-agent
sed -i "s/^# Server=.*/Server=zabbix-server-ip/" /etc/zabbix/zabbix_agentd.conf
systemctl start zabbix-agent
systemctl enable zabbix-agent

3.2 Prometheus Node Exporter一键安装

1
2
3
4
5
6
#!/bin/bash
# 安装Prometheus Node Exporter
wget https://github.com/prometheus/node_exporter/releases/download/vXX/node_exporter-XX.linux-amd64.tar.gz
tar xvfz node_exporter-XX.linux-amd64.tar.gz
cd node_exporter-XX.linux-amd64
./node_exporter &

四、容器化部署脚本

4.1 Docker一键安装

1
2
3
4
5
6
7
#!/bin/bash
# 安装Docker
yum install -y yum-utils device-mapper-persistent-data lvm2
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum install -y docker-ce docker-ce-cli containerd.io
systemctl start docker
systemctl enable docker

4.2 Kubernetes Helm一键安装

1
2
3
#!/bin/bash
# 安装Helm
curl https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash

五、备份与恢复脚本

5.1 MySQL备份脚本

1
2
3
4
5
#!/bin/bash
# MySQL备份脚本
BACKUP_DIR=/backup/mysql
DATE=$(date +%F-%H-%M-%S)
mysqldump -u root -p --all-databases > ${BACKUP_DIR}/all-databases-${DATE}.sql