有没有人开发或知道任何第三方工具(或常用工具的非明显用途)来帮助糟糕的系统管理员确定通过 Varnish 的请求发生了什么?虽然varnishstat, varnishtop, 并varnishhist给我非常高级(或低级)的概述,但我正在寻找可以告诉我以下内容的内容:
虚拟机的良好命名约定或方案是什么?
我们正在总部构建一个虚拟化硬件服务器集群,并在我们的每个州办事处构建一个类似的集群(每个州一个集群)。
我们需要命名虚拟化硬件服务器,这是比较容易的部分,但我们还需要为将在虚拟化硬件上运行的虚拟机 (VM) 提出一个命名约定。
命名约定需要具有足够的描述性,以便管理员和开发人员轻松识别 VM 的用途,但又要足够短,以免在键盘上产生重复性劳损。
为了让事情变得更有趣,我们现有的硬件命名约定在企业的功能区域之间有所不同。内部一致,但不同。有不同的文化,例如 AIX、HP-UX、Linux、Windows。
我最初的想法是构建一个 DNS 或 Active Directory 列表,每台机器有两个名称:一个名称在整个企业中是唯一的,并且具有相当的描述性;另一个名称是功能区域的本地名称。基本上,一个企业 VM 名称空间和一个功能区 VM 名称空间。企业 VM 名称可以很长,因为主要是机器使用它们来跨企业映射功能区 VM 名称。功能区名称需要简短明了,以便开发人员可以在头脑中轻松管理它们。
所以,我正在尝试实现每用户路由,以便我能够通过 VPN 路由所有 btpd 种子流量。不幸的是,btpd 目前不允许您绑定到特定的 IP 地址。:(
我决定尝试遵循本指南。
基本上,您标记任何数据包,然后对数据包执行 SNAT 或 DNAT 或 MASQUERADE,然后使用 ip 规则强制特定路由表。
最后,我的设置:
(To my router)
eth1 Link encap:Ethernet HWaddr 00:0a:cd:18:8a:ae
inet addr:172.29.5.10 Bcast:172.29.5.255 Mask:255.255.255.0
inet6 addr: fe80::20a:cdff:fe18:8aae/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:2073338425 errors:0 dropped:0 overruns:0 frame:0
TX packets:2031270514 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:3014149031 (2.8 GiB) TX bytes:1897259705 (1.7 GiB)
Interrupt:17 Base address:0x6c00
(my VPN)
tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
inet addr:10.1.1.4 P-t-P:10.1.1.4 Mask:255.255.255.0
UP POINTOPOINT …Run Code Online (Sandbox Code Playgroud) 我在带有 Erlang R15B01 的 CentOS 5.5 机器上运行 RabiitMQ。RabbitMQ 一直在运行,直到我升级到最新版本 (2.8.4)。
当我使用以下命令启动 RabbitMQ 时:
/etc/init.d/rabbitmq start
Run Code Online (Sandbox Code Playgroud)
在 RabbitMQ startup_log 我看到以下内容:
{error_logger,{{2012,7,11},{11,44,15}},"Cookie file /var/lib/rabbitmq/.erlang.cookie mus be accessible by owner only",[]}
Run Code Online (Sandbox Code Playgroud)
Erlang cookie 具有以下权限:
-rwxr-xr-x 1 rabbitmq rabbitmq 17 Jul 10 12:20 .erlang.cookie
Run Code Online (Sandbox Code Playgroud)
有没有其他人经历过这种情况?或者有人有我可以遵循的一些故障排除步骤吗?
非常感谢,Risteard
我有点被一个问题困扰了好几天我都在努力解决这个问题。
这是我在做什么:
Veewee、Vagrant 和 VirtualBox 都在 MacOS X 10.7.4 上运行。vagrant box 本身是 CentOS 6.2。
这在很长一段时间内运行良好,直到几天前我重新创建 VirtualBox 映像。在我的 puppet 运行期间安装 rabbitmq-plugins 期间,我现在收到以下错误:
/Stage[main]/Rabbitmq/Exec[rabbitmq-plugins]/returns: erlexec: HOME must be set
Run Code Online (Sandbox Code Playgroud)
我的 RabbitMQ puppet 配置可以在该项目的GitHub 存储库中找到,但这里是最重要的部分:
$version = "2.8.7"
$url = "http://www.rabbitmq.com/releases/rabbitmq-server/v${version}/rabbitmq-server-${version}-1.noarch.rpm"
package{"erlang":
ensure => "present",
}
package{"rabbitmq-server":
provider => "rpm",
source => $url,
require => Package["erlang"]
}
exec{"rabbitmq-plugins":
path => "/usr/bin:/usr/sbin:/bin",
command => "rabbitmq-plugins …Run Code Online (Sandbox Code Playgroud) 我有一个脚本每隔几分钟检查一次我的公共 IP 地址。
问题是ISP有时会给我缓存的页面(我知道,我已经使用了wget中的所有相关参数,ISP是由一群无能的某人组成的,他们显然制作了自己的超高效缓存服务器)或我自己的路由器制作的错误页面。
结果,当 wget 应该保存我的 IP 地址时,它却保存了错误页面。
编辑:
我用什么来检测IP地址的变化
http://paste.debian.net/292602/
我在 AWS Elastic Beanstalk 配置中使用“T2 Unlimited”实例。
默认实例终止策略(用于缩小规模时)首先终止最旧的实例。这很糟糕,因为最旧的实例最有可能积累 CPU 积分。我想将实例终止策略更改为“最新的优先”。
我试过这个:
option_settings:
aws:autoscaling:asg:
TerminationPolicies: [
"NewestInstance"
]
Run Code Online (Sandbox Code Playgroud)
但出现错误:
Invalid option specification (Namespace: 'aws:autoscaling:asg', OptionName: 'TerminationPolicies'): Unknown configuration setting.
Run Code Online (Sandbox Code Playgroud)
这并不奇怪,因为此选项未列为有效选项。
那么,当 Beanstalk 为环境创建新的自动缩放组时,如何才能自动将终止策略设置为最新的优先呢?
也许这是不必要的,因为自动缩放组仅在创建环境时创建?
我有一个从这个 repo克隆的 LEMP 堆栈的 docker 设置。
在运行窗口 10 的开发机器上一切正常,但是当我将图像推送到 docker hub 并将其拉到我的 VPS 上时,无论我做什么,我总是收到此错误:
[emerg] 1#1: host not found in upstream "php-fpm:9000" in /etc/nginx/conf.d/upstream.conf:1
Run Code Online (Sandbox Code Playgroud)
此错误来自两个文件。
这是代码:
RUN echo "upstream php-upstream { server ${PHP_UPSTREAM_CONTAINER}:${PHP_UPSTREAM_PORT}; }" > /etc/nginx/conf.d/upstream.conf \
&& rm /etc/nginx/conf.d/default.conf
Run Code Online (Sandbox Code Playgroud)
第二个 来自这个 Nginx default.conf 文件
这是代码:
location ~ \.php$ {
...
fastcgi_pass php-upstream;
...
}
Run Code Online (Sandbox Code Playgroud)
我说这两个文件是 b/c 其他地方没有引用 php-upstream 的原因。
我已经尝试了添加/删除主机、添加depends_on、更改 nginx、php 版本、禁用 selinux 的所有可能组合,但它不起作用。我总是在生产中遇到相同的错误,但在本地服务器上一切正常。
在安装使用单个用户与单个数据库(例如 MySQL,但这也适用于其他 RDBMS)对话的 Web 应用程序时,您通常会遇到如下事件序列:
CREATE DATABASE wordpress CHARACTER SET utf8;
GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress'@'localhost' IDENTIFIED BY 'hunter2';
Run Code Online (Sandbox Code Playgroud)
一些指南建议对数据库名称使用不同的用户名,而其他指南则建议使用不同的名称,例如“appuser”代表用户,“app”代表数据库名称。
使用同名有什么明显的技术缺点吗?这样做有没有可能造成混淆的地方?
编辑:我知道这是有问题的安全做法,您应该将您的数据库命名为 fhqwhgads和您的用户flobadob;然而,(a)默默无闻是一个有问题的工具,(b)这是每个 webapp 在他们的文档中给出的例子。