服务器 Gind.cn

服务器问题集锦,包括 Linux(Ubuntu, Centos,Debian等)和Windows Server服务器

从一个CloudFormation堆栈获取信息以在另一个CloudFormation堆栈中使用

我正在尝试为AWS中的Web服务设置构buildpipe道。 计划是让服务在Auto Scale Group中运行,并使用Jenkins构build一个一次性的EC2实例,运行testing,并成功映像实例并将其传递给现有的Auto Scale Group。 为了创build所有必要的资源,我创build了两个CloudFormation模板,一个用于构buildAutoscale组和周围的资源,另一个用于构build一个可testing的实例。 我已经注意到这个问题:每个区域和每个EC2实例types有不同的基础图像。 这意味着,jenkins需要知道该地区和实例typesbuild立。 理想的解决scheme是select目标CloudFormation堆栈,并从那里拉取信息(区域,实例types等)。 这意味着如果我们对Auto Scale Group进行任何更改,它们将自动反映在Jenkins版本中。 如果我们创build了第二个组,我们可以复制Jenkins作业并更改一个参数,将它指向新的堆栈。 但是这似乎不是一个选项… 这些是我能想到的潜在解决scheme,但我并不特别喜欢它们中的任何一个: 在两个模板中硬编码这个信息 这与CF模板的想法背道而驰,因为我理想的是要保持这些东西的灵活性。 将信息发送给API,然后让Jenkins查找它 这是相当多的额外工作,因为我必须构build和维护一台机器来存储一些variables。 更不用说,我不确定是否可以通过脚本将信息输出到API,因此必须将其包装在另一个脚本中,才能从AWS CLI工具中获取信息。 分类最终的图像 我可以允许所有参数的灵活性,然后通过这些参数对最终图像进行分类。 然后我可以确保自动缩放组只加载具有正确参数的图像。 这将防止使用不正确的基本图像,但可能导致构build与错误的信息(如果我们改变一个,我们必须记得改变另一个)。 感觉就像我想做的事情不应该那么难,但我不能找出最好的办法。

Apache在日志中随机停止,没有错误

AWS上有一台稳定多年的服务器。 它在Ubuntu 12.04.5 LTS上运行Apache 2.2.22。 我经常在本月顶部运行安全更新。 最近,Apache在午夜左右停止了服务请求,有时在凌晨(中午2-4点)停止服务请求。 对我们来说这是一个低使用期,但我们仍然有一个稳定的请求stream。 我们的白天活动要高得多,白天也不会下降(至less到目前为止)。 到目前为止,它总是在大约10分钟左右到来,并在早上总是恢复正常。 由于问题的时间,我不怀疑它与其他几个线程build议的MaxClients。 我没有看到任何apache错误日志(我们有大约10个虚拟主机),也没有dmesg,也没有syslog。 实际上,我今天早上读了每个日志/ var / log。 在这个问题的时候,我什么也没有看到。 由于网站监视器的通知,我已经能够捕捉到它。 在那段时间里,我可以validationapache没有提供请求。 尽pipe我可以向服务器发送消息。 我怀疑networking问题,但是一个端口是好的,另一个是不好的。 我已经能够确认Apache不会在该服务器上从本地主机提供请求。 所以,这似乎不是硬件。 重新启动apache服务确实使网站备份,但只有几分钟。 当它停下来的时候,我就是活着的日志,而且什么都没有。 问题发生时,没有任何logging显示。 重新启动似乎总是修复它(至less24小时,有时甚至更多)。 亚马逊支持认为服务器没有问题。 我怀疑是Apache失败,服务重新启动不干净。 或者,在操作系统的内核/networking层面发生了一些事情。 而且,当CPU负载很低时,总是会发生这种情况。 内存看起来不错。 没有任何“通常的嫌疑犯”正在发生。 它只是静静地停止工作。 由于缺乏来自服务器的信息,我不知道还有什么要注意的。 我倾向于下周重build服务器,但真的想弄清楚这一点。 也许在问题中还有别的东西我应该看看。 此外,如果有任何日志,我“出现”获取更多的信息,让我知道。 目前我没有日志,我可以发布是有帮助的。 这整个事情对我来说似乎很疯狂,因为我习惯了以某种方式logging失败,特别是如果它是apache或内核(我们已经很长时间的朋友)。