我的 drupal 网站在 Amazon EC2 云上运行。我的实例使用 S3 存储动态文件。但我意识到 S3 太慢,可能会导致问题。我想使用 glusterfs 代替 S3。
使用 glusterfs;
- 我应该使用哪个 Linux AMI?(我尝试在 Amazon Linux AMI 上安装它,但失败了)
- 当我创建 EBS 实例时,我应该添加额外的 EBS 卷还是实例的根 EBS 卷就足够了?(是否可以将根 EBS 卷用作 gluster?)
- 将 EBS 卷添加到同一实例以在 gluster 池中使用是否明智,或者我应该创建一个新实例来添加额外的存储?
亲切的问候...
答案1
我在几个 Amazon Linux AMI 实例上运行了 GlusterFS。不过,需要对他们下载的 yum .repo 文件进行一些调整。我使用一个单独的卷,挂载为 /dev/sdf
关于添加额外的砖块还是额外的实例,两者都是有效的解决方案,这取决于你设置的架构。更多的服务器意味着更多的带宽,但你需要为额外的实例付费。这里有一篇关于 AWS 和 GlusterFS 的很好的文章: https://s3.amazonaws.com/aws001/guided_trek/Performance_in_a_Gluster_Systemv6F.pdf
以下是安装 glusterfs 服务器的步骤:
#installing gluster
sudo su -
#install xfs tools
yum install -y xfsprogs
#install glusterfs repo
wget -P /etc/yum.repos.d http://download.gluster.org/pub/gluster/glusterfs/LATEST/EPEL.repo/glusterfs-epel.repo
#fix it for amazon linux
sed -i 's/$releasever/6/g' /etc/yum.repos.d/glusterfs-epel.repo
#create a new primary partition of the whole volume - enter n,p,1,enter,enter
fdisk /dev/sdf
#format new partion
mkfs.xfs -i size=512 /dev/sdf1
#setup mount point
mkdir -p /export/brick1
#setup fstab for brick
echo "/dev/sdf1 /export/brick1 xfs defaults 1 2" >> /etc/fstab
#mount
mount -a
#install glusterfs
yum install -y glusterfs{-fuse,-server}
#start glusterfs
service glusterd start
#turn on auto-start
chkconfig glusterd on
#peer with other servers if necessary
#gluster peer probe hostname2.example.com
#setup the volume
gluster volume create media-volume hostname.example.com:/export/brick1
gluster volume start media-volume
gluster volume info
客户端安装:
##CLIENT INSTALL
#installing gluster
sudo su -
#install glusterfs repo
wget -P /etc/yum.repos.d http://download.gluster.org/pub/gluster/glusterfs/LATEST/EPEL.repo/glusterfs-epel.repo
#fix it for amazon linux
sed -i 's/$releasever/6/g' /etc/yum.repos.d/glusterfs-epel.repo
#install glusterfs
yum install -y glusterfs-fuse
#setup fstab
echo "hostname.example.com:/media-volume /mnt/glusterfs glusterfs defaults 0 0" >> /etc/fstab
#mount
mkdir -p /mnt/glusterfs
mount -a
答案2
我已经在 AWS 上的 Ubuntu AMI 中使用了 GlusterFS。
以下是关于在 2 个节点上设置 Gluster 的博客文章: http://www.jamescoyle.net/how-to/435-setup-glusterfs-with-a-replicated-volume-over-2-nodes
单个服务器对于单个网站来说已经足够了,但是添加新服务器将为您提供更多带宽,仅用于提供文件服务。与本地存储相比,这会导致性能下降。
您可以在根卷上使用 GlusterFS,但是我建议将根分区保持非常小并添加额外的 EBS 卷以满足您的 GlusterFS 要求。