使用 puppet 我想以受控方式更新我的(CentOS 5 和 6 服务器)上的软件包。因此我不想使用ensure=>latest而是ensure=>3.0.1-1.
例子:
class puppet::installation inherits puppet {
package { "puppet":
ensure => "3.0.1-1",
}
}
Run Code Online (Sandbox Code Playgroud)
更新工作正常,但傀儡代理一直抱怨有区别:
/Stage[main]/Puppet::Installation/Package[puppet]/ensure: current_value 3.0.1-1.el6, should be 3.0.1-1 (noop)
Run Code Online (Sandbox Code Playgroud)
我可以通过将确保规则更改为3.0.1-1.el6但在 CentOS 5 上不起作用来解决此问题。
是否有一种简短/干净的方法来解决这个问题,或者我是否必须编写单独的、依赖于 os-releaseversion 的规则。
我一直在搜索解决方案,但没有找到与这个特定问题有关的任何内容。
对相关示例的任何建议或参考将不胜感激。
在过去十年中,NAT 允许我们做的事情之一是将物理服务拆分到不同的服务器上,同时隐藏在单个接口后面。
例如,我example.com在192.0.2.10. 我端口转发:80和:443对我的Web服务器。我还将端口转发:25到我的邮件服务器、:3389终端服务器和:8080下载种子的计算机的 Web 界面,故事还在继续。
所以我有 5 个端口转发到 4 台不同的计算机上example.com。
然后,我去拿一些整洁的 IPv6。我分配example.com了一个 IPv6 地址2001:db8:88:200::10。这对我的网站来说很棒,但我想访问example.com:8080我的种子,或example:3389登录到我的终端服务器。
我怎么能用 IPv6 做到这一点,因为没有 NAT。当然,我可以为每个新服务创建一堆新的 DNS 条目,但随后我必须更新我所有习惯于仅通过键入example.com访问网站或终端服务器的客户端。我的用户比两块砖还笨,所以他们不会记得连接到rdp.example.com.
我有哪些选项可以在 IPv6 中保持 NAT 风格的功能?
如果你还没有想通了,上面的场景是不是我的真实的情景,或许有人还没有,但它一定最终会发生。你知道,与 devops 和所有。
Zabbix 能够监控支持 SNMP 的设备,甚至可以在其 Web 界面中显示它们的状态:

绿色图标表示 Zabbix 正在接收数据。

红色图标表示 Zabbix 没有接收数据。
但是,如果 SNMP 设备不可用,我找不到任何明显的方法让 Zabbix 通知我。
今天我发现我的一台服务器磁盘空间不足;磁盘正在被 SNMP 监控,但自 12 月 15 日以来 Zabbix 没有收到任何数据!一直以来它都显示这个红色图标,但我当时没有理由查看主机列表,因此我错过了它。直到今天服务器因磁盘空间不足而死机,我的手机在晚餐中响起......
在调查中我发现,当然,snmpd is stopped。我本来希望两个月前就收到通知!
发生这种情况时,Zabbix 不应该生成事件吗?Zabbix 手册没有提及它。而谷歌只想告诉我如何监控特定的 OID。当 SNMP 设备根本没有响应时,我如何得到通知?
显而易见的方法是创建一个触发器,尽管我不知道这个数据点可能有什么项目名称(同样,它不在手册中或从 Google 中明显可见)。
服务器是 Zabbix 2.0.9,我使用它的内置模板 SNMP 磁盘模板。
我正在使用带有 IIS 8 的 Windows Server 2012。
我通过 Web 平台安装程序安装了 PHP 5.5,除了“用于 IIS 的 PHP 管理器”之外,所有安装都成功。
任何想法为什么?下面我将插入日志:
=== Verbose logging started: 7/27/2014 0:58:28 Build type: SHIP UNICODE 5.00.9600.00 Calling process: C:\Windows\system32\inetsrv\InetMgr.exe ===
MSI (c) (A4:94) [00:58:28:434]: Resetting cached policy values
MSI (c) (A4:94) [00:58:28:434]: Machine policy value 'Debug' is 0
MSI (c) (A4:94) [00:58:28:434]: ******* RunEngine:
******* Product: C:\Users\Administrator\AppData\Local\Microsoft\Web Platform Installer\installers\PHPManager\58698059E6E09CCF19706DBF8B1331AB51BCC662\PHPManagerForIIS-1.2.0-x64.msi
******* Action:
******* CommandLine: **********
MSI (c) (A4:94) [00:58:28:434]: Client-side and UI is none or basic: Running entire install …Run Code Online (Sandbox Code Playgroud) 我在 CentOS6.5 服务器上使用 GitLab Omnibus。
gitlab nginx 服务器监听 6543 端口(Apache 已经在使用 80 和 443)。
我想使用 Apache 作为反向代理来访问具有该地址的 GitLab: gitlab.example.com 而不是 example.com:6543
所以我添加了一个Apache Virtual Host,这里是配置:
<IfModule mod_ssl.c>
<VirtualHost *:443>
ServerAdmin admin@example.com
ServerName gitlab.example.com
ServerSignature Off
CustomLog /var/log/httpd/gitlab_access.log combined
ErrorLog /var/log/httpd/gitlab_error.log
ErrorLog syslog:local2
<IfModule mod_proxy.c>
ProxyVia On
ProxyRequests Off
ProxyPass / https://example.com:6543/
ProxyPassReverse / https://example.com:6543/
ProxyPreserveHost Off
<Proxy *>
Options FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Proxy>
</IfModule>
# SSL Config
SSLCertificateFile /etc/ssl/example.com/default.crt
SSLCertificateKeyFile /etc/ssl/example.com/default.key
SSLEngine on
SSLProtocol all …Run Code Online (Sandbox Code Playgroud) 我刚刚构建了一个 64 位 Centos 服务器,我正在尝试在其上安装 NGINX。使用 epel 7(测试版)repo 尝试安装时出现以下错误:
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirror.as29550.net
* epel: mirror.vorboss.net
* extras: centos.hyve.com
* updates: centos.mirroring.pulsant.co.uk
Resolving Dependencies
--> Running transaction check
---> Package nginx.x86_64 0:1.0.15-5.el6 will be installed
--> Processing Dependency: perl(:MODULE_COMPAT_5.10.1) for package: nginx-1.0.15-5.el6.x86_64
--> Processing Dependency: libpcre.so.0()(64bit) for package: nginx-1.0.15-5.el6.x86_64
--> Finished Dependency Resolution
Error: Package: nginx-1.0.15-5.el6.x86_64 (epel)
Requires: libpcre.so.0()(64bit)
Error: Package: nginx-1.0.15-5.el6.x86_64 (epel)
Requires: perl(:MODULE_COMPAT_5.10.1)
You could try using --skip-broken to work …Run Code Online (Sandbox Code Playgroud) 我有一个非常基本的 nginx 设置,可以重定向www.example.com到example.com,遵循最佳实践。它有效,并且在 Tor Firefox 浏览器中,访问http://www.idorecall.com/blog确实会将地址栏中的 URL 更新为http://idorecall.com/blog。
但这不会改变 Chrome、Firefox Portable、IE 和 Opera Portable 地址栏中的 URL。
这是修改后的defaultnginx 配置。除了 nginx.conf 之外,没有其他 nginx 配置文件。
server {
server_name www.idorecall.com;
return 301 $scheme://idorecall.com$request_uri;
}
server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/html;
index index.html index.htm index.nginx-debian.html;
server_name idorecall.com;
location / {
try_files $uri $uri/ =404;
}
location /blog {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header HOST $http_host;
proxy_pass http://127.0.0.1:2368;
}
}
Run Code Online (Sandbox Code Playgroud)
wget …
我在远程位置有多个网络,我希望能够通过 VPN 访问这些网络。每个网络的拓扑结构只是一个 NAT 路由器和一台运行 SSH 服务器的机器。路由器已转发 SSH 端口,因此所需要做的就是能够访问路由器的 IP。我已经配置了一个 OpenVPN 服务器,并在每个远程网络上设置了路由器来访问它。客户端 PC 也配置为访问 VPN,并且服务器也已配置为可以使用 VPN IP 地址访问各个路由器。
拓扑结构:

这一切都很好,只是客户端不知道路由器的 VPN IP 地址。目前,我必须查看 OpenVPN 状态日志,然后使用该 IP。我不想使用静态 IP,因为远程网络的数量将会增加。
所以,我的问题是,是否可以在 VPN 服务器上运行本地 DNS 服务器,并自动为连接的客户端更新它?
我看过几篇关于在 VPN 服务器上更新 resolv.conf 以及将 DNS 详细信息推送到客户端的文章,但不确定实际运行和更新 DNS 服务器的缺失部分。
服务器配置:
port 1194
proto udp
dev tun
ca ca.crt
cert cert.crt
key key.key # This file should be kept secret
dh dh2048.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
client-to-client
keepalive 10 120
cipher AES-256-CBC
comp-lzo
user nobody
group nogroup
persist-key …Run Code Online (Sandbox Code Playgroud) 我正在使用 Postfix,当我尝试向虚拟地址 (paradise@example.org) 发送电子邮件时,它无法找到用户:
Aug 7 11:55:32 example postfix/local[24435]: AE54C808E546: to=<paradise@example.org>, relay=local, delay=6.6, delays=4.8/0.47/0/1.4, dsn=5.1.1, status=bounced (unknown user: "paradise")
Run Code Online (Sandbox Code Playgroud)
我正在使用以下虚拟地图:
paradise@example.org horus
@example.org horus
Run Code Online (Sandbox Code Playgroud)
其中 horus 是我的(非 root)Unix 用户。如果我尝试通过执行以下操作来验证虚拟地址:
postmap -q paradise@example.org hash:/etc/postfix/virtual
Run Code Online (Sandbox Code Playgroud)
它返回我当前的用户:
horus
Run Code Online (Sandbox Code Playgroud)
正因为如此,我不知道为什么找不到天堂@example.org或天堂。
alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
append_dot_mydomain = no
biff = no
config_directory = /etc/postfix
home_mailbox = Maildir/
inet_interfaces = all
inet_protocols = ipv4
mailbox_size_limit = 0
milter_default_action = accept
milter_protocol = 2
mydestination = example.org,localhost
myhostname = example.org
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 …Run Code Online (Sandbox Code Playgroud) 这是一个关于 Google Cloud 服务中可用资源暂时短缺的规范问题。
我是 Google Cloud Compute Engine 的巴西用户有一段时间了,我设法使用它好几个月。不幸的是,在过去一个月左右的时间里,由于“区域没有足够的资源来满足请求”的问题,我一直在启动我的实例(上午 9 点左右)时遇到困难。
一开始,它发生了一两次,然后我就可以启动我的实例。但是现在即使经过几十次尝试也几乎不可能启动它!按照消息的建议,我尝试在southamerica-east1-and 中创建其他实例c(我的在 b 中)只是为了找出那里发生的相同问题。我从中得到的印象是,谷歌在南美的物理能力已经饱和,并且没有采取任何措施来增加它。
那么我能做些什么呢?我无法将我的服务器移到美国或其他地方,因为它对 ping 敏感(股票市场应用程序),并且作为仍在使用免费试用期的人,如果 Google 可以为我处理我可以处理的产品,我当然不会开始支付 GC不使用,需要数周或数月才能修复。