0%

黑马头条环境安装笔记

安装说明

  1. 操作系统: CentOS 7.2
  2. 以单机安装为例

安装步骤

1 设置网络

1
sudo yum install net-tools

可以设置主机名:

1
hostnamectl set-hostname toutiao-web

2 安装MySQL

参考「CentOS7安装MySQL」安装MySQL

3 安装Docker

作用:运行mysql slave

1
2
3
4
5
6
7
8
9
10
11
12
13
sudo yum install -y yum-utils \
device-mapper-persistent-data \
lvm2

sudo yum-config-manager \
--add-repo \
https://download.docker.com/linux/centos/docker-ce.repo

sudo yum install docker-ce docker-ce-cli containerd.io

sudo systemctl start docker

sudo docker run hello-world

4 使用Docker安装MySQL

1
sudo docker pull mariadb:10.3.13

5 配置MySQL主从同步

编辑MySQL master的配置 /etc/my.cnf.d/server.cnf

[mysqld] 标签下方添加

1
2
log-bin=mysql-bin
server-id=1

重启mysql

1
sudo systemctl restart mariadb

编辑MySQL slave的配置

1
2
sudo cp /etc/my.cnf.d /opt/my.cnf.d-slave
sudo vi /opt/my.cnf.d-slave/server.cnf

[mysqld] 标签下方修改

1
2
3
server_id = 10
read_only=on
port=8306

启动docker容器mysql slave

1
sudo docker run --name mariadb -v /opt/my.cnf.d-slave:/etc/mysql/conf.d -e MYSQL_ROOT_PASSWORD=mysql -v /opt/mysql-slave-data:/var/lib/mysql -d --network=host mariadb:10.3.13

为mysql master添加用于同步复制的账号

1
2
3
4
5
mysql -uroot -p

GRANT REPLICATION SLAVE ON *.* TO 'slave'@'%' identified by 'slave';

FLUSH PRIVILEGES;

查看mysql master状态

1
show master status;

设置mysql slave

1
2
3
4
5
6
7
mysql -uroot -p -h 127.0.0.1 -p 8306

change master to master_host='127.0.0.1', master_user='slave', master_password='slave',master_log_file='mysql-bin.000006', master_log_pos=590;

start slave;

show slave status\G

6 安装RabbitMQ

参考「CentOS7安装RabbitMQ」安装。

设置如下:

  • 用户 python
  • 密码 rabbitmqpwd
  • vhost toutiao
  • tag administrator
1
2
3
4
5
6
7
$ sudo rabbitmqctl add_user python rabbitmqpwd

$ sudo rabbitmqctl add_vhost toutiao

$ sudo rabbitmqctl set_user_tags python administrator

$ sudo rabbitmqctl set_permissions -p toutiao python ".*" ".*" ".*"

7 安装Redis服务

  • 参考「CentOS7源码安装Redis单机实例」安装Redis
  • 参考「Redis Cluster配置」配置Redis Cluster服务
  • 参考「Redis主从与哨兵高可用配置」配置Redis Replica服务

编写redis服务管理脚本程序

编写/opt/redis-cluster-start.sh

1
2
3
4
5
6
7
8
#! /usr/bin/bash

/usr/local/bin/redis-server /etc/redis/7000.conf &
/usr/local/bin/redis-server /etc/redis/7001.conf &
/usr/local/bin/redis-server /etc/redis/7002.conf &
/usr/local/bin/redis-server /etc/redis/7003.conf &
/usr/local/bin/redis-server /etc/redis/7004.conf &
/usr/local/bin/redis-server /etc/redis/7005.conf &

编写/opt/redis-cluster-stop.sh

1
2
3
4
5
6
7
8
#! /usr/bin/bash

/usr/local/bin/redis-cli -h 127.0.0.1 -p 7000 shutdown
/usr/local/bin/redis-cli -h 127.0.0.1 -p 7001 shutdown
/usr/local/bin/redis-cli -h 127.0.0.1 -p 7002 shutdown
/usr/local/bin/redis-cli -h 127.0.0.1 -p 7003 shutdown
/usr/local/bin/redis-cli -h 127.0.0.1 -p 7004 shutdown
/usr/local/bin/redis-cli -h 127.0.0.1 -p 7005 shutdown

编写/opt/redis-replication-start.sh

1
2
3
4
5
6
7
#! /usr/bin/bash

/usr/local/bin/redis-server /etc/redis/6380.conf &
/usr/local/bin/redis-server /etc/redis/6381.conf &
/usr/local/bin/redis-sentinel /etc/redis/sentinel_26380.conf
/usr/local/bin/redis-sentinel /etc/redis/sentinel_26381.conf
/usr/local/bin/redis-sentinel /etc/redis/sentinel_26382.conf

8 设置redis服务与docker mysql开机自启

  1. 赋予脚本可执行权限

    1
    2
    3
    chmod +x /opt/redis-cluster-start.sh
    chmod +x /opt/redis-cluster-stop.sh
    chmod +x /opt/redis-replication-start.sh
  2. 打开/etc/rc.d/rc.local,在末尾增加如下内容

    1
    2
    3
    /opt/redis-cluster-start.sh
    /opt/redis-replication-start.sh
    docker start mariadb
  3. 在centos7中,/etc/rc.d/rc.local的权限被降低了,所以需要执行如下命令赋予其可执行权限

    1
    chmod +x /etc/rc.d/rc.local

9 安装Elasticsearch

参考「CentOS7安装Elasticsearch5」安装Elasticsearch。

10 安装Python 3.6

安装EPEL 依赖

1
sudo yum install epel-release

安装IUS软件源

1
sudo yum install https://centos7.iuscommunity.org/ius-release.rpm

安装Python 3.6

1
2
sudo yum install python36u
sudo ln -s /usr/bin/python3.6 /usr/bin/python3

安装pip

1
2
sudo yum install python36u-pip
sudo ln -s /usr/bin/pip3.6 /usr/bin/pip3

###