服务器管理员

系统和网络管理员的问答

2
如何通过bash脚本进行优美的uwsgi重新加载?
我有一个正在执行bash脚本的django应用程序。我要求Nginx服务器重新启动,所以我可以/etc/init.d/nginx reload正常运行。我一直在使用restart uwsgiuwsgi,但是我需要进行优雅的重新加载而不是重新启动硬服务器。 我怎样才能做到这一点? 我目前正在reload uwsgi通过运行bash 函数subprocess.popen。似乎只是重新加载了调用子进程的进程,而不是uwsgi实例托管的所有站点。importing uwsgi运行uwsgi.reload似乎也只会影响调用过程。是否有通过python或bash的uwsgi开关允许重新启动所有uwsgi过程
9 python  uwsgi 


4
容错NFS?
可能是常见问题解答,但经过一段时间的搜索,我没有发现任何有用的信息: 我是否可以通过以下方式设置NFS:掩盖每个错误(例如服务器CPU,硬盘,高清控制器,网络适配器,网络电缆,电源),而无需立即进行干预? 对于部分问题,我只有答案:RAID,冗余电源,冗余网络适配器 如何解决NFS服务器的CPU故障,以便客户端透明地故障转移?

4
自动重新连接TCP隧道
我的两台计算机之间的网络连接不可靠:有时活动的TCP连接由于我无法控制的原因而掉线。我想在两台机器之间建立可靠的TCP连接。 如果网络可靠,我将运行ssh -L 1234:localhost:1234 remotehost,服务器侦听端口1234 remotehost,并将客户端指向localhost:1234。但是,如果ssh连接断开,则转发连接也将断开。如何安排自动恢复客户端和服务器之间的连接? 非解决方案: 这不适用于交互式应用程序,因此屏幕不适用。 这不只是自动地重新连接一个SSH隧道,拉autossh。我想继续使用相同的隧道式TCP连接,而不是开始新的连接。 原则上,VPN可以解决问题。但是,当我只想要一个TCP连接时,这似乎有些矫kill过正,而且我希望即使我在任一端都没有root权限,该解决方案也能起作用。 我对一个叫做rocks那样的程序记忆犹新,但这似乎已经从网络上消失了。我对双方都对Linux最感兴趣(尽管我希望这个级别的程序可以移植到其他unices上),但是如果您知道一个在QNX和VMS之间工作的程序,那就更好了。
9 ssh  unix  tcp  tunneling 

11
.htaccess无法正确重定向到www前缀的页面
我正在尝试不使用www重定向网址。到www.version(从example.com到www.example.com)。我用平常的 RewriteCond %{HTTP_HOST} ^example\.com [nc] RewriteRule (.*) http://www.example.com/$1 [R=301,L] 这适用于我所有其他项目。但是,在此特定站点上,它以重定向循环结尾。这是一个很奇怪的部分:我试图卷曲非www版本,以查看它使用了什么标题 curl --get http://example.com --dump-header domain.header > domain.html。头文件如下所示: HTTP/1.1 301 Moved Permanently Date: Mon, 06 Jun 2011 14:45:16 GMT Server: Apache/2.2.16 (Debian) Location: http://example.com/ Vary: Accept-Encoding Content-Length: 310 Content-Type: text/html; charset=iso-8859-1 但是,生成的HTML文件是这样的: <!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> <html><head> <title>301 Moved …

3
跨水平缩放Web服务器共享文件上载目录的最佳方法
我目前正在尝试为基于Drupal的Web应用程序指定一个可水平扩展的群集,该群集看起来类似于下面的彩色图表: 负载平衡器实现了粘性会话,因此,在为用户分配了要使用的服务器后,用户便保持状态。 每个应用程序服务器具有以下内容: 正面清漆 drupal 6在中间运行在灯堆上 内存缓存在后面 两台mysql数据库服务器位于共享IP上,它们位于具有DRBD和listenbeat的HA群集中,因此,丢失一台将不会破坏整个平台。 对于您不确定的几件事,我不确定。 文件应如何水平扩展? 我正在考虑使用NFS在每个应用程序服务器上安装共享文件目录,因此所有位置都可以使用一次上传的文件。我之所以想到NFS,是因为它已经存在了很长时间,并且我没有使用MogileFS或GlusterFS的经验,并且它是我们以前使用过的东西,因此我们对其更加熟悉。 是否有任何可遵循的准则来确定以这种方式通过NFS共享目录的服务器数量是多少? 应该如何在此处的共享文件存储中提供HA? 这里的一个问题是NFS服务器是单点故障。 我们已经在Mysql服务器上使用Heartbeat和DRBD,并且我希望将堆栈中涉及的技术数量保持在尽可能低的水平-如果我对文件使用相同的HA策略,将会有什么陷阱服务器呢? 另一种方法 这是面向内部网站的,当内部计划启动时,有限数量的用户偶尔会在短时间内非常密集地使用该网站。因此,这不需要像某些初创公司那样无限扩展。 鉴于 我们可以预期的流量上限 向文件服务器中添加HA,并设计一个可以水平扩展的设置,这样会带来相当大的复杂性 我也在考虑使两个Web服务器变得更强大,以便它们可以处理它们之间的峰值负载,并在cron作业中设置统一或rsync,以便: 它们的文件仍保持同步(粘性会话使用户保持与文件上传到的服务器相同) 丢失一个表示该站点仍在运行。 这听起来像是解决任何可能的NFS / DRBD HA复杂性难题的可行方法吗? 谢谢, C
9 nfs  lamp  scaling 

2
我的服务器设置了频繁使用的API
我很快将为即将启动的应用程序购买一堆服务器,但是我对自己的设置感到担心。我感谢收到的任何反馈。 我有一个应用程序,它将利用我编写的API。其他用户/开发人员也将使用此API。API服务器将接收请求并将其中继到工作服务器上。该API将仅保存一个mysql db请求,用于记录目的,身份验证和速率限制。 每个工作服务器执行不同的工作,并且在将来扩展时,我将添加更多工作服务器以进行工作。API配置文件将被编辑以记录新的工作服务器。工作服务器将进行一些处理,一些服务器将图像的路径保存到本地数据库,以供以后由API检索以在我的应用程序中查看,一些服务器将返回过程结果的字符串并将其保存到本地数据库。 此设置对您而言看起来有效吗?有没有更好的方法来进行重组?我应该考虑哪些问题?请参见下图,希望它有助于理解。

4
如何在Linux上增加终端的大小
我有一个48core的Linux机器。我想监视每个核心的cpu使用情况。但是,当我使用 top并按时1,会收到一条错误消息“ "Sorry, terminal is not big enough" 是否仍然存在,我可以增加终端窗口的大小”。我的笔记本电脑最多可以处理46条线。在腻子或Shell的ROWS变量中增加窗口大小没有帮助。
9 linux  terminal  top 

2
HP ProLiant系统准备/部署技术(阵列,BIOS,固件等)
我花了大量时间在HP ProLiant系统和Linux安装上。由于我从事的业务的性质,我无法同时部署大量相同的系统。另外,我的系统分布在多个位置。我的许多服务器都是相似的,但是安装突如其来,其间只有足够的时间来查看系统配置,处理器步进,固件版本和其他功能的变化。因此,即使我安装了一个相当快速的kickstart系统,它需要5到10分钟的时间,但我还是花费了多达45分钟的时间来配置服务器硬件。 1)。假设我在需要磁盘和物理组件的地方,我开始安装固件DVD和/或SmartStart来配置SmartArray逻辑驱动器和控制器设置。根据应用程序的不同,我需要对SmartArray的控制要比BIOS实用程序所允许的更好。固件更新很有用,因为服务器可能随附了较早的修订版。有时,我会在安装操作系统后运行固件更新。 2)。国际劳工组织的设置。需要设置ILO参数。更改管理员密码,安装ILO密钥,修改SNMP参数...我通常会在控制台上执行此操作,或者在DHCP列表中找到ILO并进行远程连接。 3)。我需要在管理的系统上进行特定的BIOS更改。例如,关闭超线程,设置电源配置文件,进入高级BIOS菜单以启用低延迟设置,减少ASR超时,设置时间... 鉴于上述注意事项,我如何简化此过程?所有这些东西都可以编写脚本吗?大型无头安装环境中的工程师如何做到这一点?更何况,您如何跟踪这些参数或强制进行某些更改?

8
虚拟化:来宾吗?
用“主”来宾运行虚拟机是否有意义, 并且在该主来宾中运行许多其他来宾? 有人测试过吗?可能吗 有更好的方法实现我的目标吗?(继续读) (我用谷歌搜索“来宾中的客人”,但一无所获) 我想做的事情:我想使用数据库和应用程序服务器来设置和测试各种虚拟网络,并测试不同的防火墙,DNS服务器,数据库服务器配置等。 我可以通过直接在主机计算机上运行guest虚拟机来执行此操作,但是随后可能需要修改主机上的网络配置(例如,配置dnsmasq吗?),具体取决于要测试的网络设置。我还需要单独开始每个客人。假设所有来宾都在主来宾中运行,那么我可以在该主来宾上配置网络,而我只需要启动和停止该主来宾并对其进行快照,即可隐式地启动,停止和快照其中运行的所有来宾。 (我会有很多主人,一次可能只有一个。) 我正在使用具有硬件虚拟化支持(AMD-V)的Ubuntu 11.4和KVM。 您认为来宾会从虚拟化中受益吗? 更新:我应该用Google搜索“嵌套虚拟化”而不是“来宾中的访客”。现在,我发现很多链接:-)例如,此示例实际上是将正在运行的VM从主机迁移到嵌套的VM主机: VMotion从物理ESX 4迁移到虚拟ESX 4 您感谢您提到“嵌套虚拟化”的问题:- ) 更新:从2008年开始,有关AMD处理器的性能信息:直到现在,当kvm虚拟化处理器时,来宾看到的cpu与主机处理器相似,但是没有虚拟化扩展。这意味着您无法在客户机中运行需要这些虚拟化扩展的管理程序(您仍可以运行不依赖于这些扩展的管理程序,例如VMware,但性能较低)。有了新补丁,虚拟化的cpu确实包括了虚拟化扩展。这意味着来宾可以运行虚拟机管理程序(包括kvm)并拥有自己的来宾。 (感谢“ wzzrd”) 更新:2011年以来有关英特尔处理器的性能信息:“在Ubuntu存储库中,当前版本的kvm中不支持使用intel vmx进行嵌套虚拟化。使用kvm的最新补丁程序是可能的,但仍在开发中”


4
一台Apache服务器上有多少个域?
我在一台Apache服务器上为我的客户托管约300个域。它们都没有太多流量,因此服务器负载不是问题。 从理论上讲,服务器上可以有多少个此类低流量域,但我担心,如果服务器上的域过多,用于检查每个传入请求的大量域会减慢Apache的运行速度下。 有一个经验法则,Apache配置可以使用多长时间,并且可以处理多少个不同的域?500可以吗?5000? 澄清:我不是在问服务器可以处理多少流量。我知道这台特定的服务器至少可以处理两倍于当前流量的数据。我想知道域的数量是否是关键因素。

5
您会在新服务器上运行RedHat 4.4吗?
我有一个托管公司,可以为我安装一个新服务器,但是我注意到它正在运行RedHat 4.4,我担心它会成为旧版本。当我询问运行旧版本时,他们不愿意升级操作系统。 我想知道我是否对运行旧版本的RedHat抱有幻想,或者我是否正确要求安装RedHat 6以解决改进,安全性和错误等问题。 编辑:为避免混淆,这是完整版本: 猫/ etc / redhat-release 红帽企业Linux ES版本4(Nahant更新4)
9 redhat 

3
为什么“ chroot”从未在Mac OS X上使用?
我使用Mac已有25年了,自OS X 10.0起使用“ UNIX” ..但是我从未真正考虑过chroot,也从未真正需要或不想... 这是一个简单的问题,但是……在什么情况下,人们会选择在Mac上使用“ chroot”?它确实是BSD时代的内置函数,但我从未听说过它正在使用...该功能是否是另一种无需使用chroot的命令行或系统级工具的一部分?如果是这样,等效功能是什么?如果不是,为什么它似乎从未被使用,引用或需要?

2
如何在办公室标记网络端口?
我们有一个新的办公室,每个办公室和每个隔间都对以太网进行了细分。电工没有标记配线架上的端口或墙壁端口,因此我不知道配线架上的端口1在办公室的位置。 我听说有人使用音频发生器找出电缆的位置,但是我不确定这意味着什么。我还考虑在交换机上查找ARP条目,以找出哪个端口获取了什么MAC地址,然后将其与办公室中所有PC上的MAC地址列表进行交叉引用。不过,这听起来并不可靠。 有没有一种快速简便的方法来标记这些端口?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.