CentOS LAMP自动化运维实践涉及多个方面,包括环境搭建、配置管理、监控和日志管理等。以下是一些关键步骤和实践:
首先,确保你已经安装了CentOS操作系统。你可以从CentOS官方网站下载ISO镜像并进行安装。
使用yum包管理器安装LAMP(Linux, Apache, MySQL, PHP)组件:
sudo yum install -y httpd mysql-server php php-mysqlnd
启动Apache和MySQL服务,并设置它们开机自启:
sudo systemctl start httpd
sudo systemctl enable httpd
sudo systemctl start mysqld
sudo systemctl enable mysqld
Ansible是一个强大的自动化工具,可以用来管理服务器配置。
在控制节点上安装Ansible:
sudo yum install -y ansible
创建一个Ansible Playbook来配置Web服务器和数据库服务器。例如,webserver.yml:
---
- hosts: webserver
become: yes
tasks:
- name: Install Apache
yum:
name: httpd
state: present
- name: Start Apache service
service:
name: httpd
state: started
enabled: yes
- name: Install PHP and MySQL support
yum:
name: "{{ item }}"
state: present
with_items:
- php
- php-mysqlnd
运行Playbook来配置Web服务器:
ansible-playbook webserver.yml
Prometheus是一个开源的监控系统,Grafana是一个可视化工具。
在监控节点上安装Prometheus:
wget https://github.com/prometheus/prometheus/releases/download/v2.30.3/prometheus-2.30.3.linux-amd64.tar.gz
tar xvfz prometheus-2.30.3.linux-amd64.tar.gz
cd prometheus-2.30.3.linux-amd64
编辑prometheus.yml配置文件:
scrape_configs:
- job_name: 'node'
static_configs:
- targets: ['<node_ip>:9100']
启动Prometheus:
./prometheus --config.file=prometheus.yml
在监控节点上安装Grafana:
sudo yum install -y grafana
启动Grafana:
sudo systemctl start grafana-server
sudo systemctl enable grafana-server
访问http://<monitor_ip>:3000,使用默认用户名和密码(admin/admin)登录Grafana,并添加Prometheus数据源。
ELK Stack包括Elasticsearch、Logstash和Kibana。
在日志节点上安装Elasticsearch:
wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.10.0-linux-x86_64.tar.gz
tar xvfz elasticsearch-7.10.0-linux-x86_64.tar.gz
cd elasticsearch-7.10.0
编辑elasticsearch.yml配置文件:
network.host: 0.0.0.0
启动Elasticsearch:
./bin/elasticsearch
在日志节点上安装Logstash:
wget https://artifacts.elastic.co/downloads/logstash/logstash-7.10.0-linux-x86_64.tar.gz
tar xvfz logstash-7.10.0-linux-x86_64.tar.gz
cd logstash-7.10.0
编辑logstash.conf配置文件:
input {
file {
path => "/var/log/httpd/access_log"
start_position => "beginning"
}
}
output {
elasticsearch {
hosts => ["localhost:9200"]
index => "apache-access-%{+YYYY.MM.dd}"
}
}
启动Logstash:
./bin/logstash -f logstash.conf
在日志节点上安装Kibana:
wget https://artifacts.elastic.co/downloads/kibana/kibana-7.10.0-linux-x86_64.tar.gz
tar xvfz kibana-7.10.0-linux-x86_64.tar.gz
cd kibana-7.10.0
编辑kibana.yml配置文件:
server.host: "0.0.0.0"
elasticsearch.hosts: ["http://localhost:9200"]
启动Kibana:
./bin/kibana
访问http://<log_node_ip>:5601,使用默认用户名和密码(kibana/kibana)登录Kibana,并查看日志数据。
通过以上步骤,你可以实现CentOS LAMP环境的自动化运维,包括环境搭建、配置管理、监控和日志管理。使用Ansible进行配置管理,Prometheus和Grafana进行监控,ELK Stack进行日志管理,可以大大提高运维效率和系统稳定性。