AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-292068

GP92's questions

Martin Hope
GP92
Asked: 2019-05-23 06:27:13 +0800 CST

为什么linux中的rpcinfo命令不显示rabbitmq?

  • 0

我的理解是,一些 Openstack 组件使用 RabbitMQ 服务(使用 RPC 协议)进行通信,而其他组件使用 REST API、数据库查询等进行通信。

但是当我检查 rpcinfo -p 时,它没有列出任何与 RabbitMQ/openstack 相关的服务。

rpcinfo(例如:NIS、NFS 等)中显示的服务的通信机制与 RabbitMQ/Openstack 服务有什么区别?

openstack
  • 1 个回答
  • 50 Views
Martin Hope
GP92
Asked: 2018-07-26 08:15:19 +0800 CST

fio 测试中的 iodepth 到底是什么意思?是队列深度吗?

  • 2

我了解队列深度,即存储控制器可以处理的未完成 I/O 请求的数量(https://www.tomshardware.com/reviews/ssd-gaming-performance,2991-3.html),即这是对处理 I/O 请求并将命令发送到磁盘 (r/w) 的存储控制器的限制,如果有超过它可以处理的请求(将由客户端重新提交),它(不严格?)会丢弃请求想必)。

并且具有高超出 I/O 请求的原因可能是多个客户端连接请求 I/O 或多个进程,即使来自单个主机请求 I/O(我认为,但似乎操作系统使用 I/O 调度程序合并 I/ O 请求 - 在进行定期或按需同步时源自缓冲区,并且仅发送固定数量的 outstading 请求,这样就不会使存储设备过载?)

现在,来到 fio 手册页中 iodepth 的定义:

要针对文件保持运行的 I/O 单元数。请注意,将 iodepth 增加到 1 以上不会影响同步 ioengine(使用 verify_async 时的小度数除外)。

这符合我对队列深度的理解。如果 IO 是同步的(阻塞 IO),我们可以只有一个队列。

甚至异步引擎也可能会施加操作系统限制,导致无法达到所需的深度。这可能在 Linux 上使用 libaio 而未设置 `direct=1' 时发生,因为缓冲 I/O 在该操作系统上不是异步的。

对整个声明感到困惑。

密切关注 fio 输出中的 I/O 深度分布,以验证达到的深度是否符合预期。默认值:1。

我为每种 iodepth 和设备类型运行了多个测试,有 22 个并行作业,因为 CPU 计数为 24,并且 rwtype:顺序读取和顺序写入。Iodepths 是 1,16,256,1024,32768(我知道 32 或 64 应该是最大限制,我只是想尝试一下)。

对于所有深度和所有磁盘(RAID 6 SSD、NVME 和 NFS),结果几乎相同:除了在 32768 深度的 NVME 磁盘上顺序读取。

IO depths    : 1=0.1%, 2=0.1%, 4=0.1%, 8=0.1%, 16=0.1%, 32=0.1%, >=64=99.9%
submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.1%, 32=0.0%, 64=0.0%, >=64=0.0%

对于 32768 深度的 NVME,

complete  : 0=0.0%, 4=0.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=100.0%

我在 fio 中使用了 libaio 引擎(因为我不确定我需要为异步 I/O 测试提供什么 IO 引擎,而 libaio 似乎是正确的。这完全是一个不同的问题)

发生什么了?为什么提交并完成显示 1-4 (除了一次运行的 NVME >64)

[global]
lockfile=none
kb_base=1024
fallocate=posix
blocksize=64k
openfiles=100
ioengine=libaio
buffered=1
invalidate=1
loops=5
randrepeat=1
size=512M
numjobs=22

[sr-iodepth-1]
description="Sequential Write,Parallel jobs-22,IO depth-1,libaio"
readwrite=write
size=5G
iodepth=1

[sr-iodepth-16]
description="Sequential Write,Parallel jobs-22,IO depth-16,libaio"
readwrite=write
size=5G
iodepth=16

[sr-iodepth-256]
description="Sequential Write,Parallel jobs-22,IO depth-256,libaio"
readwrite=write
size=5G
iodepth=256

[sr-iodepth-1024]
description="Sequential Write,Parallel jobs-22,IO depth-1024,libaio"
readwrite=write
size=5G
iodepth=1024

[sr-iodepth-32768]
description="Sequential Write,Parallel jobs-22,IO depth-32768,libaio"
readwrite=write
size=5G
iodepth=32768


[sw-iodepth-1]
description="Sequential Read,Parallel jobs-22,IO depth-1,libaio"
readwrite=read
size=512M
iodepth=1

[sw-iodepth-16]
description="Sequential Read,Parallel jobs-22,IO depth-16,libaio"
readwrite=read
size=512M
iodepth=16

[sw-iodepth-256]
description="Sequential Read,Parallel jobs-22,IO depth-256,libaio"
readwrite=read
size=512M
iodepth=256

[sw-iodepth-1024]
description="Sequential Read,Parallel jobs-22,IO depth-1024,libaio"
readwrite=read
size=512M
iodepth=1024

[sw-iodepth-32768]
description="Sequential Read,Parallel jobs-22,IO depth-32768,libaio"
readwrite=read
size=512M
iodepth=32768
io
  • 2 个回答
  • 13876 Views
Martin Hope
GP92
Asked: 2018-03-09 02:54:28 +0800 CST

如何确定 RHEL 服务器中是否正在使用 haldaemon 或 udev?

  • 0

如果 hal 真的在使用还是只是 udev,我很困惑。

我的理解:

  • 一般来说,HAL 是一个抽象层,它允许操作系统与硬件设备进行交互。

  • daemon hald 与 HAL 不同。它是一种提供 HAL 的服务,用于识别设备,然后安装它们(以及它们将在哪里,在 /dev 下?)或自动配置它们以供应用程序使用。

  • 它现在被 udev 弃用,它也做了类似的事情,即通过读取来自内核的消息并根据预定义的规则命名来自动挂载连接的设备。

  • 目前只有少数基于 GUI 的应用程序,如 GNOMe 使用暂停,以获取有关新连接设备的通知(而安装仍然由 udev 负责?)

    所以我的问题是,如果 hal 仅用于通知基于 GUI 的应用程序有关新连接的硬件,因为它可以通过 DBUS 进行通信,但 udev 没有 dbus 实现。而对于自动挂载设备,只有 udev 这样做,而没有使用 hal?

我特别在谈论 Redhat 5,6 和 7。

谢谢。

rhel6
  • 1 个回答
  • 670 Views
Martin Hope
GP92
Asked: 2018-01-15 03:58:57 +0800 CST

为什么 nvme 既有字符设备又有块设备?

  • 17

我正在尝试了解 nvme 的配置。

但我不明白为什么有两个设备:nvme 块和 nvme 字符设备:

crw------- 1 root root 243, 0 Dec 12 16:09 /dev/nvme0
brw-rw---- 1 root disk 259, 0 Jan 14 01:30 /dev/nvme0n1

每个或何时使用它们的目的是什么?

device
  • 2 个回答
  • 10157 Views
Martin Hope
GP92
Asked: 2016-10-14 05:16:52 +0800 CST

snmpbulkget 给出下一个 oid 的值,而不是给出参数中提到的 oid。为什么?

  • 0

我认为 snmpbulkget 的行为类似于 snmpget,只是它可以支持多个 oid 请求。但我看到奇怪的行为。它提供下一个 OID 信息而不是询问的内容:

snmpbulkget -Cr1 servername IF-MIB::ifSpeed.7.0 IF-MIB::ifInOctets.7 IF-MIB::ifInUcastPkts.7 IF-MIB::ifInNUcastPkts.7 IF-MIB::ifInNUcastPkts.7 IF-MIB::ifInDiscards.7 IF-MIB::ifInErrors.7 IF-MIB::ifOutOctets.7 IF-MIB::ifOutUcastPkts.7 IF-MIB::ifOutNUcastPkts.7 IF-MIB::ifOutDiscards.7 IF-MIB::ifOutErrors.7
IF-MIB::ifSpeed.8 = Gauge32: 10000000
IF-MIB::ifInOctets.8 = Counter32: 3674120514
IF-MIB::ifInUcastPkts.8 = Counter32: 2462391943
IF-MIB::ifInNUcastPkts.8 = Counter32: 19169575
IF-MIB::ifInNUcastPkts.8 = Counter32: 19169575
IF-MIB::ifInDiscards.8 = Counter32: 0
IF-MIB::ifInErrors.8 = Counter32: 775777
IF-MIB::ifOutOctets.8 = Counter32: 3824588280
IF-MIB::ifOutUcastPkts.8 = Counter32: 2866781089
IF-MIB::ifOutNUcastPkts.8 = Counter32: 0
IF-MIB::ifOutDiscards.8 = Counter32: 0
IF-MIB::ifOutErrors.8 = Counter32: 0

为什么?

net-snmp
  • 1 个回答
  • 932 Views
Martin Hope
GP92
Asked: 2016-10-03 09:35:50 +0800 CST

Sun Grid Engine (SGE) 中的 h_rss 和 h_vmem 有什么区别?

  • 4

据我了解,

  • mem_free可以指定在具有可用内存 = 的主机中提交作业mem_free,而
  • h_vmem是作业可以消耗的内存的硬限制,如果作业达到h_vmem,作业会崩溃?我认为我们可以将h_vmem主机的总物理内存设置为接近总物理内存,这样作业就不会开始使用交换并减慢服务器速度。

那是什么h_rss?它似乎与的定义相同h_vmem.

还是我误解了h_vmem?h_vmem用于保留它可能需要的额外内存而不是所需的最小内存()mem_free?但是如果超过内存不要崩溃,所以作业可以超过h_vmem?

如果我的第二种解释h_vmem是正确的,那么我猜,对于要在主机中提交的作业,该作业必须同时满足mem_free和h_vmem(给定h_vmem不是 INFINITY)。

如果我的第一个解释h_vmem是正确的,那么我想,对于要在主机中提交的作业,该作业可以mem_free单独满足而无需满足h_vmem,因为它只保留可用空间,如果没有可用空间,它没关系?

cluster gridengine scheduler grid
  • 2 个回答
  • 7359 Views
Martin Hope
GP92
Asked: 2016-03-15 02:36:52 +0800 CST

除了 SAN 或 NAS 之外,是否可以直接连接共享存储(在块级别访问)?

  • 0

我们需要专门用于 HPC Lustre 故障转移设置的存储,其中两台服务器必须共享相同的块级存储才能进行故障转移配置。

由于对硬件的了解非常有限,我有以下理解:

  • NAS可用于共享存储,但由于中间网络会存在速度瓶颈。
  • 可以使用 SAN,但实施该解决方案的成本很高,而且对于 50-100TB 的存储来说并不是真正需要的。
  • 如果我们发现存储机箱有多个iscsi端口,则只能通过拆分来使用存储,即作为两个存储设备工作,并且两个系统不能使用相同的存储
    。(这里要提醒一件事,在 luster 设置中,两台服务器都只会连接,但只会使用一个(不确定,如何可能,再次需要检查)。
  • 拥有两个虚拟机可能是我们可以做到的。但是,它对于故障转移的目的并没有真正的帮助,因为物理机只是一台。

但是,在发布问题时,我在想,如果我们尝试让一台直接连接的服务器(主服务器)和另一台通过网络连接的服务器(故障转移),我们可能会在 NAS 的速度上妥协,所以我们只有在主服务器时才会遇到缓慢停止工作。

storage-area-network
  • 2 个回答
  • 414 Views
Martin Hope
GP92
Asked: 2016-01-23 04:41:48 +0800 CST

如何在 linux 中找出 raid:在 Redhat 中 cat /sys/block/sda/device/raid_level vs dmraid -s?

  • 1

我正在尝试查找远程 HP 服务器中的 RAID 级别和存储控制器。

我可以找到以下详细信息,即存储控制器、磁盘大小、型号等。

但是如何确定突袭是否处于活动状态以及是否是哪个突袭?

再澄清一点,我需要在这里:所以,我读到的raid可以用两种方式定义:硬件和软件。

所以,我猜硬件是指存储控制器。我们的是:

             description: RAID bus controller
            product: Smart Array Gen9 Controllers

更多信息:

# hwinfo --storage
185: PCI 1f.2: 0106 SATA controller (AHCI 1.0)
  [Created at pci.319]
  Unique ID: w7Y8.AWGP+VY_LGA
  SysFS ID: /devices/pci0000:00/0000:00:1f.2
  SysFS BusID: 0000:00:1f.2
  Hardware Class: storage
  Model: "Intel SATA controller"
  Vendor: pci 0x8086 "Intel Corporation"
  Device: pci 0x8d02
  SubVendor: pci 0x103c "Hewlett-Packard Company"
  SubDevice: pci 0x8030
  Revision: 0x05
  Driver: "ahci"
  Driver Modules: "ahci"
  I/O Ports: 0x4058-0x405f (rw)
  I/O Ports: 0x407c-0x407f (rw)
  I/O Ports: 0x4050-0x4057 (rw)
  I/O Ports: 0x4078-0x407b (rw)
  I/O Ports: 0x4020-0x403f (rw)
  Memory Range: 0x93100000-0x931007ff (rw,non-prefetchable)
  IRQ: 211 (2357394 events)
  Module Alias: "pci:v00008086d00008D02sv0000103Csd00008030bc01sc06i01"
  Driver Info #0:
    Driver Status: ahci is active
    Driver Activation Cmd: "modprobe ahci"
  Config Status: cfg=new, avail=yes, need=no, active=unknown

187: PCI 300.0: 0104 RAID bus controller
  [Created at pci.319]
  Unique ID: svHJ.ccZlDNM+DaD
  Parent ID: vSkL.TK0GkKDmr11
  SysFS ID: /devices/pci0000:00/0000:00:01.0/0000:03:00.0
  SysFS BusID: 0000:03:00.0
  Hardware Class: storage
  Model: "Hewlett-Packard Company RAID bus controller"
  Vendor: pci 0x103c "Hewlett-Packard Company"
  Device: pci 0x3239
  SubVendor: pci 0x103c "Hewlett-Packard Company"
  SubDevice: pci 0x21c0
  Revision: 0x01
  Driver: "hpsa"
  Driver Modules: "hpsa"
  Memory Range: 0x92f00000-0x92ffffff (rw,non-prefetchable)
  Memory Range: 0x93000000-0x930003ff (rw,non-prefetchable)
  I/O Ports: 0x3000-0x3fff (rw)
  Memory Range: 0x93200000-0x9327ffff (ro,prefetchable,disabled)
  IRQ: 16 (no events)
  Module Alias: "pci:v0000103Cd00003239sv0000103Csd000021C0bc01sc04i00"
  Driver Info #0:
    Driver Status: hpsa is active
    Driver Activation Cmd: "modprobe hpsa"
  Config Status: cfg=new, avail=yes, need=no, active=unknown
  Attached to: #153 (PCI bridge)

如您所见,有两种:SATA 和 RAID。从 lshw 输出中,我可以确认所有存储驱动器都在 RAID 控制器下。SATA 控制器用于光驱等。

有两个驱动器 sda (900GB) 和 sdb (4.1TB)。

# dmraid -r
no raid disks
# dmraid -s
no raid disks

但,

# cat /sys/block/sda/device/raid_level
RAID 1(1+0)
# cat /sys/block/sdb/device/raid_level
RAID 5

突袭是否活跃?

我是这样想的。如果我错了,请纠正我:

支持硬件raid,但它不活跃,因为raid磁盘没有设置。软件突袭处于活动状态。因此,sda 中的 RAID 1(1+0) 和 sdb 中的 RAID 5。

如果允许我再问一个问题:

我不明白软件突袭是如何工作的,我猜它的优势只在于数据恢复。由于它只使用一个磁盘,它不能进行故障转移或冗余等,对吧?而且,这似乎没有必要,因为它只会增加数据大小和时间。

如果我错了,请纠正我。

raid
  • 1 个回答
  • 2068 Views
Martin Hope
GP92
Asked: 2015-06-12 10:17:31 +0800 CST

qsub 正在工作,但 qrsh 失败,并且仅当使用 -l 显式指定资源时。为什么?

  • 0

提交简单的交互式作业以打开 shell 时出现以下错误:qrsh -V -cwd -verbose -q nsnel6.q -l h_vmem=12.000G tcsh

local configuration arslox51 not defined - using global configuration
Your job 8450878 ("tcsh") has been submitted
waiting for interactive job to be scheduled ...timeout (5 s) expired while waiting on socket fd 4


Your "qrsh" request could not be scheduled, try again later.

在未指定资源的情况下提交作业成功。

我也检查了资源,它们是可用的。他们有 30 多台主机,许多作业正在运行。但资源绰绰有余。

qsub 使用相同的资源,但只有 qrsh 面临这个问题。只有极少数情况下它在 qrsh 中工作。

与此错误有关local configuration arslox51 not defined - using global configuration吗?还有这个错误是关于什么的?

我的 SGE 版本是 6.1

gridengine
  • 1 个回答
  • 1402 Views
Martin Hope
GP92
Asked: 2015-06-03 10:46:47 +0800 CST

SGE为什么会有槽的概念?

  • 2

根据 SGE 5.3 手册,

Slots - 可以在该队列中同时执行的作业数

我对这些概念很陌生,想从一一理解开始。

假设,如果 RAM 为 10G,如果有 10 个插槽,因此每个插槽 1G,那么是否只能运行小于 1G 的作业?如果这项工作只需要一些 0.5G,那将浪费该插槽中剩余的 0.5G 对吗?如果是这样,那么如果没有资源优化,那么网格有什么用呢?

而如果一个2G的job在多个slot之间共享,这叫parallel job还是normal job呢?

SGE v5.3 和 v6.0 及更高版本中的队列和插槽概念有什么区别吗?

gridengine
  • 1 个回答
  • 2015 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve