linux配置大数据环境

linux配置大数据环境

修改主机名

hostnamectl set-hostname xxx

配置 yum

[root@localhost ~]# mkdir /mnt/cdrom
[root@localhost ~]# df /mnt/cdrom
文件系统          1K-块    已用     可用 已用% 挂载点
/dev/sda3      39517336 7718416 31798920   20% /
[root@localhost ~]# mount /dev/cdrom /mnt/cdrom
mount: /dev/sr0 写保护,将以只读方式挂载

查看挂载记录

[root@localhost ~]# df -hT /mnt/cdrom
文件系统       类型     容量  已用  可用 已用% 挂载点
/dev/sr0       iso9660  4.3G  4.3G     0  100% /mnt/cdrom

更改配置文件

[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ll
总用量 28
-rw-r--r--. 1 root root 1664 8月  30 2017 CentOS-Base.repo
-rw-r--r--. 1 root root 1309 8月  30 2017 CentOS-CR.repo
-rw-r--r--. 1 root root  649 8月  30 2017 CentOS-Debuginfo.repo
-rw-r--r--. 1 root root  314 8月  30 2017 CentOS-fasttrack.repo
-rw-r--r--. 1 root root  630 8月  30 2017 CentOS-Media.repo
-rw-r--r--. 1 root root 1331 8月  30 2017 CentOS-Sources.repo
-rw-r--r--. 1 root root 3830 8月  30 2017 CentOS-Vault.repo

2.将CentOS-Base.repo和CentOS-Debuginfo.repo改名或者移动,绕过网络安装,以便使用本地安装

#本次使用改名 方便作为备份文件
[root@localhost yum.repos.d]# mv CentOS-Debuginfo.repo CentOS-Debuginfo.repo.bak
[root@localhost yum.repos.d]# mv CentOS-Base.repo CentOS-Base.repo.bak

3.编辑文件CentOS-Media.repo(使用vim编辑器)

[root@localhost yum.repos.d]# vim CentOS-Media.repo
# CentOS-Media.repo
#
#  This repo can be used with mounted DVD media, verify the mount point for
#  CentOS-7.  You can use this repo and yum to install items directly off the
#  DVD ISO that we release.
#
# To use this repo, put in your DVD and use it with the other repos too:
#  yum --enablerepo=c7-media [command]
#  
# or for ONLY the media repo, do this:
#
#  yum --disablerepo=\* --enablerepo=c7-media [command][c7-media]
name=CentOS-$releasever - Media
baseurl=file:///mnt/cdrom
gpgcheck=0		#用来检查GPG-KEY,0为不检查,1为检查
enabled=1		#是否用该yum源,0为禁用,1为使用
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7~                                                                               
~                                                                               
~                                                                               
"CentOS-Media.repo" 20L, 563C                                 17,1         全部

清除yum缓存,测试yum源配置

[root@localhost yum.repos.d]# yum clean all
[root@localhost yum.repos.d]# yum list

网络 yum 源

配置完本地后可以先安装 wget

yum install wget

步骤一:备份

1)进入/etc/yum.repos.d 查看目录下文件

[root@localhost yum.repos.d]# ll
总用量 28
-rw-r--r--. 1 root root 1664 8月  30 2017 CentOS-Base.repo.bak
-rw-r--r--. 1 root root 1309 8月  30 2017 CentOS-CR.repo
-rw-r--r--. 1 root root  649 8月  30 2017 CentOS-Debuginfo.repo.bak
-rw-r--r--. 1 root root  314 8月  30 2017 CentOS-fasttrack.repo
-rw-r--r--. 1 root root  563 3月  18 19:37 CentOS-Media.repo
-rw-r--r--. 1 root root 1331 8月  30 2017 CentOS-Sources.repo
-rw-r--r--. 1 root root 3830 8月  30 2017 CentOS-Vault.repo

2)将所有文件备份到新建目录repo_bak下

[root@localhost yum.repos.d]# mkdir repo_bak
[root@localhost yum.repos.d]# mv *.repo repo_bak/
[root@localhost yum.repos.d]# mv *.repo.bak repo_bak/
[root@localhost yum.repos.d]# ll
总用量 0
drwxr-xr-x. 2 root root 195 3月  18 23:13 repo_bak

步骤二:下载阿里的 yum 源:下载阿里的CentOS-Base.repo 到/etc/yum.repos.d/

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

2)运行yum clean all 清除缓存,运行 yum makecache 生成新的缓存

[root@localhost yum.repos.d]# yum clean all #清空缓存
[root@localhost yum.repos.d]# yum makecache #生成新的缓存 

安装 jdk

1. 检查是否有 jdk 文件

[root@cc ~]# yum list installed | grep java
[root@cc ~]# 

没有文件显示表明没有 jdk 文件

2. 安装 jdk,利用 yum 源

  • 查看 yum 里的软件包列表
[root@cc ~]# yum search java | grep jdk
  • 选择要安装的 jdk 版本进行安装
[root@cc ~]# yum install -y java-1.8.0-openjdk*
...pcsc-lite-libs.x86_64 0:1.8.8-8.el7                 pixman.x86_64 0:0.34.0-1.el7                       psmisc.x86_64 0:22.20-17.el7                        python-javapackages.noarch 0:3.4.1-11.el7          python-lxml.x86_64 0:3.2.1-4.el7                    ttmkfdir.x86_64 0:3.0.9-42.el7                     tzdata-java.noarch 0:2023c-1.el7                    xorg-x11-font-utils.x86_64 1:7.5-21.el7            xorg-x11-fonts-Type1.noarch 0:7.5-9.el7             xorg-x11-utils.x86_64 0:7.5-23.el7                 完毕!
  • 查看 jdk
[root@cc yum.repos.d]# java -version
openjdk version "1.8.0_362"
OpenJDK Runtime Environment (build 1.8.0_362-b08)
OpenJDK 64-Bit Server VM (build 25.362-b08, mixed mode)

3. 配置环境变量

  • jdk 默认安装路径 /usr/lib/jvm
[root@cc jvm]# pwd
/usr/lib/jvm
[root@cc jvm]# ls
java                                             jre
java-1.8.0                                       jre-1.8.0
java-1.8.0-openjdk                               jre-1.8.0-openjdk
java-1.8.0-openjdk-1.8.0.362.b08-1.el7_9.x86_64  jre-1.8.0-openjdk-1.8.0.362.b08-1.el7_9.x86_64
java-openjdk                                     jre-openjdk
[root@cc jvm]# 

看准上面的 java 目录名称,每个都不一样

  • 在 /etc/profile 文件添加目录
# set java environment  
JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.362.b08-1.el7_9.x86_64
PATH=$PATH:$JAVA_HOME/bin  
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar  
export JAVA_HOME  CLASSPATH  PATH 
  • 刷新文件并查看是否生效
[root@cc jvm]# source /etc/profile	# 刷新文件
[root@cc jvm]# echo $JAVA_HOME
/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.362.b08-1.el7_9.x86_64

安装 hadoop

1. 生成密钥

[root@cc jvm]# ssh localhost
[root@cc jvm]# cd ~
[root@cc ~]# ls -al
总用量 28
dr-xr-x---.  3 root root  147 4月  16 19:20 .
dr-xr-xr-x. 17 root root  224 4月  16 08:23 ..
-rw-------.  1 root root 1257 4月  16 08:24 anaconda-ks.cfg
-rw-------.  1 root root 1828 4月  16 18:59 .bash_history
-rw-r--r--.  1 root root   18 12月 29 2013 .bash_logout
-rw-r--r--.  1 root root  176 12月 29 2013 .bash_profile
-rw-r--r--.  1 root root  176 12月 29 2013 .bashrc
-rw-r--r--.  1 root root  100 12月 29 2013 .cshrc
drwx------.  2 root root   25 4月  16 19:20 .ssh
-rw-r--r--.  1 root root  129 12月 29 2013 .tcshrc
[root@cc ~]# cd .sshssh-keygen -t rsa    # 会有提示,都按回车即可
cat id_rsa.pub >> authorized_keys # 加入授权
chmod 600 ./authorized_keys # 修改文件权限

2. 安装和配置 hadoop

  • 官网下载对应版本的 hadoop

这里相关软件安装包都放在 /opt/install-software 中,解压的软件放在 /opt/software 中

镜像源文件可能会更新导致下载地址失效,故网页打开确认下载地址

[root@cc install-software]# wget https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-3.2.3/hadoop-3.2.3.tar.gz
  • 解压安装包
[root@cc install-software]# tar -zxvf hadoop-3.2.3.tar.gz -C /opt/software/
  • 改名
[root@cc install-software]# cd ../software/
[root@cc software]# ls
hadoop-3.2.3
[root@cc software]# mv hadoop-3.2.3 hadoop
[root@cc software]# ls
hadoop
[root@cc software]# 
  • 修改 core-site.xml 文件
[root@cc hadoop]# pwd
/opt/software/hadoop/etc/hadoop
[root@cc hadoop]# ls
capacity-scheduler.xml            httpfs-log4j.properties     mapred-site.xml
configuration.xsl                 httpfs-signature.secret     shellprofile.d
container-executor.cfg            httpfs-site.xml             ssl-client.xml.example
core-site.xml                     kms-acls.xml                ssl-server.xml.example
hadoop-env.cmd                    kms-env.sh                  user_ec_policies.xml.template
hadoop-env.sh                     kms-log4j.properties        workers
hadoop-metrics2.properties        kms-site.xml                yarn-env.cmd
hadoop-policy.xml                 log4j.properties            yarn-env.sh
hadoop-user-functions.sh.example  mapred-env.cmd              yarnservice-log4j.properties
hdfs-site.xml                     mapred-env.sh               yarn-site.xml
httpfs-env.sh                     mapred-queues.xml.template
[root@cc hadoop]# vi core-site.xml 
<configuration><property><name>fs.defaultFS</name><!-- 内网IP地址--><value>hdfs://192.168.138.10:9000</value></property><!-- 缓存存储路径 --><property><name>hadoop.tmp.dir</name><value>/app/hadooptemp</value></property>
</configuration>
  • 修改 hdfs-site.xml
<configuration><!-- 默认为3,由于是单机,所以配置1 --><property><name>dfs.replication</name><value>1</value></property><!-- 配置http访问地址 --><property><name>dfs.http.address</name><value>0.0.0.0:9870</value></property>
</configuration>
  • 修改 hadoop-env.sh 文件
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.362.b08-1.el7_9.x86_64
  • 修改 yarn-env.sh
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.362.b08-1.el7_9.x86_64
  • 修改sbin/stop-dfs.sh文件,在顶部增加
[root@cc sbin]# pwd
/opt/software/hadoop/sbin
[root@cc sbin]# ls
distribute-exclude.sh  mr-jobhistory-daemon.sh  start-dfs.sh         stop-balancer.sh    workers.sh
FederationStateStore   refresh-namenodes.sh     start-secure-dns.sh  stop-dfs.cmd        yarn-daemon.sh
hadoop-daemon.sh       start-all.cmd            start-yarn.cmd       stop-dfs.sh         yarn-daemons.sh
hadoop-daemons.sh      start-all.sh             start-yarn.sh        stop-secure-dns.sh
httpfs.sh              start-balancer.sh        stop-all.cmd         stop-yarn.cmd
kms.sh                 start-dfs.cmd            stop-all.sh          stop-yarn.sh
[root@cc sbin]# vi stop-dfs.sh 
# 顶部
HDFS_DATANODE_USER=root  
HDFS_DATANODE_SECURE_USER=hdfs  
HDFS_NAMENODE_USER=root  
HDFS_SECONDARYNAMENODE_USER=root 
...
  • 修改 start-dfs.sh 文件顶部添加
HDFS_DATANODE_USER=root  
HDFS_DATANODE_SECURE_USER=hdfs  
HDFS_NAMENODE_USER=root  
HDFS_SECONDARYNAMENODE_USER=root 
  • 格式化,进入 hadoop/bin 的文件夹,执行
[root@cc bin]# pwd
/opt/software/hadoop/bin
[root@cc bin]# ls
container-executor  hadoop.cmd  hdfs.cmd  mapred.cmd    test-container-executor  yarn.cmd
hadoop              hdfs        mapred    oom-listener  yarn
[root@cc bin]# ./hdfs namenode -format
  • 修改 /etc/profile 文件,添加如下,用 source 刷新
export HADOOP_HOME=/opt/software/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

安装 spark

1. wget 下载

[root@cc install-software]# wget https://mirrors.tuna.tsinghua.edu.cn/apache/spark/spark-3.3.2/spark-3.3.2-bin-hadoop3.tgz

2. 解压并改名

[root@cc install-software]# ls
hadoop-3.2.3.tar.gz  spark-3.3.2-bin-hadoop3.tgz
[root@cc install-software]# tar -zxvf spark-3.3.2-bin-hadoop3.tgz -C /opt/software/
...
[root@cc install-software]# cd /opt/software/
[root@cc software]# ls
hadoop  spark-3.3.2-bin-hadoop3
[root@cc software]# mv spark-3.3.2-bin-hadoop3/ spark
[root@cc software]# ls
hadoop  spark

3. 修改配置文件

  • spark/conf 备份模板文件 spark-env.sh.template
[root@cc conf]# ls
fairscheduler.xml.template  log4j2.properties.template  metrics.properties.template  spark-defaults.conf.template  spark-env.sh.template  workers.template
[root@cc conf]# cp spark-env.sh.template spark-env.sh
  • 修改 spark-env.sh 文件
...
# Options read in YARN client/cluster mode
# - YARN_CONF_DIR, to point Spark towards YARN configuration files when you use YARNexport JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.362.b08-1.el7_9.x86_64
export SPARK_MASTER_HOST=192.168.138.10
export SPARK_MASTER_PORT=7077# Options for the daemons used in the standalone deploy mode
# - SPARK_MASTER_HOST, to bind the master to a different IP address or hostname
# - SPARK_MASTER_PORT / SPARK_MASTER_WEBUI_PORT, to use non-default ports for the master
# - SPARK_MASTER_OPTS, to set config properties only for the master (e.g. "-Dx=y")
...
  • 进入 spark 目录下
[root@cc spark]# bin/spark-shell

安装 mysql

1. 查看是否有 MySQL,并查看软件列表

[root@cc spark]# rpm -qa|grep mariadb
mariadb-libs-5.5.68-1.el7.x86_64
[root@cc spark]# rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64
### 删除 mariadb

2. 查看linux版本

[root@cc software]# uname -a
Linux cc 3.10.0-1160.71.1.el7.x86_64 #1 SMP Tue Jun 28 15:37:28 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux

3. 服务器使用 wget 下载 mysql

[root@cc install-software]# wget https://downloads.mysql.com/archives/get/p/23/file/mysql-8.0.21-1.el7.x86_64.rpm-bundle.tar

版本不要选错,x86_64版本

[root@cc install-software]# ls
hadoop-3.2.3.tar.gz  mysql-8.0.21-1.el7.x86_64.rpm-bundle.tar  spark-3.3.2-bin-hadoop3.tgz

下载成功,可以先用 Windows下载后上传至服务器中

4. 解压 MySQL 压缩包

[root@cc install-software]# tar -xvf mysql-8.0.21-1.el7.x86_64.rpm-bundle.tar -C /opt/temp/

依次安装MySQL数据库的mysql common、mysql libs、mysql client软件包,和server

[root@cc temp]# rpm -ivh mysql-community-common-8.0.21-1.el7.x86_64.rpm 
[root@cc temp]# rpm -ivh mysql-community-libs-8.0.21-1.el7.x86_64.rpm 
[root@cc temp]# rpm -ivh mysql-community-client-8.0.21-1.el7.x86_64.rpm 
[root@cc temp]# rpm -ivh mysql-community-server-8.0.21-1.el7.x86_64.rpm 

出现问题

[root@cc temp]# rpm -ivh mysql-community-server-8.0.21-1.el7.x86_64.rpm 
警告:mysql-community-server-8.0.21-1.el7.x86_64.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID 5072e1f5: NOKEY
错误:依赖检测失败:/usr/bin/perl 被 mysql-community-server-8.0.21-1.el7.x86_64 需要net-tools 被 mysql-community-server-8.0.21-1.el7.x86_64 需要perl(Getopt::Long) 被 mysql-community-server-8.0.21-1.el7.x86_64 需要perl(strict) 被 mysql-community-server-8.0.21-1.el7.x86_64 需要

以上可以看出需要两个依赖:perl 和 net-tools,满足它

解决办法:安装依赖

[root@cc temp]# yum install -y perl-Module-Install.noarch
[root@cc temp]# yum -y install net-tools

重新执行安装 server 命令

最后可以用 rpm 查看一下安装包情况

[root@cc temp]# rpm -qa | grep mysql
mysql-community-client-8.0.21-1.el7.x86_64
mysql-community-libs-8.0.21-1.el7.x86_64
mysql-community-server-8.0.21-1.el7.x86_64
mysql-community-common-8.0.21-1.el7.x86_64

5. 初始化 mysql 数据库

[root@cx temp]# mysqld --initialize;									# 初始化
[root@cx temp]# chown mysql:mysql /var/lib/mysql -R;					# 授权
[root@cx temp]# systemctl start mysqld									# 开启服务
[root@cx temp]# systemctl status mysqld									# 查看服务状态
[root@cx temp]# systemctl enable mysql									# 开机自启

6. 查看密码,重设置密码

查看密码

[root@cc temp]# cat /var/log/mysqld.log | grep password
2023-06-04T14:31:37.415021Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: XPgh5q1r&qYQ

登录 mysql

[root@cx temp]# mysql -uroot -p
Enter password: # 密码输入上面的那个,直接复制就行,密码不会显示
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.21Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> # 登录成功

修改密码

mysql> alter user 'root'@'localhost' identified with mysql_native_password by '密码';
Query OK, 0 rows affected (0.00 sec)

退出重新登录

[root@cc temp]# mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 9
Server version: 8.0.21 MySQL Community Server - GPLCopyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> 

允许远程访问服务器的MySQL,root是登录账户,%代表任意地址,可以设置你固定的ip地址,密码是远程登录的密码

  1. 先创建用户
mysql> create user 'root'@'%' identified with mysql_native_password by '密码';
  1. 设置远程访问并用flush privileges;刷新一下
mysql> grant all privileges on *.* to 'root'@'%' with grant option;
mysql> flush privileges;

7. 本地数据库可视化软件连接服务器中的MySQL

​ 先看一下服务器的防火墙关没关

systemctl status firewalld

​ 主要看activate,如果是绿色的表示正在运行,灰色的是关闭的

systemctl stop firewalld

yum 安装 redis 数据库

1. 下载 epel 仓库

yum install epel-release -y

2. 下载 redis 数据库

yum install redis -y

3. 启动 redis 服务

systemctl start redis

4. redis 常见命令

systemctl status redis 查看服务状态
systemctl stop redis 停止服务
systemctl restart redis 重启服务
ps -ef | grep redis 查看reids服务信息
systemctl enable redis redis开机启动

5. 设置redis 远程连接和密码

vim /etc/redis.conf	如果没有vim先yum install -y vim
1. 注释 #bind 127.0.0.1
2. 修改protected-mode no
3. 修改 daemonize yes					# 后台运行
4. 修改 requirepass Dd123=123

6. 关闭防火墙或者开放6379端口(请自行百度)

7. 重启redis

安装 zookeeper (kafka 前提,默认端口:2181)

zookeeper 下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.5.10/

kafka 下载地址:https://mirrors.tuna.tsinghua.edu.cn/apache/kafka/2.8.2/

1. 解压 zookeeper 压缩包

[root@cc install-software]# tar -zxvf apache-zookeeper-3.5.10-bin.tar.gz -C /opt/software/
[root@cc install-software]# cd ../software/
[root@cc software]# ls
apache-zookeeper-3.5.10-bin  hadoop  kafka  spark
[root@cc software]# mv apache-zookeeper-3.5.10-bin zookeeper
[root@cc software]# ls
hadoop  kafka  spark  zookeeper
[root@cc software]# 

2. 修改配置文件,同时复制备份

[root@cc conf]# pwd
/opt/software/zookeeper/conf
[root@cc conf]# ls
configuration.xsl  log4j.properties  zoo_sample.cfg
[root@cc conf]# cp zoo_sample.cfg zoo.cfg
[root@cc conf]# ls
configuration.xsl  log4j.properties  zoo.cfg  zoo_sample.cfg
[root@cc conf]# 

3. 进入 bin 目录下启动 zookeeper 服务

[root@cc bin]# pwd
/opt/software/zookeeper/bin
[root@cc bin]# ls
README.txt    zkCli.cmd  zkEnv.cmd  zkServer.cmd            zkServer.sh          zkTxnLogToolkit.sh
zkCleanup.sh  zkCli.sh   zkEnv.sh   zkServer-initialize.sh  zkTxnLogToolkit.cmd
[root@cc bin]# ./zkServer.sh start

4. 查看运行状态

[root@cc bin]# pwd
/opt/software/zookeeper/bin
[root@cc bin]# ./zkServer.sh status
ZooKeeper JMX enabled by default
Using config: /opt/software/zookeeper/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost. Client SSL: false.
Mode: standalone	# 代表单机模式

停止命令:./zkServer.sh stop

5. 本地链接 ./zkCli.sh 测试一下

[root@cc bin]# ./zkCli.sh 
Connecting to localhost:2181
...

6. 查看端口号

[root@cc software]# lsof -i:2181
-bash: lsof: 未找到命令
[root@cc software]# yum install lsof -y
[root@cc software]# lsof -i:2181
COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
java    2064 root   69u  IPv6  40667      0t0  TCP *:eforward (LISTEN)

安装 kafka(端口默认:9092)

1. 解压 kafka 压缩包

[root@cc install-software]# tar -zxvf kafka_2.12-2.8.2.tgz -C /opt/software/
[root@cc opt]# cd software/
[root@cc software]# ls
hadoop  kafka_2.12-2.8.2  spark
[root@cc software]# mv kafka_2.12-2.8.2 kafka
[root@cc software]# ls
hadoop  kafka  spark
[root@cc software]# 
  • config 目录下 server.properties
# 标识 broker 编号,集群中有多个broker,则每个broker的编号需要设置不同
broker.id=0# 修改下面两个配置(listeners 配置的ip和advertised.listeners相同时启动kafka会报错)
listeners(内网ip)
advertised.listeners(公网ip)# 修改zk地址,默认地址
zookeeper.connection=localhost:2181
  • bin 目录启动

    #启动
    kafka-server-start.sh config/server.properties &#停止
    kafka-server-stop.sh
    
  • 创建 topic(第二个1为序号,xdclass-topic为名称)

    ./kafka-topics.sh --create --zookeeper 192.168.138.10:2181 --replication-factor --partitions 1 --topic xdclass-topic
    
  • 查看 topic

    ./kafka-topics.sh --list --zookeeper 192.168.138.10:2181
    

2. 修改 config 配置文件

[root@cc config]# pwd
/opt/software/kafka/config
[root@cc config]# ls
connect-console-sink.properties    connect-file-source.properties   consumer.properties  server.properties
connect-console-source.properties  connect-log4j.properties         kraft                tools-log4j.properties
connect-distributed.properties     connect-mirror-maker.properties  log4j.properties     trogdor.conf
connect-file-sink.properties       connect-standalone.properties    producer.properties  zookeeper.properties
[root@cc config]# vim server.properties 
############################# Socket Server Settings ############################## The address the socket server listens on. It will get the value returned from 
# java.net.InetAddress.getCanonicalHostName() if not configured.
#   FORMAT:
#     listeners = listener_name://host_name:port
#   EXAMPLE:
#     listeners = PLAINTEXT://your.host.name:9092
listeners=PLAINTEXT://192.168.138.10:9092	# 设置本地局域网地址

3. 启动 kafka(config要指明目录)

[root@cc bin]# pwd
/opt/software/kafka/bin
[root@cc bin]# ls
connect-distributed.sh        kafka-dump-log.sh                    kafka-storage.sh
connect-mirror-maker.sh       kafka-features.sh                    kafka-streams-application-reset.sh
connect-standalone.sh         kafka-leader-election.sh             kafka-topics.sh
kafka-acls.sh                 kafka-log-dirs.sh                    kafka-verifiable-consumer.sh
kafka-broker-api-versions.sh  kafka-metadata-shell.sh              kafka-verifiable-producer.sh
kafka-cluster.sh              kafka-mirror-maker.sh                trogdor.sh
kafka-configs.sh              kafka-preferred-replica-election.sh  windows
kafka-console-consumer.sh     kafka-producer-perf-test.sh          zookeeper-security-migration.sh
kafka-console-producer.sh     kafka-reassign-partitions.sh         zookeeper-server-start.sh
kafka-consumer-groups.sh      kafka-replica-verification.sh        zookeeper-server-stop.sh
kafka-consumer-perf-test.sh   kafka-run-class.sh                   zookeeper-shell.sh
kafka-delegation-tokens.sh    kafka-server-start.sh
kafka-delete-records.sh       kafka-server-stop.sh
[root@cc bin]# [root@cc bin]# ./kafka-server-start.sh ../config/server.properties &
# config 指明地址
# ctrl + c 退出

4. 查看端口号

[root@cc bin]# lsof -i:9092
COMMAND  PID USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
java    2613 root  132u  IPv6  32230      0t0  TCP cc:XmlIpcRegSvc (LISTEN)
java    2613 root  151u  IPv6  32235      0t0  TCP cc:40136->cc:XmlIpcRegSvc (ESTABLISHED)
java    2613 root  152u  IPv6  43283      0t0  TCP cc:XmlIpcRegSvc->cc:40136 (ESTABLISHED)
[root@cc bin]# netstat -tunlp|egrep "(2181|9092)"
tcp6       0      0 192.168.138.10:9092     :::*                    LISTEN      2613/java           
tcp6       0      0 :::2181                 :::*                    LISTEN      2064/java 

zk:2181端口。pid:2064

kafka:9092端口。pid:2613

5. 单机连通性测试

  • 再启动两个xshell客户端,一个用于生产者返送信息,一个用于消费者接受信息,原先的不要关

  • 两台都要 cd 到安装目录下:

    cd /opt/software/kafka
    
  • 一个shell创建topic名为test

    [root@cc ~]# cd /opt/software/kafka/
    [root@cc kafka]# ./bin/kafka-topics.sh --create --zookeeper 192.168.138.10:2181 --replication-factor 1 --partitions 1 --topic test
    Created topic test.
    [root@cc kafka]# 
    • 打开一个 Producer

      [root@cc kafka]# ./bin/kafka-console-producer.sh --broker-list 192.168.138.10:9092 --topic test
      
  • 另一个打开 Consumer

    [root@cc ~]# cd /opt/software/kafka/
    [root@cc kafka]# ./bin/kafka-console-consumer.sh --bootstrap-server 192.168.138.10:9092 --topic itcast_order --
    

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/748994.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Spring Chache入门详解、配套小案例

简介&#xff1a;Spring Cache是一个框架&#xff0c;实现了基于注解的缓存功能&#xff0c;只需要添加一个注解就能实现缓存功能。 Spring Cache提供了一层抽象&#xff0c;底层可以切换不同的缓存实现&#xff0c;如下&#xff1a; EHCacheCaffeineRedis (这篇帖子&#xff…

下载指定版本的pytorch

下载网址&#xff1a;https://download.pytorch.org/whl/torch_stable.html 参考博客网址&#xff1a;https://blog.csdn.net/wusuoweiieq/article/details/132773977

基于C++的反射功能

需求&#xff1a; 利用C的发射机制&#xff0c;实现根据字符串创建实例对象。 代码&#xff1a; #ifndef OBJECT_H #define OBJECT_H#include <string> #include <map>typedef void* (*Constructor)();class CObjectFactory { public:static void registerClass…

分布式链路追踪(一)SkyWalking(2)使用

一、使用方法 1、简介 agent探针可以让我们不修改代码的情况下&#xff0c;对Java应用上使用到的组件进行动态监控&#xff0c;获取运行数据发送到OAP上进行统计和存储。agent探针在Java使用中是使用Java agent技术实现。不需要更改任何代码&#xff0c;Java agent会通过虚拟…

js基础API初学

事件监听 目标&#xff1a;能够给DOM元素添加事件监听 ■ 什么是事件&#xff1f; 事件是在编程时系统内发生的动作或者发生的事情 比如用户在网页上单击一个按钮 • 什么是事件监听&#xff1f; 就是让程序检测是否有事件产生&#xff0c;一旦有事件触发&#xff0c;就立即调…

【Git版本控制系统】:起步

目录 前言 版本控制 集中式与分布式的区别 Windows安装Git 核心 文件状态 工作区域 基本工作流程 配置用户信息 获取帮助 在线资源 前言 本篇文件的环境是Windows环境下实现。 在日常工作中git少不了&#xff0c;所以编写本篇文章介绍Git基础&#xff0c;专栏会不…

泰勒级数、海森矩阵、雅可比矩阵

泰勒级数 一元泰勒级数展开说明 多元泰勒级数展开说明 海森矩阵 海森矩阵说明 雅可比矩阵 雅可比矩阵说明

web学习笔记(三十二)

目录 1.函数的call、apply、bind方法 1.1call、apply、bind的相同点 1.2call、apply、bind的不同点 1.3call、apply、bind的使用场景 2. 对象的深拷贝 2.1对象的浅拷贝 2.1对象的深拷贝 1.函数的call、apply、bind方法 1.1call、apply、bind的相同点 在没有传参数时&…

OpenXR 超详细的spec--Chapter 1 Introduce

1.什么是OpenXR OpenXR是XR应用的一个API&#xff0c;它是app与runtime进程内或者进程外的接口。Runtime可以处理类似frame composition&#xff0c;外围设备管理、原始tracking information的功能。 Optionally, Runtime可以支持device layer plugins&#xff0c;允许通过共同…

C语言宏定义,内置宏,__FILE__,__LINE__,## 用法

​ 当然宏定义非常重要的&#xff0c;它可以帮助我们防止出错&#xff0c;提高代码的可移植性和可读性等。 下面列举一些成熟软件中常用得宏定义 1&#xff0c;防止一个头文件被重复包含 #ifndef COMDEF_H #define COMDEF_H//头文件内容 … #endif2&#xff0c;重新定义一些…

Linux/secret

Enumeration nmap 第一次扫描发现系统对外开放了22&#xff0c;80和3000端口&#xff0c;端口详细信息如下 可以看到22端口对应的是ssh服务&#xff0c;80和3000都是http服务&#xff0c;80端口使用nginx&#xff0c;3000使用了Node.js TCP/80 可以先从80端口开始探索&…

ICSE 2024

Proceedings of the 46th IEEE/ACM International Conference on Software Engineering, ICSE 2024, Lisbon, Portugal, April 14-20, 2024. 第46届IEEE/ACM软件工程国际会议论文集&#xff0c;2024年4月14日至20日&#xff0c;葡萄牙里斯本。 1 Domain Knowledge Matters: Im…

网络原理(1)——UDP协议

目录 一、应用层 举个例子&#xff1a;点外卖 约定数据格式简单粗暴的例子 客户端和服务器的交互&#xff1a; 序列化和返序列化 xml、json、protobuffer 1、xml 2、json 3、protobuffer 二、传输层 端口 端口号范围划分 认识知名的端口号 三、UDP协议 端口 U…

数据结构之顺序表(包学包会版)

目录 1.线性表 2.顺序表 2.1概念及结构 2.2接口实现 3.总结 halo&#xff0c;又和大家见面了&#xff0c;今天要给大家分享的是顺序表的知识&#xff0c;跟着我的脚步&#xff0c;包学包会哦~ 规矩不乱&#xff0c;先赞后看&#xff01; ps&#xff1a;&#xff08;孙权…

【MMDetection3D实战5】Dataset 和 model配置文件解析

文章目录 1. Dataset 配置文件解析1. 1 定义全局变量1. 1 数据处理pipeline(1) train_pipeline(2) test_pipeline(3) eval_pipeline1. 2 data 字典的定义2. model 配置文件解析2. 1 体素化voxel_layer2. 2 voxel_encoder2. 3 middle_encoder2. 4 2D 检测网络(backbone + neck …

详解(实现)堆的接口函数

文章目录 堆堆的顺序存储 准备工作创建头文件Heap.h创建源文件Heap.c头文件的包含定义保存堆数据的结构体 初始化销毁堆插入数据向上调整算法图解算法代码 删除堆顶向下调整算法图解代码 取出堆顶数据求堆的数据个数判断堆是否为空全部代码Heap.hHeap.c 再了解堆之前我们先要了…

AI毕业论文降重GPTS,避免AI检测,高效完成论文

视频演示 AI毕业论文降重GPTS&#xff0c;避免AI检测&#xff0c;高效完成论文&#xff01; 开发目的 “毕业论文降重”GPTS应用&#xff0c;作用为&#xff1a;重新表述学术论文&#xff0c;降低相似性评分&#xff0c;避免AI检测。 使用地址 地址&#xff1a;毕业论文降重…

unraid docker.img扩容

unraid 弹Docker image disk utilization of 99%&#xff0c;容器下载/更新失败 我的版本是6.11.5&#xff0c;docker.img满了导致容器不能更新&#xff0c;遇到同样问题的可以先用docker命令清除一下仓库(当然不一定能清理出来&#xff0c;我已经清理过只清理出来1G多点&…

【四 (3)数据可视化之 Seaborn 常用图表及代码实现 】

目录 文章导航一、介绍二、安装Seaborn三、导入Seaborn四、设置可以中文显示五、占比类图表1、饼图2、环形图 六、比较排序类1、条形图2、箱线图3、小提琴图 七、趋势类图表1、折线图 八、频率分布类1、直方图 九、关系类图表1、散点图2、成对关系图3、热力图 文章导航 【一 简…