小编Ant*_*des的帖子

如何清理服务器上不再使用的角色中的东西?

假设我有一个主机,它是一个 Web 服务器,其中安装了相关的 Ansible 角色nginx,在 中执行一些基本配置/etc/nginx,并在防火墙中打开端口 80 和 443。

在某些时候,我希望该特定主机不再是 Web 服务器,因为出于某种原因,我将该服务移到了其他地方。只是从[webservers]库存中移除服务器会在服务器中留下垃圾。理想情况下,我想卸载nginx、删除/etc/nginx目录(和一些其他目录),并关闭防火墙中的端口 80 和 443。

在 Puppet 中,我可以做到这一点。作为 Web 服务器的主机将在其配置中具有以下内容:

class { 'nginx':
  ensure => present,
}
Run Code Online (Sandbox Code Playgroud)

而我所要做的就是用“缺席”替换“存在”。如果nginx类编写得很好,它将撤消所做的更改。(通常,管理员会将“present”替换为“absent”,然后,当他确定所有受影响的主机都已撤消配置时,他将从清单中删除该项目。)

更重要的是,我认为Puppet防火墙模块会自动删除清单中再也找不到的防火墙规则;所以我认为,对于防火墙,你甚至不需要做上面那个“缺席”的事情,无论如何防火墙都会自动关闭。

如何使用 Ansible 实现这些目标?

ansible

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

删除文件需要很长时间

短版rm -rf mydirmydir(递归),含2.5万个文件,需要一个闲置的大部分机上约12小时。

更多信息:大多数被删除的文件是其他目录中文件的硬链接(被删除的目录实际上是由 制作的最旧的备份rsnapshotrm命令实际上是由 给出的rsnapshot)。所以主要是目录条目被删除——文件内容本身并不多;它大约是几十 GB。

我远不能确定那btrfs是罪魁祸首。我记得在我开始使用之前备份也很慢btrfs,但我不确定慢是在删除。

该机器是具有 4 GB RAM 的 Intel Core i5 2.67 GHz。它有两个 SATA 磁盘:一个有操作系统和其他一些东西,备份磁盘是 1 TB WDC WD1002FAEX-00Z3A0。主板是华硕P7P55D。

编辑:该机器是带有 Linux 的 Debian wheezy 3.16.3-2~bpo70+1。这是文件系统的挂载方式:

root@thames:~# mount|grep rsnapshot
/dev/sdb1 on /var/backups/rsnapshot type btrfs (rw,relatime,compress=zlib,space_cache)
Run Code Online (Sandbox Code Playgroud)

编辑:使用rsync -a --delete /some/empty/dir mydir大约需要 6 个小时。一个显着的改进rm -rf,但我认为还是太多了。(解释为什么rsyncrm:“[M]大多数文件系统以 btree 格式存储它们的目录结构,删除文件的顺序 [in] 很重要。执行取消链接时需要避免重新平衡 …

linux btrfs

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

任何傀儡代理都可以从主人那里得到任何傀儡文件吗?

我的 Puppet master 包含一些敏感文件。我希望每个傀儡代理只能访问那些特定代理感兴趣的文件。换句话说:

  • puppet 代理是否运行它的目录,然后,当它遇到“文件”或“模板”函数或“源 => 'puppet:///...'”参数时,要求 master 为其提供指定的文件,而主人只是提供它而不检查?这会很糟糕。如果代理受到威胁,它可以向主服务器询问主服务器上的任何文件,甚至是仅用于其他代理的文件。
  • 或者主人是否以某种方式检查代理的目录是否真的授权该特定代理获取该特定文件?

我不知道这是否重要,但我正在运行乘客(并且我的所有代理和主机都是 2.7.6 来自挤压反向端口)。

puppet puppetmaster

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

如何让RabbitMQ更快地启动和停止

在 Debian 10 上,service rabbitmq-server start需要 10 秒;service rabbitmq-server stop需要 5 秒。

这适用于负载极低且启动/停止速度比 RabbitMQ 性能或可靠性更重要的 Docker 开发环境。因此,停止并重新启动容器需要 15 秒。

我怎样才能让它更快?我添加log.default.level = debugrabbitmq.conf以防万一它会告诉我它在启动过程中正在做什么,但它没有给我任何有用的东西。

debian rabbitmq systemd

6
推荐指数
0
解决办法
973
查看次数

标签 统计

ansible ×1

btrfs ×1

debian ×1

linux ×1

puppet ×1

puppetmaster ×1

rabbitmq ×1

systemd ×1