网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!
* [8.2 创建Kafka集群版](#82_Kafka_1015)
* [8.3 测试Kafka](#83_Kafka_1122)
1. 秒杀项目环境(基于Centos7.6测试全部成功)
1.Docker和JDK安装
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
#安装好后,可以查看docker的版本
docker -v
#修改Docker配置文件,使用国内的Docker镜像:
vi /etc/docker/daemon.json
# 添加以下内容
{"registry-mirrors":["https://ncwlarc2.mirror.aliyuncs.com"]}
#使之生效
systemctl daemon-reload
#重启
systemctl restart docker
安装Docker Compose
#国内资源(建议)
curl -L https://get.daocloud.io/docker/compose/releases/download/1.25.4/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
# 将可执行权限应用于二进制文件:
chmod +x /usr/local/bin/docker-compose
# 创建软链:
ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
# 测试是否安装成功:
docker-compose --version
JDK安装
# jdk镜像仓库:https://repo.huaweicloud.com/java/jdk/8u171-b11/
# 下载、解压jdk
wget https://repo.huaweicloud.com/java/jdk/8u171-b11/jdk-8u171-linux-x64.tar.gz
tar -zxf jdk-8u171-linux-x64.tar.gz
mv jdk1.8.0_171 /usr/local/jdk8
# 配置环境
vi /etc/profile
# 添加内容:
export JAVA\_HOME=/usr/local/jdk8
export PATH=$JAVA\_HOME/bin:$PATH
# 配置生效命令
source /etc/profile
#查看j版本命令
java -version
unzip命令安装
yum install -y unzip
2. 创建Nacos
# 启动容器
docker run -id --name nacos \
--restart=always -p 8848:8848 \
-e MODE=standalone nacos/nacos-server:1.4.1
3. 创建MySQL
后期要使用Canal,需要把MySQL的配置文件提取出来,所以要进行相关的配置文件的编写
#创建MySQL配置文件
mkdir -p /mnt/mysql/conf
#创建配置文件mysql.cnf
vim /mnt/mysql/conf/mysql.cnf
#内容如下:
[mysqld]
# 设置关闭二进制日志
skip-log-bin
启动MySQL容器
# 创建MySQL网络环境,指定子网网段
docker network create --subnet=172.36.0.0/16 seckill_network
# 启动MySQL 指定容器IP,固定IP地址
docker run -id --name seckill_mysql \
--net seckill_network --ip 172.36.0.3 \
-v /mnt/mysql/data:/var/lib/mysql \
-v /mnt/mysql/conf:/etc/mysql/conf.d \
--restart=always -p 3306:3306 \
-e MYSQL\_ROOT\_PASSWORD=eVcWs1dsEgiv4ijEZ1b6 mysql:8.0.18
4. 创建Canal数据同步
配置MySQL
需要让canal伪装成salve并正确获取mysql中的binary log,首先要开启 Binlog 写入功能,配置 binlog-format 为 ROW 模式
修改MySQL配置文件,如下操作:
# 执行修改命令
vi /mnt/mysql/conf/mysql.cnf
# 配置文件 mysql.cnf 内容如下
[mysqld]
# 设置关闭二进制日志
#skip-log-bin
# 开启二进制日志
log-bin=mysql-bin
#开启binlog 选择ROW模式
binlog-format=ROW
#server\_id不要和canal的slaveId重复
server\_id=1
配置文件修改完成后重启MySQL
docker restart seckill_mysql
在MySQL中执行以