问题标签 [glusterfs]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 在另一台服务器上执行一个 php 文件
我正在使用 Amazon EC2 托管一个网站,目的是拥有尽可能小的实例以节省成本等。
我网站的一部分有一个 php 函数,可以解压缩一个充满 mp3 的存档,然后重新压缩它们并将其全部移动到 Amazon S3 存储中。
在我们正在运行的微型 EC2 实例上,该特定功能非常消耗资源。因此,我们设置了另一台服务器(运行 Gluster),仅用于存储临时文件和处理这些临时文件。
我现在遇到的问题是如何将前面提到的功能转移到“处理”服务器并触发它从“主”服务器运行?
我想要类似下面的东西:
在主服务器上发布帖子 -> 向处理服务器发送命令以执行解压缩等 -> 处理 -> 将任何所需信息从处理服务器返回到主服务器
希望这一切都说得通。不幸的是,我的PHP知识很基础,而我的服务器知识则更少……但我愿意学习;)
amazon-web-services - 让人们在 AWS 负载平衡环境中上传文件的最佳方式是什么?
假设您在 AWS 中运行 instance1、instance2 和 instance3。
它们都在运行 Apache,您运行的 Web 应用程序需要允许用户上传图像,这在许多项目中都是如此。
此外,当您显示图像时,您需要将其裁剪为正确的大小,因此您基本上需要确保所有实例始终可以访问相同的文件。
假设一个用户将一张图片上传到instance1,另一个用户正在访问一个页面,其中相同的图像以100x100 大小显示,他点击了instance2。另一个用户试图在 instance3 上查看 300x300 大小的相同图像。以及许多其他不易预测的尺寸。
所以你基本上需要一个分布式文件系统,我使用的是 Gluster FS。因此,所有实例都可以访问相同的文件,当请求查看图像时,我有一个 PHP 脚本来检查图像是否已经调整到给定的尺寸,如果是,它将显示它们,如果不是,它将调整大小它然后再次显示。
Gluster FS 运行非常顺利,我对此非常满意,但我认为我正在重新发明轮子,AWS 应该为此提供某种解决方案。使用 top 命令我可以看到 glusterfs 总是在使用我的一些 CPU。
我还使用 CloutFront 缓存我的调整大小脚本的输出,这在很大程度上减少了服务器负载,但 Gluster FS 的运行成本仍然很高。
你可以在没有 Gluster FS 的情况下使用 rsync 和某种 cron 作业来做同样的事情,但这是很多工作而且不是很可靠,因为你需要知道什么时候触发 rsyncing 过程,你仍然不会得到很大的好处Gluster FS 提供的。我也尝试过 s3fs,我只想说这绝对是一场噩梦。
与 Gluster FS 相比,NFS 驱动器似乎也非常原始,我认为它们使用 UDP,因此它们将您的数据视为无关紧要。
那么做这样的事情的最好方法是什么?我试图找到 AWS 提供的分布式文件系统,因为我认为许多开发人员会遇到相同或相似的问题,但没有任何问题。
您可能会说只是上传到 s3,但 s3 对我没有帮助,我需要知道图像是否已经调整大小,然后调整大小并服务或只是服务,所以我需要一些我可以编写脚本的东西。
你也可能会说,你为什么不先调整所有图像的大小,然后将它们全部上传到s3,我不能这样做的原因是
- 大约有 100 万张图像和 100 种尺寸,所以我们正在寻找大量要转换的文件
- 可能每天都会添加新的尺寸,因此先调整尺寸的策略不起作用
glusterfs - 在 gluster 坐骑中获得大量治疗失败的条目是否正常?
我跑:
我得到了一大堆条目。这是正常的吗?还有其他人在他们的 glusterfs 实施中看到了这一点吗?如果是这样,你如何解决这个问题?
cluster-computing - Gluster 共享挂载点(如单独挂载)的奇怪问题。
我有两个节点,为了实验,我安装了 glusterfs 并创建了卷并成功安装在自己的节点上,但是如果我在 node1 中创建文件,它不会显示在 node2 中,看起来它们的行为就像它们是分开的。
节点1
节点2
卷信息拆分布赖恩
测试
节点1
node2(文件不存在,而它们是共享挂载)
我错过了什么??
glusterfs - Glusterfs 拒绝挂载
我正在使用 GlusterFS 3.3.2。两台服务器,每台一块。卷是“ARCHIVE80”
我可以在 Server2 上挂载卷;如果我触摸一个新文件,它会出现在 Server1 的砖块内。
但是,如果我尝试在 Server1 上安装卷,则会出现错误:
日志给出:
为什么我可以安装在一台服务器上而不是另一台服务器上???
lsof - glustershd.log 删除的打开文件:我可以在不重新启动 gluster 服务的情况下将文件路径设置为新位置吗
我是 gluster 的新用户。并且它的日志文件在磁盘上占用了太多的大小。我使用“#gluster volume log rotate VolumeName”来旋转日志,但它对文件 glustershd.log 没有影响。我复制了该文件并从 /var/log/glusterfs/ 中删除了原始日志文件,并在该目录中创建了一个同名的新文件(我的运气不好......),而不是我意识到进程仍然写入已删除的打开文件。(对于其他用户,我现在意识到最好的方法是截断日志文件而不是移动和删除)
我可以在打开的文件中看到该文件,但标记为已删除。 24599595 0 l-wx------ 1 root root 64 Dec 30 20:23 /proc/2965/fd/4 -> /var/log/glusterfs/glustershd.log\(已删除)
我的问题是:我可以重定向 gluster 进程以使用 /var/log/glusterfs/glustershd.log 中的文件而不重新启动服务吗?????或者我可以将删除的打开文件移动到其原始位置。
如果我重新启动 gluster 服务会发生什么,我的实时服务器上有实时数据库。
我用分布式复制配置了 gluster。
两台服务器:
1 卷 4 块砖
streaming - 将数据推送到分布式文件系统的最佳方式 - 流式传输?
我正在编写一个抽象层,它将抽象(尚未决定)分布式文件系统的后端实现。
要使用的文件系统的可能选择是 HDFS、GlusterFS、CEPH ...。
前端将是 SOAP/REST 服务。
要实现的抽象层将从网络服务接收数据流并将其发送到后端分布式文件系统。
文件大小将为多个 GB。
我的问题
将数据推送到分布式文件系统的最佳方法是什么 - 如果我们需要最大吞吐量、不丢失数据并利用后端文件系统的分布式特性
hadoop - 我在哪里可以获得 Glusterfs-hadoop 插件 jar/rpm 文件?
我在哪里可以获得 Glusterfs-hadoop 插件 jar/rpm 文件,用于 Hadoop-1.2.1?我无法在 github.com/gluster/glusterfs-hadoop 编译源代码。编译中断。
任何人都可以建议直接下载 jar 或 rpm 吗?
谢谢
perl - 遇到许多 Unix 提示时自动输入 `y`
我必须使用 Perl 自动化一些与 GlusterFS 的即时交互。我做了一个delete()
自动删除gluster音量的模块;但是,它要求(y/n)
每个卷。我怎样才能提前提供这个答案?我下面的脚本在执行期间似乎也挂起。