RedHat9 | iSCSI磁盘配置与管理

news2024/10/5 15:29:14

一、实验环境

1、iSCSI介绍

iSCSI(Internet Small Computer System Interface)是一种基于因特网及SCSI-3协议下的存储技术,也称为IP-SAN。iSCSI是由IETF(Internet Engineering Task Force)提出,并于2003年2月11日成为正式的标准。它允许通过IP网络进行SCSI指令的传输,使得存储设备和服务器之间的连接不再受地理位置的限制。

iSCSI利用了TCP/IP的port 860和3260作为沟通的渠道。通过两部计算机之间利用iSCSI的协议来交换SCSI命令,让计算机可以透过高速的局域网集线来把SAN模拟成为本地的储存装置。本质上,iSCSI让两个主机通过IP网络相互协商然后交换SCSI命令,从而创建了一个存储局域网(SAN)。

iSCSI是C/S模式(客户端服务器模式),服务器共享的的存储在客户端中呈现出现的是裸设备(指的是没有分区/没有格式化,不受操作系统保护)。

特点优势

  1. 网络依赖性:iSCSI使用TCP/IP网络协议,可以在任何支持TCP/IP的网络环境中运行。
  2. 易用性:基于标准的协议,使得不同厂商的存储设备和计算机之间可以容易地进行互操作。
  3. 扩展性:支持大规模的存储解决方案,可以扩展到数百甚至数千个磁盘驱动器。
  4. 成本效益:与传统的SAN解决方案相比,iSCSI通常成本较低,因为它可以使用标准的网络设备和协议。
  5. 灵活性:允许存储资源的动态分配和管理,提供了很高的灵活性。
  6. 高可用性:支持冗余路径和故障转移,提高了存储解决方案的可用性和可靠性。
  7. 安全性:支持多种安全协议,如CHAP(Challenge-Handshake Authentication Protocol),用于验证和加密通信。

2、iSCSI专业术语

启动器:iSCSI客户端,必须为iSCSI客户端设置唯一的IQN

目标:服务器上的存储资源,1个存储资源可能由1个或多个带编号的块设备组成,其中块设备也称为逻辑单元(LUN),大白话就是硬盘/分区/逻辑卷。1个目标由1个块设备组成。

ACL:服务器限制客户端能否访问的配置,默认是通过ACL中放行允许连接客户端的IQN来达到访问控制功能。

发现:客户端列出服务器存储目标

IQN:目标或客户端的唯一标识,可以自定义IQN,但是要符合命名规范。【iqn.YYYY-MM.com.reversed.domain[:option_string]】

节点:服务器目标或客户端

TPG门户组:自动创建,使用默认的TPG即可

因为iSCSI所共享的存储资源不受操作系统保护,所以同一块iSCSI磁盘不允许被多个客户端操作系统同时挂载,否则会存在读写冲突,从而导出文件数据损坏。如果要突破限制,则需要使用集群系统的中的GFS(全局文件系统)。

3、CHAP认证

CHAP(Challenge Handshake Authentication Protocol,质询握手验证协议)是一种用于网络安全的认证协议,适用于在用户和网络服务器之间建立安全连接。在iSCSI客户端需要连接网络存储的iSCSI逻辑硬盘时,客户端会向服务端发起iSCSI连接请求,双方通过协商后将采用CHAP进行身份验证,验证报文默认会通过MD5进行加密后发送。

工作原理

  • CHAP使用三次握手的过程来周期性地验证对端的身份。这可以在初始链路建立时完成,也可以在链路建立之后的任何时间重复进行。
  • 当进行验证时,一端(例如服务器)会生成一个随机数作为“挑战”(challenge),并将其发送给另一端(例如客户端)。
  • 客户端使用用户输入的密码和接收到的挑战来计算出一个“响应”值,并将这个响应值发送回服务器。
  • 服务器使用保存的用户密码和相同的挑战值来验证客户端发送的响应值。如果响应值正确,则认证成功;否则,认证失败

4、实验拓扑

标识ServerLinux客户端Win客户端
主机Serverclientwin2022
IP地址192.168.1.1/24192.168.1.10/24192.168.1.11/24
软件包target*scsinone

在这里插入图片描述

二、iSCSI服务器配置

1、本地添加三块硬盘

在这里插入图片描述

2、安装iSCSI服务

搜索target软件包

dnf search target

在这里插入图片描述

安装target

dnf -y install target*

在这里插入图片描述

3、配置iSCSI磁盘

查看我们添加的虚拟磁盘

lsblk

在这里插入图片描述

使用targetcli交互式配置iSCSI,在交互式中可以使用ls/pwd/cd等操作系统命令

  • /:根目录
    • backstores:后端存储对象目录,定义了存储数据的位置和方式
      • block:块设备后端存储对象
      • fileio:文件I/O后端存储对象,用文件来标识一个存储(当作成硬盘)
      • pscsi:物理SCSI设备后端存储对象,直接连接到自身的SCSI设备,绕过操作系统管理
      • ramdisk:RAM磁盘后端存储对象,利用内存区创建和模拟一个存储设备(硬盘)
    • iscsi:iSCSI目标目录,用于配置和管理iSCSI目标
    • loopback:本地回环目标目录,通常用于测试
  • [Storage Objects: 0]代表当前的后端存储没有创建任何对象
  • [Targets: 0]代表当前目标目录中没有创建任何目标
    在这里插入图片描述

4、使用三块硬盘,分别创建两个块设备和一个文件设备

  • 将nvme0n2划分一个主分区,空间为所有,创建块设备,命名为blk1
  • 将nvme0n3直接创建块设备,命名为blk2
  • 将nvme0n4创建文件设备,命名为file1

分区

fdisk /dev/nvme0n2
> n
> [保持默认,回车即可]
> [保持默认,回车即可]
> [保持默认,回车即可]
> [保持默认,回车即可]
> w
partprobe

在这里插入图片描述

创建块设备后端存储和文件设备后端存储

targetcli 
cd /backstores/block					# 切换到块设备后端存储对象目录
create blk1 /dev/nvme0n2p1				# 新建块设备后端存储对象
create blk2 /dev/nvme0n3				# 新建块设备后端存储对象
cd /backstores/fileio					# 切换到文件I/O后端存储对象目录
create file1 /dev/nvme0n4				# 新建文件设备后端存储对象

在这里插入图片描述

5、为目标创建IQN(在指定IQN的同时会创建目标)

创建IQN,用于客户端连接使用

cd /iscsi
create iqn.2024-06.cn.meaauf.net:mytarget-blk1
create iqn.2024-06.cn.meaauf.net:mytarget-blk2
create iqn.2024-06.cn.meaauf.net:mytarget-file1

在这里插入图片描述

6、在TPG中创建ACL,ACL用于控制客户端访问

cd iqn.2024-06.cn.meaauf.net:mytarget/tpg1/acls 
create iqn.2024-06.cn.meaauf.net:client					# 设置允许连接的客户端的IQN值
cd /iscsi/iqn.2024-06.cn.meaauf.net:mytarget-blk2/tpg1/acls
create iqn.2024-06.cn.meaauf.net:client	
cd /iscsi/iqn.2024-06.cn.meaauf.net:mytarget-file1/tpg1/acls
create iqn.2024-06.cn.meaauf.net:win2022

在这里插入图片描述

7、映射lun,在TPG目录中建立与块设备、文件设备的映射

cd /iscsi/iqn.2024-06.cn.meaauf.net:mytarget-blk1/tpg1/luns 
create /backstores/block/blk1
cd /iscsi/iqn.2024-06.cn.meaauf.net:mytarget-blk2/tpg1/luns
create /backstores/block/blk2
cd /iscsi/iqn.2024-06.cn.meaauf.net:mytarget-file1/tpg1/luns
create /backstores/fileio/file1 

在这里插入图片描述

8、查看所有配置并退出

cd /
ls

在这里插入图片描述

9、启动服务并调整防火墙规则

systemctl enable --now target.service
firewall-cmd --add-port=3260/tcp --permanent
firewall-cmd --reload

在这里插入图片描述

三、Linux客户端配置

1、安装客户端访问工具

安装iscsid服务

dnf -y install iscsi-initiator-utils.x86_64
  • iscsid.service:管理iSCSI连接的启动和终止
  • iscsi.service:登陆和搜索iSCSI设备
  • /etc/iscsi/iscsid.conf:用于修改身份验证用户名、密码和时间参数等信息
  • /etc/iscsi/initiatorname.iscsi:存储本机的IQN名称信息
  • iscsiadm:用于发现、登录、卸载远程iSCSI目标

查看软件包对应的服务

rpm -ql install iscsi-initiator-utils.x86_64 | grep service

在这里插入图片描述

启动服务

systemctl enable --now iscsid.service
systemctl enable --now iscsi.service

2、修改客户端的IQN

编辑iscsi文件

vim /etc/iscsi/initiatorname.iscsi 

# 将值修改为上面我们ACL中所添加的IQN
InitiatorName=iqn.2024-06.cn.meaauf.net:client

在这里插入图片描述

重启iscsi服务

systemctl restart iscsid.service

3、手动连接服务端

手动连接服务端步骤

  • 查询服务器可用节点
  • 登陆服务器可用节点
  • 列出服务器共享的裸设备

查询服务器存在的目标

iscsiadm -m discovery -t st -p 192.168.1.1

在这里插入图片描述

查看本地所有的块设备

lsblk

在这里插入图片描述

连接服务器目标

iscsiadm -m node -T iqn.2024-06.cn.meaauf.net:mytarget-blk1 -l
iscsiadm -m node -T iqn.2024-06.cn.meaauf.net:mytarget-blk2 -l
iscsiadm -m node -T iqn.2024-06.cn.meaauf.net:mytarget-file1 -l

在这里插入图片描述

连接成功后,查看本地出现的裸设备

lsblk

在这里插入图片描述

为sdb划分分区

fdisk /dev/sdb
> n
> p
> 1
> 2048
> +10G
> w
partprobe

在这里插入图片描述

格式化、然后挂载,测试写入

mkfs.xfs /dev/sdb1
mkdir /mnt/sdb
mount /dev/sdb1 /mnt/sdb
echo 1111 > /mnt/sdb/1.txt

4、临时注销目标

临时注销目标

iscsiadm -m node -T iqn.2024-06.cn.meaauf.net:mytarget-blk1 -u

在这里插入图片描述

重启服务后,会自动连接

systemctl restat iscsi.service

在这里插入图片描述

注销本机所有iSCSI存储设备

iscsiadm -m node --logoutall=all

在这里插入图片描述

5、永久注销目标

首先需要临时注销,否则会提示【session is using】

iscsiadm -m node -T iqn.2024-06.cn.meaauf.net:mytarget-blk1 -u

永久注销指定目标

iscsiadm -m node -T iqn.2024-06.cn.meaauf.net:mytarget-blk1 -o delete

在这里插入图片描述

报错信息

这是因为没有临时注销,直接永久注销会显示当前有一个会话正在使用,需要先注销后重新删除。
在这里插入图片描述

四、Window客户端测试

1、关闭防火墙

在这里插入图片描述

2、通过iSCSI发起程序连接iSCSI磁盘

打开iSCSI发起程序
在这里插入图片描述
在这里插入图片描述

修改本机的IQN为iqn.2024-06.cn.meaauf.net:win2022
在这里插入图片描述
在这里插入图片描述

搜索目标
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

查看磁盘管理,可以发现存在一个100G的脱机硬盘
在这里插入图片描述

五、discover认证

设置discovery认证,没有设置用户名密码的用户将无法列出服务器活动的目标

用户名密码
disuserdiscovery@123

1、iSCSI服务器配置

设置discover认证

targetcli
cd /iscsi
set discovery_auth enable=1 userid=disuser password=discovery@123

在这里插入图片描述

重启服务

systemctl restart iscsid.service

2、Linux客户端配置

查询服务器存在的目标

iscsiadm -m discovery -t st -p 192.168.1.1

在这里插入图片描述

修改配置文件,添加discover用户名和密码

vim /etc/iscsi/iscsid.conf

# 取消以下行的注释,并修改相应值
discovery.sendtargets.auth.authmethod = CHAP
discovery.sendtargets.auth.username = disuser
discovery.sendtargets.auth.password = discovery@123

在这里插入图片描述

重启服务

systemctl restart iscsid.service

再次查询服务器存在的目标

iscsiadm -m discovery -t st -p 192.168.1.1

在这里插入图片描述

3、Win客户端配置

尝试查询服务器存在的目标,可以发现无法查找到目标

在这里插入图片描述

在发现门户中选择高级,然后添加discovery用户名和密码
在这里插入图片描述
在这里插入图片描述

返回到目标中,可以看到可以发现目标
在这里插入图片描述

六、单向CHAP认证

通过上述创建的blk1、blk2为例,配置单向CHAP认证,ACL分别设置允许Linux客户端和Win客户端连接

单向CHAP认证其实就是给目标添加initiator authentication(发起方身份验证)。

target用户名密码允许访问的客户端
blk1chap1chap1@123Linux客户端
blk2chap2chap2@123456789Win客户端

先将Linux客户端、Win客户端上连接的目标全部永久注销

iscsiadm -m node -T iqn.2024-06.cn.meaauf.net:mytarget-blk1 -u
iscsiadm -m node -T iqn.2024-06.cn.meaauf.net:mytarget-blk1 -o delete 
iscsiadm -m node -T iqn.2024-06.cn.meaauf.net:mytarget-blk2 -u
iscsiadm -m node -T iqn.2024-06.cn.meaauf.net:mytarget-blk2 -o delete

在这里插入图片描述

需要注意的是,在Windows中对CHAP的认证密码有长度要求,不可少于12个字符,否则会连接不上目标。可以通过在Windows中新建iSCSI虚拟磁盘向导中查看。在Linux中也有限制字符要求,但是少于12个字符不会像Windows一样报错。
在这里插入图片描述

可以在Windows中的【事件查看器】–>【Windows 日志】–> 【系统】中查看事件
在这里插入图片描述

1、iSCSI服务器配置

调整blk2中的ACL,仅允许Win客户端访问

cd /iscsi/iqn.2024-06.cn.meaauf.net:mytarget-blk2/tpg1/acls/
delete iqn.2024-06.cn.meaauf.net:client
create iqn.2024-06.cn.meaauf.net:win2022

在这里插入图片描述

给blk1添加CHAP认证

cd /iscsi/iqn.2024-06.cn.meaauf.net:mytarget-blk1/tpg1/acls/iqn.2024-06.cn.meaauf.net:client/
set auth userid=chap1 password=chap1@123

在这里插入图片描述

给blk2添加CHAP认证

cd /iscsi/iqn.2024-06.cn.meaauf.net:mytarget-blk2/tpg1/acls/iqn.2024-06.cn.meaauf.net:win2022/
set auth userid=chap2 password=chap2@123456789

在这里插入图片描述

重启服务

systemctl restart iscsid.service

2、Linux客户端配置

扫描服务端目标

iscsiadm -m discovery -t st -p 192.168.1.1

在这里插入图片描述

修改配置文件

vim /etc/iscsi/iscsid.conf

# 取消下列行的注释,并添加对应值
node.session.auth.authmethod = CHAP
node.session.auth.username = chap1
node.session.auth.password = chap1@123

在这里插入图片描述

重启服务

systemctl restart iscsid.service

先查询服务器存在的目标,再连接blk1

iscsiadm -m discovery -t st -p 192.168.1.1
iscsiadm -m node -T iqn.2024-06.cn.meaauf.net:mytarget-blk1 -l

在这里插入图片描述

可以看到我们之前的分区依旧存在
在这里插入图片描述

3、Win客户端配置

打开iSCSI发起程序,选中blk2,单击连接,然后选择高级
在这里插入图片描述

启用CHAP登录,然后输入用户名和密码
在这里插入图片描述
在这里插入图片描述

查看已连接目标的属性,可以看到身份认证为CHAP
在这里插入图片描述

查看本地的出现的裸设备
在这里插入图片描述

六、双向CHAP认证

通过上述创建的blk1、blk2为例,在单向CHAP认证的基础上,添加反向CHAP认证,ACL分别设置允许Linux客户端和Win客户端连接

双向CHAP认证其实就是给目标添加target authentication(目标身份验证)。注意:target authentication只能在initiator authentication的基础上设置。

target用户名密码允许访问的客户端
blk1chap10chap10@123Linux客户端
blk2chap20chap20@123456789Win客户端

先将Linux客户端、Win客户端上连接的目标全部永久注销

iscsiadm -m node -T iqn.2024-06.cn.meaauf.net:mytarget-blk1 -u
iscsiadm -m node -T iqn.2024-06.cn.meaauf.net:mytarget-blk1 -o delete 

在这里插入图片描述

Windows断开连接即可
在这里插入图片描述

1、iSCSI服务器配置

给blk1添加反向CHAP认证

targetcli
cd /iscsi/iqn.2024-06.cn.meaauf.net:mytarget-blk1/tpg1/acls/iqn.2024-06.cn.meaauf.net:client/
set auth mutual_userid=chap10 mutual_password=chap10@123

在这里插入图片描述

给blk2添加反向CHAP认证

cd /iscsi/iqn.2024-06.cn.meaauf.net:mytarget-blk2/tpg1/acls/iqn.2024-06.cn.meaauf.net:win2022/
set auth mutual_userid=chap20 mutual_password=chap20@123456789

在这里插入图片描述

重启服务

systemctl restart iscsid.service

2、Linux客户端配置

扫描服务端目标

iscsiadm -m discovery -t st -p 192.168.1.1

在这里插入图片描述

先测试再没有配置反向CHAP用户名密码,是否可以连接目标

iscsiadm -m node -T iqn.2024-06.cn.meaauf.net:mytarget-blk1 -l

在这里插入图片描述

修改配置文件,添加反向认证用户和密码

vim /etc/iscsi/iscsid.conf

# 取消下列行的注释,并添加对应值
node.session.auth.username = chap10
node.session.auth.password = chap10@123

在这里插入图片描述

重启服务

systemctl restart iscsi.service

先扫描服务端目标,后连接目标

iscsiadm -m discovery -t st -p 192.168.1.1
iscsiadm -m node -T iqn.2024-06.cn.meaauf.net:mytarget-blk1 -l

在这里插入图片描述

3、Win客户端配置

先在目标上刷新一下
在这里插入图片描述

扫描服务端目标
在这里插入图片描述

如果在快速连接后,显示【目标错误】,这是因为我们刷新后,清除了在discover认证中的用户名和密码,重新设置即可
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在连续单击所有的【确认】后,即可在目标中发现服务端的所有目标
在这里插入图片描述

配置反向CHAP密码
在这里插入图片描述

设置正向CHAP用户名和密码
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

查看blk2的属性,可以看到身份验证为【相互CHAP】
在这里插入图片描述

查看本地的裸设备
在这里插入图片描述

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

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

相关文章

wms海外仓系统有哪些?选择的时候怎么避坑

虽然说wms海外仓系统能够在很大程度上提升海外仓的经营效率,但是如果在选择wms海外仓系统的时候没有慎重考虑,也是非常容易踩坑的。 这样不只是不能提升自己海外仓的效率,反倒是浪费了大量的预算和精力,这就得不偿失了。今天我们…

检查子树00

题目链接 检查子树 题目描述 注意点 树的节点数目范围为[0, 20000] 解答思路 递归判断t1和t2的val是否相同,如果相同,则继续递归判断其左右子树的值是否都相同,如果都相同则返回true;如果不相同,则继续递归判断t1…

剧本新纪元:探索短剧系统的魔力

在现代社会,随着科技的迅猛进步和生活节奏的不断加快,传统的长篇电视剧和电影已不能完全满足所有人的需求。短剧,由于其简短、快速、直接的特性,正在逐步成为一种文化新趋势。短剧系统正是这一趋势的典型代表,它以独特…

tracetcp下载 安装 使用 网络工具 windows trace工具 tcp协议

省流 Tracetcp是一个类似于Tracert的工具,使用如下: 1. 安装winpcap , 下载链接:WinPcap Download 2.下载tracetcp软件,下载链接: https://github.com/0xcafed00d/tracetcp/releases 命令:…

如何学习软件测试,并成功找到工作

在IT行业日益繁荣的今天,软件测试作为确保软件质量的关键环节,越来越受到企业的重视。对于初入职场的小白来说,掌握软件测试技能不仅能够帮助他们快速适应工作,还能为未来的职业发展奠定坚实的基础。本文将为职场小白推荐学习软件…

如何翻译和本地化游戏?翻译访谈

如何翻译和本地化游戏?这个过程的技术细节有哪些?游戏翻译不同于电影翻译。Logrus IT游戏本地化部门负责人阿列克谢费奥多罗夫(Alexey Fedorov)在接受RUDN语言学系外语系教授和研究人员的采访时谈到了这一点,他是由尤利…

一、JAVA性能调优之linux命令工具

一、linux性能收集和统计工具 二、JAVA性能调优之jdk命令工具 一、linux性能收集和统计工具 linux在性能遇到问题时,常用的查看分析命令有 top:能够实时显示系统各个进程的资源占用情况;sar:可以周期性的对内存CPU使用情况采样…

现货黄金投资价格怎么分析 低买高卖是核心!

我们做现货黄金投资,总是离不开对黄金价格的分析,分析其实就是一种理性的思考,我们对现货黄金当前走势进行一番思考,进而判断它未来的走向,以此作为自己投资入场的基础。那黄金投资价格怎么分析呢?下面我们…

MySQL 核心模块揭秘 | 20 期 | MySQL 怎么加表锁?

意向共享锁、意向排他锁、AUTO-INC 锁是 InnoDB 最常用的表锁,它们的加锁流程是什么样的? 作者:操盛春,爱可生技术专家,公众号『一树一溪』作者,专注于研究 MySQL 和 OceanBase 源码。 爱可生开源社区出品&…

Ecahrts横向柱状图自动滚动

1.定义一个定时器标识 let timer: NodeJS.Timer; // 定时器 2.定义展示的数据的条数 const dataZoomEndValue 5; // 数据窗口范围的结束数值(一次性展示几个) 3.设置datazoom的相关参数 dataZoom: [{show: false, // 是否显示滑动条xAxisIndex: 0, // 表示从X轴的零刻度线…

植物大战僵尸杂交版 MacBook 苹果电脑下载安装详细教程

最近老是看到别人玩植物大战僵尸杂交版,可是找了一圈发现都是PC版本的,原来游戏作者只做了一个PC版本,还好最终没有放弃终于在 Mac 上安装上了植物大战僵尸杂交版 版本是 2.0.88 真的蛮好玩的就是关卡有亿点点难,我最爱玩无尽模式…

四川赤橙宏海商务信息咨询有限公司靠谱吗?

在数字化浪潮席卷而来的今天,电商行业正经历着前所未有的变革。四川赤橙宏海商务信息咨询有限公司,凭借其深厚的行业经验和敏锐的市场洞察力,专注于抖音电商服务领域,致力于为广大商家提供全方位、高效益的电商解决方案。 赤橙宏…

闪烁圆点加载动画

效果图: 完整代码: <!DOCTYPE html> <html> <head><meta charset="UTF-8" /><title>闪烁圆点加载动画</title><style type="text/css">body {background: #ECF0F1;display: flex;justify-content: center;al…

Linux部署mysql8.0.28数据库

目录 1.基础准备 (1)首先去官网下载二进制安装包 (2)下载好之后上传至服务器 (3)禁用关闭selinux和防火墙 (4)挂载光盘搭建本地yum仓库 2.解压到指定目录 3.检查系统是否安装mariadb 4.安装MySQL数据库 (1)进入MySQL目录 看到‘完毕’就说面mysql已经安装成功了 4.初…

易基因:【表观遗传学基础】如何研究DNA甲基化

大家好&#xff0c;这里是专注表观组学十余年&#xff0c;领跑多组学科研服务的易基因。 表观遗传学近几年取得的一系列研究进展&#xff0c;确实吸引着越来越多的关注&#xff01;为了帮大伙儿梳理一下表观遗传学的基本概念和研究方法&#xff0c;小编打算开一个系列专题&…

设备物联网关在实际生产中的作用解析-天拓四方

随着物联网技术的迅猛发展&#xff0c;设备物联网关作为连接物理世界与数字世界的核心组件&#xff0c;其应用已经渗透到工业、农业、医疗等多个领域。本案例将聚焦于设备物联网关在某制造企业中的应用&#xff0c;详细解析其在实际生产中的重要作用。 案例背景 某制造企业面…

wms海外仓系统重要吗?对小型海外仓有哪些好处

虽然小型海外仓本身的体量不大&#xff0c;但是在面对激烈的竞争和日益复杂的客户需求面前&#xff0c;要想赢得一席之地&#xff0c;wms海外仓系统还是一个非常必要的工具的。 对于小型海外仓来说&#xff0c;面对的业务复杂度其实并不比大型海外仓小&#xff0c;甚至更大。 …

高精度定位技术的必要性与实际应用

在当今社会&#xff0c;随着科技的飞速发展&#xff0c;高精度精准定位技术已成为一项不可或缺的基础技术&#xff0c;其应用范围涉及军事、航空、智能交通、无人驾驶、智慧城市建设等众多领域。高精度精准定位不仅为人们的日常生活带来极大便利&#xff0c;还对提升国家的科技…

Docker Hub无法访问,DBdoctor的应对之策

近期我们收到很多小伙伴的咨询&#xff1a;Docker Hub无法访问&#xff0c;DBdoctor该如何下载安装呢?本文我们将详细给大家介绍DBdoctor的多种部署方式&#xff0c;以及如何快速下载以及安装部署DBdoctor。 DBdoctor部署架构 首先我们来看下DBdoctor的部署架构&#xff0c;…

TikTok引领小众文化与亚文化:崛起与融合的新舞台

近年来&#xff0c;TikTok已经成为全球最受欢迎的社交媒体平台之一。其独特的短视频格式和强大的算法推荐系统&#xff0c;使得各种内容能够迅速传播并吸引大量观众。TikTok不仅为主流文化提供了展示平台&#xff0c;更为各种小众文化和亚文化提供了前所未有的展示机会。本文No…