小编Mic*_*ton的帖子

我可以使用通配符吗是 puppet 包确保覆盖多个发布版本

使用 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 的规则。

我一直在搜索解决方案,但没有找到与这个特定问题有关的任何内容。

对相关示例的任何建议或参考将不胜感激。

puppet packages

5
推荐指数
1
解决办法
4389
查看次数

在具有 IPv6 和 FQDN 的不同服务器上运行多个服务

在过去十年中,NAT 允许我们做的事情之一是将物理服务拆分到不同的服务器上,同时隐藏在单个接口后面。

例如,我example.com192.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 和所有。

domain-name-system nat ipv6

5
推荐指数
1
解决办法
224
查看次数

当 SNMP 设备没有响应时,Zabbix 可以提醒我吗?

Zabbix 能够监控支持 SNMP 的设备,甚至可以在其 Web 界面中显示它们的状态:

SNMP 已启动
绿色图标表示 Zabbix 正在接收数据。

SNMP 已关闭
红色图标表示 Zabbix 没有接收数据。

但是,如果 SNMP 设备不可用,我找不到任何明显的方法让 Zabbix 通知我。

今天我发现我的一台服务器磁盘空间不足;磁盘正在被 SNMP 监控,但自 12 月 15 日以来 Zabbix 没有收到任何数据!一直以来它都显示这个红色图标,但我当时没有理由查看主机列表,因此我错过了它。直到今天服务器因磁盘空间不足而死机,我的手机在晚餐中响起......

在调查中我发现,当然,snmpd is stopped。我本来希望两个月前就收到通知!

发生这种情况时,Zabbix 不应该生成事件吗?Zabbix 手册没有提及它。而谷歌只想告诉我如何监控特定的 OID。当 SNMP 设备根本没有响应时,我如何得到通知?

显而易见的方法是创建一个触发器,尽管我不知道这个数据点可能有什么项目名称(同样,它不在手册中或从 Google 中明显可见)。

服务器是 Zabbix 2.0.9,我使用它的内置模板 SNMP 磁盘模板。

snmp zabbix

5
推荐指数
1
解决办法
9745
查看次数

网络服务器问题 | IIS 的 PHP 管理器

我正在使用带有 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)

iis php windows-server-2012

5
推荐指数
1
解决办法
6071
查看次数

Apache 作为 GitLab Omnibus 的反向代理

我在 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)

reverse-proxy apache-2.2 gitlab

5
推荐指数
0
解决办法
1464
查看次数

无法在 Centos 7(64 位)上使用 epel repo 安装 nginx

我刚刚构建了一个 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 centos

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

nginx 重定向强制更新浏览器中的 URL

我有一个非常基本的 nginx 设置,可以重定向www.example.comexample.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 …

nginx firefox google-chrome opera

5
推荐指数
1
解决办法
4787
查看次数

在 OpenVPN 服务器上设置自动 DNS 服务器

我在远程位置有多个网络,我希望能够通过 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)

domain-name-system vpn openvpn bind

5
推荐指数
1
解决办法
3289
查看次数

Postfix 忽略虚拟地图

我正在使用 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)

postfix

5
推荐指数
1
解决办法
1514
查看次数

Google Cloud 经常没有足够的资源

这是一个关于 Google Cloud 服务中可用资源暂时短缺的规范问题

我是 Google Cloud Compute Engine 的巴西用户有一段时间了,我设法使用它好几个月。不幸的是,在过去一个月左右的时间里,由于“区域没有足够的资源来满足请求”的问题,我一直在启动我的实例(上午 9 点左右)时遇到困难。

一开始,它发生了一两次,然后我就可以启动我的实例。但是现在即使经过几十次尝试也几乎不可能启动它!按照消息的建议,我尝试在southamerica-east1-and 中创建其他实例c(我的在 b 中)只是为了找出那里发生的相同问题。我从中得到的印象是,谷歌在南美的物理能力已经饱和,并且没有采取任何措施来增加它。

那么我能做些什么呢?我无法将我的服务器移到美国或其他地方,因为它对 ping 敏感(股票市场应用程序),并且作为仍在使用免费试用期的人,如果 Google 可以为我处理我可以处理的产品,我当然不会开始支付 GC不使用,需要数周或数月才能修复。

google-compute-engine

5
推荐指数
1
解决办法
2878
查看次数