小编Mat*_*Mat的帖子

Ansible 安全最佳实践

我将把 Ansible 引入我的数据中心,我正在寻找一些关于在何处定位控制机器以及如何管理 SSH 密钥的安全最佳实践。

问题一:控制机

我们当然需要一台控制机器。控制机器上保存了公共 SSH 密钥。如果攻击者可以访问控制机器,它就有可能访问整个数据中心(或 Ansible 管理的服务器)。那么数据中心有专用控制机好还是远程控制机好(比如我的笔记本电脑远程连接数据中心)?

如果最佳做法是使用我的笔记本电脑(当然,它可能会被盗,但我可以将我的公钥安全地在线保存在云中或离线保存在便携式加密设备上),如果我需要使用一些 Web 界面,该怎么办? Ansible,像 Ansible Tower、Semaphore、Rundeck 或 Foreman,需要安装在数据中心的中央机器上?如何保护它并避免它成为“单点攻击”?

问题 2:SSH 密钥

假设我需要使用 Ansible 来制作一些需要由 root 执行的任务(比如安装软件包或类似的东西)。我认为最好的做法是不要在受控服务器上使用 root 用户,而是为 Ansible 添加一个具有 sudo 权限的普通用户。但是,如果 Ansible 需要执行几乎所有任务,则它需要通过 sudo 访问每个命令。那么,最好的选择是什么:

  • 让 Ansible 使用 root 用户(其公钥保存在 ~/.ssh/authorized_keys
  • 创建一个专用于 Ansible 的非特权用户,并具有 sudo 访问权限
  • 让 Ansible 用户通过指定密码的 sudo 运行每个命令(每个使用 Ansible 控制服务器的系统管理员都需要知道这是唯一的)
  • 让 Ansible 用户在不指定任何密码的情况下通过 sudo 运行每个命令
  • 任何其他提示?

security best-practices ansible

43
推荐指数
3
解决办法
2万
查看次数

Windows 2019:不知道为什么我的驱动器已满

在 Windows 2019 服务器上,驱动器 D: 100% 已满(使用 500 Gb)

在此处输入图片说明

我试图了解为什么磁盘已满,但我不能,因为文件资源管理器和 Total Commander 报告使用的数据不超过 33 Gb

在此处输入图片说明

在此处输入图片说明

同样奇怪的是,WinDirStat 在开始摘要中报告使用了 100% (500 Gb),但在分析后仅使用33 Gb

在此处输入图片说明

在此处输入图片说明

请注意:

  • 我以管理员身份登录
  • 我以管理员权限启动了 WinDirStat
  • 我尝试使用本地管理员和 Active Directory域管理员
  • 我在文件资源管理器和 Total Commander 中启用了隐藏文件和系统文件
  • 我在 D: 驱动器上运行 chkdsk 没有发现任何问题

我找到了 33 Gb 的数据。其他 467 Gb 在哪里?

windows disk-space-utilization windows-server-2019

29
推荐指数
3
解决办法
4484
查看次数

Redis 集群:最少 3 个主节点?

我正在评估 Redis 3 的集群功能(我目前正在独立使用 Redis 2),所以我正在阅读http://redis.io/topics/cluster-tutorial 上的信息。

在这份文件中,我读到了一个非常重要的信息:

请注意,按预期工作的最小集群需要包含至少三个主节点。对于您的第一次测试,强烈建议启动一个具有三个主节点和三个从节点的六节点集群。

真的吗?在我看来,如果我使用分片功能(数据在节点之间共享),这是正确的,但是如果我不需要它并且我很高兴只在一个节点上拥有数据怎么办?

我基本上需要一个主站和两个从站(所以如果一个节点出现故障,集群将处于活动状态),我可以在生产环境中进行这种配置吗?如果是,禁忌症是什么?

非常感谢您的帮助!

cluster redis

13
推荐指数
3
解决办法
3万
查看次数

生产 mongoDB 集群的最少服务器数量是多少?

生产集群架构的 mongoDB 文档中,我读到运行的生产 mongoDB 集群的最小服务器数量是 7:

mongoDB 集群架构

是否可以在同一台服务器上共享路由器、配置服务器和分片(总共有 3 个服务器,每个服务器都有一个路由器、配置和分片服务)?

cluster mongodb

12
推荐指数
1
解决办法
8549
查看次数

Redis 高可用和负载均衡

我使用 Redis 有一段时间了,现在我们想迁移到一个容错、高可用和负载均衡的冗余集群。

我主要将 Redis 用于一些存储一些进程状态信息的 PHP Web 应用程序(我为此使用 PHPRedis),我也想将它用于负载平衡集群中的 PHP 会话存储。

我已经有一个用于 Nginx 和 MySQL 的负载平衡(基于 pfSense)。

我看到 Redis 集群存在于 Redis 3,但我也阅读了一些关于它尚未准备好用于生产这一事实的评论,其他评论则表明 Redis 无法进行完整的主/主集群配置。

你的建议是什么?

  • 尝试Redis集群
  • 转移到另一个键=值引擎(CouchDB?Memcached?其他?)
  • 不要介意负载平衡,每次只使用集群的一个节点,并进行手动故障转移,因为我不使用持久性
  • 其他想法?

非常感谢您的帮助!

cluster failover load-balancing redis

8
推荐指数
1
解决办法
3万
查看次数

SQL Server 故障转移策略

在我的基础设施中,我有一个 SQL Server 2014 Standard 独立服务器。

随着使用 SQL Server 的数据库和应用程序不断增长,我想升级到 SQL Server 2016 Standard 并安装两个节点以获得高度可用的 SQL Server 基础架构。

我知道我可以创建一个 SQL Server 故障转移集群,但我需要一些共享存储,这可能不是问题,因为我有一个生产 NAS/SAN 可用,但它非常慢,因为它用于数据目的而不是用于应用程序目的.

由于我的虚拟化节点有一些快速的 SSD 本地存储,我希望使用它们来托管 SQL Server 数据,所以我想知道是否有一种方法可以在没有共享存储的情况下构建 SQL Server HA 集群,但进行主从复制在他们自己的本地存储上的两个节点之间,就像我已经在使用 MariaDB Galera Cluster 为 MariaDB 所做的那样。

我还有一个可用的 HAProxy。

谢谢!!

cluster replication sql-server database-replication

6
推荐指数
1
解决办法
538
查看次数

Linux 绑定模式 802.3ad 未激活

在运行Debian Stretch的服务器上,我使用802.3ad 模式配置了一个bond0,如下所示:

auto bond0
iface bond0 inet manual
        slaves eth0 eth2
        bond_miimon 100
        bond_mode 802.3ad
Run Code Online (Sandbox Code Playgroud)

bond0接口启动并运行,但它的工作与负载平衡(循环)模式:

root@servir01:~# cat /proc/net/bonding/bond0
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)

Bonding Mode: load balancing (round-robin)
MII Status: up
MII Polling Interval (ms): 100
Up Delay (ms): 0
Down Delay (ms): 0

Slave Interface: eth0
MII Status: up
Speed: 1000 Mbps
Duplex: full
Link Failure Count: 2
Permanent HW addr: e4:1f:13:65:f0:c4
Slave queue …
Run Code Online (Sandbox Code Playgroud)

cisco debian switch bonding lacp

3
推荐指数
1
解决办法
7079
查看次数

部署分布在 3 个节点、1 个驱动器上的 Minio

我需要在三个节点上部署MinIO基础设施,其中每个节点都有一个可以保存文件的本地目录。

我阅读了MinIO 纠删码快速入门指南,但我不需要 MinIO 来管理不同本地驱动器上的数据复制,因为所有三个节点都位于独立硬件上的独立虚拟机上,并且本地存储已受 ZFS 保护。

因此,我仅 MinIO 在节点之间复制数据,创建每个文件的三个副本,但是当我尝试使用单个数据目录启动它时,它会失败:

minio@storage3:/usr/local/bin$ export MINIO_ACCESS_KEY=foo
minio@storage3:/usr/local/bin$ export MINIO_SECRET_KEY=bar
minio@storage3:/usr/local/bin$ ./minio server http://storage{1...3}/minio1
ERROR Invalid command line arguments: Invalid total number of endpoints for erasure mode.
      > Please provide correct combination of local/remote paths.
      HELP:
        For more information, please refer to https://docs.min.io/docs/minio-erasure-code-quickstart-guide
Run Code Online (Sandbox Code Playgroud)

请问你能帮帮我吗?

storage object-storage minio

3
推荐指数
1
解决办法
1万
查看次数

标签未应用于 Ansible 包含的角色

我创建了一个简单的 Ansible 剧本:

---
- hosts: all

  tasks:
    - name: Install Icinga2 on Windows
      include_role:
        name: my.icinga2.role
        apply:
          tags:
            - install-icinga2
Run Code Online (Sandbox Code Playgroud)

该角色包含以下任务文件:

---
- include_tasks: vars.yml
  tags: ['always']

- include_tasks: install.yml
  tags: ['install-icinga2-stack', 'install-icinga2']

- include_tasks: ido-install.yml
  when: icinga2_ido_enable == true
  tags: ['install-icinga2-stack', 'install-icinga2-ido']  

- include_tasks: configure.yml
  tags: ['install-icinga2-stack']

[...]
Run Code Online (Sandbox Code Playgroud)

这是我执行剧本时的结果:

me@ansible:~/ansible$ ansible-playbook plays/icinga2-client-win.yml -i staging.ini --limit windows


PLAY [all] ***************************************************************************************************

TASK [Gathering Facts] ***********************************************************************************************************
ok: [my.windows.client]

TASK [Include variables for Icinga 2] ********************************************************************************************
ok: [my.windows.client]

TASK [set_fact] ******************************************************************************************************************
skipping: …
Run Code Online (Sandbox Code Playgroud)

ansible ansible-playbook

2
推荐指数
1
解决办法
5315
查看次数

ZFS:arc_prune 使用 100% CPU,平均负载较高

我有一个4 磁盘存储服务器,带有两个 ZFS raidz1 池,昨晚它突然开始以100% CPU运行,平均负载很高

root@stg1:~# w
 07:05:48 up 296 days, 17:19,  1 user,  load average: 27.06, 25.49, 24.74
USER     TTY      FROM             LOGIN@   IDLE   JCPU   PCPU WHAT
Run Code Online (Sandbox Code Playgroud)

我有很多 arc_prune 进程,它们占用了大量 CPU:

arc_prune 使用大量 CPU

我的zfs_arc_max大小是默认值(应该是系统 RAM 的 50%),实际上它使用的内存不超过 16 GB:

------------------------------------------------------------------------
ZFS Subsystem Report                Thu Aug 27 07:09:34 2020
ARC Summary: (HEALTHY)
    Memory Throttle Count:          0

ARC Misc:
    Deleted:                567.62m
    Mutex Misses:               10.46m
    Evict Skips:                10.46m

ARC Size:               102.63% 15.99   GiB
    Target …
Run Code Online (Sandbox Code Playgroud)

zfs cpu-usage load-average

2
推荐指数
1
解决办法
4144
查看次数