除了常见的系统设施(mail
、news
、daemon
、cron
等), syslog 还提供了一系列“本地”设施,编号为 0 到 7:LOCAL0
、LOCAL1
、 ...、LOCAL7
。
哪些是常见应用程序的程序默认设置?
我想找出哪些设施“传统上”用于众所周知的服务。我将在许多服务器上部署应用程序,并安装各种软件,并想看看是否有一个“免费”工具可以轻松用于我自己的日志。
请注意,我意识到除了系统日志工具之外,还有其他方法可以做到这一点。只是好奇!
这里有一些,(开始回答我自己的问题)还有一些感谢 voretaq7:
LOCAL0
被 postgresql 使用LOCAL2
被 sudo 使用LOCAL3
被某些版本的 SpamAssassin 使用LOCAL4
slapd(OpenLDAP 服务器)默认使用LOCAL5
有时被 Snort IDS 使用LOCAL7
用于 Fedora 12 上的引导消息我有 2-3 个节点集群用于我们的负载均衡器和各种 Web 应用程序。我必须首先在 QA 中进行更改,然后在暂存(在 2-3 个服务器上),然后在生产(在 2-3 个)服务器上进行更改。像厨师或木偶这样的配置管理工具在这里合适吗?还是矫枉过正?如果它是矫枉过正,是否有任何提示可以使这更容易。
为了发布一些软件的几个不同版本的 RPM 包,我正在寻找一种方法来指定被视为“升级”的版本“编号”,并包括几个预发布版本的差异,例如(按顺序) ):“2.4.0 alpha 1”、“2.4.0 alpha 2”、“2.4.0 alpha 3”、“2.4.0 beta 1”、“2.4.0 beta 2”、“2.4.0 候选版本”、 “2.4.0 最终版”、“2.4.1”、“2.4.2”等
我对此的主要问题是 RPM 认为“2.4.0”早于“2.4.0.alpha1”,所以我不能只在最终版本号的末尾添加后缀。
我可以尝试“2.4.0.alpha1”、“2.4.0.beta1”、“2.4.0.final”,这会起作用,除了“候选发布”将被考虑晚于“2.4.0.final” ”。
我考虑的另一种方法是使用 RPM 版本号的“epoch:”部分(epoch: 前缀被考虑在主版本号之前,因此“1:2.4.0”实际上早于“2:1.0.0”) . 通过在 epoch: 字段中放置时间戳,所有版本都按照 RPM 的预期进行排序,因为它们的版本似乎随时间增加。但是,当同时在几个主要版本上发布新版本时,这会失败(例如,2.3.2 在 2.4.0 之后发布,但它们的 RPM 版本为“20121003:2.3.2”和“20120928:2.4”。 0" 并且 2.3.2 上的系统无法“升级”到 2.4.0,因为 rpm 将其视为旧版本)。在这种情况下,yum/zypper/etc 拒绝升级到 2.4.0,这就是我的问题。
我可以使用哪些版本号来实现这一点,并确保 RPM 始终认为版本号是有序的。或者如果不是版本号,RPM 包装中的其他机制?
注 1:我想保留规范文件的“发布:”字段以用于其原始目的(对于相同版本的打包软件,包的多个版本,包括打包更改)。
注意 2:这应该适用于主要发行版的当前生产版本,例如 RHEL/CentOS 6 和 SLES 11。但我对不感兴趣的解决方案也很感兴趣,只要它们不涉及重新编译 rpm!
注 3:在类似 Debian 的系统上,dpkg 使用版本号中的一个特殊组件,即“~”(波浪号)字符。这会导致 dpkg 将后缀计数为“负”排序,因此“2.4.0~anything”将排在“2.4.0”之前。然后,正常排序适用于“~”之后,因此“2.4.0~alpha1”在“2.4.0~beta1”之前,因为“alpha”按字母顺序在“beta”之前。我不一定希望对 RPM 包使用相同的方案(我很确定不存在这样的等价物),所以这只是仅供参考。
是否有一些指导方针,或者有人对我应该如何打包我需要能够同时安装多个版本的东西有任何建议?
我们正在使用 puppet 来管理一组 Ubuntu 机器,并且很快就会要求这些服务器中的每一个都共享一个通用的 SSL 证书,以便通过 HTTPS 为站点提供服务。自然,我们希望使用 puppet 来管理证书,但意识到将其放入 VCS(从 puppet master 获取其模块的地方)可能不是一个好主意——因为存在安全隐患。
有没有人知道更好的解决方案?
我的服务器存在于没有外部网络连接的环境中(这是必需的),因此当我部署更新时,所有包、二进制文件、配置文件等都必须包含在交付的媒体中。当然,我想要某种配置管理,这样我就可以知道哪些已经安装,哪些尚未安装。
所以我想知道人们是否有使用过厨师、木偶或其他配置管理类型工具来处理此类环境的经验。最坏的情况是我将更新部署为 RPM。
编辑:
我的设置有 Linux 服务器和 Windows 服务器。
在配置 rudder-agent 时,文档说用 rudder-server 主机名填充 policy_server.dat:
echo 'rudder-server' > /var/rudder/cfengine-community/policy_server.dat
Run Code Online (Sandbox Code Playgroud)
我应该最好使用完全限定的域名 (fqdn) 还是方向舵服务器的短主机名?
我有一台运行 VMWare Server 2.0.2 的服务器。主持人是 Debian Lenny。我有 15-20 台虚拟机在运行,它们都连接到一个 NAT 网络(名为 vmnet8)。
我已经配置了 VMWare 的 NAT(vmnet-natd守护进程)将一些传入端口转发到其中一个 VM,因为它托管了一些可公开访问的服务。我/etc/vmware/vmnet8/nat/nat.conf
通过添加以下行来通过文件完成此操作:
80 = 192.168.100.100:80
Run Code Online (Sandbox Code Playgroud)
这很好用,我可以通过连接到主机的 IP 地址来访问位于 192.168.100.100 的 VM 上的 Web 服务器。
有时,我需要向此 NAT 配置添加端口重定向。所以,我在配置文件中添加了一行。
现在的问题。如何让 natd 进程考虑这个新配置?很明显,重启宿主机确实考虑到了,新添加的端口被转发。但是,这不是此服务器上的一个选项,那么在不重新启动整个主机的情况下应该如何执行此操作?
感谢您的任何想法!
我有一个小型虚拟 linux 服务器(500 兆内存)。我最终可能会再获得一两台服务器,而不是更多。
我是开发人员,而不是系统管理员,所以我不知道涉及 linux 管理的最佳实践。我知道我不想设置机器,发出一堆命令来设置用户,安装包,更改环境变量,如果我的机器崩溃,只会丢失所有这些。
我宁愿将所有这些信息与我的代码一起保存在源存储库中。
明显的解决方案是 puppet 或 Chef,但我没有运行一组机器。我想要一种设置用户、安装软件包等的声明方式,但不想设置 ssl 证书、主服务器等(坦率地说,我不能,我的机器很便宜,内存也很少)。
是否有更好的独立机器解决方案?我希望能够快速使用此解决方案来重新创建我的机器(在 amazon、linode、rackspace 或我的桌面上)。