Coder Social home page Coder Social logo

wsgzao.github.io's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

wsgzao.github.io's Issues

https://wsgzao.github.io/post/static-routes/

拜读了“静态路由和策略路由的配置实践”,有点想法和博主讨论下。
在“策略路由配置”一节中
ip route flush table net_192

添加一个路由规则到 net_192 表,这条规则是 net_192 这个路由表中数据包默认使用源 IP 172.31.192.201 通过 ens4f0 走网关 172.31.192.254

ip route add default via 172.31.192.254 dev ens4f0 src 172.31.192.201 table net_192

来自 172.31.192.201 的数据包,使用 net_192 路由表的路由规则

ip rule add from 172.31.192.201 table net_192

初看时有疑问。
ip route add default via 172.31.192.254 dev ens4f0 src 172.31.192.201 table net_192
后为何还要
ip rule add from 172.31.192.201 table net_192 ?

搜索了ip rule 发现这篇文章http://m.oschina.net/blog/156607
有些理解了,但是觉得博主文章中命令使用的顺序调整下更容易理解。
两条命令调整先后之后,首先表示从源地址172.31.192.201 使用路由表 net_192,下一条命令描述具体的路由表内容,是一个逐渐细化的过程。而博主的文章则是先描述了细节,然后对细节打包,问题是,在上一条中已经描述了这个包,为何还要复述呢?我未实验过具体操作,不知道在命令执行上可行与否,但是逻辑上看起来有点点奇怪。看过http://m.oschina.net/blog/156607之后才明白ip rule add from 172.31.192.201 table net_192 相当于打包路由表,否则这句有些难以理解,并非语法上的,而是语句前后的逻辑。

http://wsgzao.github.io/post/raid/ 有错误和不妥的地方

JBOD 描述给人感觉是不推荐的用法,其实在分布式存储中往往推荐用 JBOD,因为软件层面考虑了镜像、校验、条带化的事情。

“相同的配置下,通常 RAID01 比 RAID10 具有更好的容错能力。” 这句话说反了,RAID 0 坏一块盘就整个RAID 0阵列坏了,所以 RAID01 坏一块盘相当于一半存储失效,风险大并且性能差。RAID 10 坏一块盘,只是某个 strip 少了一个副本,影响的面很小,性能基本没影响。这就是为什么大家都用 RAID 10 而不用 RAID 01,mdadm 这个工具直接提供 raid10 但没有直接提供 raid01 可以印证这点,http://linux.die.net/man/8/mdadm,注意 Linux 实现的 raid 10 是一体的,而且 raid 1, raid 10 的 copies 可以大于 2。

现在磁盘单片容量很大,RAID 5 坏了一块盘时 rebuild 遇到第二个坏盘的风险很高,已经是业界不推荐的 raid level 了,RAID 50 是一样的风险,也不推荐使用。RAID 60 又慢又复杂又浪费磁盘,也没人用。

参数调优那段,系统盘没必要 raid 1,单盘即可,系统盘不应该大量写入,其需要用的数据基本被缓存到内存里了,所以不怎么损磁盘,而且哪怕坏了,重做系统很快(别告诉我没用 pxe boot、puppet、chef 之类的玩意,需要手动安装……),数据盘用 RAID 0 (如果求最大容量最大速度不求可靠性完全拼人品或者靠分布式存储软件层面做冗余),RAID 6 (预算不足,不求高性能,求最保险,最大容量--空间利用率 (n-2)/n, n 越多越划算),RAID 10(预算充足,求高性能高保险,不求最大容量——空间利用率 <= 50%)。

冗余的两种手段:镜像和校验,一般热数据由于比较小又追求高性能高可靠以及快速恢复时间,会用镜像冗余,而冷数据量特别大追求很高的磁盘利用率以及可靠性,不求性能和快速恢复,会用校验冗余,比如最近突然被重新火起来的 erasure code。

“使用机械盘的话,尽可能选择高转速的,例如选用15KRPM,而不是7.2KRPM的盘,不差几个钱的;” 15K rpm 以下的都是消费级硬盘,更别提 7.2K rpm 的了……

SSD 评测数据那个,盘数不一样比个啥啊……比如测试出来顺序读 RAID 6 比 RAID 5 快,这是误导啊,两个的数据和校验都是分布的,所以你在拿六块盘的叠加速度比五块盘的叠加速度,不公平啊,本来应该同等配置下 RAID 5 比 RAID 6 快,这下被你说的 RAID 5 一钱不值了,哈哈

同样的,RAID 10 和 RAID 50 的比较也不公平,不过无所谓了,总之,别沾 RAID 5 了,除非你单盘在 200 GB 以下——这年头有几个人用如此小的硬盘……

还有测试没有提 RAID chunk size 呢……

最后的总结坑爹啊,还推荐人用 RAID 50 而非 RAID 10……

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.