在我们的系统中,三台主机都连接到同一个以太网交换机,如下图所示:
A (192.168.0.21, WIN10_1809) <-> Switch <-> B (192.168.0.100, Debian Linux 9)
^
|
C (192.168.0.201, WIN10_1809)
Run Code Online (Sandbox Code Playgroud)
在这些主机中的任意两台之间,都会定期进行网络通信,包括低级 ping 操作和上级业务消息(基于 TCP 或 UDP)。
偶尔(例如一天或两天一次)主机 B 和主机 C 会发现主机 A 无法通过 ping 操作(将持续约 7 秒)而主机 A 在 ping 主机 B 和主机 C 时没有问题。同时,与主机 A 相关的上层 TCP 或 UDP 通信也会失败,而主机 B 和主机 C 之间的通信则完全正常。
问题出现在我们公司的多个系统上,看起来网络硬件(已更换交换机和连接电缆)和网络流量(即使系统空闲且带宽使用率低于 1% 的情况下仍会出现问题)没有对问题作出重大贡献。
然后,通过使用Wireshark检查系统中的网络流量(通过以太网交换机捕获,下载),我们发现ping请求已经发出而没有收到响应:
No. Time Source Destination Protocol Length Info
1455 1.509228 192.168.0.100 192.168.0.21 ICMP 98 Echo (ping) request id=0x6812, seq=1/256, ttl=64 (no response found!) …Run Code Online (Sandbox Code Playgroud) 我读过很多关于这个主题的帖子,但没有一篇讨论 AWS RDS MySQL 数据库。从三天前开始,我在 AWS EC2 实例中运行 python 脚本,在我的 AWS RDS MySQL 数据库中写入行。我必须写 3500 万行,所以我知道这需要一些时间。我定期检查数据库的性能,三天后(今天)我发现数据库变慢了。开始时,前 100,000 行仅在 7 分钟内写入(这是我正在处理的行的示例)
0000002178-14-000056 AccountsPayableCurrent us-gaap/2014 20131231 0 USD 266099000.0000
Run Code Online (Sandbox Code Playgroud)
三天后,数据库已经写入了5,385,662行,但现在写入100,000行需要将近3个小时。怎么了?
我正在运行的 EC2 实例是 t2.small。如果需要,您可以在此处查看规范:EC2 SPECS 。我正在运行的 RDS 数据库是 db.t2.small。在此处查看规格:RDS 规格
我将在此处附上一些有关数据库和 EC2 实例性能的图表: Db CPU / Db 内存/ Db 写入 IOPS / Db 写入吞吐量/ EC2 网络输入(字节) / EC2 网络输出(字节)
如果你能帮助我,那就太好了。非常感谢。
编辑 1:我如何插入行? 正如我之前所说,我有一个在 EC2 实例上运行的 python 脚本,该脚本读取文本文件,使用这些值进行一些计算,然后将每个“新”行写入数据库。这是我的一小段代码。 我如何阅读文本文件?
for i in path_list:
notify("Uploading: " + i)
num_path = …Run Code Online (Sandbox Code Playgroud) 我有一个带有 Supermicro BPN-SAS3-826EL1 背板的机箱。该背板允许连接 12 个 HDD。然而,我显然还没有理解 HBA 和背板之间的布线,我需要实际使用所有 12 个 HDD 端口。
根据手册第3-1页第一张图,PRI-J1和PRI-J2应连接到HBA(因此是“输入”),而PRI-J3和PRI-J4是“输出”,可以连接到级联背板,我没有。
手册进一步指出,PRI-Jn 是 SFF-8643 连接器,可以传输 4 个 SAS 或 SATA 驱动器的信号。这意味着我可以在背板上使用 8 个 HDD,尽管它在机械上提供 12 个驱动器连接器。
我需要做什么才能在该背板上使用 12 个 HDD?
如果问题很愚蠢,请原谅我,但我还没有背板的经验,并且我已经研究了本手册和其他 Supermicro 手册好几次,但仍然不明白情况。
更新/澄清
非常抱歉我说得不够清楚:
我想使用 SATA 驱动器(不是 SAS),并且我已经将 LSI 9361-8i 连接到背板,使用两根两端带有 SFF-8643 连接器的电缆。这样控制器就会看到 8 个驱动器。现在我想知道如何使用剩余的 4 个驱动器。
我使用的主板集成了两个 SATA / SAS 控制器,每个控制器可以处理四个驱动器。我只需要将其中一个连接到背板的PRI-J3吗?
如果这是一个可怕的问题,那么我很抱歉,但请不要将我投票给遗忘,哈哈。我也搜索过,但认为它值得拥有自己的主题,因为我的规格与我看到的规格不同。
无论如何,我已经运行了多年的专用服务器并且每月支付它们的费用加起来,因为我的网站没有投放广告。我需要运行 6 个自动 WordPress 博客和一个小型加密交易和管理平台。托管我自己的网络服务器有什么缺点?我不玩游戏或任何东西,所以我不担心它会使用我的资源。是否有任何改变游戏规则的人将其从一个体面的可行选择中移除?是否有一个很好的 Docker 用于网络托管,或者我需要启动一个新的 Linux VM?
优点:
始终敞开的千兆连接
32GB DDR4 内存
锐龙 7 - 3.9 GHz
30 TB 存储空间
--> 5 TB NVMe 存储 - 大多数数据将在这里托管。
--> 5 TB SSD 存储 - 也许将其用于 RAID?
--> 20 TB HDD 存储 - 视频将在此处托管。
缺点:
如果我要租用具有可比规格的服务器,那么每个月会节省很多钱。
我们公司期待部署和维护自己的公共 DNS。我概述了部署活动,但对在哪里注册我的公司域名以及如何映射我的公共 DNS 感到困惑。请任何人解释交通流量。
我刚开始使用 Let's Encrypt。http-01-challenge 很简单:
奇迹般有效。但是他们如何使用不安全的 http 连接确保我确实是 example.com 的所有者?
我的数据中心(或我的 ISP)中的某些管理员不能只请求证书并拦截 http 请求,让我们 Enrypt 发送以检查服务器的身份吗?
由于各种原因/限制,我无法在清单文件中创建新组,并且需要使用--limit/-l它来指定主机。
我被告知要做类似的事情:
ansible-playbook -i /path/to/my/inventory/file.ini -l server.1.com server.2.com my-playbook.yml --check --diff
这引发了一个错误:
ERROR! the playbook: server.2.com could not be found
从有关此主题的Ansible 文档中,我发现您可以使用单独的文件来列出您想要限制的所有主机。就像是:
ansible-playbook -i /path/to/my/inventory/file.ini -l @list-to-limit.txt my-playbook.yml
但是,我需要内联完成这一切,而不创建额外的文件。
firewall-cmd --reload和 和有什么区别systemctl restart firewalld?
最近,我们的一个客户接受了另一家(第三方)IT 审计公司的 IT 网络审计。结果通常很好,尽管他们指出我们在 Windows Server 上使用 iSCSI 客户端作为连接到 NAS 的方式,而不是在 NAS 上创建 SMB 共享。他们认为这是一个坏主意:
“[也] iSCSI 和勒索软件攻击存在安全风险,可以对 iSCSI 磁盘进行非法加密,导致数据无法读取。从安全角度来看,建议停用这种数据共享方法并采用共享方法。”
他们这是什么意思?它是否指的是 iSCSI 在比 SMB(应用程序)更低的 OSI 层(会话)上运行,并且 iSCSI 磁盘以与本地附加磁盘相同的方式呈现给应用程序层,因此更容易妥协?
如果是这样,那是正确的吗?
我不是安全取证专家,尽管我们的工作通常是取证性质的。我的理解是,勒索软件攻击给定 Win 计算机可访问的 SMB 共享上的数据的可能性与攻击 iSCSI 磁盘的可能性一样。
我的理解是正确的,还是我错过了什么?
问题的附加上下文
CHAP 密码是在 iSCSI 服务器上设置的,所以我认为他们提出的观点与安装了 iSCSI 客户端的 Win Server 的妥协有关。
只连接了一个 iSCSI 客户端,并且采用了非常强大的“网络卫生”来确保此密码不会在任何时候输入到网络内外的任何其他服务器或机器中。
通常,我们倾向于坚持使用 iSCSI 使 NAS 磁盘可用于 Windows Server 我们发现,当 Windows 处理文件系统时,我们在 DACL 中的高级访问控制条目 (ACE) 方面没有任何问题。例如,过去 QNAP 的实施在 ACE 排序方面存在问题,这可能会出现问题。我们还发现了在子对象上设置 CONTAINER_INHERIT_ACE 的错误(与 QNAP 通信,但直到今天仍未解决)。这一点与这个问题并不严格相关,但为我们为什么更喜欢 iSCSI 提供了一些背景信息。
与我的上述观点相反,在这个特定客户的情况下,有问题的 iSCSI 附加磁盘使用 ReFS 进行格式化,因为它被用作 Veeam …
需要什么配置才能正确格式化 Ansibleansible-playbook运行中任务的标准流输出?
我ansible-playbook foo.yaml从任务中运行的输出包括标准流 ( stdout, stderr) 内容。但是这些显示在一个大的 JSON 单行 blob 中,而不是作为发送到流的格式化行打印。
TASK [Django: Collect media fixture files] ******************************************************************************
ok: [lorem]
TASK [Django: Create superuser] ******************************************************************************
fatal: [lorem]: FAILED! => {"changed": false, "cmd": "python3 -m django createsuperuser\n --noinput\n --username \"admin\"\n --email \"admin@example.com\"", "msg": "\n:stderr: CommandError: You must use --full_name with --noinput.\n", "path": "/var/local/dolor/virtualenv/rectory/venv.py3.7/bin:/usr/local/bin:/usr/bin:/bin:/usr/games", "syspath": ["/tmp/ansible_django_manage_payload_uj9f3le8/ansible_django_manage_payload.zip", "/usr/lib/python37.zip", "/usr/lib/python3.7", "/usr/lib/python3.7/lib-dynload", "/usr/local/lib/python3.7/dist-packages", "/usr/lib/python3/dist-packages"]}
Run Code Online (Sandbox Code Playgroud)
是什么导致了这种不需要的输出格式?如何告诉 Ansible 始终正确格式化流输出以在ansible-playbook输出中显示?
ansible ×2
amazon-ec2 ×1
arp ×1
dns-zone ×1
firewall-cmd ×1
firewalld ×1
hard-drive ×1
iscsi ×1
lets-encrypt ×1
logging ×1
mysql ×1
networking ×1
ntfs ×1
ransomware ×1
rds ×1
refs ×1
sas ×1
sata ×1
supermicro ×1
veeam ×1
web-hosting ×1
web-server ×1
windows-10 ×1