drbd+ocfs2 'เจคเฉ‡ เจ†เจงเจพเจฐเจฟเจค เจ›เฉ‹เจŸเฉ‡ เจตเฉˆเฉฑเจฌ เจ•เจฒเฉฑเจธเจŸเจฐเจพเจ‚ เจฒเจˆ เจ•เจฒเฉฑเจธเจŸเจฐ เจธเจŸเฉ‹เจฐเฉ‡เจœ

เจ…เจธเฉ€เจ‚ เจ•เจฟเจธ เจฌเจพเจฐเฉ‡ เจ—เฉฑเจฒ เจ•เจฐเจพเจ‚เจ—เฉ‡:
drbd+ocfs2 เจนเฉฑเจฒเจพเจ‚ เจฆเฉ‡ เจ†เจงเจพเจฐ 'เจคเฉ‡ เจฆเฉ‹ เจธเจฐเจตเจฐเจพเจ‚ เจฒเจˆ เจธเจพเจ‚เจเฉ€ เจธเจŸเฉ‹เจฐเฉ‡เจœ เจจเฉ‚เฉฐ เจคเฉ‡เจœเจผเฉ€ เจจเจพเจฒ เจ•เจฟเจตเฉ‡เจ‚ เจคเฉˆเจจเจพเจค เจ•เจฐเจจเจพ เจนเฉˆเฅค

เจ‡เจน เจ•เจฟเจธ เจฒเจˆ เจฒเจพเจญเจฆเจพเจ‡เจ• เจนเฉ‹เจตเฉ‡เจ—เจพ:
เจŸเจฟเจŠเจŸเฉ‹เจฐเจฟเจ…เจฒ เจธเจฟเจธเจŸเจฎ เจชเฉเจฐเจธเจผเจพเจธเจ•เจพเจ‚ เจ…เจคเฉ‡ เจ•เจฟเจธเฉ‡ เจตเฉ€ เจตเจฟเจ…เจ•เจคเฉ€ เจฒเจˆ เจฒเจพเจญเจฆเจพเจ‡เจ• เจนเฉ‹เจตเฉ‡เจ—เจพ เจœเฉ‹ เจธเจŸเฉ‹เจฐเฉ‡เจœ เจฒเจพเจ—เฉ‚ เจ•เจฐเจจ เจฆเจพ เจคเจฐเฉ€เจ•เจพ เจšเฉเจฃเจฆเจพ เจนเฉˆ เจœเจพเจ‚ เจนเฉฑเจฒ เจฆเฉ€ เจ•เฉ‹เจธเจผเจฟเจธเจผ เจ•เจฐเจจเจพ เจšเจพเจนเฉเฉฐเจฆเจพ เจนเฉˆเฅค

เจ…เจธเฉ€เจ‚ เจ•เจฟเจนเฉœเฉ‡ เจซเจผเฉˆเจธเจฒเจฟเจ†เจ‚ เจคเฉ‹เจ‚ เจ‡เจจเจ•เจพเจฐ เจ•เฉ€เจคเจพ เจ…เจคเฉ‡ เจ•เจฟเจ‰เจ‚?

เจ…เจ•เจธเจฐ เจธเจพเจจเฉ‚เฉฐ เจ…เจœเจฟเจนเฉ€ เจธเจฅเจฟเจคเฉ€ เจฆเจพ เจธเจพเจนเจฎเจฃเจพ เจ•เจฐเจจเจพ เจชเฉˆเจ‚เจฆเจพ เจนเฉˆ เจœเจฟเฉฑเจฅเฉ‡ เจธเจพเจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจ›เฉ‹เจŸเฉ‡ เจตเฉˆเฉฑเจฌ เจ•เจฒเฉฑเจธเจŸเจฐ 'เจคเฉ‡ เจšเฉฐเจ—เฉ€ เจฐเฉ€เจก-เจฐเจพเจˆเจŸ เจ•เจพเจฐเจ—เฉเจœเจผเจพเจฐเฉ€ เจฆเฉ‡ เจจเจพเจฒ เจธเจผเฉ‡เจ…เจฐเจก เจธเจŸเฉ‹เจฐเฉ‡เจœ เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉเฉฐเจฆเฉ€ เจนเฉˆเฅค เจ…เจธเฉ€เจ‚ เจ†เจชเจฃเฉ‡ เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸเจพเจ‚ เจฒเจˆ เจธเจผเฉ‡เจ…เจฐเจก เจธเจŸเฉ‹เจฐเฉ‡เจœ เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเจจ เจฒเจˆ เจ•เจˆ เจตเจฟเจ•เจฒเจชเจพเจ‚ เจฆเฉ€ เจ•เฉ‹เจธเจผเจฟเจธเจผ เจ•เฉ€เจคเฉ€, เจชเจฐ เจ•เฉเจ เจ‡เฉฑเจ• เจตเจพเจฐ เจตเจฟเฉฑเจš เจ•เจˆ เจธเฉ‚เจšเจ•เจพเจ‚ 'เจคเฉ‡ เจธเจพเจจเฉ‚เฉฐ เจธเฉฐเจคเฉเจธเจผเจŸ เจ•เจฐเจจ เจฆเฉ‡ เจฏเฉ‹เจ— เจธเจจเฅค เจนเฉเจฃ เจ…เจธเฉ€เจ‚ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฆเฉฑเจธเจพเจ‚เจ—เฉ‡ เจ•เจฟ เจ•เจฟเจ‰เจ‚.

  • Glusterfs เจจเฉ‡ เจธเจพเจจเฉ‚เฉฐ เจชเฉœเฉเจนเจจ เจ…เจคเฉ‡ เจฒเจฟเจ–เจฃ เจฆเฉ€ เจ•เจพเจฐเจ—เฉเจœเจผเจพเจฐเฉ€ เจจเจพเจฒ เจธเฉฐเจคเฉเจธเจผเจŸ เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเจพ; เจตเฉฑเจกเฉ€ เจ—เจฟเจฃเจคเฉ€ เจตเจฟเฉฑเจš เจซเจพเจˆเจฒเจพเจ‚ เจจเฉ‚เฉฐ เจ‡เฉฑเจ•เฉ‹ เจธเจฎเฉ‡เจ‚ เจชเฉœเฉเจนเจจ เจตเจฟเฉฑเจš เจธเจฎเฉฑเจธเจฟเจ†เจตเจพเจ‚ เจธเจจ, เจ…เจคเฉ‡ CPU เจ‰เฉฑเจคเฉ‡ เจ‡เฉฑเจ• เจ‰เฉฑเจš เจฒเฉ‹เจก เจธเฉ€เฅค เจซเจพเจˆเจฒเจพเจ‚ เจจเฉ‚เฉฐ เจชเฉœเฉเจนเจจ เจฆเฉ€ เจธเจฎเฉฑเจธเจฟเจ† เจจเฉ‚เฉฐ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจธเจฟเฉฑเจงเฉ‡ เจ‡เฉฑเจŸ เจคเฉ‹เจ‚ เจเจ•เจธเฉˆเจธ เจ•เจฐเจ•เฉ‡ เจนเฉฑเจฒ เจ•เฉ€เจคเจพ เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ, เจชเจฐ เจ‡เจน เจนเจฎเฉ‡เจธเจผเจพ เจฒเจพเจ—เฉ‚ เจจเจนเฉ€เจ‚ เจนเฉเฉฐเจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจ†เจฎ เจคเฉŒเจฐ 'เจคเฉ‡ เจ—เจฒเจค เจนเฉเฉฐเจฆเจพ เจนเฉˆเฅค

  • Ceph เจจเฉ‚เฉฐ เจฌเจนเฉเจค เจœเจผเจฟเจ†เจฆเจพ เจœเจŸเจฟเจฒเจคเจพ เจชเจธเฉฐเจฆ เจจเจนเฉ€เจ‚ เจธเฉ€, เจœเฉ‹ เจ•เจฟ 2-4 เจธเจฐเจตเจฐเจพเจ‚ เจตเจพเจฒเฉ‡ เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸเจพเจ‚ 'เจคเฉ‡ เจจเฉเจ•เจธเจพเจจเจฆเฉ‡เจน เจนเฉ‹ เจธเจ•เจฆเฉ€ เจนเฉˆ, เจ–เจพเจธ เจ•เจฐเจ•เฉ‡ เจœเฉ‡ เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ เจจเฉ‚เฉฐ เจฌเจพเจ…เจฆ เจตเจฟเฉฑเจš เจฌเจฃเจพเจˆ เจฐเฉฑเจ–เจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค เจฆเฉเจฌเจพเจฐเจพ, เจ‡เฉฑเจฅเฉ‡ เจ—เฉฐเจญเฉ€เจฐ เจชเฉเจฐเจฆเจฐเจธเจผเจจ เจธเฉ€เจฎเจพเจตเจพเจ‚ เจนเจจ เจœเฉ‹ เจธเจพเจจเฉ‚เฉฐ เจตเฉฑเจ–เจฐเฉ‡ เจธเจŸเฉ‹เจฐเฉ‡เจœ เจ•เจฒเฉฑเจธเจŸเจฐ เจฌเจฃเจพเจ‰เจฃ เจฒเจˆ เจฎเจœเจผเจฌเฉ‚เจฐ เจ•เจฐเจฆเฉ€เจ†เจ‚ เจนเจจ, เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ glusterfs เจฆเฉ‡ เจจเจพเจฒเฅค

  • เจธเจผเฉ‡เจ…เจฐเจก เจธเจŸเฉ‹เจฐเฉ‡เจœ เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเจจ เจฒเจˆ เจ‡เฉฑเจ• NFS เจธเจฐเจตเจฐ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจเจพ เจจเฉเจ•เจธ เจธเจนเจฟเจฃเจธเจผเฉ€เจฒเจคเจพ เจฆเฉ‡ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจธเจตเจพเจฒ เจ‰เจ เจพเจ‰เจ‚เจฆเจพ เจนเฉˆเฅค

  • s3 เจ•เจพเจฐเจœเจพเจ‚ เจฆเฉ€ เจ‡เฉฑเจ• เจ–เจพเจธ เจธเจผเฉเจฐเฉ‡เจฃเฉ€ เจฒเจˆ เจ‡เฉฑเจ• เจธเจผเจพเจจเจฆเจพเจฐ เจชเฉเจฐเจธเจฟเฉฑเจง เจนเฉฑเจฒ เจนเฉˆ, เจชเจฐ เจ‡เจน เจ‡เฉฑเจ• เจซเจพเจˆเจฒ เจธเจฟเจธเจŸเจฎ เจจเจนเฉ€เจ‚ เจนเฉˆ, เจœเฉ‹ เจ‡เจธเจฆเฉ‡ เจฆเจพเจ‡เจฐเฉ‡ เจจเฉ‚เฉฐ เจ›เฉ‹เจŸเจพ เจ•เจฐเจฆเจพ เจนเฉˆเฅค

  • lsyncd. เจœเฉ‡ เจ…เจธเฉ€เจ‚ เจชเจนเจฟเจฒเจพเจ‚ เจนเฉ€ "เจจเจพเจจ-เจซเจพเจˆเจฒ เจธเจฟเจธเจŸเจฎ" เจฌเจพเจฐเฉ‡ เจ—เฉฑเจฒ เจ•เจฐเจจเฉ€ เจธเจผเฉเจฐเฉ‚ เจ•เจฐ เจฆเจฟเฉฑเจคเฉ€ เจนเฉˆ, เจคเจพเจ‚ เจ‡เจน เจ‡เจธ เจชเฉเจฐเจธเจฟเฉฑเจง เจนเฉฑเจฒ 'เจคเฉ‡ เจœเจพเจฃ เจฆเฉ‡ เจฏเฉ‹เจ— เจนเฉˆ. เจจเจพ เจธเจฟเจฐเจซ เจ‡เจน เจฆเฉ‹-เจคเจฐเฉ€เจ•เฉ‡ เจจเจพเจฒ เจเจ•เจธเจšเฉ‡เจ‚เจœ เจฒเจˆ เจขเฉเจ•เจตเจพเจ‚ เจจเจนเฉ€เจ‚ เจนเฉˆ (เจชเจฐ เจœเฉ‡ เจคเฉเจธเฉ€เจ‚ เจ…เจธเจฒ เจตเจฟเฉฑเจš เจšเจพเจนเฉเฉฐเจฆเฉ‡ เจนเฉ‹, เจคเจพเจ‚ เจคเฉเจธเฉ€เจ‚ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹), เจ‡เจน เจตเฉฑเจกเฉ€ เจ—เจฟเจฃเจคเฉ€ เจตเจฟเฉฑเจš เจซเจพเจˆเจฒเจพเจ‚ 'เจคเฉ‡ เจธเจฅเจฟเจฐเจคเจพ เจจเจพเจฒ เจ•เฉฐเจฎ เจจเจนเฉ€เจ‚ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจนเจฐ เจšเฉ€เจœเจผ เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจตเจงเฉ€เจ† เจœเฉ‹เฉœ เจ‡เจน เจนเฉˆ เจ•เจฟ เจ‡เจน เจธเจฟเฉฐเจ—เจฒ-เจฅเจฐเจฟเฉฑเจกเจก เจนเฉˆ. เจ•เจพเจฐเจจ เจชเฉเจฐเฉ‹เจ—เจฐเจพเจฎ เจฆเฉ‡ เจ†เจฐเจ•เฉ€เจŸเฉˆเจ•เจšเจฐ เจตเจฟเฉฑเจš เจนเฉˆ: เจ‡เจน เจ•เฉฐเจฎ เจฆเฉ€เจ†เจ‚ เจตเจธเจคเฉ‚เจ†เจ‚ เจฆเฉ€ เจจเจฟเจ—เจฐเจพเจจเฉ€ เจ•เจฐเจจ เจฒเจˆ เจ‡เจจเฉ‹เจŸเฉ€เจซเจพเจˆ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเจพ เจนเฉˆ เจœเฉ‹ เจ‡เจน เจธเจŸเจพเจฐเจŸเจ…เจช เจ…เจคเฉ‡ เจฐเฉ€เจธเจ•เฉˆเจจเจฟเฉฐเจ— เจฆเฉŒเจฐเจพเจจ เจจเจฟเจฐเจงเจพเจฐเจค เจ•เจฐเจฆเจพ เจนเฉˆเฅค rsync เจจเฉ‚เฉฐ เจŸเฉเจฐเจพเจ‚เจธเจซเจฐ เจฎเจพเจงเจฟเจ…เจฎ เจตเจœเฉ‹เจ‚ เจตเจฐเจคเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค

เจŸเจฟเจŠเจŸเฉ‹เจฐเจฟเจ…เจฒ: drbd+ocfs2 เจฆเฉ‡ เจ†เจงเจพเจฐ 'เจคเฉ‡ เจธเจผเฉ‡เจ…เจฐเจก เจธเจŸเฉ‹เจฐเฉ‡เจœ เจจเฉ‚เฉฐ เจ•เจฟเจตเฉ‡เจ‚ เจคเฉˆเจจเจพเจค เจ•เจฐเจจเจพ เจนเฉˆ

เจธเจพเจกเฉ‡ เจฒเจˆ เจธเจญ เจคเฉ‹เจ‚ เจธเฉเจตเจฟเจงเจพเจœเจจเจ• เจนเฉฑเจฒเจพเจ‚ เจตเจฟเฉฑเจšเฉ‹เจ‚ เจ‡เฉฑเจ• เจฒเจฟเฉฐเจ• เจธเฉ€ ocfs2+drbd. เจนเฉเจฃ เจ…เจธเฉ€เจ‚ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฆเฉฑเจธเจพเจ‚เจ—เฉ‡ เจ•เจฟ เจคเฉเจธเฉ€เจ‚ เจ‡เฉฑเจ• เจนเฉฑเจฒ เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ เจฆเฉ‡ เจ…เจงเจพเจฐ เจคเฉ‡ เจฆเฉ‹ เจธเจฐเจตเจฐเจพเจ‚ เจฒเจˆ เจธเจพเจ‚เจเฉ€ เจธเจŸเฉ‹เจฐเฉ‡เจœ เจจเฉ‚เฉฐ เจคเฉ‡เจœเจผเฉ€ เจจเจพเจฒ เจ•เจฟเจตเฉ‡เจ‚ เจคเฉˆเจจเจพเจค เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค เจชเจฐ เจชเจนเจฟเจฒเจพเจ‚, เจญเจพเจ—เจพเจ‚ เจฌเจพเจฐเฉ‡ เจฅเฉ‹เฉœเจพ เจœเจฟเจนเจพ:

DRBD - เจธเจŸเฉˆเจ‚เจกเจฐเจก เจฒเฉ€เจจเจ•เจธ เจกเจฟเจธเจŸเฉเจฐเฉ€เจฌเจฟเจŠเจธเจผเจจ เจคเฉ‹เจ‚ เจ‡เฉฑเจ• เจธเจŸเฉ‹เจฐเฉ‡เจœเจผ เจธเจฟเจธเจŸเจฎ เจœเฉ‹ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฌเจฒเจพเจ•เจพเจ‚ เจตเจฟเฉฑเจš เจธเจฐเจตเจฐเจพเจ‚ เจตเจฟเจšเจ•เจพเจฐ เจกเฉ‡เจŸเจพ เจฆเฉ€ เจจเจ•เจฒ เจ•เจฐเจจ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเจฟเฉฐเจฆเจพ เจนเฉˆเฅค เจฎเฉเฉฑเจ– เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจจเฉเจ•เจธ-เจธเจนเจฟเจฃเจธเจผเฉ€เจฒ เจธเจŸเฉ‹เจฐเฉ‡เจœ เจฌเจฃเจพเจ‰เจฃเจพ เจนเฉˆเฅค

OCFS2 - เจ‡เฉฑเจ• เจซเจพเจˆเจฒ เจธเจฟเจธเจŸเจฎ เจœเฉ‹ เจ•เจˆ เจธเจฟเจธเจŸเจฎเจพเจ‚ เจฆเฉเจ†เจฐเจพ เจ‡เฉฑเจ•เฉ‹ เจธเจŸเฉ‹เจฐเฉ‡เจœเจผ เจฆเฉ€ เจธเจพเจ‚เจเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจชเฉเจฐเจฆเจพเจจ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจฒเฉ€เจจเจ•เจธ เจกเจฟเจธเจŸเจฐเฉ€เจฌเจฟเจŠเจธเจผเจจ เจตเจฟเฉฑเจš เจธเจผเจพเจฎเจฒ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆ เจ…เจคเฉ‡ FS เจจเจพเจฒ เจ•เฉฐเจฎ เจ•เจฐเจจ เจฒเจˆ เจ‡เฉฑเจ• เจ•เจฐเจจเจฒ เจฎเฉ‹เจกเฉ€เจŠเจฒ เจ…เจคเฉ‡ เจฏเฉ‚เจœเจผเจฐเจธเจชเฉ‡เจธ เจŸเฉ‚เจฒ เจนเฉˆเฅค OCFS2 เจจเฉ‚เฉฐ เจจเจพ เจธเจฟเจฐเจซเจผ DRBD เจ‰เฉฑเจคเฉ‡ เจตเจฐเจคเจฟเจ† เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ, เจธเจ—เฉ‹เจ‚ iSCSI เจ‰เฉฑเจคเฉ‡ เจตเฉ€ เจฎเจฒเจŸเฉ€เจชเจฒ เจ•เฉเจจเฉˆเจ•เจธเจผเจจเจพเจ‚ เจจเจพเจฒ เจตเจฐเจคเจฟเจ† เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆเฅค เจธเจพเจกเฉ‡ เจ‰เจฆเจพเจนเจฐเจฃ เจตเจฟเฉฑเจš เจ…เจธเฉ€เจ‚ DRBD เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚เฅค

เจธเจพเจฐเฉ€เจ†เจ‚ เจ•เจพเจฐเจตเจพเจˆเจ†เจ‚ เจ‰เจฌเฉฐเจŸเฉ‚ เจธเจฐเจตเจฐ 18.04 'เจคเฉ‡ เจ˜เฉฑเจŸเฉ‹-เจ˜เฉฑเจŸ เจธเฉฐเจฐเจšเจจเจพ เจตเจฟเฉฑเจš เจ•เฉ€เจคเฉ€เจ†เจ‚ เจœเจพเจ‚เจฆเฉ€เจ†เจ‚ เจนเจจเฅค

เจ•เจฆเจฎ 1. DRBD เจ•เฉŒเจ‚เจซเจฟเจ—เจฐ เจ•เจฐเฉ‹:

เจซเจพเจˆเจฒ /etc/drbd.d/drbd0.res เจตเจฟเฉฑเจš เจ…เจธเฉ€เจ‚ เจ†เจชเจฃเฉ‡ เจตเจฐเจšเฉเจ…เจฒ เจฌเจฒเจพเจ• เจกเจฟเจตเจพเจˆเจธ /dev/drbd0 เจฆเจพ เจตเจฐเจฃเจจ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚:

resource drbd0 {
    syncer { rate 1000M; }
    net {
        allow-two-primaries;
        after-sb-0pri discard-zero-changes;
        after-sb-1pri discard-secondary;
        after-sb-2pri disconnect;
    }
    startup { become-primary-on both; }
    on drbd1 {
        meta-disk internal;
        device /dev/drbd0;
        disk /dev/vdb1;
        address 10.10.10.192:7789;
}
    on drbd2 {
        meta-disk internal;
        device /dev/drbd0;
        disk /dev/vdb1;
        address 10.10.10.193:7789;
}
}

เจฎเฉˆเจŸเจพ-เจกเจฟเจธเจ• เจ…เฉฐเจฆเจฐเฉ‚เจจเฉ€ โ€” เจฎเฉˆเจŸเจพเจกเจพเจŸเจพ เจธเจŸเฉ‹เจฐ เจ•เจฐเจจ เจฒเจˆ เจ‰เจนเฉ€ เจฌเจฒเจพเจ• เจœเฉฐเจคเจฐเจพเจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเฉ‹
เจกเจฟเจตเจพเจˆเจธ /dev/drbd0 โ€” /dev/drbd0 เจจเฉ‚เฉฐ drbd เจตเจพเจฒเฉ€เจ…เจฎ เจฆเฉ‡ เจฎเจพเจฐเจ— เจตเจœเฉ‹เจ‚ เจตเจฐเจคเฉ‹เฅค
เจกเจฟเจธเจ• /dev/vdb1 - /dev/vdb1 เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเฉ‹
เจธเจฟเฉฐเจธเจฐ { เจฐเฉ‡เจŸ 1000M; } โ€” เจ—เฉ€เจ—เจพเจฌเจฟเฉฑเจŸ เจšเฉˆเจจเจฒ เจฌเฉˆเจ‚เจกเจตเจฟเจกเจฅ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเฉ‹
เจ‡เจœเจพเจœเจผเจค-เจฆเฉ‹-เจชเฉเจฐเจพเจ‡เจฎเจฐเฉ€ - เจ‡เฉฑเจ• เจฎเจนเฉฑเจคเจตเจชเฉ‚เจฐเจจ เจตเจฟเจ•เจฒเจช เจœเฉ‹ เจฆเฉ‹ เจชเฉเจฐเจพเจ‡เจฎเจฐเฉ€ เจธเจฐเจตเจฐเจพเจ‚ 'เจคเฉ‡ เจคเจฌเจฆเฉ€เจฒเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจธเจตเฉ€เจ•เจพเจฐ เจ•เจฐเจจ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเจฟเฉฐเจฆเจพ เจนเฉˆ
after-sb-0pri, after-sb-1pri, after-sb-2pri - เจธเจชเจฒเจฟเจŸเจฌเฉเจฐเฉ‡เจจ เจฆเจพ เจชเจคเจพ เจฒเฉฑเจ—เจฃ 'เจคเฉ‡ เจจเฉ‹เจก เจฆเฉ€เจ†เจ‚ เจ•เจพเจฐเจตเจพเจˆเจ†เจ‚ เจฒเจˆ เจœเจผเจฟเฉฐเจฎเฉ‡เจตเจพเจฐ เจตเจฟเจ•เจฒเจชเฅค เจนเฉ‹เจฐ เจตเฉ‡เจฐเจตเฉ‡ เจฆเจธเจคเจพเจตเฉ‡เจœเจผ เจตเจฟเฉฑเจš เจชเจพเจ‡เจ† เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ.
เจฌเจฃเฉ‹-เจชเฉเจฐเจพเจ‡เจฎเจฐเฉ€-เจฆเฉ‹เจนเจพเจ‚ 'เจคเฉ‡ โ€” เจฆเฉ‹เจจเฉ‹ เจจเฉ‹เจกเจพเจ‚ เจจเฉ‚เฉฐ เจชเฉเจฐเจพเจ‡เจฎเจฐเฉ€ เจคเฉ‡ เจธเฉˆเจŸ เจ•เจฐเจฆเจพ เจนเฉˆเฅค

เจธเจพเจกเฉ‡ เจ•เฉ‡เจธ เจตเจฟเฉฑเจš, เจธเจพเจกเฉ‡ เจ•เฉ‹เจฒ 10 เจ—เฉ€เจ—เจพเจฌเจพเจˆเจŸ เจฆเฉ‡ เจฅเฉเจฐเจฐเฉ‚เจชเฉเจŸ เจฆเฉ‡ เจจเจพเจฒ เจ‡เฉฑเจ• เจธเจฎเจฐเจชเจฟเจค เจตเจฐเจšเฉเจ…เจฒ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจฆเฉ‡ เจจเจพเจฒ, เจฆเฉ‹ เจฌเจฟเจฒเจ•เฉเจฒ เจ‡เฉฑเจ•เฉ‹ เจœเจฟเจนเฉ‡ VM เจนเจจเฅค

เจธเจพเจกเฉ€ เจ‰เจฆเจพเจนเจฐเจจ เจตเจฟเฉฑเจš, เจฆเฉ‹ เจ•เจฒเฉฑเจธเจŸเจฐ เจจเฉ‹เจกเจพเจ‚ เจฆเฉ‡ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจจเจพเจฎ drbd1 เจ…เจคเฉ‡ drbd2 เจนเจจเฅค เจธเจนเฉ€ เจ•เจพเจฐเจตเจพเจˆ เจฒเจˆ, เจคเฉเจนเจพเจจเฉ‚เฉฐ /etc/hosts เจตเจฟเฉฑเจš เจฎเฉ‡เจœเจผเจฌเจพเจจเจพเจ‚ เจฆเฉ‡ เจจเจพเจฎ เจ…เจคเฉ‡ IP เจชเจคเจฟเจ†เจ‚ เจจเจพเจฒ เจฎเฉ‡เจฒ เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆเฅค

10.10.10.192 drbd1
10.10.10.193 drbd2

เจ•เจฆเจฎ 2. เจจเฉ‹เจก เจธเฉˆเจŸ เจ…เจช เจ•เจฐเฉ‹:

เจฆเฉ‹เจตเจพเจ‚ เจธเจฐเจตเจฐเจพเจ‚ 'เจคเฉ‡ เจ…เจธเฉ€เจ‚ เจšเจฒเจพเจ‰เจ‚เจฆเฉ‡ เจนเจพเจ‚:

drbdadm create-md drbd0

drbd+ocfs2 'เจคเฉ‡ เจ†เจงเจพเจฐเจฟเจค เจ›เฉ‹เจŸเฉ‡ เจตเฉˆเฉฑเจฌ เจ•เจฒเฉฑเจธเจŸเจฐเจพเจ‚ เจฒเจˆ เจ•เจฒเฉฑเจธเจŸเจฐ เจธเจŸเฉ‹เจฐเฉ‡เจœ

modprobe drbd
drbdadm up drbd0
cat /proc/drbd

เจธเจพเจจเฉ‚เฉฐ เจนเฉ‡เจ  เจฒเจฟเจ–เจฟเจ†เจ‚ เจฎเจฟเจฒเจฆเจพ เจนเฉˆ:

drbd+ocfs2 'เจคเฉ‡ เจ†เจงเจพเจฐเจฟเจค เจ›เฉ‹เจŸเฉ‡ เจตเฉˆเฉฑเจฌ เจ•เจฒเฉฑเจธเจŸเจฐเจพเจ‚ เจฒเจˆ เจ•เจฒเฉฑเจธเจŸเจฐ เจธเจŸเฉ‹เจฐเฉ‡เจœ

เจคเฉเจธเฉ€เจ‚ เจธเจฎเจ•เจพเจฒเฉ€เจ•เจฐเจจ เจธเจผเฉเจฐเฉ‚ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค เจชเจนเจฟเจฒเฉ‡ เจจเฉ‹เจก 'เจคเฉ‡ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจšเจฒเจพเจ‰เจฃ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆ:

drbdadm primary --force drbd0

เจ†เจ“ เจธเจฅเจฟเจคเฉ€ เจจเฉ‚เฉฐ เจตเฉ‡เจ–เฉ€เจ:

cat /proc/drbd

drbd+ocfs2 'เจคเฉ‡ เจ†เจงเจพเจฐเจฟเจค เจ›เฉ‹เจŸเฉ‡ เจตเฉˆเฉฑเจฌ เจ•เจฒเฉฑเจธเจŸเจฐเจพเจ‚ เจฒเจˆ เจ•เจฒเฉฑเจธเจŸเจฐ เจธเจŸเฉ‹เจฐเฉ‡เจœ

เจฌเจนเฉเจค เจตเจงเฉ€เจ†, เจธเจฎเจ•เจพเจฒเฉ€เจ•เจฐเจจ เจธเจผเฉเจฐเฉ‚ เจนเฉ‹ เจ—เจฟเจ† เจนเฉˆเฅค เจ…เจธเฉ€เจ‚ เจ…เฉฐเจค เจคเฉฑเจ• เจ‰เจกเฉ€เจ• เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚ เจ…เจคเฉ‡ เจคเจธเจตเฉ€เจฐ เจฆเฉ‡เจ–เจฆเฉ‡ เจนเจพเจ‚:

drbd+ocfs2 'เจคเฉ‡ เจ†เจงเจพเจฐเจฟเจค เจ›เฉ‹เจŸเฉ‡ เจตเฉˆเฉฑเจฌ เจ•เจฒเฉฑเจธเจŸเจฐเจพเจ‚ เจฒเจˆ เจ•เจฒเฉฑเจธเจŸเจฐ เจธเจŸเฉ‹เจฐเฉ‡เจœ

เจ•เจฆเจฎ 3. เจฆเฉ‚เจœเฉ‡ เจจเฉ‹เจก 'เจคเฉ‡ เจธเจฎเจ•เจพเจฒเฉ€เจ•เจฐเจจ เจธเจผเฉเจฐเฉ‚ เจ•เจฐเฉ‹:

drbdadm primary --force drbd0

เจธเจพเจจเฉ‚เฉฐ เจนเฉ‡เจ  เจฒเจฟเจ–เจฟเจ†เจ‚ เจฎเจฟเจฒเจฆเจพ เจนเฉˆ:

drbd+ocfs2 'เจคเฉ‡ เจ†เจงเจพเจฐเจฟเจค เจ›เฉ‹เจŸเฉ‡ เจตเฉˆเฉฑเจฌ เจ•เจฒเฉฑเจธเจŸเจฐเจพเจ‚ เจฒเจˆ เจ•เจฒเฉฑเจธเจŸเจฐ เจธเจŸเฉ‹เจฐเฉ‡เจœ

เจนเฉเจฃ เจ…เจธเฉ€เจ‚ เจฆเฉ‹ เจธเจฐเจตเจฐเจพเจ‚ เจคเฉ‹เจ‚ drbd เจจเฉ‚เฉฐ เจฒเจฟเจ– เจธเจ•เจฆเฉ‡ เจนเจพเจ‚เฅค

เจ•เจฆเจฎ 4. ocfs2 เจจเฉ‚เฉฐ เจธเจฅเจพเจชเจฟเจค เจ…เจคเฉ‡ เจธเฉฐเจฐเจšเจฟเจค เจ•เจฐเฉ‹เฅค

เจ…เจธเฉ€เจ‚ เจ‡เฉฑเจ• เจ•เจพเจซเจผเฉ€ เจฎเจพเจฎเฉ‚เจฒเฉ€ เจธเฉฐเจฐเจšเจจเจพ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจพเจ‚เจ—เฉ‡:

cluster:
     node_count = 2
     name = ocfs2cluster

node:
     number = 1
     cluster = ocfs2cluster
     ip_port = 7777
     ip_address = 10.10.10.192
     name = drbd1

node:
     number = 2
     cluster = ocfs2cluster
     ip_port = 7777
     ip_address = 10.10.10.193
     name = drbd2

เจ‡เจธ เจตเจฟเฉฑเจš เจฒเจฟเจ–เจฃ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆ /etc/ocfs2/cluster.conf เจฆเฉ‹เจจเฉ‹ เจจเฉ‹เจก 'เจคเฉ‡.

เจ…เจธเฉ€เจ‚ เจ•เจฟเจธเฉ‡ เจตเฉ€ เจจเฉ‹เจก 'เจคเฉ‡ drbd0 'เจคเฉ‡ เจ‡เฉฑเจ• FS เจฌเจฃเจพเจ‰เจ‚เจฆเฉ‡ เจนเจพเจ‚:

mkfs.ocfs2 -L "testVol" /dev/drbd0

เจ‡เฉฑเจฅเฉ‡ เจ…เจธเฉ€เจ‚ เจกเจฟเจซเจพเจฒเจŸ เจชเฉˆเจฐเจพเจฎเฉ€เจŸเจฐเจพเจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ, drbd0 เจ‰เฉฑเจคเฉ‡ testVol เจฒเฉ‡เจฌเจฒ เจฆเฉ‡ เจจเจพเจฒ เจ‡เฉฑเจ• เจซเจพเจˆเจฒ เจธเจฟเจธเจŸเจฎ เจฌเจฃเจพเจ‡เจ† เจนเฉˆเฅค

drbd+ocfs2 'เจคเฉ‡ เจ†เจงเจพเจฐเจฟเจค เจ›เฉ‹เจŸเฉ‡ เจตเฉˆเฉฑเจฌ เจ•เจฒเฉฑเจธเจŸเจฐเจพเจ‚ เจฒเจˆ เจ•เจฒเฉฑเจธเจŸเจฐ เจธเจŸเฉ‹เจฐเฉ‡เจœ

/etc/default/o2cb เจตเจฟเฉฑเจš เจคเฉเจนเจพเจจเฉ‚เฉฐ เจธเฉˆเฉฑเจŸ เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆ (เจœเจฟเจตเฉ‡เจ‚ เจ•เจฟ เจธเจพเจกเฉ€ เจธเฉฐเจฐเจšเจจเจพ เจซเจพเจˆเจฒ เจตเจฟเฉฑเจš)

O2CB_ENABLED=true 
O2CB_BOOTCLUSTER=ocfs2cluster 

เจ…เจคเฉ‡ เจนเจฐเฉ‡เจ• เจจเฉ‹เจก 'เจคเฉ‡ เจšเจฒเจพเจ“:

o2cb register-cluster ocfs2cluster

เจซเจฟเจฐ เจ…เจธเฉ€เจ‚ เจ†เจŸเฉ‹เจฐเจจ เจฒเจˆ เจฒเฉ‹เฉœเฉ€เจ‚เจฆเฉ€เจ†เจ‚ เจธเจพเจฐเฉ€เจ†เจ‚ เจฏเฉ‚เจจเจฟเจŸเจพเจ‚ เจจเฉ‚เฉฐ เจšเจพเจฒเฉ‚ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚ เจ…เจคเฉ‡ เจœเฉ‹เฉœเจฆเฉ‡ เจนเจพเจ‚:

systemctl enable drbd o2cb ocfs2
systemctl start drbd o2cb ocfs2

เจ‡เจนเจจเจพเจ‚ เจตเจฟเฉฑเจšเฉ‹เจ‚ เจ•เฉเจ เจธเฉˆเฉฑเจŸเจ…เฉฑเจช เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจฆเฉŒเจฐเจพเจจ เจชเจนเจฟเจฒเจพเจ‚ เจนเฉ€ เจšเฉฑเจฒ เจฐเจนเฉ‡ เจนเฉ‹เจฃเจ—เฉ‡เฅค

เจ•เจฆเจฎ 5. เจฆเฉ‹เจตเฉ‡เจ‚ เจจเฉ‹เจกเจพเจ‚ 'เจคเฉ‡ fstab เจตเจฟเฉฑเจš เจฎเจพเจŠเจ‚เจŸ เจชเฉเจ†เจ‡เฉฐเจŸ เจธเจผเจพเจฎเจฒ เจ•เจฐเฉ‹:

/dev/drbd0 /media/shared ocfs2 defaults,noauto,heartbeat=local 0 0

เจกเจพเจ‡เจฐเฉˆเจ•เจŸเจฐเฉ€ /media/shared เจ‡เจธ เจจเฉ‚เฉฐ เจชเจนเจฟเจฒเจพเจ‚ เจนเฉ€ เจฌเจฃเจพเจ‡เจ† เจœเจพเจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆเฅค

เจ‡เฉฑเจฅเฉ‡ เจ…เจธเฉ€เจ‚ เจจเฉ‹เจ†เจŸเฉ‹ เจตเจฟเจ•เจฒเจชเจพเจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚, เจœเจฟเจธเจฆเจพ เจฎเจคเจฒเจฌ เจนเฉˆ เจ•เจฟ เจซเจพเจˆเจฒ เจจเฉ‚เฉฐ เจธเจŸเจพเจฐเจŸเจ…เฉฑเจช 'เจคเฉ‡ เจฎเจพเจŠเจ‚เจŸ เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเจพ เจœเจพเจตเฉ‡เจ—เจพ (เจฎเฉˆเจ‚ เจธเจฟเจธเจŸเจฎเจก เจฐเจพเจนเฉ€เจ‚ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจซเจพเจˆเจฒเจพเจ‚ เจจเฉ‚เฉฐ เจฎเจพเจŠเจ‚เจŸ เจ•เจฐเจจเจพ เจชเจธเฉฐเจฆ เจ•เจฐเจฆเจพ เจนเจพเจ‚) เจ…เจคเฉ‡ เจนเจพเจฐเจŸเจฌเฉ€เจŸ=เจฒเฉ‹เจ•เจฒ, เจœเจฟเจธเจฆเจพ เจฎเจคเจฒเจฌ เจนเฉˆ เจนเจฐ เจจเฉ‹เจก 'เจคเฉ‡ เจนเจพเจฐเจŸ เจฌเฉ€เจŸ เจธเฉ‡เจตเจพ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจเจพเฅค เจ—เจฒเฉ‹เจฌเจฒ เจฆเจฟเจฒ เจฆเฉ€ เจงเฉœเจ•เจฃ เจตเฉ€ เจนเฉˆ, เจœเฉ‹ เจ•เจฟ เจตเฉฑเจกเฉ‡ เจ•เจฒเฉฑเจธเจŸเจฐเจพเจ‚ เจฒเจˆ เจตเจงเฉ‡เจฐเฉ‡ เจ…เจจเฉเจ•เฉ‚เจฒ เจนเฉˆ.

เจ…เฉฑเจ—เฉ‡ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฎเจพเจŠเจŸ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹ /media/shared เจ…เจคเฉ‡ เจธเจฎเฉฑเจ—เจฐเฉ€ เจธเจฎเจ•เจพเจฒเฉ€เจ•เจฐเจจ เจฆเฉ€ เจœเจพเจ‚เจš เจ•เจฐเฉ‹เฅค

เจนเฉ‹ เจ—เจฟเจ†! เจจเจคเฉ€เจœเฉ‡ เจตเจœเฉ‹เจ‚, เจธเจพเจจเฉ‚เฉฐ เจธเจ•เฉ‡เจฒเฉ‡เจฌเจฟเจฒเจŸเฉ€ เจ…เจคเฉ‡ เจตเจงเฉ€เจ† เจชเฉเจฐเจฆเจฐเจธเจผเจจ เจฆเฉ‡ เจจเจพเจฒ เจ˜เฉฑเจŸ เจœเจพเจ‚ เจ˜เฉฑเจŸ เจจเฉเจ•เจธ-เจธเจนเจฟเจฃเจธเจผเฉ€เจฒ เจธเจŸเฉ‹เจฐเฉ‡เจœ เจฎเจฟเจฒเจฆเฉ€ เจนเฉˆเฅค

เจธเจฐเฉ‹เจค: www.habr.com

เจ‡เฉฑเจ• เจŸเจฟเฉฑเจชเจฃเฉ€ เจœเฉ‹เฉœเฉ‹