想要搭建一个家用NAS存储服务器,有什么好方案?

想要搭建一个家用NAS存储服务器,有什么好方案?,第1张

存储空间不用说了,这是必须的。

1跨平台文件共享,还有移动终端的访问,比如:windows,mac,安卓和ios。这是为了方便文件读取和分享,如果不支持跨平台的话毕竟有点不方便。

2远程访问,相当于个人的云存储主机,在外面通过3g或者网络可以访问到家里的nas,进行文件的上传,下载,以及管理。基本上满足这几个要求,就可以被称为最基本的家用nas了。想达到要求也很简单,家里的网络支持,一台路由器,一台电脑。需要的软件:freenas(网上都有下,免费的nas系统)这样组建nas功能很少,而且功耗大。后期维护成本高。如果要长期使用的话,成本不亚于买一台成品nas。首先从维护难度来讲NAS其实也是一台继承CPU的Linux的电脑这句话没错,但是NAS的linux *** 作系统是嵌入在DOM盘里,所以无论从稳定性和防病毒性来说都是绝佳的,还有NAS采用的Linux系统是瘦系统,也就是说它剔除了用不到的功能来保证系统稳定性。如果作为数据存储的话,不需要定期升级与维护,简单设定后就可以使用,而且NAS也自带RAID功能,可以保证数据安全,而且数据备份功能做得非常完善,无论是近端备份(PC机备份至NAS)还是远端备份(备份至远端服务器或NAS),都可以通过非常简单的设定就可以完成,非常易于维护,即使不太懂计算机也可以完成维护。数据安全非常重要,访问权限控制之类的NAS也做得非常好。成品NAS基本上是免维护的。而且现在威联通的nas功能很强大,例如,通过QNAPHDStation,可以让威联通nas成为令人惊喜的多媒体播放器。安装免费的HDStation,并通过HDMI将NAS连接至大屏幕电视,就可以轻松拥有绝佳视觉体验,享受众多影片、音乐和照片,通过大屏幕上网,利用手机或平板电脑

        大数据技术主要是要解决大规模数据的计算处理问题,但是我们要想对数据进行计算,首先要解决的其实是大规模数据的存储问题。

         如果一个文件的大小超过了一张磁盘的大小,你该如何存储? 单机时代,主要的解决方案是 RAID ;分布式时代,主要解决方案是 分布式文件系统 。

           其实不论是在 RAID 还是 分布式文件系统 ,大规模数据存储都需要解决几个核心问题,这些问题都是什么呢?总结一下,主要有以下三个方面。       

        1 数据存储容量的问题。 既然大数据要解决的是数以 PB 计的数据计算问题,而一般的服务器磁盘容量通常 1~2TB,那么如何存储这么大规模的数据呢?

        2 数据读写速度的问题。 一般磁盘的连续读写速度为几十 MB,以这样的速度,几十 PB 的数据恐怕要读写到天荒地老。

        3 数据可靠性的问题。 磁盘大约是计算机设备中最易损坏的硬件了,通常情况一块磁盘使用寿命大概是一年,如果磁盘损坏了,数据怎么办?

        RAID(独立磁盘冗余阵列)技术是将多块普通磁盘组成一个阵列,共同对外提供服务。主要是为了改善磁盘的存储容量、读写速度,增强磁盘的可用性和容错能力。目前服务器级别的计算机都支持插入多块磁盘,通过使用 RAID 技术,实现数据在多块磁盘上的并发读写和数据备份。

        常用 RAID 技术有图中下面这几种,RAID0,RAID1,RAID10,RAID5, RAID6。
           首先,我们先假设服务器有 N 块磁盘。

            RAID 0  是数据在从内存缓冲区写入磁盘时,根据磁盘数量将数据分成 N 份,这些数据同时并发写入 N 块磁盘,使得数据整体写入速度是一块磁盘的 N 倍;读取的时候也一样,因此 RAID 0 具有极快的数据读写速度。但是 RAID 0 不做数据备份,N 块磁盘中只要有一块损坏,数据完整性就被破坏,其他磁盘的数据也都无法使用了。

            RAID 1 是数据在写入磁盘时,将一份数据同时写入两块磁盘,这样任何一块磁盘损坏都不会导致数据丢失,插入一块新磁盘就可以通过复制数据的方式自动修复,具有极高的可靠性。

           结合 RAID 0 和 RAID 1 两种方案构成了 RAID 10 ,它是将所有磁盘 N 平均分成两份,数据同时在两份磁盘写入,相当于 RAID 1;但是平分成两份,在每一份磁盘(也就是 N/2 块磁盘)里面,利用 RAID 0 技术并发读写,这样既提高可靠性又改善性能。不过 RAID 10 的磁盘利用率较低,有一半的磁盘用来写备份数据。

           一般情况下,一台服务器上很少出现同时损坏两块磁盘的情况,在只损坏一块磁盘的情况下,如果能利用其他磁盘的数据恢复损坏磁盘的数据,这样在保证可靠性和性能的同时,磁盘利用率也得到大幅提升。

           顺着这个思路, RAID 3  可以在数据写入磁盘的时候,将数据分成 N-1 份,并发写入 N-1 块磁盘,并在第 N 块磁盘记录校验数据,这样任何一块磁盘损坏(包括校验数据磁盘),都可以利用其他 N-1 块磁盘的数据修复。但是在数据修改较多的场景中,任何磁盘数据的修改,都会导致第 N 块磁盘重写校验数据。频繁写入的后果是第 N 块磁盘比其他磁盘更容易损坏,需要频繁更换,所以 RAID 3 很少在实践中使用,因此在上面图中也就没有单独列出。

           相比 RAID 3, RAID 5 是使用更多的方案。RAID 5 和 RAID 3 很相似,但是校验数据不是写入第 N 块磁盘,而是螺旋式地写入所有磁盘中。这样校验数据的修改也被平均到所有磁盘上,避免 RAID 3 频繁写坏一块磁盘的情况。

            如果数据需要很高的可靠性,在出现同时损坏两块磁盘的情况下,仍然需要修复数据,这时候可以使用 RAID 6。

             RAID 6 和 RAID 5 类似 , 但是数据只写入 N-2 块磁盘,并螺旋式地在两块磁盘中写入校验信息(使用不同算法生成)。

            从下面表格中你可以看到在相同磁盘数目(N)的情况下,各种 RAID 技术的比较。
        现在我来总结一下,看看 RAID 是如何解决我一开始提出的,关于存储的三个关键问题。

         1 数据存储容量的问题。 RAID 使用了 N 块磁盘构成一个存储阵列,如果使用 RAID 5,数据就可以存储在 N-1 块磁盘上,这样将存储空间扩大了 N-1 倍。

         2 数据读写速度的问题。 RAID 根据可以使用的磁盘数量,将待写入的数据分成多片,并发同时向多块磁盘进行写入,显然写入的速度可以得到明显提高;同理,读取速度也可以得到明显提高。不过,需要注意的是,由于传统机械磁盘的访问延迟主要来自于寻址时间,数据真正进行读写的时间可能只占据整个数据访问时间的一小部分,所以数据分片后对 N 块磁盘进行并发读写 *** 作并不能将访问速度提高 N 倍。

         3 数据可靠性的问题。 使用 RAID 10、RAID 5 或者 RAID 6 方案的时候,由于数据有冗余存储,或者存储校验信息,所以当某块磁盘损坏的时候,可以通过其他磁盘上的数据和校验数据将丢失磁盘上的数据还原。

        RAID 可以看作是一种垂直伸缩,一台计算机集成更多的磁盘实现数据更大规模、更安全可靠的存储以及更快的访问速度。而 HDFS 则是水平伸缩,通过添加更多的服务器实现数据更大、更快、更安全存储与访问。

        RAID 技术只是在单台服务器的多块磁盘上组成阵列,大数据需要更大规模的存储空间和更快的访问速度。将 RAID 思想原理应用到分布式服务器集群上,就形成了 Hadoop 分布式文件系统 HDFS 的架构思想。

伴随互联网经济的深入发展以及大数据行业的崛起,现在企业正在收集、分析和存储比以往更多的数据。随着技术的进步,这种趋势将呈指数级增长。这造成的问题之一是存储数据的位置。当然,这个问题不仅仅是存储空间的简单需求:它还意味着需要查看可访问性,可用性,安全性和恢复。对于许多企业来说,解决方案就是云服务器存储。那么使用云服务器

存储是如何促进企业发展的呢?

云服务器存储促进企业发展主要表现在以下几点:

1、云服务器存储为企业信息化建设提供安全的数据存储服务

云服务器存储数据中心提供的虚拟存储服务,不再需要将重要数据存储在本地,凭借身份认证方式可以随时进入数据中心存取重要数据,这样既不用担心自己的存储设备损坏导致数据消失,也不用担心病毒木马入侵将数据破坏或窃取,数据安全工作将由云计算的文件数据分块及副本备份策略来保障。而基于用户权限的分层隔离服务可以避免数据被没有权限的用

户访问到,增加了数据的安全保障。

2、云服务器存储有效提高了IT基础设施共享水平云服务器存储对基础设施进行了统一的配置管理后,把运算器、存储器、信息系统平台等资源整合在一起,形成一个统一的资源池,并根据负载需要来分配资源,实现负载均衡,资源通过网络可以方便的为科研人员提供服务。这种集中管理、平衡资源的方式将有效消除IT资源独立分散造成的资源紧张、资源闲置、资源浪费,使IT基础设施得到充分利用。

3、云服务器存储有效降低了信息化建设中巨大的硬件成本

现代信息技术的快速发展致使硬件设备更新换代周期越来越短,在信息平台建设中对硬件系统的计算能力要求越来越高,就需要不断补充新的硬件设备,硬件没备采购成了没有尽头的无底洞。不仅如此,随着硬件设备的增多,从事硬件系统管理维护的职工数量也需要相应增加,给各单位的人员编制带来一定压力。云服务器存储的优点在于解放了硬件配置对计算

能力的限制,也不需要关注设备的更新换代,对硬件设备的投入将大大降低。

随着云计算的发展,使用云服务器存储不仅促进企业的业务发展,还加快企业信息化建设的速度和水平,所以现在越来越多的企业开始使用云服务器存储存储数据。

我们知道,服务器是用来提供各类服务(如Web服务、数据库、办公系统)的专用计算机,服务器的性能及运行状态会直接影响服务的稳定性。不管你用的是云服务器还是托管的服务器,都需要定期对服务器进行维护,否则服务器总有一天会变得让你觉得“卡顿”。很多人觉得服务器的“卡顿”是因为服务器运行时间长了就会卡顿,其实这种想法还是很片面的,很多因素都会导致服务器的“卡顿”现象。

服务器硬件配置及老化程度会影响服务器运行速度及稳定性

服务器和我们家用电脑一样都是由软硬件来支撑的,如果硬件配置跟不上那服务器的性能自然提升不了。

1、检查服务器硬件配置

像Windows系统可在任务管理器中查看CPU及内存占用情况,而Linux系统可通过top命令或free、df等命令查看相关配置。

现在一般的Web站点服务器最低配置都是:CPU2核、内存2G、固态硬盘起步了,如果你的站点访问用户较多,那就要视情况升级你的服务器配置。

2、传统硬件服务器要让机房检查下硬件老化程度

现在云服务器可以不考虑硬件老化情况,但还有不少人在用传统的硬件服务器托管的,这就要看下你的服务器用了多少年了,是否存在硬件老化的情况。

检查服务器是否被人攻击

很多时候服务器的突然卡顿是因为服务器受到了攻击导致的,因为服务器是暴露在公网上的,如果不做一些防护很容易受到各种攻击。

服务器被人攻击最直观的表现有:

服务器内存及CPU占用一直居高不下;

服务器上行带宽被占满,一直对外发包;

系统里出现一些未知文件、程序、账户等。

那我们如何排查呢?这里网络圈给大家的建议是按以下步聚进行排查:

1、首先对服务器系统进行杀毒,如果是Windows系统,一定要安装杀毒软件

2、看下服务器各文件夹下是否有可疑文件及可疑程序

3、看下服务器是否有新增的用户账户,如果有,则要禁用此账户

4、CPU及内存是否占用过高

Windows通过任务管理器可以定位到CPU或内存占用过高的进程,Linux可以通过top、ps等命令定位到CPU或内存占用过高的进程。

进程定位到了之后,看下是否可疑,必要时把进程杀掉。

5、服务器上是否安装了Redis,如果安装了则要检查Redis外网是否可以访问,如果外网可以被访问很容易被人提权

6、检查是否存在可疑的定时任务及网络请求

检查服务代码逻辑

如果排除了被人攻击的情况,那就要检查一下你的服务程序代码是否存在问题了,比如:

1、是否有死循环

2、请求外部资源时是否没加超时限制

3、数据库是否存在慢查询等

服务器上的服务迁移

如果仅仅是因为当前服务器性能跟不上,那除了升级单机配置外还可以考虑将本服务器上的其它服务迁移到另外的服务器,以Web服务为例,我们的建议是:

站点及文件资源放在一台服务器上,用作Web服务器

数据库单独放一台服务器上

必要的CDN加速

以上就是我的观点,对于这个问题大家是怎么看待的呢?欢迎在下方评论区交流~我是科技领域创作者,十年互联网从业经验,欢迎在线咨询


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/13129773.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-06-07
下一篇 2023-06-07

发表评论

登录后才能评论

评论列表(0条)

保存