我在 IIS 上部署了 WCF 服务,并使用 SQL Server 2008 作为后端。
我的问题是:如何在 IIS 和 SQL Server 上创建集群(负载平衡/故障转移)以及在执行此操作之前需要记住哪些事项?(例如,我是否必须将会话从内存中移动到 SQL Server 等)
另外,如何确保两个SQL服务器始终拥有镜像数据,并且两个SQL服务器是否实时共享锁(行、页、表)信息?
这是我第一次谈这个。这就是所谓的网络农业吗?
我有一个大约 50 个 ubuntu 节点的集群,这些节点目前正在运行特立独行的版本。我想将它们升级到 oneiric,但我在选择合适的工具时遇到了困难。
我知道 ubuntu 有“无人值守升级”实用程序,但它仅用于安全升级,不能切换整个版本。有什么类似的可以吗?
现在看来,唯一的选择是使用像 fabric/pssh/capistrano 这样的东西,并让它在每台服务器上运行“do-release-upgrade”。但是“do-release-upgrade”是交互式的,在升级过程中需要用户的一些输入。“do-release-upgrade”工具似乎没有任何 --unattended 参数。
在这样的情况下你会使用什么样的策略?
谢谢!
我安装了一个 SQL Server 2008 R2 集群,我发现资源组“可用存储”显示“离线”状态。这是什么意思?好像不能上网了 我尝试使用该cluster resource命令,它显示该组中似乎没有资源。为什么?
谢谢。
我在不同的地方(例如,这里和这里)读到,NFS 的 I/O 性能无法扩展,而 Lustre 可以扩展,而且 Lustre 一般可以提供更好的 I/O 速率。
两者之间似乎存在各种架构差异,但我无法确定到底是什么让 Lustre 在速度或可扩展性方面有所提升。我想我的问题有些概念性,但是与 NFS 或允许 Lustre 扩展并提供更快 I/O 速率的功能相比,关键区别是什么?
我需要在 2.6.32 linux 内核上提供具有静态加密功能的高度可用的 MySQL 数据库。“高可用”部分并不难,但“静态加密”在与 HA 结合使用时被证明是一个挑战。
关键问题在于安装加密存储。在我们所有其他静态加密系统上,有一个命令需要由人工运行,然后提示输入加密密钥。当涉及到服务必须自动启动的集群安排时,这个模型有一个相当明显的缺陷。
我目前不知道如何在 HA 环境中提供静态加密,而不是在同一系统上存储密钥密码。
我可以看到两种可能的情况,其中任何一种都适用于我的环境,但我不确定使它们起作用的细节。或者即使有可能。
通过这种方式,运行节点可以访问 CLVM 卷,因此它们可以在集群管理器告知时启动服务。节点的重新启动仍然需要人工,并且密码短语永远不会保存在磁盘上的任何地方。
与 CLVM 设置一样,节点在了解可能共享的存储之前不会加入集群。
问题是,我不确定上述任何一种方式是否有效。两者都假设可以在加密卷(例如pvcreate /dev/mapper/cryptmysql)之上分层 LVM PV 。这可能是不可能的。
我找不到任何文章来回答这个问题,所以我最好的办法是在这里发布:
场景我们在生产环境中有 2 个应用程序服务器托管一个 PHP 网站,我希望在这两个文件夹之间同步一些文件夹,同样为开发环境设置没有问题,我已经按照 URL“ http:/ ”中的所有说明进行操作/www.cloudedify.com/synchronising-files-in-cloud-with-csync2/ ”,我似乎仍然有相同的结果,出于故障排除目的,两个盒子上的防火墙都已禁用:
配置文件:cysnc2.cfg
nossl * *;
group production {
host server1;
host server2;
key /etc/csync-production-group.key;
include /etc/httpd/sites-available;
include /xxxxxx/public_html/files
include /xxxxxxx/magento/media/catalog/product
include /xxxxxxx/magento/media/brands
exclude *.log;
exclude /xxxx/public_html/file/cache;
exclude /xxxxx/public_html/magento/var/cache;
exclude /xxxx/public_html/logs;
exclude /xxxxx/public_html/magento/var/log;
backup-directory /data/sync-conflicts/;
backup-generations 2;
auto younger;
}
Run Code Online (Sandbox Code Playgroud)
/etc/xinetd.d/csync2 csync2.cfg
service csync2
{
disable = no
flags = REUSE
socket_type = stream
wait = no
user = root
group = root
server = /usr/sbin/csync2
server_args = -i …Run Code Online (Sandbox Code Playgroud) 我已经用 OCFS2 替换了在双主模式下运行的死节点。所有步骤都有效:
/proc/drbd
version: 8.3.13 (api:88/proto:86-96)
GIT-hash: 83ca112086600faacab2f157bc5a9324f7bd7f77 build by mockbuild@builder10.centos.org, 2012-05-07 11:56:36
1: cs:Connected ro:Primary/Primary ds:UpToDate/UpToDate C r-----
ns:81 nr:407832 dw:106657970 dr:266340 al:179 bm:6551 lo:0 pe:0 ua:0 ap:0 ep:1 wo:b oos:0
Run Code Online (Sandbox Code Playgroud)
直到我尝试挂载卷:
mount -t ocfs2 /dev/drbd1 /data/webroot/
mount.ocfs2: Transport endpoint is not connected while mounting /dev/drbd1 on /data/webroot/. Check 'dmesg' for more information on this error.
Run Code Online (Sandbox Code Playgroud)
/var/log/kern.log
kernel: (o2net,11427,1):o2net_connect_expired:1664 ERROR: no connection established with node 0 after 30.0 seconds, giving up and returning errors.
kernel: (mount.ocfs2,12037,1):dlm_request_join:1036 ERROR: status …Run Code Online (Sandbox Code Playgroud) 这是场景:
要求:
迄今为止的发现,
如本文档所述,可以使用共享磁盘来存储数据。但它也说“另一个问题是备用服务器不应该在主服务器运行时访问共享存储”。这意味着所有服务器(主服务器除外)都未使用,这对我们来说几乎是不可接受的。
由于我们使用的是共享磁盘,因此应该没有复制。在本文档中发现某些配置(原始和主/从模式)已经足够好了。但另一个问题是它们可能会导致上述问题。
问题:
注意(对于那些有兴趣尽可能多地结束问题的人)-它发生在我之前。有人说我正在寻找基于意见的答案。事实上我不是。我正在寻找的是技术名称或某种关键字,无论如何。这样我就可以通过使用它们来搜索更多信息。有时您需要知道一些关键字来搜索和查找信息。
提前致谢。
我有几台带有本地 SATA/SAS RAID 阵列的服务器。我想在那里运行具有某种程度的自动故障转移的虚拟机 - 以 1 分钟的间隔将虚拟机同步到辅助节点,并至少在主节点死亡时自动启动。
我已经在另一台机器上创建了带有文件共享见证的故障转移集群。在故障转移管理器中,我无法添加任何磁盘,显示“没有合适的磁盘”。我尝试通过 MS iSCSI Target 添加虚拟 iSCSI 磁盘,但它也没有出现。如果没有共享存储,则无法启用 Hyper-V 副本代理。
如何使用 Hyper-V 上的当前硬件实现故障转移?如果没有,是否还有其他虚拟化平台可以满足我的需求?根据我对 VMWare 的搜索,我需要 HA + vSAN,这非常昂贵,Google 的 Ganeti 不能很好地与 Windows 客户机配合使用。
我熟悉配置 Linux 服务器以符合PCI-DSS 3.2 的一些更常见的方法,至少符合SAQ A的要求。一个常见的问题是要求 8.5,它要求:
通用用户 ID 和帐户被禁用或删除
这包括 root 用户,显然不能被禁用,因此需要“补偿控制”(在 PCI-DSS 的术语中)。一个常见的配方是以下的一些变体:
ssh才能使用 SSH 密钥;sudo获取root;pam_loginuid一旦用户有root,安装记录登录用户ID;和auditd以记录 root 操作和登录用户 ID。但是,如果我今天要处理,它不是我要保护的单一机器:它是一个小型集群(目前有 10 台机器),并且能够在机器之间ssh(和scp文件)进行(和文件)真的非常有用。作为非 root 用户必须这样做将是一个真正的痛苦:几乎总是你需要的文件只能被 root 读取,并且需要放在一些只有 root 可以写入的地方。
我想要做的是允许ssh在机器之间作为 root,使用服务器上存在的 SSH 密钥。这在块中使用命令很容易。我不太担心允许破坏一台机器的人控制整个集群的安全隐患:这些机器非常相似,如果他们设法破坏一台机器,他们可能可以使用相同的过程来访问其余的./etc/ssh/sshd_configPermitRootLoginMatch Address
但是,如果我这样做,我将失去跟踪谁在运行什么命令的能力,因为当我ssh到另一台机器时,没有登录 UID 不再附加到进程。PCI-DSS 中的补偿控制需要“满足原始 PCI DSS 要求的意图和严格性”,并且要求 8.5 的意图被声明为使“跟踪系统访问和活动到个人”成为可能。在不保留登录 UID 的情况下,我们不再为允许 root 用户存在提供补偿控制。 …