drbd+ocfs2 เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟเดฏเตเดณเตเดณ เดšเต†เดฑเดฟเดฏ เดตเต†เดฌเต เด•เตเดฒเดธเตเดฑเตเดฑเดฑเตเด•เตพเด•เตเด•เตเดณเตเดณ เด•เตเดฒเดธเตเดฑเตเดฑเตผ เดธเด‚เดญเดฐเดฃเด‚

เดจเดฎเตเดฎเตพ เดŽเดจเตเดคเดฟเดจเต† เด•เตเดฑเดฟเดšเตเดšเต เดธเด‚เดธเดพเดฐเดฟเด•เตเด•เตเด‚:
drbd+ocfs2 เดธเตŠเดฒเตเดฏเต‚เดทเดจเตเด•เดณเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟ เดฐเดฃเตเดŸเต เดธเต†เตผเดตเดฑเตเด•เตพเด•เตเด•เดพเดฏเดฟ เดชเด™เตเด•เดฟเดŸเตเดŸ เดธเด‚เดญเดฐเดฃเด‚ เดŽเด™เตเด™เดจเต† เดตเต‡เด—เดคเตเดคเดฟเตฝ เดตเดฟเดจเตเดฏเดธเดฟเด•เตเด•เดพเด‚.

เด‡เดคเต เด†เตผเด•เตเด•เต เด‰เดชเดฏเต‹เด—เดชเตเดฐเดฆเดฎเดพเด•เตเด‚:
เดธเดฟเดธเตเดฑเตเดฑเด‚ เด…เดกเตโ€Œเดฎเดฟเดจเดฟเดธเตโ€ŒเดŸเตเดฐเต‡เดฑเตเดฑเตผเดฎเดพเตผเด•เตเด•เตเด‚ เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเต เด‡เด‚เดชเตเดฒเดฟเดฎเต†เดจเตเดฑเต‡เดทเตป เดฐเต€เดคเดฟ เดคเดฟเดฐเดžเตเดžเต†เดŸเตเด•เตเด•เตเดจเตเดจ เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดชเดฐเดฟเดนเดพเดฐเด‚ เดชเดฐเต€เด•เตเดทเดฟเด•เตเด•เดพเตป เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจ เด†เตผเด•เตเด•เตเด‚ เดŸเตเดฏเต‚เดŸเตเดŸเต‹เดฑเดฟเดฏเตฝ เด‰เดชเดฏเต‹เด—เดชเตเดฐเดฆเดฎเดพเด•เตเด‚.

เดŽเดจเตเดคเต เดคเต€เดฐเตเดฎเดพเดจเด™เตเด™เดณเดพเดฃเต เดžเด™เตเด™เตพ เดจเดฟเดฐเดธเดฟเดšเตเดšเดคเต, เดŽเดจเตเดคเตเด•เตŠเดฃเตเดŸเต?

เด’เดฐเต เดšเต†เดฑเดฟเดฏ เดตเต†เดฌเต เด•เตเดฒเดธเตเดฑเตเดฑเดฑเดฟเตฝ เดจเดฒเตเดฒ เดตเดพเดฏเดจ-เดŽเดดเตเดคเตเดคเต เดชเตเดฐเด•เดŸเดจเดคเตเดคเต‹เดŸเต† เดชเด™เตเด•เดฟเดŸเตเดŸ เดธเด‚เดญเดฐเดฃเด‚ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เต‡เดฃเตเดŸ เดธเดพเดนเดšเดฐเตเดฏเด‚ เดชเดฒเดชเตเดชเต‹เดดเตเด‚ เดจเดฎเตเดฎเตพ เด…เดญเดฟเดฎเตเด–เต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเต. เดžเด™เตเด™เดณเตเดŸเต† เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเตเด•เตพเด•เตเด•เดพเดฏเดฟ เดชเด™เตเด•เดฟเดŸเตเดŸ เดธเด‚เดญเดฐเดฃเด‚ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดžเด™เตเด™เตพ เดตเดฟเดตเดฟเดง เด“เดชเตเดทเดจเตเด•เตพ เดชเดฐเต€เด•เตเดทเดฟเดšเตเดšเต, เดŽเดจเตเดจเดพเตฝ เด•เตเดฑเดšเตเดšเต เดชเต‡เตผเด•เตเด•เต เด’เดฐเต‡เดธเดฎเดฏเด‚ เดจเดฟเดฐเดตเดงเดฟ เดธเต‚เดšเด•เด™เตเด™เดณเดฟเตฝ เดžเด™เตเด™เดณเต† เดคเตƒเดชเตเดคเดฟเดชเตเดชเต†เดŸเตเดคเตเดคเดพเตป เด•เดดเดฟเดžเตเดžเต. เดŽเดจเตเดคเตเด•เตŠเดฃเตเดŸเต†เดจเตเดจเต เด‡เดชเตเดชเต‹เตพ เดžเด™เตเด™เตพ เดจเดฟเด™เตเด™เดณเต‹เดŸเต เดชเดฑเดฏเตเด‚.

  • Glusterfs เดตเดพเดฏเดจเดฏเตเดŸเต†เดฏเตเด‚ เดŽเดดเตเดคเตเดคเดฟเดจเตเดฑเต†เดฏเตเด‚ เดชเตเดฐเด•เดŸเดจเดคเตเดคเดฟเตฝ เดžเด™เตเด™เดณเต† เดคเตƒเดชเตเดคเดฟเดชเตเดชเต†เดŸเตเดคเตเดคเดฟเดฏเดฟเดฒเตเดฒ; เดงเดพเดฐเดพเดณเด‚ เดซเดฏเดฒเตเด•เตพ เด’เดฐเต‡เดธเดฎเดฏเด‚ เดตเดพเดฏเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเตฝ เดชเตเดฐเดถเตโ€Œเดจเด™เตเด™เดณเตเดฃเตเดŸเดพเดฏเดฟเดฐเตเดจเตเดจเต, เด•เต‚เดŸเดพเดคเต† เดธเดฟเดชเดฟเดฏเตเดตเดฟเตฝ เด‰เดฏเตผเดจเตเดจ เดฒเต‹เดกเตเด‚ เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเตเดจเตเดจเต. เดซเดฏเดฒเตเด•เตพ เดตเดพเดฏเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดฒเต† เดชเตเดฐเดถเตเดจเด‚ เด‡เดทเตเดŸเดฟเด•เดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดจเต‡เดฐเดฟเดŸเตเดŸเต เด†เด•เตเดธเดธเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดฒเต‚เดŸเต† เดชเดฐเดฟเดนเดฐเดฟเด•เตเด•เดพเดตเตเดจเตเดจเดคเดพเดฃเต, เดŽเดจเตเดจเดพเตฝ เด‡เดคเต เดŽเดฒเตเดฒเดพเดฏเตเดชเตเดชเต‹เดดเตเด‚ เดฌเดพเดงเด•เดฎเดฒเตเดฒ, เดชเตŠเดคเตเดตเต† เดคเต†เดฑเตเดฑเดพเดฃเต.

  • 2-4 เดธเต†เตผเดตเดฑเตเด•เดณเตเดณเตเดณ เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเตเด•เดณเดฟเตฝ เดนเดพเดจเดฟเด•เดฐเดฎเดพเดฏเต‡เด•เตเด•เดพเดตเตเดจเตเดจ เด…เดฎเดฟเดคเดฎเดพเดฏ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดค เดธเต†เดซเดฟเดจเต เด‡เดทเตเดŸเดชเตเดชเต†เดŸเตเดŸเดฟเดฒเตเดฒ, เดชเตเดฐเดคเตเดฏเต‡เด•เดฟเดšเตเดšเตเด‚ เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเต เดชเดฟเดจเตเดจเต€เดŸเต เดชเดฐเดฟเดชเดพเดฒเดฟเด•เตเด•เตเด•เดฏเดพเดฃเต†เด™เตเด•เดฟเตฝ. เดตเต€เดฃเตเดŸเตเด‚, เด—เตเดฒเดธเตเดฑเตเดฑเตผเดซเตเด•เตพ เดชเต‹เดฒเต† เดชเตเดฐเดคเตเดฏเต‡เด• เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเต เด•เตเดฒเดธเตเดฑเตเดฑเดฑเตเด•เตพ เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เดพเตป เดžเด™เตเด™เดณเต† เดจเดฟเตผเดฌเดจเตเดงเดฟเด•เตเด•เตเดจเตเดจ เด—เตเดฐเตเดคเดฐเดฎเดพเดฏ เดชเตเดฐเด•เดŸเดจ เดชเดฐเดฟเดฎเดฟเดคเดฟเด•เดณเตเดฃเตเดŸเต.

  • เดชเด™เตเด•เดฟเดŸเตเดŸ เดธเด‚เดญเดฐเดฃเด‚ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดพเตป เด’เดฐเต NFS เดธเต†เตผเดตเตผ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเต เดคเต†เดฑเตเดฑเต เดธเดนเดฟเดทเตเดฃเตเดคเดฏเตเดŸเต† เด•เดพเดฐเตเดฏเดคเตเดคเดฟเตฝ เดšเต‹เดฆเตเดฏเด™เตเด™เตพ เด‰เดฏเตผเดคเตเดคเตเดจเตเดจเต.

  • เด’เดฐเต เดจเดฟเดถเตเดšเดฟเดค เดถเตเดฐเต‡เดฃเดฟเดฏเดฟเดฒเตเดณเตเดณ เดœเต‹เดฒเดฟเด•เตพเด•เตเด•เตเดณเตเดณ เดฎเดฟเด•เดšเตเดš เดœเดจเดชเตเดฐเดฟเดฏ เดชเดฐเดฟเดนเดพเดฐเดฎเดพเดฃเต s3, เดŽเดจเตเดจเดพเตฝ เด‡เดคเต เด’เดฐเต เดซเดฏเตฝ เดธเดฟเดธเตเดฑเตเดฑเดฎเดฒเตเดฒ, เด…เดคเต เด…เดคเดฟเดจเตเดฑเต† เดตเตเดฏเดพเดชเตเดคเดฟ เด•เตเดฑเดฏเตเด•เตเด•เตเดจเตเดจเต.

  • lsyncd. เดจเดฎเตเดฎเตพ เด‡เดคเดฟเดจเด•เด‚ เดคเดจเตเดจเต† "เดจเต‹เตบ-เดซเดฏเตฝ เดธเดฟเดธเตเดฑเตเดฑเด™เตเด™เดณเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต" เดธเด‚เดธเดพเดฐเดฟเด•เตเด•เดพเตป เดคเตเดŸเด™เตเด™เดฟเดฏเดฟเดŸเตเดŸเตเดฃเตเดŸเต†เด™เตเด•เดฟเตฝ, เดˆ เดœเดจเดชเตเดฐเดฟเดฏ เดชเดฐเดฟเดนเดพเดฐเดคเตเดคเต† เดฎเดฑเดฟเด•เดŸเด•เตเด•เตเดจเตเดจเดคเต เดฎเต‚เดฒเตเดฏเดตเดคเตเดคเดพเดฃเต. เดฐเดฃเตเดŸเต-เดตเดดเดฟ เด•เตˆเดฎเดพเดฑเตเดฑเดคเตเดคเดฟเดจเต เด‡เดคเต เด…เดจเตเดฏเต‹เดœเตเดฏเดฎเดฒเตเดฒเต†เดจเตเดจเต เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ (เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดถเดฐเดฟเด•เตเด•เตเด‚ เดตเต‡เดฃเดฎเต†เด™เตเด•เดฟเตฝ, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด•เดดเดฟเดฏเตเด‚), เด‡เดคเต เดงเดพเดฐเดพเดณเด‚ เดซเดฏเดฒเตเด•เดณเดฟเตฝ เดธเตเดฅเดฟเดฐเดฎเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เดฟเดฒเตเดฒ. เดฎเตŠเดคเตเดคเดคเตเดคเดฟเตฝ เด’เดฐเต เดจเดฒเตเดฒ เด•เต‚เดŸเตเดŸเดฟเดšเตเดšเต‡เตผเด•เตเด•เตฝ เด…เดคเต เด’เดฑเตเดฑ-เดคเตเดฐเต†เดกเต เด†เดฃเต. เด•เดพเดฐเดฃเด‚ เดชเตเดฐเต‹เด—เตเดฐเดพเดฎเดฟเดจเตเดฑเต† เด†เตผเด•เตเด•เดฟเดŸเต†เด•เตเดšเดฑเดฟเดฒเดพเดฃเต: เดตเตผเด•เตเด•เต เด’เดฌเตเดœเด•เตเดฑเตเดฑเตเด•เตพ เดจเดฟเดฐเต€เด•เตเดทเดฟเด•เตเด•เดพเตป เด‡เดคเต เด‡เดจเต‹เดŸเตเดŸเดฟเดซเตˆ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต, เด…เดคเต เดธเตเดฑเตเดฑเดพเตผเดŸเตเดŸเดชเตเดชเดฟเดฒเตเด‚ เดฑเต€เดธเตโ€Œเด•เดพเดจเดฟเด‚เด—เต เดธเดฎเดฏเดคเตเดคเตเด‚ เด…เดธเตˆเตป เดšเต†เดฏเตเดฏเตเดจเตเดจเต. rsync เดŸเตเดฐเดพเตปเดธเตเดซเตผ เดฎเต€เดกเดฟเดฏเดฎเดพเดฏเดฟ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต.

เดŸเตเดฏเต‚เดŸเตเดŸเต‹เดฑเดฟเดฏเตฝ: drbd+ocfs2 เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟ เดชเด™เตเด•เดฟเดŸเตเดŸ เดธเด‚เดญเดฐเดฃเด‚ เดŽเด™เตเด™เดจเต† เดตเดฟเดจเตเดฏเดธเดฟเด•เตเด•เดพเด‚

เดžเด™เตเด™เตพเด•เตเด•เต เดเดฑเตเดฑเดตเตเด‚ เดธเต—เด•เดฐเตเดฏเดชเตเดฐเดฆเดฎเดพเดฏ เดชเดฐเดฟเดนเดพเดฐเด™เตเด™เดณเดฟเดฒเตŠเดจเตเดจเดพเดฃเต เดฒเดฟเด™เตเด•เต ocfs2+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 โ€” drbd เดตเต‹เดณเตเดฏเดคเตเดคเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เดชเดพเดคเดฏเดพเดฏเดฟ /dev/drbd0 เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด•.
เดกเดฟเดธเตเด•เต /dev/vdb1 - /dev/vdb1 เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด•
เดธเดฎเดจเตเดตเดฏเด‚ {เดจเดฟเดฐเด•เตเด•เต 1000M; } - เดœเดฟเด—เดพเดฌเดฟเดฑเตเดฑเต เดšเดพเดจเตฝ เดฌเดพเตปเดกเตโ€Œเดตเดฟเดกเตเดคเตเดคเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด•
เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเด•-เดฐเดฃเตเดŸเต-เดชเตเดฐเตˆเดฎเดฑเดฟ - เดฐเดฃเตเดŸเต เดชเตเดฐเดพเดฅเดฎเดฟเด• เดธเต†เตผเดตเดฑเตเด•เดณเดฟเตฝ เดฎเดพเดฑเตเดฑเด™เตเด™เตพ เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เดพเตป เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต เดชเตเดฐเดงเดพเดจ เด“เดชเตเดทเตป
เดถเต‡เดทเด‚-sb-0pri, after-sb-1pri, after-sb-2pri โ€” splitbrain เด•เดฃเตเดŸเต†เดคเตเดคเตเดฎเตเดชเต‹เตพ เดจเต‹เดกเดฟเดจเตเดฑเต† เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เตพเด•เตเด•เต เด‰เดคเตเดคเดฐเดตเดพเดฆเดฟเด•เดณเดพเดฏ เด“เดชเตเดทเดจเตเด•เตพ. เด•เต‚เดŸเตเดคเตฝ เดตเดฟเดถเดฆเดพเด‚เดถเด™เตเด™เตพ เดกเต‹เด•เตเดฏเตเดฎเต†เดจเตเดฑเต‡เดทเดจเดฟเตฝ เด•เดพเดฃเดพเด‚.
เดฐเดฃเตเดŸเดฟเดฒเตเด‚ เดชเตเดฐเดพเดฅเดฎเดฟเด•เดฎเดพเด•เตเด• - เดฐเดฃเตเดŸเต เดจเต‹เดกเตเด•เดณเตเด‚ เดชเตเดฐเดพเดฅเดฎเดฟเด•เดฎเดพเดฏเดฟ เดธเดœเตเดœเดฎเดพเด•เตเด•เตเดจเตเดจเต.

เดžเด™เตเด™เดณเตเดŸเต† เด•เดพเดฐเตเดฏเดคเตเดคเดฟเตฝ, เดžเด™เตเด™เตพเด•เตเด•เต 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

เดกเดฏเดฑเด•เตเดŸเดฑเดฟ /เดฎเดพเดงเตเดฏเดฎเด‚/เดชเด™เตเด•เดฟเดŸเตเดŸเดคเต เด…เดคเต เดฎเตเตปเด•เต‚เดŸเตเดŸเดฟ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เต‡เดฃเตเดŸเดคเดพเดฃเต.

เด‡เดตเดฟเดŸเต† เดจเดฎเตเดฎเตพ noauto เด“เดชเตโ€Œเดทเดจเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต, เด…เดคเดพเดฏเดคเต เดธเตเดฑเตเดฑเดพเตผเดŸเตเดŸเดชเตเดชเดฟเตฝ เดซเดฏเตฝ เดฎเตŒเดฃเตเดŸเต เดšเต†เดฏเตเดฏเดชเตเดชเต†เดŸเดฟเดฒเตเดฒ (เดธเดฟเดธเตเดฑเตเดฑเด‚เดกเดฟ เดตเดดเดฟ เดจเต†เดฑเตเดฑเตโ€Œเดตเตผเด•เตเด•เต เดซเดฏเดฒเตเด•เตพ เดฎเตŒเดฃเตเดŸเต เดšเต†เดฏเตเดฏเดพเดจเดพเดฃเต เดžเดพเตป เด‡เดทเตเดŸเดชเตเดชเต†เดŸเตเดจเตเดจเดคเต) เด’เดชเตเดชเด‚ heartbeat=local, เด…เดคเดพเดฏเดคเต เด“เดฐเต‹ เดจเต‹เดกเดฟเดฒเตเด‚ เดนเตƒเดฆเดฏเดฎเดฟเดŸเดฟเดชเตเดชเต เดธเต‡เดตเดจเด‚ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต เดŽเดจเตเดจเดพเดฃเต. เดตเดฒเดฟเดฏ เด•เตเดฒเดธเตเดฑเตเดฑเดฑเตเด•เตพเด•เตเด•เต เด•เต‚เดŸเตเดคเตฝ เด…เดจเตเดฏเต‹เดœเตเดฏเดฎเดพเดฏ เด†เด—เต‹เดณ เดนเตƒเดฆเดฏเดฎเดฟเดŸเดฟเดชเตเดชเตเด‚ เด‰เดฃเตเดŸเต.

เด…เดŸเตเดคเตเดคเดคเดพเดฏเดฟ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดฎเตŒเดฃเตเดŸเต เดšเต†เดฏเตเดฏเดพเด‚ /เดฎเดพเดงเตเดฏเดฎเด‚/เดชเด™เตเด•เดฟเดŸเตเดŸเดคเต เด‰เดณเตเดณเดŸเด•เตเด• เดธเดฎเดจเตเดตเดฏเด‚ เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เตเด•.

เดšเต†เดฏเตเดคเตเด•เดดเดฟเดžเตเดžเต! เดคเตฝเดซเดฒเดฎเดพเดฏเดฟ, เดธเตเด•เต‡เดฒเดฌเดฟเดณเดฟเดฑเตเดฑเดฟเดฏเตเด‚ เดฎเดพเดจเตเดฏเดฎเดพเดฏ เดชเตเดฐเด•เดŸเดจเดตเตเด‚ เด‰เดณเตเดณ เด•เต‚เดŸเตเดคเดฒเต‹ เด•เตเดฑเดตเต‹ เดคเต†เดฑเตเดฑเต-เดธเดนเดฟเดทเตเดฃเตเดคเดฏเตเดณเตเดณ เดธเด‚เดญเดฐเดฃเด‚ เดžเด™เตเด™เตพเด•เตเด•เต เดฒเดญเดฟเด•เตเด•เตเดจเตเดจเต.

เด…เดตเดฒเด‚เดฌเด‚: www.habr.com

เด’เดฐเต เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚ เดšเต‡เตผเด•เตเด•เตเด•