CentOS7基本环境搭建&开箱即用环境下载

2022-09-26 19:13:12 浏览数 (1)

一直以来都想有一个可以开箱即用的镜像环境,但一直都没有搞,直接使用docker或者其他工具就直接代替了。终于在昨晚学习RabbitMQ集群的时候,在CentOS6.5版本碰壁了,集群我电脑是有的,但那是早在两年前在学校的时候跟着老师搞的4台虚拟机学hadoop,用的是CentOS6.x 这个版本真的是太捞(老)了,以至于官方便在2020年12月2日正式将CentOS 6相关的软件源移出了官方源,随之而来逐级镜像也会陆续将其删除,所以很对yum源都已经无法再使用了。所以急需centOS7.x 以上环境并且可以开箱即用,虽然大部分情况下docker可以很快的将所需要的环境部署好,但是涉及到了分布式和集群,使用docker相对就没有那么方便了。

centOS7.6镜像下载

为了节省空间,直接使用Minimal

网盘下载:

链接:https://pan.baidu.com/s/1nPbDW6whaUKGQZLdzNlN8A

提取码:wp88

安装教程可以看:https://blog.csdn.net/michaelwoshi/article/details/121626287

centos7基本环境安装

1. 前置准备工作

安装相关必要环境
代码语言:javascript复制
yum update
yum -y groupinstall "Development tools"
yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
yum install -y libffi-devel zlib1g-dev
yum install zlib* -y
yum install glibc.i686
yum -y install wget
centos7防火墙相关

(1)设置开机启用防火墙:systemctl enable firewalld.service

(2)设置开机禁用防火墙:systemctl disable firewalld.service

(3)启动防火墙:systemctl start firewalld

(4)关闭防火墙:systemctl stop firewalld

(5)检查防火墙状态:systemctl status firewalld

(6)配置防火墙打开80端口(需要重启防火墙):firewall-cmd --zone=public --add-port=80/tcp --permanent

2. 安装vim

yum install vim

3. jdk8安装配置

下载解压
代码语言:javascript复制
mkdir -p /apps/java
cd /apps/java
wget https://repo.huaweicloud.com/java/jdk/8u152-b16/jdk-8u152-linux-i586.tar.gz
tar zxvf jdk-8u152-linux-i586.tar.gz -C /apps/java
mv jdk1.8.0_152 jdk1.8
配置环境变量
  • 用vi 编辑器修改 /etc/prolife ,命令为 vim /etc/profile
  • 找到 done 在后面添加
代码语言:javascript复制
export JAVA_HOME=/apps/java/jdk1.8
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

  • 配置的java环境变量生效 source /etc/profile

4. MySql5.7安装配置

详细可以看:https://cloud.tencent.com/developer/article/2123644

mysql安装命令
代码语言:javascript复制
mkdir -p /apps/mysql
cd /apps/mysql
# 下载mysql的repo源
wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm
# 安装mysql57-community-release-el7-8.noarch.rpm包
rpm -ivh mysql57-community-release-el7-8.noarch.rpm
# 解决阿里云ECS安装Mysql失败:GPG密钥已安装,但是不适用于此软件包
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
# 安装mysql
yum install mysql-server
启动&修改MySQL密码
代码语言:javascript复制
# 进入MySQL
mysql -u root -p
# 解决Can‘t connect to local MySQL server through socket 'var/lib/mysql/mysql.sock',删除/var/lib/mysql /后重启MySQL服务就可以了!
rm -rf /var/lib/mysql
# 重启服务:
service mysqld restart
# 重启成功后查看服务状态:
service mysqld status
# 接下来登录重置密码:
grep "A temporary password" /var/log/mysqld.log
mysql -u root -p
# 输入上面查询到的密码

# 重置密码等级
set global validate_password_policy=LOW;
set global validate_password_length=6;
# 修改mysql密码
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
管理mysql
代码语言:javascript复制
systemctl start mysqld.service  # 启动mysql
systemctl enable mysqld.service  # 开机自启
systemctl disable mysqld.service  # 关闭自启
允许mysql远程登录
代码语言:javascript复制
# 进入MySQL
grant all privileges on *.* to root@"%" identified by "new password";

详细配置查看:https://qkongtao.cn/?p=1124#h3-4

5. Nginx安装配置

详细可以看:https://cloud.tencent.com/developer/article/2123647

Nginx安装
代码语言:javascript复制
# 安装gcc环境
yum install gcc-c  
# 安装pcre
yum install -y pcre pcre-devel
# 安装zlib
yum install -y zlib zlib-devel
# 安装openssl
yum install -y openssl openssl-devel
mkdir -p /apps/nginx
cd /apps/nginx
wget http://nginx.org/download/nginx-1.18.0.tar.gz
tar -xvf nginx-1.18.0.tar.gz
cd nginx-1.18.0
./configure
make
make install
# 启动nginx
/usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf 
/usr/local/nginx/sbin/nginx -s reload
Nginx管理
代码语言:javascript复制
systemctl start nginx.service  # 启动Nginx
systemctl enable nginx.service  # 开机自启
systemctl disable nginx.service  # 关闭自启

注意:虚拟机重启是自启Nginx问题

代码语言:javascript复制
[root@localhost ~]# nginx -s reload
nginx: [error] open() "/usr/local/nginx/logs/nginx.pid" failed (2: No such file or directory)
[root@localhost ~]#

此报错为:logs目录下缺少pid文件。

解决方式:重新指定启动之时加载的配置文件,然后再重启,假如nginx的配置文件目录为:/usr/local/nginx/conf/nginx.conf

正确启动的方式为:

/usr/local/nginx/sbin/nginx -c/usr/local/nginx/conf/nginx.conf

/usr/local/nginx/sbin/nginx -s reload

6. Redis安装配置

下载安装Redis
代码语言:javascript复制
mkdir -p /apps/redis
cd /apps/redis
wget https://download.redis.io/releases/redis-6.2.4.tar.gz
tar xvf redis-6.2.4.tar.gz
cd redis-6.2.4
make
make install PREFIX=/usr  # 自定义安装目录
cp redis.conf /etc/  # 复制redis.conf配置文件到/etc/目录下。记得更改daemonize为yes
配置管理Redis
代码语言:javascript复制
vim /usr/lib/systemd/system/redis.service  # 先创建服务名
复制以下内容

[Unit]
Description=redis-server
After=network.target
After=network-online.target
Wants=network-online.target

[Service]
Type=forking
ExecStart=/usr/bin/redis-server /etc/redis.conf
PrivateTmp=true

[Install]
WantedBy=multi-user.target

至此你可以通过systemctl来管理你的redis

systemctl start redis.service #启动redis服务
systemctl stop redis.service #停止redis服务
systemctl restart redis.service #重新启动服务
systemctl status redis.service #查看服务当前状态
systemctl enable redis.service #设置开机自启动
systemctl disable redis.service #停止开机自启动
修改密码
代码语言:javascript复制
# vim /apps/redis/redis-6.2.4/redis.conf
### 修改以下内容
# 将bind 后 127.0.0.1 改为 内网IP # 为安全起见,请勿使用 0.0.0.0
protected-mode yes 改为 protected-mode no # 关闭保护模式
daemonize no 改为 daemonize yes   # 开启守护进程
测试进入redis
代码语言:javascript复制
redis-cli -a 123456
get keys
redis远程连接

允许远程主机访问 注释绑定的主机地址 bind 127.0.0.1 修改为bind 0.0.0.0

修改redis的守护进程为no,不启用 daemonize no

修改redis的保护模式为no,不启用 protected-mode no

复制redis.conf配置文件到/etc/目录下(因为使用了脚本服务启动)

cp /apps/redis/redis-6.2.4/redis.conf /etc/

重启redisL: systemctl restart redis

7. docker安装配置

详细可以看:https://cloud.tencent.com/developer/article/2123625

Docker安装命令
代码语言:javascript复制
mkdir -p /apps/docker
cd /apps/docker
curl -fsSL https://get.docker.com -o get-docker.sh
chmod u x get-docker.sh
./get-docker.sh  # 等待安装完成
管理docker
代码语言:javascript复制
systemctl start docker.service  # 启动docker
systemctl enable docker.service  # 开机自启
systemctl disable docker.service  # 关闭自启

8. 将Python2升级到Python3

centOS7.x自带Python2.7

更新步骤
  • 查看Python版本
代码语言:javascript复制
python -V
pip -V
 

  • 安装依赖
代码语言:javascript复制
yum install yum-utils
yum-builddep python
 

  • 下载
代码语言:javascript复制
mkdir -p /apps/python
cd /apps/python
wget https://www.python.org/ftp/python/3.7.2/Python-3.7.2.tgz
yum -y install zlib-devel bzip2-devel openssl-devel ncursesdevelsqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel libffi-devel
mkdir -p /usr/local/python3.7
tar xvf Python-3.7.2.tgz
cd Python-3.7.2/
# 配置安装目录
./configure --prefix=/usr/local/python3
# 编译
make
make install
# 设置python3为默认版本
mv /usr/bin/python /usr/bin/python.bak
ln -s /usr/local/python3/bin/python3 /usr/bin/python
python -V
pip -V

  • 更改yum配置 因为yum需要使用python2,将/usr/bin/python改为python3后,yum就不能正常运行了,因此需要更改一下yum的配置。
代码语言:javascript复制
# 编辑这两个文件,将文件头的#!/usr/bin/python改为#!/usr/bin/python2
vim /usr/bin/yum
vim /usr/libexec/urlgrabber-ext-down

9. RabbitMQ安装配置

出于版本依赖的问题,手动一步一步安装erlang和RabbitMQ会遇到很多坑。

因此直接使用现成的脚本安装。

脚本安装RabbitMQ
  1. 下载并允许脚本 curl -s https://packagecloud.io/install/repositories/rabbitmq/erlang/script.rpm.sh | sudo bash
  2. 安装erlang yum install erlang -y
  3. 安装rabbitmq yum install rabbitmq-server -y
  4. 查看erlang和rabbitmq的安装信息 rpm -qa | grep erlang rpm -qa | grep rabbitmq-server
配置RabbitMQ
  1. 管理rabbitmq服务
代码语言:javascript复制
systemctl start rabbitmq-server
systemctl stop rabbitmq-server
systemctl status rabbitmq-server
# 开机自启
systemctl enable rabbitmq-server
# 关闭自启
systemctl disable rabbitmq-server
 

  1. 启用管控台插件 rabbitmq-plugins enable rabbitmq_management
  2. 关闭系统防火墙
代码语言:javascript复制
systemctl stop firewalld.service
systemctl disable firewalld.service
 

  1. 添加测试账户
代码语言:javascript复制
rabbitmqctl add_user test test
rabbitmqctl set_user_tags test administrator
rabbitmqctl set_permissions -p / test ".*" ".*" ".*"
 

  1. 进入rabbitMQ的web后台 192.168.137.138:15672 ip:15672

输入上面设置的测试账号即可登录:

账号:test

密码:test

集成环境后centOS7.6下载

链接:https://pan.baidu.com/s/1jtDpcaCx29MSeI94omuu5w

提取码:hhgs

myCentOS说明:

  1. 所有软件放在 /apps/ 目录下
  2. mysql和redis安全考虑没有配置远程访问
  3. 防火墙已关闭
  4. 重启是nginx没有平滑启动,需要手动平滑启动: /usr/local/nginx/sbin/nginx -c/usr/local/nginx/conf/nginx.conf /usr/local/nginx/sbin/nginx -s reload
  5. 所有环境安装流程如上所述

0 人点赞