最新资讯

  • VMware平台的Ubuntu部署完全分布式Hadoop环境

VMware平台的Ubuntu部署完全分布式Hadoop环境

2025-04-27 06:37:49 1 阅读

前言:

此文章是本人初次部署Hadoop的过程记录以及所遇到的问题解决,这篇文章只有实际操作部分,没有理论部分。因本人水平有限,本文难免存在不足的地方,如果您有建议,欢迎留言或私信告知于我,非常感谢。
部分参考网络资料,如有侵权,联系删除。

文章目录

  • 前言:
  • 环境准备(需提前下载好):
  • 1.安装Ubuntu
  • 2.配置hosts网络映射(三个机器均需要)
  • 3.Java JDK8 配置(三个机器均需要)
  • 4.SSH 配置(三个机器均需要)
  • 5.Hadoop安装配置
    • 5.1master机器执行部分
    • 5.2 slave机器执行部分(slave01和slave02均需要执行一遍)
  • 6. Hadoop启动与停止
  • 7.部分问题解决:
    • 1.多次执行格式化操作`hdfs namenode -format`之后,导致DataNode进程或namenode看不到了。
    • 2.IP自动更改

环境准备(需提前下载好):

1.VMware workstation 17.5,作为虚拟化平台
(官网下载地址:vmware workstation17.5(需登录))

2.Ubuntu20.04 (18.04,22.04,24.04应该也可以)
(清华源镜像地址:Ubuntu20.04)

3.JDK8(其他版本不适配)
(官网下载链接(需登录):下载页面(选x64 Compressed Archive))
(清华源的openjdk下载链接: openjdk8)

4.Hadoop-3.3.6
(官网下载链接:Hadoop-3.3.6)

1.安装Ubuntu

(1)点击创建新的虚拟机
(如果没有这一页,可以点击上面的选项卡,再点击转到主页)

(2)点击自定义,下一步

(3)默认即可,点下一步

(4)点稍后安装操作系统,下一步

(5)这里选Linux,版本Ubuntu 64位

(6)点击浏览选择合适的存储位置

(7)处理器数量和内核数量选 1

(8)内存4GB,可根据个人情况调整(如果物理机只有16G,可改为3GB(3072MB))。

(9)均默认,点下一步




(10)建议磁盘大小30G,避免后续使用时空间不足,可根据个人情况调整

(11)默认,点下一步

(12)点击完成

(13)点编辑虚拟机设置

(14)点击CD/DVD,点击“使用ISO镜像文件”,再点击浏览,找到刚刚下载的Ubuntu20.04镜像

(15)点击Install Ubuntu ,建议使用英文,避免中文报错。

(16)点continue,
这里如果窗口太小,看不到按钮,同时按Alt + F7,然后会出现一个手的标志,可以移动窗口,再点击鼠标左键来固定

(17)点Minimal installation,点continue

(18)默认,点Install Now

(19)点击 continue

(20)默认,点击continue

(21)
Your name 填Hadoop
Your conputer’s name 填master
设置好密码后,点continue

(22)等待安装

(23)安装完成,点击Restart Now

(24)这里直接按回车即可

(25)点击Hadoop,输入密码
注意:Ubuntu安装之后,数字小键盘默认关闭,按键盘上NumLock打开。

(26)进入之后的设置,全部点击右上角的skip和next即可

(27)会有版本更新弹窗,点击Don’t Upgrade,再点击OK


(28)右上角会有一个红色圆圈,点击,再点Show update,然后点击Install Now,之后输入密码,更新即可。



(29)如果窗口太小,按Ctrl+Alt+T打开终端,输入下面两行代码,运行结束之后再重启一下虚拟机。

sudo apt update
sudo apt install open-vm-tools-desktop -y

注:输入 sudo apt update后,如果第(28)的更新未完成的话,会报错,等待更新完成再输入即可

(30)现在第一个虚拟机以及创建完毕。
创建第二个和第三个虚拟机时,只有第(21)不一样,
第二个虚拟机的Your conputer’s name 填slave01
第三个虚拟机的Your conputer’s name 填slave02

2.配置hosts网络映射(三个机器均需要)

(1)输入命令,安装网络工具
注:Ubuntu中,Ctrl + Shift + C 是复制,Ctrl + Shift + V 是粘贴

sudo apt install net-tools

(2)输入命令查看ip地址

ifconfig

图中第三行的192.168.61.142为本机IP,每个人电脑不相同。

(3)在slave01机器和slave02机器执行相同操作,并记下IP。
我的slave01的IP:192.168.61.143

我的slave02的IP:192.168.61.144

(4)三个机器都下载vim,方便后续使用。

sudo apt install vim -y

(5)编辑修改hosts文件,使节点之间通信方便

sudo vim /etc/hosts

进入之后,如下图所示

按键盘“ i ”进入编辑模式(插入模式),然后用上下左右方向键移动光标到第三行,输入刚刚查询到的IP,然后加上机器名(@后面的)
例:【hadoop@master:~$】,中,master是机器名。
编辑好后如图所示(ip地址不相同,根据自己Ubuntu的IP来修改)

编辑好之后,按键盘左上角ESC退出编辑模式,再按Shift + “;”,左下角会出现一个冒号“:”,然后输入“wq”保存并退出文件。

(6)配置好hosts后,使用ping命令来测试是否配置成功,之后在另外两个机器也配置。

ping slave01
ping slave02

出现如图类似之后,即hosts配置成功,按Ctrl + C 终止,

3.Java JDK8 配置(三个机器均需要)

(1)在自己电脑下载好JDK之后,粘贴到虚拟机的Downloads里,鼠标右键,点Paste即可粘贴。
注:打开左边第二个图标,打开之后点Downloads,再粘贴
(也可以复制链接到虚拟机的浏览器,直接在虚拟机下载,省的再复制粘贴)


注:如果出现类似报错,点击Retry再点击Skip。如果不行的话就等待一会再复制粘贴试试。如果还是不行,执行下面的命令之后重启虚拟机。

sudo apt update
sudo apt ​autoremove open-vm-tools -y
sudo apt install open-vm-tools-desktop -y

(2)执行命令,解压jdk
注:这里jdk-8u441-linux-x64.tar.gz不一定相同,根据个人情况修改,可以输入jdk之后,按Tab键自动补全。

cd /usr/lib
sudo mkdir jvm
cd ~/Downloads        //即 cd /home/hadoop/Downloads
sudo tar -zxvf jdk-8u441-linux-x64.tar.gz -C /usr/lib/jvm

(3)查看具体安装的jdk版本号,例如我的是jdk1.8.0_441

cd /usr/lib/jvm
ls


(4)配置java环境变量

sudo vim ~/.bashrc

进入文件后,按上下方向键,翻到最后,插入下面语句
注:第一句的jdk不一定相同,根据第三步查询的来修改。

export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_441
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

执行命令:source ~/.bashrc,然后关闭终端,再重新打开,输入java -version,如下图所示即配置成功

(5)在slave01和slave02执行相同的1~4,完成配置

4.SSH 配置(三个机器均需要)

(1)安装ssh

sudo apt install openssh-server -y

(2)测试登录本地,验证是否成功。

ssh localhost

输入之后,会停顿一下,如下图,然后输入yes,之后会让输入本机密码。

成功登录如图

然后输入exit 会出现退出登录信息

(3)前两步骤三个机器均需下载,下载完成之后在进行第四步。

(4)在master节点生成公钥

cd ~/.ssh
rm ./id_rsa*        //如果是第一次下载ssh,可以不执行这一句
ssh-keygen -t rsa   //输入之后有停顿,全部按回车即可


(5)在本机节点上设置免密登录并测试

cat ./id_rsa.pub >> ./authorized_keys
ssh localhost

会发现,再次执行ssh连接不再需要密码

(6)将公钥传到slave01、slave02(只在master机器上操作)
注:第二个命令中hadoop@slave01需要根据自己Ubuntu的用户名和机器名进行修改,如果你的用户名+机器名是zhangsan@slave01,那么命令中的hadoop@slave01就需要修改为zhangsan@slave01,同理/home/hadoop也一样改为/home/zhangsan,如果与示例相同则不需要更改

cd ~/.ssh
scp ~/.ssh/id_rsa.pub hadoop@slave01:/home/hadoop    //将公钥给slave01
scp ~/.ssh/id_rsa.pub hadoop@slave02:/home/hadoop    //将公钥给slave02

注:第二个和第三个命令之后需要输入密码,这个密码是登录slave01和slave02机器的密码

(7)在slave节点中将公钥保存(此步骤只在slave01和slave02上操作)

cat ~/id_rsa.pub>>~/.ssh/authorized_keys
rm ~/id_rsa.pub

(8)验证免密连接(只在master机器上执行)

ssh slave01

注:如果你的用户名和master机器的用户名不一样,那这里需要输入完整的用户名+机器名
例 : slave节点用户名和机器名是zhangsan@slave01,那你这里需要输入ssh zhangsan@slave01
这一次不需要密码就能连接上,并且会看到用户名和机器名由hadoop@master变成hadoop@slave01

然后输入exit退出连接,再测试slave02

ssh slave02

成功连接后,输入exit退出连接

5.Hadoop安装配置

5.1master机器执行部分

(1)在自己电脑下载好Hadoop文件之后,粘贴到虚拟机的Downloads里,鼠标右键,点Paste即可粘贴。
注:打开左边第二个图标,打开之后点Downloads,再粘贴
(如果下载速度过慢,可以搜索“磁力下载软件”,找个顺眼的安装,这里不再推荐,将下载链接粘贴到磁力工具中再下载,速度会快点)

(2)解压
注:我下载的是Hadoop-3.3.6的版本,根据自己下载的版本修改~/Downloads/hadoop-3.3.6.tar.gz这一部分,

sudo tar -zxvf ~/Downloads/hadoop-3.3.6.tar.gz -C /usr/local
cd /usr/local
sudo mv ./hadoop-3.3.6 ./hadoop    //如果你的不是3.3.6,根据实际修改
sudo chown -R hadoop ./hadoop

(3)配置环境变量

sudo vim ~/.bashrc

进入文件后,按上下方向键,翻到最后,插入下面语句

export HADOOP_HOME=/usr/local/hadoop
export HADOOP_MAPRED_HOME=$HADOOP_HOME
export HADOOP_COMMON_HOME=$HADOOP_HOME
export HADOOP_HDFS_HOME=$HADOOP_HOME
export YARN_HOME=$HADOOP_HOME
export HADOOP_COMMON_LIB_NATIVE_DIR=${HADOOP_HOME}/lin/native
export PATH=${JAVA_HOME}/bin:${HADOOP_HOME}/bin:${HADOOP_HOME}/sbin:$PATH

执行命令:source ~/.bashrc,然后关闭终端,再重新打开一个终端,输入hadoop version,如下图即配置成功

(4)文件配置
文件1

cd /usr/local/hadoop/etc/hadoop
vim core-site.xml 

打开文件后,翻到最后一行,先将文件自带的删除,( 是XML文件的根元素,只能出现一次,必须唯一!)

再将下面内容粘贴到文件中

<configuration>
	<property>
		<name>fs.defaultFS</name>
		<value>hdfs://master:9000</value>
	</property>
	<property>
		<name>io.file.buffer.size</name>
		<value>131072</value>
	</property>
	<property>
		<name>hadoop.tmp.dir</name>
		<value>file:/usr/local/hadoop/tmp</value>
		<description>Abasefor other temporary directories.</description>
	</property>
	<property>
		<name>hadoop.proxyuser.spark.hosts</name>
		<value>*</value>
	</property>
	<property>
		<name>hadoop.proxyuser.spark.groups</name>
		<value>*</value>
	</property>
</configuration>

文件2:

vim hdfs-site.xml

操作跟上面一样,翻到文件最下面后,先将文件自带的删除,再将内容粘贴到文件上

<configuration>
	<property>
		<name>dfs.namenode.secondary.http-address</name>
		<value>master:9001</value>
	</property>
	<property>
		<name>dfs.namenode.name.dir</name>
		<value>file:/usr/local/hadoop/dfs/name</value>
	</property>
	<property>
		<name>dfs.datanode.data.dir</name>
		<value>file:/usr/local/hadoop/dfs/data</value>
	</property>
	<property>
		<name>dfs.replication</name>
		<value>2</value>
	</property>
	<property>
		<name>dfs.webhdfs.enabled</name>
		<value>true</value>
	</property>
</configuration>

文件3:

vim yarn-site.xml

操作同上,先将文件自带的删除,再将下面代码粘贴到文件里

<configuration>
	<property>
		<name>yarn.nodemanager.aux-services</name>
		<value>mapreduce_shuffle</value>
	</property>
	<property>
		<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
		<value>org.apache.hadoop.mapred.ShuffleHandler</value>
	</property>
	<property>
		<name>yarn.resourcemanager.address</name>
		<value>master:8032</value>
	</property>
	<property>
		<name>yarn.resourcemanager.scheduler.address</name>
		<value>master:8030</value>
	</property>
	<property>
		<name>yarn.resourcemanager.resource-tracker.address</name>
		<value>master:8035</value>
	</property>
	<property>
		<name>yarn.resourcemanager.admin.address</name>
		<value>master:8033</value>
	</property>
	<property>
		<name>yarn.resourcemanager.webapp.address</name>
		<value>master:8088</value>
	</property>
</configuration>

文件4:

vim mapred-site.xml
//如果你打开之后是空白文件,先退出文件,再执行下面的命令;如果打开之后有内容,不用执行
cp mapred-site.xml.template mapred-site.xml

操作同上,先将文件自带的删除,再将下面代码粘贴到文件里

<configuration>
	<property>
		<name>mapreduce.framework.name</name>
		<value>yarn</value>
	</property>
	<property>
		<name>mapreduce.jobhistory.address</name>
		<value>master:10020</value>
	</property>
	<property>
		<name>mapreduce.jobhistory.webapp.address</name>
		<value>master:19888</value>
	</property>
</configuration>

文件5:

sudo vim hadoop-env.sh

操作同上,这个不用删,直接将下面代码粘贴到文件最后,可以按方向键上面的PgDn/PageDown按键加快翻动
注:jdk版本根据自己下载的更改,此处与刚刚Java环境变量配置的路径一样。

export JAVA_HOME=/usr/lib/jvm/jdk1.8.0_441

文件6:

sudo vim workers


打开之后默认是localhost,删除,然后将下面内容粘贴到里面。

hadoop@slave01
hadoop@slave02

注:此处是两个slave节点的完整用户名和机器名,如果你的用户名或机器名与示例不同,需要修改。

(5)压缩文件

cd /usr/local
sudo rm -rf ./hadoop/tmp
sudo rm -rf ./hadoop/logs
tar -zcvf ~/hadoop.master.tar.gz ./hadoop

(6)将压缩好的文件发送到slave机器上

scp ~/hadoop.master.tar.gz hadoop@slave01:/home/hadoop
scp ~/hadoop.master.tar.gz hadoop@slave02:/home/hadoop

注:此处hadoop@slave01是slave01虚拟机的完整用户名和机器名,如果与示例不同,根据自己的用户名和机器名修改,/home/hadoop的hadoop同理。

5.2 slave机器执行部分(slave01和slave02均需要执行一遍)

(1)在slave节点上解压hadoop.master.tar.gz文件,并给予授权

sudo rm -rf /usr/local/hadoop
sudo tar -zxvf ~/hadoop.master.tar.gz -C /usr/local
sudo chown -R hadoop /usr/local/hadoop

注:-R 后面的hadoop是slave节点的用户名,如果与示例不同,根据自己的情况修改。
/usr/local/hadoop这部分是固定的,不需要修改。

6. Hadoop启动与停止

(1)格式化NameNode(只在master上操作)

hdfs namenode -format

注:只执行一次就行,之后再使用Hadoop,不需要再格式化!!!
运行完结果类似下图

(2)启动HDFS(只在master节点上操作)

start-dfs.sh

然后在master,slave01,slave02上分别输入jps,结果如下图

master节点

slave01节点

slave02节点

(3)启动YARN(只在master节点上操作)

start-yarn.sh

然后在master,slave01,slave02上分别输入jps,结果如下图

master节点

slave01节点

salve02节点

(4)网页访问(在master机器上操作)
在浏览器中打开http://master:8088/cluster/nodes,节点情况如下图

如果能正常打开网页,但没有节点,先stop停止进程,
执行sudo vim /etc/hosts,在第二行加个#和空格,如图,
之后再次运行进程就好了

(5)停止HDFS和YARN

stop-yarn.sh
stop-dfs.sh

也可以直接执行stop-all.sh全部关闭。

附录:
有小伙伴两小时急速完成,期待有新的记录产生
有小伙伴1小时17分钟急速完成,期待有新的记录产生

7.部分问题解决:

1.多次执行格式化操作hdfs namenode -format之后,导致DataNode进程或namenode看不到了。

解决:这里给出一个适用于重启运行的方式:删除所有节点的/usr/local/hadoop/dfs中的内容,一般是name和data两个文件夹,因为这里记录了上次运行的集群ID等信息可能会导致冲突(当然这里只是部署阶段,如果运行了很久,重要的数据需要小心)。然后清一下logs数据,方便再运行查看错误问题。最后在master节点上执行hadoop namenode -format,就可以再启动Hadoop了。

举个不恰当的例子,就好像第一次格式化之后,dfs的实际位置id刷新在麻辣烫,第二次格式化之后,dfs实际位置刷新到火锅,但是文件仍然保存着第一次麻辣烫的位置,实际位置与文件保存的位置不一样,命令运行的时候部分信息就乱跑了,导致datanode与namenode无法加载出来。

注:在执行之前,先stop-all.sh,将进程都停止了

(1)以下是直接操作的代码:(master和slave上都要执行)

cd /usr/local/hadoop
rm -rf /usr/local/hadoop/dfs
rm -rf /usr/local/hadoop/tmp
rm -rf /usr/local/hadoop/logs

(2)把第一步的代码,在master和slave机器上都执行之后,再进行下一步
(3)在master机器上执行下面代码

hdfs namenode -format  //格式化

(4)启动HDFS(只在master节点上操作)

start-dfs.sh

(5)启动YARN(只在master节点上操作)

start-yarn.sh

(6)之后jps与查看网页步骤同上

2.IP自动更改

部分人的虚拟机,在再次打开后,会发现ip与上一次的ip不一样了,可以修改hosts(参考第二大步),或者参考网上设置静态IP。

本文地址:https://www.vps345.com/2960.html

搜索文章

Tags

PV计算 带宽计算 流量带宽 服务器带宽 上行带宽 上行速率 什么是上行带宽? CC攻击 攻击怎么办 流量攻击 DDOS攻击 服务器被攻击怎么办 源IP 服务器 linux 运维 游戏 云计算 javascript 前端 chrome edge 进程 操作系统 进程控制 Ubuntu python MCP 阿里云 网络 网络安全 网络协议 llama 算法 opencv 自然语言处理 神经网络 语言模型 ubuntu ssh deepseek Ollama 模型联网 API CherryStudio RTSP xop RTP RTSPServer 推流 视频 数据库 centos oracle 关系型 安全 分布式 android harmonyos typescript 鸿蒙 java 面试 性能优化 jdk intellij-idea 架构 flutter 华为 开发语言 计算机网络 php Dell R750XS rust http 深度学习 YOLO 目标检测 计算机视觉 人工智能 macos adb fastapi mcp mcp-proxy mcp-inspector fastapi-mcp agent sse HCIE 数通 filezilla 无法连接服务器 连接被服务器拒绝 vsftpd 331/530 numpy 机器学习 docker 容器 DeepSeek-R1 API接口 live555 rtsp rtp sqlserver WSL win11 无法解析服务器的名称或地址 Hyper-V WinRM TrustedHosts websocket DigitalOcean GPU服务器购买 GPU服务器哪里有 GPU服务器 apache web安全 Kali Linux 黑客 渗透测试 信息收集 vue3 HTML audio 控件组件 vue3 audio音乐播放器 Audio标签自定义样式默认 vue3播放音频文件音效音乐 自定义audio播放器样式 播放暂停调整声音大小下载文件 asm c# Qwen2.5-coder 离线部署 github 创意 社区 ollama下载加速 大模型 cuda cudnn anaconda Flask FastAPI Waitress Gunicorn uWSGI Uvicorn Windsurf windows 微服务 springcloud pycharm ide cpu 内存 实时 使用 word图片自动上传 word一键转存 复制word图片 复制word图文 复制word公式 粘贴word图文 粘贴word公式 vim c++ pip conda react.js 前端面试题 node.js 持续部署 YOLOv8 NPU Atlas800 A300I pro asi_bench jenkins pytorch transformer c语言 qt stm32项目 单片机 stm32 tcp/ip 科技 ai 个人开发 物联网 iot udp unity golang 后端 计算机外设 电脑 mac 软件需求 oceanbase rc.local 开机自启 systemd 麒麟 gitee spring boot ssl chatgpt llama3 Chatglm 开源大模型 微信 微信分享 Image wxopensdk ping++ 运维开发 深度优先 图论 并集查找 换根法 树上倍增 GaN HEMT 氮化镓 单粒子烧毁 辐射损伤 辐照效应 ollama llm ffmpeg 音视频 宝塔面板访问不了 宝塔面板网站访问不了 宝塔面板怎么配置网站能访问 宝塔面板配置ip访问 宝塔面板配置域名访问教程 宝塔面板配置教程 vue.js audio vue音乐播放器 vue播放音频文件 Audio音频播放器自定义样式 播放暂停进度条音量调节快进快退 自定义audio覆盖默认样式 嵌入式硬件 温湿度数据上传到服务器 Arduino HTTP WSL2 uni-app 负载均衡 ESP32 tomcat LDAP vscode 笔记 maven intellij idea 实时音视频 产品经理 agi microsoft .netcore nginx 监控 自动化运维 智能路由器 外网访问 内网穿透 端口映射 C 环境变量 进程地址空间 json html5 firefox .net django flask web3.py 前端框架 YOLOv12 jmeter 软件测试 AI Agent VSCode 信息与通信 多线程服务器 Linux网络编程 Java android studio mysql 1024程序员节 springsecurity6 oauth2 授权服务器 token sas FTP 服务器 virtualenv XCC Lenovo 向日葵 DeepSeek 繁忙 服务器繁忙 解决办法 替代网站 汇总推荐 AI推理 mongodb dba pdf 飞牛NAS 飞牛OS MacBook Pro list 数据结构 服务器数据恢复 数据恢复 存储数据恢复 raid5数据恢复 磁盘阵列数据恢复 docker搭建nacos详解 docker部署nacos docker安装nacos 腾讯云搭建nacos centos7搭建nacos svn gitlab visualstudio prometheus https springboot远程调试 java项目远程debug docker远程debug java项目远程调试 springboot远程 Ubuntu Server Ubuntu 22.04.5 Linux 服务器部署ai模型 开源 部署 SSL 域名 safari Mac 系统 系统架构 Trae IDE AI 原生集成开发环境 Trae AI 3d 测试工具 mcu 驱动开发 硬件工程 嵌入式实习 企业微信 Linux24.04 deepin gpu算力 Reactor 设计模式 C++ 自动化 多进程 远程 命令 执行 sshpass 操作 流式接口 云原生 pyqt java-ee 小程序 微信小程序域名配置 微信小程序服务器域名 微信小程序合法域名 小程序配置业务域名 微信小程序需要域名吗 微信小程序添加域名 Kylin-Server 国产操作系统 服务器安装 NFS EasyConnect Cline zabbix excel ecmascript nextjs react reactjs 交互 make命令 makefile文件 hadoop 网工 ESXi 压测 ECS bash firewalld 搜索引擎 ssrf 失效的访问控制 AIGC 经验分享 openwrt Deepseek ux 多线程 Google pay Apple pay iftop 网络流量监控 KVM 服务器主板 AI芯片 open Euler dde 统信UOS 微信小程序 wireshark 代码调试 ipdb xrdp 远程桌面 远程连接 HarmonyOS Next DevEco Studio string模拟实现 深拷贝 浅拷贝 经典的string类问题 三个swap 游戏服务器 TrinityCore 魔兽世界 NPS 雨云服务器 雨云 开机自启动 跨域 学习方法 学习 能力提升 面试宝典 技术 IT信息化 环境迁移 文件系统 路径解析 崖山数据库 YashanDB threejs 3D 源码剖析 rtsp实现步骤 流媒体开发 Ubuntu 24.04.1 轻量级服务器 redhat ue4 着色器 ue5 虚幻 目标跟踪 OpenVINO 推理应用 Dify 毕设 jar 程序人生 相差8小时 UTC 时间 sqlite3 redis netty QQ 机器人 bot Docker rpc 远程过程调用 Windows环境 直播推流 串口服务器 kvm 无桌面 命令行 git gitea 媒体 微信公众平台 risc-v SSH 服务 SSH Server OpenSSH Server C语言 RAGFLOW RAG 检索增强生成 文档解析 大模型垂直应用 嵌入式 linux驱动开发 arm开发 计算机 jupyter 医疗APP开发 app开发 进程信号 CLion html css gradle matlab 指令 蓝耘科技 元生代平台工作流 ComfyUI bootstrap web Socket ci/cd C# MQTTS 双向认证 emqx 压力测试 mount挂载磁盘 wrong fs type LVM挂载磁盘 Centos7.9 ecm bpm 宕机切换 服务器宕机 大语言模型 bonding 链路聚合 curl wget 远程工作 课程设计 大数据 devops springboot 数据库架构 数据管理 数据治理 数据编织 数据虚拟化 设置代理 实用教程 idm Minecraft ddos linux 命令 sed 命令 集成学习 集成测试 webrtc RoboVLM 通用机器人策略 VLA设计哲学 vlm fot robot 视觉语言动作模型 具身智能 AI编程 freebsd debian PVE zotero WebDAV 同步失败 代理模式 ansible playbook selenium iDRAC R720xd 服务器配置 编辑器 鸿蒙系统 华为云 rabbitmq dell服务器 go 硬件架构 elasticsearch IIS .net core Hosting Bundle .NET Framework vs2022 XFS xfs文件系统损坏 I_O error es jvm minicom 串口调试工具 测试用例 功能测试 fpga开发 shell 磁盘监控 Linux awk awk函数 awk结构 awk内置变量 awk参数 awk脚本 awk详解 爬虫 数据集 X11 Xming 缓存 生物信息学 openEuler 状态管理的 UDP 服务器 Arduino RTOS GCC crosstool-ng 数据挖掘 r语言 数据可视化 mariadb 腾讯云 docker命令大全 wsl2 wsl mq rocketmq kafka minio mybatis 多层架构 解耦 jetty undertow UOS 统信操作系统 yum 交换机 硬件 设备 GPU PCI-Express 音乐服务器 Navidrome 音流 kylin 智能手机 NAS Termux Samba SSH Docker Hub docker pull 镜像源 daemon.json Ubuntu 24 常用命令 Ubuntu 24 Ubuntu vi 异常处理 Erlang OTP gen_server 热代码交换 事务语义 分析解读 hugo LLM 大模型面经 职场和发展 大模型学习 Dell HPE 联想 浪潮 kubernetes k8s ruoyi WebUI DeepSeek V3 AI大模型 MQTT协议 消息服务器 代码 DeepSeek行业应用 Heroku 网站部署 AI写作 AI作画 IIS服务器 IIS性能 日志监控 next.js 部署next.js 聊天室 spring cloud 技能大赛 asp.net大文件上传 asp.net大文件上传源码 ASP.NET断点续传 asp.net上传文件夹 asp.net上传大文件 .net core断点续传 .net mvc断点续传 protobuf 序列化和反序列化 安装 nuxt3 efficientVIT YOLOv8替换主干网络 TOLOv8 MacMini 迷你主机 mini Apple webstorm 强制清理 强制删除 mac废纸篓 服务器管理 宝塔面板 配置教程 网站管理 eNSP 网络规划 VLAN 企业网络 其他 银河麒麟服务器操作系统 系统激活 剧本 数据分析 linux环境变量 VR手套 数据手套 动捕手套 动捕数据手套 Ark-TS语言 sql KingBase VMware安装Ubuntu Ubuntu安装k8s 虚拟机 VMware k8s资源监控 annotations自动化 自动化监控 监控service 监控jvm 博客 安全威胁分析 数学建模 vscode 1.86 k8s集群资源管理 云原生开发 grafana 命名管道 客户端与服务端通信 IPMI express unix Docker Compose docker compose docker-compose chfs ubuntu 16.04 漏洞 av1 电视盒子 机顶盒ROM 魔百盒刷机 微信开放平台 微信公众号配置 银河麒麟 kylin v10 麒麟 v10 spring selete 高级IO 网络穿透 云服务器 Nuxt.js Xterminal VMware安装mocOS macOS系统安装 TRAE Playwright 自动化测试 ros2 moveit 机器人运动 豆瓣 追剧助手 迅雷 nas 弹性计算 裸金属服务器 弹性裸金属服务器 虚拟化 eureka unity3d CPU 主板 电源 网卡 postman mock mock server 模拟服务器 mock服务器 Postman内置变量 Postman随机数据 okhttp CORS 显示过滤器 ICMP Wireshark安装 pygame gcc 低代码 ArcTS 登录 ArcUI GridItem arkUI AI代码编辑器 大模型微调 系统开发 binder 车载系统 framework 源码环境 半虚拟化 硬件虚拟化 Hypervisor Cursor 边缘计算 智能硬件 安装教程 GPU环境配置 Ubuntu22 CUDA PyTorch Anaconda安装 micropython esp32 mqtt sqlite dubbo MS Materials openssl 密码学 gateway Clion Nova ResharperC++引擎 Centos7 远程开发 模拟退火算法 visual studio code code-server MQTT mosquitto 消息队列 Linux PID 程序员 pillow hibernate kamailio sip VoIP 大数据平台 腾讯云大模型知识引擎 echarts 信息可视化 网页设计 数据库系统 小游戏 五子棋 W5500 OLED u8g2 TCP服务器 dify remote-ssh 软件工程 rust腐蚀 统信 虚拟机安装 tcpdump 框架搭建 报错 RAID RAID技术 磁盘 存储 nvidia RustDesk自建服务器 rustdesk服务器 docker rustdesk 混合开发 环境安装 JDK 僵尸进程 postgresql 政务 分布式系统 监控运维 Prometheus Grafana mysql离线安装 ubuntu22.04 mysql8.0 JAVA centos-root /dev/mapper yum clean all df -h / du -sh opensearch helm WebRTC gpt 华为od OD机试真题 华为OD机试真题 服务器能耗统计 基础入门 编程 恒源云 vSphere vCenter 软件定义数据中心 sddc RTMP 应用层 opcua opcda KEPServer安装 oneapi etcd 数据安全 RBAC open webui 北亚数据恢复 oracle数据恢复 Redis Desktop adobe 传统数据库升级 银行 LLMs Python 网络编程 聊天服务器 套接字 TCP 客户端 n8n 工作流 workflow 移动云 云服务 可信计算技术 鲲鹏 epoll Ubuntu共享文件夹 共享目录 Linux共享文件夹 系统安全 spark HistoryServer Spark YARN jobhistory CDN Headless Linux uniapp 链表 群晖 飞牛 asp.net大文件上传下载 中间件 iis matplotlib USB转串口 CH340 Linux的基础指令 ruby 双系统 GRUB引导 Linux技巧 cnn 自定义客户端 SAS 邮件APP 免费软件 skynet 僵尸世界大战 游戏服务器搭建 IM即时通讯 剪切板对通 HTML FORMAT 银河麒麟操作系统 国产化 安全架构 zookeeper nfs embedding rsyslog Anolis nginx安装 linux插件下载 移动魔百盒 uv glibc 历史版本 下载 v10 软件 ldap etl 阿里云ECS IMX317 MIPI H265 VCU LORA NLP 黑客技术 URL 本地部署 api 架构与原理 线程 多个客户端访问 IO多路复用 回显服务器 TCP相关API 自学笔记 小米 澎湃OS Android 网络工程师 华为认证 软负载 AI-native Docker Desktop vue less 大文件分片上传断点续传及进度条 如何批量上传超大文件并显示进度 axios大文件切片上传详细教 node服务器合并切片 vue3大文件上传报错提示错误 大文件秒传跨域报错cors cpp-httplib MI300x ip命令 新增网卡 新增IP 启动网卡 ios iphone rnn SSE c/c++ 串口 LLM Web APP Streamlit 安卓 arcgis bug 模拟实现 支付 微信支付 开放平台 ArkTs ArkUI aws Unity Dedicated Server Host Client 无头主机 开发环境 SSL证书 g++ g++13 Cookie 策略模式 单例模式 elk 网络攻击模型 VMware创建虚拟机 性能测试 odoo 服务器动作 Server action tidb GLIBC 游戏程序 python3.11 视频编解码 Portainer搭建 Portainer使用 Portainer使用详解 Portainer详解 Portainer portainer SenseVoice 视觉检测 文件分享 midjourney 代码托管服务 mamba Vmamba Kali 渗透 远程控制 远程看看 远程协助 Ubuntu DeepSeek DeepSeek Ubuntu DeepSeek 本地部署 DeepSeek 知识库 DeepSeek 私有化知识库 本地部署 DeepSeek DeepSeek 私有化部署 MacOS录屏软件 sentinel 代理 版本 高效日志打印 串口通信日志 服务器日志 系统状态监控日志 异常记录日志 DeepSeek r1 Open WebUI swoole cd 目录切换 三级等保 服务器审计日志备份 FTP服务器 串口驱动 CH341 uart 485 OpenManus 宝塔 wordpress 无法访问wordpess后台 打开网站页面错乱 linux宝塔面板 wordpress更换服务器 DNS 佛山戴尔服务器维修 佛山三水服务器维修 ipython 软考 联想开天P90Z装win10 tensorflow Invalid Host allowedHosts prompt bcompare Beyond Compare 模拟器 教程 eclipse 图像处理 游戏引擎 fd 文件描述符 干货分享 黑客工具 密码爆破 Ubuntu22.04 开发人员主页 trea idea camera Arduino 电子信息 执法记录仪 智能安全帽 smarteye tailscale derp derper 中转 triton 模型分析 矩阵 线性代数 电商平台 IDEA 互信 C++软件实战问题排查经验分享 0xfeeefeee 0xcdcdcdcd 动态库加载失败 程序启动失败 程序运行权限 标准用户权限与管理员权限 bat linux安装配置 cursor MCP server C/S kali 共享文件夹 windows日志 键盘 EtherCAT转Modbus ECT转Modbus协议 EtherCAT转485网关 ECT转Modbus串口网关 EtherCAT转485协议 ECT转Modbus网关 嵌入式Linux IPC DOIT 四博智联 lua EMUI 回退 降级 升级 vue-i18n 国际化多语言 vue2中英文切换详细教程 如何动态加载i18n语言包 把语言json放到服务器调用 前端调用api获取语言配置文件 ui npm 自动化任务管理 easyui langchain 常用命令 文本命令 目录命令 thingsboard 音乐库 安防软件 ragflow apt H3C 权限 log4j 灵办AI 前后端分离 yum源切换 更换国内yum源 服务器无法访问 ip地址无法访问 无法访问宝塔面板 宝塔面板打不开 影刀 #影刀RPA# 单元测试 飞牛nas fnos c 图形化界面 uni-file-picker 拍摄从相册选择 uni.uploadFile H5上传图片 微信小程序上传图片 arm rdp 远程服务 Jellyfin FunASR ASR 实习 vr edge浏览器 file server http server web server 我的世界 我的世界联机 数码 Typore 实验 技术共享 我的世界服务器搭建 并查集 leetcode 5G 3GPP 卫星通信 王者荣耀 Wi-Fi DocFlow trae Spring Security Linux无人智慧超市 LInux多线程服务器 QT项目 LInux项目 单片机项目 ISO镜像作为本地源 云电竞 云电脑 todesk Linux的权限 SysBench 基准测试 怎么卸载MySQL MySQL怎么卸载干净 MySQL卸载重新安装教程 MySQL5.7卸载 Linux卸载MySQL8.0 如何卸载MySQL教程 MySQL卸载与安装 GoogLeNet 监控k8s 监控kubernetes ip 备份SQL Server数据库 数据库备份 傲梅企业备份网络版 交叉编译 MNN Qwen Claude pppoe radius AnythingLLM AnythingLLM安装 Netty 即时通信 NIO docker run 数据卷挂载 交互模式 SWAT 配置文件 服务管理 网络共享 gaussdb 银河麒麟桌面操作系统 Kylin OS xss 在线预览 xlsx xls文件 在浏览器直接打开解析xls表格 前端实现vue3打开excel 文件地址url或接口文档流二进 迁移指南 Linux环境 kind CrewAI qemu libvirt ocr AI agent WebVM 思科模拟器 思科 Cisco saltstack 宠物 毕业设计 免费学习 宠物领养 宠物平台 知识库 RAGFlow 本地知识库部署 DeepSeek R1 模型 分布式训练 反向代理 DenseNet 小艺 Pura X qt项目 qt项目实战 qt教程 muduo 国标28181 视频监控 监控接入 语音广播 流程 SIP SDP 自动驾驶 算力 can 线程池 Radius googlecloud 高效远程协作 TrustViewer体验 跨设备操作便利 智能远程控制 EMQX 通信协议 VS Code USB网络共享 计算虚拟化 弹性裸金属 监控k8s集群 集群内prometheus 工业4.0 无人机 windwos防火墙 defender防火墙 win防火墙白名单 防火墙白名单效果 防火墙只允许指定应用上网 防火墙允许指定上网其它禁止 根服务器 clickhouse 程序员创富 xml linux上传下载 社交电子 ssh漏洞 ssh9.9p2 CVE-2025-23419 网络结构图 阻塞队列 生产者消费者模型 服务器崩坏原因 laravel 软件构建 小智AI服务端 xiaozhi TTS 直流充电桩 充电桩 junit 虚拟显示器 7z vmware 卡死 AD 域管理 cmos 自动化编程 网站搭建 serv00 输入法 小番茄C盘清理 便捷易用C盘清理工具 小番茄C盘清理的优势尽显何处? 教你深度体验小番茄C盘清理 C盘变红?!不知所措? C盘瘦身后电脑会发生什么变化? 显示管理器 lightdm gdm 远程登录 telnet 同步 备份 建站 重启 排查 系统重启 日志 原因 ai小智 语音助手 ai小智配网 ai小智教程 esp32语音助手 diy语音助手 xshell termius iterm2 lsb_release /etc/issue /proc/version uname -r 查看ubuntu版本 neo4j 数据仓库 数据库开发 database 需求分析 规格说明书 p2p keepalived nac 802.1 portal 游戏机 毕昇JDK dns chrome devtools chromedriver 大模型入门 上传视频至服务器代码 vue3批量上传多个视频并预览 如何实现将本地视频上传到网页 element plu视频上传 ant design vue vue3本地上传视频及预览移除 HTTP 服务器控制 ESP32 DeepSeek minecraft xcode 备选 网站 调用 示例 AD域 致远OA OA服务器 服务器磁盘扩容 服务网格 istio AutoDL 实战案例 perf rime hive DBeaver kerberos yaml Ultralytics 可视化 网络用户购物行为分析可视化平台 大数据毕业设计 vasp安装 ceph 查询数据库服务IP地址 SQL Server 语音识别 产测工具框架 IMX6ULL 管理框架 业界资讯 EtherNet/IP串口网关 EIP转RS485 EIP转Modbus EtherNet/IP网关协议 EIP转RS485网关 EIP串口服务器 openstack Xen 语法 pgpool tcp cfssl 本地部署AI大模型 端口测试 LInux 深度求索 私域 田俊楠 匿名管道 sdkman AISphereButler frp outlook Logstash 日志采集 银河麒麟高级服务器 外接硬盘 Kylin flink 华为机试 P2P HDLC 黑苹果 UDP的API使用 composer 做raid 装系统 BMC Java Applet URL操作 服务器建立 Socket编程 网络文件读取 armbian u-boot 大模型教程 ROS ukui 麒麟kylinos openeuler alias unalias 别名 regedit 开机启动 ftp 火绒安全 CVE-2024-7347 VPS VM搭建win2012 win2012应急响应靶机搭建 攻击者获取服务器权限 上传wakaung病毒 应急响应并溯源 挖矿病毒处置 应急响应综合性靶场 蓝桥杯 超融合 源码 实时互动 gpt-3 文心一言 big data 昇腾 npu 飞书 京东云 孤岛惊魂4 web3 大模型应用 vscode1.86 1.86版本 ssh远程连接 Hive环境搭建 hive3环境 Hive远程模式 webgl 序列化反序列化 IPMITOOL 硬件管理 IPv4 子网掩码 公网IP 私有IP 主从复制 金融 flash-attention seatunnel sysctl.conf vm.nr_hugepages IO模型 单一职责原则 rclone AList webdav fnOS docker搭建pg docker搭建pgsql pg授权 postgresql使用 postgresql搭建 iperf3 带宽测试 seleium fast MySql wsgiref Web 服务器网关接口 harmonyOS面试题 Qwen2.5-VL vllm 软件卸载 系统清理 对比 工具 meld DiffMerge ShenTong Windows ai工具 java-rocketmq 项目部署 GIS 遥感 WebGIS ardunio BLE 大大通 第三代半导体 碳化硅 lio-sam SLAM yolov8 Node-Red 编程工具 流编程 项目部署到linux服务器 项目部署过程 banner wps deepseek r1 内网环境 h.264 网卡的名称修改 eth0 ens33 deployment daemonset statefulset cronjob 粘包问题 读写锁 AI Agent 字节智能运维 办公自动化 自动化生成 pdf教程 vpn 端口 查看 ss 用户缓冲区 镜像 PX4 SRS 流媒体 直播 MacOS Deepseek-R1 私有化部署 推理模型 Mac内存不够用怎么办 rag ragflow 源码启动 navicat 运维监控 cocoapods dash 正则表达式 word pyautogui db 端口聚合 windows11 UOS1070e MDK 嵌入式开发工具 论文笔记 sublime text Attention 信号处理 css3 Linux find grep 钉钉 知识图谱 onlyoffice 信创 信创终端 中科方德 企业网络规划 华为eNSP 抓包工具 System V共享内存 进程通信 miniapp 真机调试 调试 debug 断点 网络API请求调试方法 HiCar CarLife+ CarPlay QT RK3588 国内源 docker desktop image su sudo 加解密 Yakit yaklang visual studio 网络建设与运维 NLP模型 x64 SIGSEGV xmm0 服务器时间 流量运营 KylinV10 麒麟操作系统 Vmware ranger MySQL8.0 xpath定位元素 aarch64 编译安装 HPC deep learning docker部署翻译组件 docker部署deepl docker搭建deepl java对接deepl 翻译组件使用 强化学习 iBMC UltraISO 防火墙 NAT转发 NAT Server gnu 多端开发 智慧分发 应用生态 鸿蒙OS 域名服务 DHCP 符号链接 配置 nlp 嵌入式系统开发 相机 代理服务器 树莓派 VNC 中兴光猫 换光猫 网络桥接 自己换光猫 极限编程 Unity插件 iventoy VmWare OpenEuler 云桌面 微软 AD域控 证书服务器 个人博客 元服务 应用上架 rustdesk 金仓数据库 2025 征文 数据库平替用金仓 换源 Debian Xinference UDP figma rtsp服务器 rtsp server android rtsp服务 安卓rtsp服务器 移动端rtsp服务 大牛直播SDK 免费域名 域名解析 AP配网 AK配网 小程序AP配网和AK配网教程 WIFI设备配网小程序UDP开 大模型部署 ubuntu24 vivado24 查看显卡进程 fuser perl ArtTS grub 版本升级 扩容 李心怡 游戏开发 deekseek 带外管理 大模型推理 Python基础 Python教程 Python技巧 WLAN 磁盘镜像 服务器镜像 服务器实时复制 实时文件备份 nvm whistle CentOS llama.cpp 软链接 硬链接 信号 win服务器架设 windows server dns是什么 如何设置电脑dns dns应该如何设置 基础环境 流水线 脚本式流水线 程序 环境配置 状态模式 网络药理学 生信 gromacs 分子动力学模拟 MD 动力学模拟 HAProxy kotlin ssh远程登录 物联网开发 virtualbox 问题解决 hexo SEO 性能分析 浏览器开发 AI浏览器 健康医疗 互联网医院 ros 烟花代码 烟花 元旦 sonoma 自动更新 性能调优 安全代理 powerpoint HarmonyOS NEXT 原生鸿蒙 dity make 磁盘清理 合成模型 扩散模型 图像生成 searxng PPI String Cytoscape CytoHubba fstab Docker引擎已经停止 Docker无法使用 WSL进度一直是0 镜像加速地址 鸿蒙开发 移动开发 top Linux top top命令详解 top命令重点 top常用参数 firewall SVN Server tortoise svn ubuntu20.04 ros1 Noetic 20.04 apt 安装 TCP协议 抗锯齿 HarmonyOS OpenHarmony wpf 拓扑图 milvus jina QT 5.12.12 QT开发环境 Ubuntu18.04 sequoiaDB 捆绑 链接 谷歌浏览器 youtube google gmail 图形渲染 ABAP react native prometheus数据采集 prometheus数据模型 prometheus特点 推荐算法 聚类 存储维护 NetApp存储 EMC存储 TrueLicense MVS 海康威视相机 开发 虚拟局域网 内网服务器 内网代理 内网通信 proxy模式 本地化部署 考研 在线office 显卡驱动 autodl OpenSSH SSH 密钥生成 SSH 公钥 私钥 生成 玩机技巧 软件分享 软件图标 人工智能生成内容 IMM ubuntu24.04.1 智能音箱 智能家居 chrome 浏览器下载 chrome 下载安装 谷歌浏览器下载 私有化 容器技术 nosql MobaXterm WSL2 上安装 Ubuntu 热榜 rpa 搭建个人相关服务器 达梦 DM8 离线部署dify kernel 接口优化 k8s二次开发 欧标 OCPP 通信工程 毕业 浏览器自动化 解决方案 conda配置 conda镜像源 稳定性 看门狗 docker部署Python vu大文件秒传跨域报错cors 风扇控制软件 yum换源 网络爬虫 开机黑屏 macOS mm-wiki搭建 linux搭建mm-wiki mm-wiki搭建与使用 mm-wiki使用 mm-wiki详解 沙盒 增强现实 沉浸式体验 应用场景 技术实现 案例分析 AR 云耀服务器 hosts 虚幻引擎 多路转接 Sealos 论文阅读 js 网络搭建 神州数码 神州数码云平台 云平台 计算生物学 生物信息 基因组 数字证书 签署证书 智能电视 搜狗输入法 中文输入法 CentOS Stream DIFY dock 加速 AI员工 yolov5 服务器正确解析请求体 西门子PLC 通讯 IO