我是靠谱客的博主 心灵美台灯,最近开发中收集的这篇文章主要介绍分布式部署个人不完全指南目录一、准备基础环境 ,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

目录

一、准备基础环境 

1.安装系统

2.安装Docker

3.部署MySQL

4.部署Nacos

5.部署Redis

6.部署Nginx

7.部署rabbitMQ


前言

写这玩意主要是怕自己忘了,写下来备忘,要是有哥们需要参考那也算做点贡献。

项目上使用的是CentOS 7.9

指路:CentOS Mirrors List

ip配置:centos7配置IP_陈德文Devin的博客-CSDN博客_centos配置ip地址

一、准备基础环境 

1.安装系统

这个应该不用教吧,如果实在不会,参考大佬的教程吧,我就不重复了。

CentOS7(Linux)详细安装教程(图文详解)

2.安装Docker

安装yum工具:

yum install -y yum-utils 
           device-mapper-persistent-data 
           lvm2 --skip-broken

更新本地镜像源:

yum-config-manager 
    --add-repo 
    https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
    
sed -i 's/download.docker.com/mirrors.aliyun.com/docker-ce/g' /etc/yum.repos.d/docker-ce.repo

yum makecache fast

开始安装:

yum install -y docker-ce

配置镜像加速:

参考阿里云的镜像加速文档:阿里云镜像加速器

3.部署MySQL

如果需要做MySQL容器化部署可以参考:使用Docker部署MySQL_满眼清香的博客-CSDN博客_docker mysql

标准安装参考:

MySQL 8.0安装指导_Charles__Yin的博客-CSDN博客

用navicat连不上的看这里:

use mysql;
select host from user where user='root';
update user set host = '%' where user ='root';
flush privileges;

主从部署参考:

MySQL8.0 主从部署(一主两从)_Charles__Yin的博客-CSDN博客_mysql8.0主从搭建

如果是克隆的机器,会发生uuid相同的情况:

Slave_IO_Running: No 的解决_踏风彡的博客-CSDN博客

注意:

修改数据目录后如果出现MySQL无法启动的情况,如图所示。

这是一个坑,需要关闭SELinux

临时关闭:

setenforce 0

 永久关闭:

vi /etc/selinux/config

 打开配置文件,然后把SELINUX项修改为disabled即可。

最后,如果需要做MySQL负载均衡可以参考大佬写的:MySql负载均衡集群

4.部署Nacos

简单部署可以参考:Docker 简单部署 Nacos 超详细图文步骤_=蜗牛=的博客-CSDN博客_docker nacos

集群部署配置示例:

docker run -d 
--name nacos 
--env MODE=cluster 
--env NACOS_SERVERS="192.168.31.201:8848 192.168.31.202:8848 192.168.31.203:8848" 
--env SPRING_DATASOURCE_PLATFORM=mysql 
--env MYSQL_SERVICE_HOST=192.168.31.201 
--env MYSQL_SERVICE_PORT=3306 
--env MYSQL_SERVICE_DB_NAME=nacos 
--env MYSQL_SERVICE_USER=root 
--env MYSQL_SERVICE_PASSWORD=xxxxxx 
--env JVM_XMS=256m 
--env JVM_XMX=512m 
--env JVM_XMN=256m 
--restart=always 
--network=host 
nacos/nacos-server:v2.1.2

nacos报错:

server is DOWNnow, detailed error message: Optional[Distro protocol is not initialized]

参考:运维(10) 解决Nacos服务注册使用Docker容器内网ip问题(指定注册ip或--network=host)_郑清的博客-CSDN博客_spring.cloud.nacos.discovery.ip

参数可以参考官方文档:

Nacos Docker 快速开始

注意:

如果出现下图中的问题,可以参考:Docker之WARNING: IPv4 forwarding is disabled. Networking will not work(虚拟机配置网络异常:IPv4)解决方案_java赵先生的博客-CSDN博客_docker ip_forward

 5.部署Redis

集群部署参考:基于Docker搭建Redis集群(主从集群) - niceyoo - 博客园

大佬的文章很给力,没啥要补充的。

容器启动示例:

docker run -d 
--restart=always 
--name redis-node 
--network=host 
-v /data/redis-data/node:/data 
-v /data/redis-data/node-conf/redis.conf:/etc/redis/redis.conf 
redis:bullseye /etc/redis/redis.conf 
--cluster-enabled yes 
--cluster-config-file nodes-node.conf 
--port 6379

如果执行组件集群的时候遇到无限点点点,那多半是端口没有开放。

搭建Redis集群遇到的问题:Waiting for the cluster to join~~~_胖太乙的博客-CSDN博客

6.部署Nginx

高可用集群:Nginx 集群搭建__子栖_的博客-CSDN博客_nginx集群

负载均衡:Nginx负载均衡(upstream) - 晴箜万里 - 博客园

7.部署rabbitMQ

高可用集群:基于Docker搭建RabbitMQ集群(多台服务器)_普通网友的博客-CSDN博客_docker mq 集群

容器启动示例:

docker run  -d 
--hostname rabbitmq1 
--add-host=rabbitmq2:192.168.31.202 
--add-host=rabbitmq3:192.168.31.203 
--restart=always 
--name rabbitmq 
--net host 
-e RABBITMQ_DEFAULT_USER=admin 
-e RABBITMQ_DEFAULT_PASS=admin 
-e RABBITMQ_ERLANG_COOKIE='rabbit_mq' 
rabbitmq:management

分布式开发的中间件部署这块差不多也就这样了,涵盖集群高可用,负载均衡啥的。

如果有别的需要补充,我会更新的。

最后

以上就是心灵美台灯为你收集整理的分布式部署个人不完全指南目录一、准备基础环境 的全部内容,希望文章能够帮你解决分布式部署个人不完全指南目录一、准备基础环境 所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(76)

评论列表共有 0 条评论

立即
投稿
返回
顶部