RabbitMQ เชจเซเช‚ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธเชฎเชพเช‚ เชธเซ€เชฎเชฒเซ‡เชธ เชธเซเชฅเชณเชพเช‚เชคเชฐ

RabbitMQ เชจเซเช‚ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธเชฎเชพเช‚ เชธเซ€เชฎเชฒเซ‡เชธ เชธเซเชฅเชณเชพเช‚เชคเชฐ

RabbitMQ เช เชเชฐเซเชฒเชพเช‚เช—เชฎเชพเช‚ เชฒเช–เชพเชฏเซ‡เชฒ เชธเช‚เชฆเซ‡เชถ เชฌเซเชฐเซ‹เช•เชฐ เช›เซ‡ เชœเซ‡ เชคเชฎเชจเซ‡ เชฌเชนเซเชตเชฟเชง เชจเซ‹เชกเซเชธ เชชเชฐ เชธเช‚เชชเซ‚เชฐเซเชฃ เชกเซ‡เชŸเชพ เชชเซเชฐเชคเชฟเช•เซƒเชคเชฟ เชธเชพเชฅเซ‡ เชซเซ‡เชฒเช“เชตเชฐ เช•เซเชฒเชธเซเชŸเชฐ เช—เซ‹เช เชตเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡, เชœเซเชฏเชพเช‚ เชฆเชฐเซ‡เช• เชจเซ‹เชก เชตเชฟเชจเช‚เชคเซ€เช“ เชตเชพเช‚เชšเชตเชพ เช…เชจเซ‡ เชฒเช–เชตเชพเชจเซ€ เชธเซ‡เชตเชพ เช†เชชเซ€ เชถเช•เซ‡ เช›เซ‡. เชชเซเชฐเซ‹เชกเช•เซเชถเชจ เช‘เชชเชฐเซ‡เชถเชจเชฎเชพเช‚ เช˜เชฃเชพเช‚ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เช•เซเชฒเชธเซเชŸเชฐเซ‹ เชนเซ‹เชตเชพเชจเซ‡ เช•เชพเชฐเชฃเซ‡, เช…เชฎเซ‡ เชฎเซ‹เชŸเซ€ เชธเช‚เช–เซเชฏเชพเชฎเชพเช‚ RabbitMQ เช‡เชจเซเชธเซเชŸเซ‹เชฒเซ‡เชถเชจเชจเซ‡ เชธเชชเซ‹เชฐเซเชŸ เช•เชฐเซ€เช เช›เซ€เช เช…เชจเซ‡ เชกเชพเช‰เชจเชŸเชพเช‡เชฎ เชตเชฟเชจเชพ เชกเซ‡เชŸเชพเชจเซ‡ เชเช• เช•เซเชฒเชธเซเชŸเชฐเชฎเชพเช‚เชฅเซ€ เชฌเซ€เชœเชพ เช•เซเชฒเชธเซเชŸเชฐเชฎเชพเช‚ เชธเซเชฅเชพเชจเชพเช‚เชคเชฐเชฟเชค เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐเชฟเชฏเชพเชคเชจเซ‹ เชธเชพเชฎเชจเซ‹ เช•เชฐเชตเซ‹ เชชเชกเซเชฏเซ‹ เชนเชคเซ‹.

เช…เชฎเชจเซ‡ เช“เช›เชพเชฎเชพเช‚ เช“เช›เชพ เชฌเซ‡ เช•เซ‡เชธเซ‹เชฎเชพเช‚ เช† เช“เชชเชฐเซ‡เชถเชจเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡:

  1. RabbitMQ เช•เซเชฒเชธเซเชŸเชฐเชฎเชพเช‚เชฅเซ€ เชกเซ‡เชŸเชพ เชŸเซเชฐเชพเชจเซเชธเชซเชฐ เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ‡ เชœเซ‡ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธเชฎเชพเช‚ เชธเซเชฅเชฟเชค เชจเชฅเซ€ - เชเช• เชจเชตเชพ - เชชเชนเซ‡เชฒเชพเชฅเซ€ เชœ "เช•เซเชฌเชฐเชจเซ‡เชŸเชพเช‡เชเซเชก" (เชเชŸเชฒเซ‡ โ€‹โ€‹โ€‹โ€‹เช•เซ‡ K8s เชชเซ‹เชกเซเชธเชฎเชพเช‚ เช•เชพเชฐเซเชฏเชฐเชค เช›เซ‡) - เช•เซเชฒเชธเซเชŸเชฐเชฎเชพเช‚.
  2. RabbitMQ เชจเซเช‚ Kubernetes เชฎเชพเช‚ เชเช• เชจเซ‡เชฎเชธเซเชชเซ‡เชธเชฅเซ€ เชฌเซ€เชœเชพเชฎเชพเช‚ เชธเซเชฅเชณเชพเช‚เชคเชฐ (เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, เชœเซ‹ เชธเชฐเซเช•เชฟเชŸ เชจเซ‡เชฎเชธเซเชชเซ‡เชธ เชฆเซเชตเชพเชฐเชพ เชธเซ€เชฎเชพเช‚เช•เชฟเชค เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เชคเซ‹ เชชเช›เซ€ เชเช• เชธเชฐเซเช•เชฟเชŸเชฎเชพเช‚เชฅเซ€ เชฌเซ€เชœเชพ เชธเชฐเซเช•เชฟเชŸเชฎเชพเช‚ เชˆเชจเซเชซเซเชฐเชพเชธเซเชŸเซเชฐเช•เซเชšเชฐ เชŸเซเชฐเชพเชจเซเชธเชซเชฐ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡).

เชฒเซ‡เช–เชฎเชพเช‚ เชธเซ‚เชšเชฟเชค เชฐเซ‡เชธเซ€เชชเซ€ เชเชตเซ€ เชชเชฐเชฟเชธเซเชฅเชฟเชคเชฟเช“ เชชเชฐ เช•เซ‡เชจเซเชฆเซเชฐเชฟเชค เช›เซ‡ (เชชเชฐเช‚เชคเซ เชคเซ‡ เชคเซ‡เชจเชพ เชธเซเชงเซ€ เชฎเชฐเซเชฏเชพเชฆเชฟเชค เชจเชฅเซ€) เชœเซ‡เชฎเชพเช‚ เชเช• เชœเซ‚เชจเซเช‚ RabbitMQ เช•เซเชฒเชธเซเชŸเชฐ เช›เซ‡ (เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, 3 เชจเซ‹เชกเซเชธเชจเซเช‚), เช•เชพเช‚ เชคเซ‹ เชชเชนเซ‡เชฒเซ‡เชฅเซ€ K8s เช…เชฅเชตเชพ เช•เซ‡เชŸเชฒเชพเช• เชœเซ‚เชจเชพ เชธเชฐเซเชตเชฐ เชชเชฐ เชธเซเชฅเชฟเชค เช›เซ‡. เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชชเชฐ เชนเซ‹เชธเซเชŸ เช•เชฐเซ‡เชฒเซ€ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจ (เชชเชนเซ‡เชฒเซ‡เชฅเซ€ เชœ เชคเซเชฏเชพเช‚ เช›เซ‡ เช…เชฅเชตเชพ เชญเชตเชฟเชทเซเชฏเชฎเชพเช‚) เชคเซ‡เชจเซ€ เชธเชพเชฅเซ‡ เช•เชพเชฎ เช•เชฐเซ‡ เช›เซ‡:

RabbitMQ เชจเซเช‚ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธเชฎเชพเช‚ เชธเซ€เชฎเชฒเซ‡เชธ เชธเซเชฅเชณเชพเช‚เชคเชฐ

... เช…เชจเซ‡ เช…เชฎเซ‡ เชคเซ‡เชจเซ‡ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธเชฎเชพเช‚ เชจเชตเชพ เช‰เชคเซเชชเชพเชฆเชจเชฎเชพเช‚ เชธเซเชฅเชพเชจเชพเช‚เชคเชฐเชฟเชค เช•เชฐเชตเชพเชจเชพ เช•เชพเชฐเซเชฏเชจเซ‹ เชธเชพเชฎเชจเซ‹ เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ€เช.

เชชเซเชฐเชฅเชฎ, เชธเซเชฅเชณเชพเช‚เชคเชฐ เชฎเชพเชŸเซ‡เชจเชพ เชธเชพเชฎเชพเชจเซเชฏ เช…เชญเชฟเช—เชฎเชจเซเช‚ เชตเชฐเซเชฃเชจ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡, เช…เชจเซ‡ เชคเซ‡ เชชเช›เซ€ เชคเซ‡เชจเชพ เช…เชฎเชฒเซ€เช•เชฐเชฃเชจเซ€ เชคเช•เชจเซ€เช•เซ€ เชตเชฟเช—เชคเซ‹เชจเซเช‚ เชตเชฐเซเชฃเชจ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡.

เชธเซเชฅเชณเชพเช‚เชคเชฐ เช…เชฒเซเช—เซ‹เชฐเชฟเชงเชฎ

เช•เซ‹เชˆเชชเชฃ เช•เซเชฐเชฟเชฏเชพ เชชเชนเซ‡เชฒเชพเช‚ เชชเซเชฐเชฅเชฎ, เชชเซเชฐเชพเชฐเช‚เชญเชฟเช•, เชคเชฌเช•เซเช•เซ‹ เช เชคเชชเชพเชธเชตเชพเชจเซ‹ เช›เซ‡ เช•เซ‡ เชœเซ‚เชจเชพ RabbitMQ เช‡เชจเซเชธเซเชŸเซ‹เชฒเซ‡เชถเชจเชฎเชพเช‚ เช‰เชšเซเชš เช‰เชชเชฒเชฌเซเชงเชคเชพ เชฎเซ‹เชก เชธเช•เซเชทเชฎ เช›เซ‡ (HA). เช•เชพเชฐเชฃ เชธเซเชชเชทเซเชŸ เช›เซ‡ - เช…เชฎเซ‡ เช•เซ‹เชˆเชชเชฃ เชกเซ‡เชŸเชพ เช—เซเชฎเชพเชตเชตเชพ เชฎเชพเช‚เช—เชคเชพ เชจเชฅเซ€. เช† เชคเชชเชพเชธ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เชคเชฎเซ‡ RabbitMQ เชเชกเชฎเชฟเชจ เชชเซ‡เชจเชฒ เชชเชฐ เชœเชˆ เชถเช•เซ‹ เช›เซ‹ เช…เชจเซ‡ เชเชกเชฎเชฟเชจ โ†’ เชจเซ€เชคเชฟเช“ เชŸเซ…เชฌเชฎเชพเช‚ เช–เชพเชคเชฐเซ€ เช•เชฐเซ‹ เช•เซ‡ เชฎเซ‚เชฒเซเชฏ เชธเซ‡เชŸ เช›เซ‡. ha-mode: all:

RabbitMQ เชจเซเช‚ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธเชฎเชพเช‚ เชธเซ€เชฎเชฒเซ‡เชธ เชธเซเชฅเชณเชพเช‚เชคเชฐ

เช†เช—เชณเชจเซเช‚ เชชเช—เชฒเซเช‚ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชชเซ‹เชกเซเชธเชฎเชพเช‚ เชเช• เชจเชตเซเช‚ RabbitMQ เช•เซเชฒเชธเซเชŸเชฐ เชŠเชญเซเช‚ เช•เชฐเชตเชพเชจเซเช‚ เช›เซ‡ (เช…เชฎเชพเชฐเชพ เช•เชฟเชธเซเชธเชพเชฎเชพเช‚, เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡, 3 เชจเซ‹เชกเซเชธเชจเซ‹ เชธเชฎเชพเชตเซ‡เชถ เชฅเชพเชฏ เช›เซ‡, เชชเชฐเช‚เชคเซ เชคเซ‡เชฎเชจเซ€ เชธเช‚เช–เซเชฏเชพ เช…เชฒเช— เชนเซ‹เชˆ เชถเช•เซ‡ เช›เซ‡).

เช† เชชเช›เซ€, เช…เชฎเซ‡ เชœเซ‚เชจเชพ เช…เชจเซ‡ เชจเชตเชพ RabbitMQ เช•เซเชฒเชธเซเชŸเชฐเซ‹เชจเซ‡ เชฎเชฐเซเชœ เช•เชฐเซ€เช เช›เซ€เช, เชเช• เชœ เช•เซเชฒเชธเซเชŸเชฐ (6 เชจเซ‹เชกเซเชธเชจเซเช‚):

RabbitMQ เชจเซเช‚ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธเชฎเชพเช‚ เชธเซ€เชฎเชฒเซ‡เชธ เชธเซเชฅเชณเชพเช‚เชคเชฐ

เชœเซ‚เชจเชพ เช…เชจเซ‡ เชจเชตเชพ RabbitMQ เช•เซเชฒเชธเซเชŸเชฐเซ‹ เชตเชšเซเชšเซ‡ เชกเซ‡เชŸเชพ เชธเชฟเช‚เช•เซเชฐเชจเชพเช‡เชเซ‡เชถเชจเชจเซ€ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพ เชถเชฐเซ‚ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เช›เซ‡. เชเช•เชตเชพเชฐ เชคเชฎเชพเชฎ เชกเซ‡เชŸเชพ เช•เซเชฒเชธเซเชŸเชฐเชจเชพ เชคเชฎเชพเชฎ เชจเซ‹เชกเซเชธ เชตเชšเซเชšเซ‡ เชธเชฎเชจเซเชตเชฏเชฟเชค เชฅเชˆ เชœเชพเชฏ, เช…เชฎเซ‡ เชจเชตเชพ เช•เซเชฒเชธเซเชŸเชฐเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเชจเซ‡ เชธเซเชตเชฟเชš เช•เชฐเซ€ เชถเช•เซ€เช เช›เซ€เช:

RabbitMQ เชจเซเช‚ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธเชฎเชพเช‚ เชธเซ€เชฎเชฒเซ‡เชธ เชธเซเชฅเชณเชพเช‚เชคเชฐ

เช† เช‘เชชเชฐเซ‡เชถเชจเซเชธ เชชเช›เซ€, เชฐเซ‡เชฌเชฟเชŸเชเชฎเช•เซเชฏเซ เช•เซเชฒเชธเซเชŸเชฐเชฎเชพเช‚เชฅเซ€ เชœเซ‚เชจเชพ เช—เชพเช‚เช เซ‹เชจเซ‡ เชฆเซ‚เชฐ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชคเซ‡ เชชเซ‚เชฐเชคเซเช‚ เช›เซ‡, เช…เชจเซ‡ เชšเชพเชฒเชจเซ‡ เชธเช‚เชชเซ‚เชฐเซเชฃ เช—เชฃเซ€ เชถเช•เชพเชฏ:

RabbitMQ เชจเซเช‚ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธเชฎเชพเช‚ เชธเซ€เชฎเชฒเซ‡เชธ เชธเซเชฅเชณเชพเช‚เชคเชฐ

เช…เชฎเซ‡ เช‰เชคเซเชชเชพเชฆเชจเชฎเชพเช‚ เช˜เชฃเซ€ เชตเช–เชค เช† เชฏเซ‹เชœเชจเชพเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซเชฏเซ‹ เช›เซ‡. เชœเซ‹ เช•เซ‡, เช…เชฎเชพเชฐเซ€ เชชเซ‹เชคเชพเชจเซ€ เชธเช—เชตเชก เชฎเชพเชŸเซ‡, เช…เชฎเซ‡ เชคเซ‡เชจเซ‡ เชเช• เชตเชฟเชถเชฟเชทเซเชŸ เชธเชฟเชธเซเชŸเชฎเชฎเชพเช‚ เช…เชฎเชฒเชฎเชพเช‚ เชฎเซ‚เช•เซเชฏเซเช‚ เช›เซ‡ เชœเซ‡ เชฌเชนเซเชตเชฟเชง เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เช•เซเชฒเชธเซเชŸเชฐเซ‹เชฎเชพเช‚ เชชเซเชฐเชฎเชพเชฃเชญเซ‚เชค RMQ เช—เซ‹เช เชตเชฃเซ€เช“เชจเซเช‚ เชตเชฟเชคเชฐเชฃ เช•เชฐเซ‡ เช›เซ‡. (เชœเซ‡เช“ เชตเชฟเชšเชฟเชคเซเชฐ เช›เซ‡ เชคเซ‡เชฎเชจเชพ เชฎเชพเชŸเซ‡: เช…เชฎเซ‡ เชตเชพเชค เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ€เช เชเชกเช“เชจ เช“เชชเชฐเซ‡เชŸเชฐเชœเซ‡เชจเชพ เชตเชฟเชถเซ‡ เช…เชฎเซ‡ เชนเชฎเชฃเชพเช‚ เชœ เช•เชนเซเชฏเซเช‚). เชจเซ€เชšเซ‡ เช…เชฎเซ‡ เชตเซเชฏเช•เซเชคเชฟเช—เชค เชธเซ‚เชšเชจเชพเช“ เชฐเชœเซ‚ เช•เชฐเซ€เชถเซเช‚ เชœเซ‡ เช•เซ‹เชˆเชชเชฃ เชตเซเชฏเช•เซเชคเชฟ เชคเซ‡เชฎเชจเชพ เช‡เชจเซเชธเซเชŸเซ‹เชฒเซ‡เชถเชจ เชชเชฐ เชฒเชพเช—เซ เช•เชฐเซ€ เชถเช•เซ‡ เช›เซ‡ เชœเซ‡เชฅเซ€ เช•เชฐเซ€เชจเซ‡ เชธเซ‚เชšเชฟเชค เช‰เช•เซ‡เชฒเชจเซ‡ เช•เชพเชฐเซเชฏเชฎเชพเช‚ เช…เชœเชฎเชพเชตเซ€ เชถเช•เชพเชฏ.

เชšเชพเชฒเซ‹ เชตเซเชฏเชตเชนเชพเชฐเชฎเชพเช‚ เชคเซ‡เชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเซ€เช

เชœเชฐเซ‚เชฐเซ€เชฏเชพเชคเซ‹

เชตเชฟเช—เชคเซ‹ เช–เซ‚เชฌ เชœ เชธเชฐเชณ เช›เซ‡:

  1. เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เช•เซเชฒเชธเซเชŸเชฐ (เชฎเชฟเชจเซ€เช•เซเชฏเซเชฌ เชชเชฃ เช•เชพเชฎ เช•เชฐเชถเซ‡);
  2. เชฐเซ‡เชฌเชฟเชŸเชเชฎเช•เซเชฏเซ เช•เซเชฒเชธเซเชŸเชฐ (เชฌเซ‡เชฐ เชฎเซ‡เชŸเชฒ เชชเชฐ เชคเซˆเชจเชพเชค เช•เชฐเซ€ เชถเช•เชพเชฏ เช›เซ‡, เช…เชจเซ‡ เชธเชคเซเชคเชพเชตเชพเชฐ เชนเซ‡เชฒเซเชฎ เชšเชพเชฐเซเชŸเชฎเชพเช‚เชฅเซ€ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธเชฎเชพเช‚ เชจเชฟเชฏเชฎเชฟเชค เช•เซเชฒเชธเซเชŸเชฐเชจเซ€ เชœเซ‡เชฎ เชฌเชจเชพเชตเซ€ เชถเช•เชพเชฏ เช›เซ‡).

เชจเซ€เชšเซ‡เชจเชพ เช‰เชฆเชพเชนเชฐเชฃ เชฎเชพเชŸเซ‡, เชฎเซ‡เช‚ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธ เชชเชฐ RMQ เชœเชฎเชพเชตเซเชฏเซเช‚ เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เช•เซ‰เชฒ เช•เชฐเซเชฏเซ‹ rmq-old.

เชธเซเชŸเซ‡เชจเซเชก เชคเซˆเชฏเชพเชฐเซ€

1. เชนเซ‡เชฒเซเชฎ เชšเชพเชฐเซเชŸ เชกเชพเช‰เชจเชฒเซ‹เชก เช•เชฐเซ‹ เช…เชจเซ‡ เชคเซ‡เชฎเชพเช‚ เชฅเซ‹เชกเซ‹ เชซเซ‡เชฐเชซเชพเชฐ เช•เชฐเซ‹:

helm fetch --untar stable/rabbitmq-ha

เชธเช—เชตเชก เชฎเชพเชŸเซ‡, เช…เชฎเซ‡ เชชเชพเชธเชตเชฐเซเชก เชธเซ‡เชŸ เช•เชฐเซ€เช เช›เซ€เช, ErlangCookie เช…เชจเซ‡ เชฐเชพเชœเช•เชพเชฐเชฃ เช•เชฐเซ‹ ha-allเชœเซ‡เชฅเซ€ เชฎเซ‚เชณเชญเซ‚เชค เชฐเซ€เชคเซ‡ เช•เชคเชพเชฐเซ‹เชจเซ‡ RMQ เช•เซเชฒเชธเซเชŸเชฐเชจเชพ เชคเชฎเชพเชฎ เชจเซ‹เชกเซเชธ เชตเชšเซเชšเซ‡ เชธเชฎเชจเซเชตเชฏเชฟเชค เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡:

rabbitmqPassword: guest
rabbitmqErlangCookie: mae9joopaol7aiVu3eechei2waiGa2we
definitions:
policies: |-
  {
    "name": "ha-all",
    "pattern": ".*",
    "vhost": "/",
    "definition": {
      "ha-mode": "all",
      "ha-sync-mode": "automatic",
      "ha-sync-batch-size": 81920
    }
  }

2. เชšเชพเชฐเซเชŸ เช‡เชจเซเชธเซเชŸเซ‹เชฒ เช•เชฐเซ‹:

helm install . --name rmq-old --namespace rmq-old

3. RabbitMQ เชเชกเชฎเชฟเชจ เชชเซ‡เชจเชฒ เชชเชฐ เชœเชพเช“, เชจเชตเซ€ เช•เชคเชพเชฐ เชฌเชจเชพเชตเซ‹ เช…เชจเซ‡ เช˜เชฃเชพ เชธเช‚เชฆเซ‡เชถเชพเช“ เช‰เชฎเซ‡เชฐเซ‹. เชคเซ‡เชฎเชจเซ€ เชœเชฐเซ‚เชฐ เชชเชกเชถเซ‡ เชœเซ‡เชฅเซ€ เชธเซเชฅเชณเชพเช‚เชคเชฐ เชชเช›เซ€ เช…เชฎเซ‡ เช–เชพเชคเชฐเซ€ เช•เชฐเซ€ เชถเช•เซ€เช เช•เซ‡ เชคเชฎเชพเชฎ เชกเซ‡เชŸเชพ เชธเชพเชšเชตเซ‡เชฒ เช›เซ‡ เช…เชจเซ‡ เช…เชฎเซ‡ เช•เช‚เชˆเชชเชฃ เช—เซเชฎเชพเชตเซเชฏเซเช‚ เชจเชฅเซ€:

RabbitMQ เชจเซเช‚ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธเชฎเชพเช‚ เชธเซ€เชฎเชฒเซ‡เชธ เชธเซเชฅเชณเชพเช‚เชคเชฐ

เชŸเซ‡เชธเซเชŸ เชฌเซ‡เชจเซเชš เชคเซˆเชฏเชพเชฐ เช›เซ‡: เช…เชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชกเซ‡เชŸเชพ เชธเชพเชฅเซ‡ "เชœเซ‚เชจเซเช‚" RabbitMQ เช›เซ‡ เชœเซ‡เชจเซ‡ เชŸเซเชฐเชพเชจเซเชธเชซเชฐ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡.

RabbitMQ เช•เซเชฒเชธเซเชŸเชฐเชจเซเช‚ เชธเซเชฅเชพเชจเชพเช‚เชคเชฐเชฃ

1. เชชเซเชฐเชฅเชฎ, เชšเชพเชฒเซ‹ เชจเชตเชพ RabbitMQ เชจเซ‡ เชœเชฎเชพเชตเซ€เช เชฎเชฟเชคเซเชฐ เชธเชพเชฅเซ‡ เชจเซ‡เชฎเชธเซเชชเซ‡เชธ เชธเชฎเชพเชจ ErlangCookie เช…เชจเซ‡ เชตเชชเชฐเชพเชถเช•เชฐเซเชคเชพ เชฎเชพเชŸเซ‡ เชชเชพเชธเชตเชฐเซเชก. เช† เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เช…เชฎเซ‡ เช‰เชชเชฐ เชตเชฐเซเชฃเชตเซ‡เชฒ เช‘เชชเชฐเซ‡เชถเชจเซเชธ เช•เชฐเซ€เชถเซเช‚, RMQ เช‡เชจเซเชธเซเชŸเซ‹เชฒ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡เชจเชพ เช…เช‚เชคเชฟเชฎ เช†เชฆเซ‡เชถเชจเซ‡ เชจเซ€เชšเซ‡เชจเชพเชฎเชพเช‚ เชฌเชฆเชฒเซ€เชถเซเช‚:

helm install . --name rmq-new --namespace rmq-new

2. เชนเชตเซ‡ เชคเชฎเชพเชฐเซ‡ เชจเชตเชพ เช•เซเชฒเชธเซเชŸเชฐเชจเซ‡ เชœเซ‚เชจเชพ เชธเชพเชฅเซ‡ เชฎเชฐเซเชœ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡. เช† เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡, เชฆเชฐเซ‡เช• เชถเซ€เช‚เช—เซ‹ เชชเชฐ เชœเชพเช“ เชจเชตเซ€ RabbitMQ เช…เชจเซ‡ เช†เชฆเซ‡เชถเซ‹ เชšเชฒเชพเชตเซ‹:

export OLD_RMQ=rabbit@rmq-old-rabbitmq-ha-0.rmq-old-rabbitmq-ha-discovery.rmq-old.svc.cluster.local && 
  rabbitmqctl stop_app && 
  rabbitmqctl join_cluster $OLD_RMQ && 
  rabbitmqctl start_app

เชšเชฒเชฎเชพเช‚ OLD_RMQ เชเช• เชจเซ‹เชกเชจเซเช‚ เชธเชฐเชจเชพเชฎเซเช‚ เชฎเชณเซ‡ เช›เซ‡ เชœเซ‚เชจเซเช‚ RMQ เช•เซเชฒเชธเซเชŸเชฐ.

เช† เช†เชฆเซ‡เชถเซ‹ เชตเชฐเซเชคเชฎเชพเชจ เชจเซ‹เชกเชจเซ‡ เชฌเช‚เชง เช•เชฐเชถเซ‡ เชจเชตเซ€ RMQ เช•เซเชฒเชธเซเชŸเชฐ, เชคเซ‡เชจเซ‡ เชœเซ‚เชจเชพ เช•เซเชฒเชธเซเชŸเชฐ เชธเชพเชฅเซ‡ เชœเซ‹เชกเซ‹ เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เชซเชฐเซ€เชฅเซ€ เชฒเซ‹เช‚เชš เช•เชฐเซ‹.

3. 6 เชจเซ‹เชกเซเชธเชจเซเช‚ RMQ เช•เซเชฒเชธเซเชŸเชฐ เชคเซˆเชฏเชพเชฐ เช›เซ‡:

RabbitMQ เชจเซเช‚ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธเชฎเชพเช‚ เชธเซ€เชฎเชฒเซ‡เชธ เชธเซเชฅเชณเชพเช‚เชคเชฐ

เชฌเชงเชพ เชจเซ‹เชกเซเชธ เชตเชšเซเชšเซ‡ เชธเช‚เชฆเซ‡เชถเชพเช“ เชธเชฟเช‚เช•เซเชฐเชจเชพเช‡เช เชฅเชพเชฏ เชคเซเชฏเชพเช‚ เชธเซเชงเซ€ เชคเชฎเชพเชฐเซ‡ เชฐเชพเชน เชœเซ‹เชตเซ€ เชชเชกเชถเซ‡. เชคเซ‡ เช…เชจเซเชฎเชพเชจ เชฒเช—เชพเชตเชตเซเช‚ เชฎเซเชถเซเช•เซ‡เชฒ เชจเชฅเซ€ เช•เซ‡ เชธเช‚เชฆเซ‡เชถ เชธเชฟเช‚เช•เซเชฐเชจเชพเช‡เชเซ‡เชถเชจ เชธเชฎเชฏ เชนเชพเชฐเซเชกเชตเซ‡เชฐเชจเซ€ เช•เซเชทเชฎเชคเชพ เช•เซ‡ เชœเซ‡เชจเชพ เชชเชฐ เช•เซเชฒเชธเซเชŸเชฐ เชœเชฎเชพเชตเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡ เช…เชจเซ‡ เชธเช‚เชฆเซ‡เชถเชพเช“เชจเซ€ เชธเช‚เช–เซเชฏเชพ เชชเชฐ เช†เชงเชพเชฐ เชฐเชพเช–เซ‡ เช›เซ‡. เชตเชฐเซเชฃเชตเซ‡เชฒ เชฆเซƒเชถเซเชฏเชฎเชพเช‚, เชคเซ‡เชฎเชพเช‚เชจเชพ เชซเช•เซเชค 10 เชœ เช›เซ‡, เชคเซ‡เชฅเซ€ เชกเซ‡เชŸเชพ เชคเชฐเชค เชœ เชธเชฟเช‚เช•เซเชฐเชจเชพเช‡เช เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซ‹ เชนเชคเซ‹, เชชเชฐเช‚เชคเซ เชชเชฐเซเชฏเชพเชชเซเชค เชฎเซ‹เชŸเซ€ เชธเช‚เช–เซเชฏเชพเชฎเชพเช‚ เชธเช‚เชฆเซ‡เชถเชพเช“ เชธเชพเชฅเซ‡, เชธเชฟเช‚เช•เซเชฐเชจเชพเช‡เชเซ‡เชถเชจ เช•เชฒเชพเช•เซ‹ เชธเซเชงเซ€ เชŸเช•เซ€ เชถเช•เซ‡ เช›เซ‡.

เชคเซ‡เชฅเซ€, เชธเชฟเช‚เช•เซเชฐเชจเชพเช‡เชเซ‡เชถเชจ เชธเซเชฅเชฟเชคเชฟ:

RabbitMQ เชจเซเช‚ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธเชฎเชพเช‚ เชธเซ€เชฎเชฒเซ‡เชธ เชธเซเชฅเชณเชพเช‚เชคเชฐ

เชคเซ‡ +5 เชเชŸเชฒเซ‡ เช•เซ‡ เชธเช‚เชฆเซ‡เชถเชพเช“ เชชเชนเซ‡เชฒเชพเชฅเซ€ เชœ เช›เซ‡ เชตเชงเซ 5 เชจเซ‹เชกเซเชธ เชชเชฐ (เช•เซเชทเซ‡เชคเซเชฐเชฎเชพเช‚ เชœเซ‡ เชฆเชฐเซเชถเชพเชตเซ‡เชฒ เช›เซ‡ เชคเซ‡ เชธเชฟเชตเชพเชฏ Node). เช†เชฎ, เชธเชฟเช‚เช•เซเชฐเชจเชพเช‡เชเซ‡เชถเชจ เชธเชซเชณ เชฅเชฏเซเช‚.

4. เชเชชเซเชฒเซ€เช•เซ‡เชถเชจเชฎเชพเช‚เชจเชพ RMQ เชเชกเซเชฐเซ‡เชธเชจเซ‡ เชจเชตเชพ เช•เซเชฒเชธเซเชŸเชฐเชฎเชพเช‚ เชธเซเชตเชฟเชš เช•เชฐเชตเชพเชจเซเช‚ เชฌเชพเช•เซ€ เชฐเชนเซ‡ เช›เซ‡ (เช…เชนเซ€เช‚เชจเซ€ เชšเซ‹เช•เซเช•เชธ เช•เซเชฐเชฟเชฏเชพเช“ เชคเชฎเซ‡ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€ เชฐเชนเซเชฏเชพเช‚ เช›เซ‹ เชคเซ‡ เชŸเซ‡เช•เซเชจเซ‹เชฒเซ‹เชœเซ€ เชธเซเชŸเซ‡เช• เช…เชจเซ‡ เช…เชจเซเชฏ เชเชชเซเชฒเซ€เช•เซ‡เชถเชจ เชธเซเชชเซ‡เชธเชฟเชซเชฟเช•เซ‡เชถเชจ เชชเชฐ เช†เชงเชพเชฐ เชฐเชพเช–เซ‡ เช›เซ‡), เชœเซ‡ เชชเช›เซ€ เชคเชฎเซ‡ เชœเซ‚เชจเชพเชจเซ‡ เช…เชฒเชตเชฟเชฆเชพ เช•เชนเซ€ เชถเช•เซ‹ เช›เซ‹.

เช›เซ‡เชฒเซเชฒเชพ เช“เชชเชฐเซ‡เชถเชจ เชฎเชพเชŸเซ‡ (เชเชŸเชฒเซ‡ โ€‹โ€‹เช•เซ‡ เชชเชนเซ‡เชฒเซ‡เชฅเซ€ เชœ ะฟะพัะปะต เชเชชเซเชฒเชฟเช•เซ‡เชถเชจเชจเซ‡ เชจเชตเชพ เช•เซเชฒเชธเซเชŸเชฐ เชชเชฐ เชธเซเชตเชฟเชš เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ€เช) เชฆเชฐเซ‡เช• เชจเซ‹เชก เชชเชฐ เชœเชพเช“ เชœเซ‚เชจเซเช‚ เช†เชฆเซ‡เชถเซ‹เชจเซ‡ เช•เซเชฒเชธเซเชŸเชฐ เช•เชฐเซ‹ เช…เชจเซ‡ เชเช•เซเชเชฟเช•เซเชฏเซเชŸ เช•เชฐเซ‹:

rabbitmqctl stop_app
rabbitmqctl reset

เชœเซ‚เชจเชพ เชจเซ‹เชกเซเชธ เชตเชฟเชถเซ‡ เช•เซเชฒเชธเซเชŸเชฐ "เชญเซ‚เชฒเซ€ เช—เชฏเซเช‚": เชคเชฎเซ‡ เชœเซ‚เชจเชพ RMQ เชจเซ‡ เช•เชพเชขเซ€ เชถเช•เซ‹ เช›เซ‹, เชœเซ‡ เชธเชฎเชฏเซ‡ เชšเชพเชฒ เชชเซ‚เชฐเซเชฃ เชฅเชถเซ‡.

เชจเซ‹เช‚เชงเชฃเซ€: เชœเซ‹ เชคเชฎเซ‡ เชชเซเชฐเชฎเชพเชฃเชชเชคเซเชฐเซ‹ เชธเชพเชฅเซ‡ RMQ เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‹ เช›เซ‹, เชคเซ‹ เชชเช›เซ€ เชฎเซ‚เชณเชญเซ‚เชค เชฐเซ€เชคเซ‡ เช•เช‚เชˆเชชเชฃ เชฌเชฆเชฒเชพเชคเซเช‚ เชจเชฅเซ€ - เช–เชธเซ‡เชกเชตเชพเชจเซ€ เชชเซเชฐเช•เซเชฐเชฟเชฏเชพ เชฌเชฐเชพเชฌเชฐ เช เชœ เชฐเซ€เชคเซ‡ เชนเชพเชฅ เชงเชฐเชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡.

เชคเชพเชฐเชฃเซ‹

เชตเชฐเซเชฃเชตเซ‡เชฒ เชธเซเช•เซ€เชฎ เชฒเช—เชญเช— เชคเชฎเชพเชฎ เช•เซ‡เชธเซ‹ เชฎเชพเชŸเซ‡ เชฏเซ‹เช—เซเชฏ เช›เซ‡ เชœเซเชฏเชพเชฐเซ‡ เช†เชชเชฃเซ‡ RabbitMQ เชจเซ‡ เชธเซเชฅเชพเชจเชพเช‚เชคเชฐเชฟเชค เช•เชฐเชตเชพเชจเซ€ เช…เชฅเชตเชพ เชซเช•เซเชค เชจเชตเชพ เช•เซเชฒเชธเซเชŸเชฐเชฎเชพเช‚ เชœเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชนเซ‹เชฏ.

เช…เชฎเชพเชฐเชพ เช•เชฟเชธเซเชธเชพเชฎเชพเช‚, เชฎเซเชถเซเช•เซ‡เชฒเซ€เช“ เชซเช•เซเชค เชเช• เชœ เชตเชพเชฐ เชŠเชญเซ€ เชฅเชˆ, เชœเซเชฏเชพเชฐเซ‡ RMQ เชจเซ‡ เช˜เชฃเซ€ เชœเช—เซเชฏเชพเชเชฅเซ€ เชเช•เซเชธเซ‡เชธ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซเชฏเซเช‚ เชนเชคเซเช‚, เช…เชจเซ‡ เช…เชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เชฆเชฐเซ‡เช• เชœเช—เซเชฏเชพเช RMQ เชเชกเซเชฐเซ‡เชธเชจเซ‡ เชจเชตเชพเชฎเชพเช‚ เชฌเชฆเชฒเชตเชพเชจเซ€ เชคเช• เชจเชนเซ‹เชคเซ€. เชชเช›เซ€ เช…เชฎเซ‡ เช เชœ เชจเซ‡เชฎเชธเซเชชเซ‡เชธเชฎเชพเช‚ เชธเชฎเชพเชจ เชฒเซ‡เชฌเชฒเซเชธ เชธเชพเชฅเซ‡ เชเช• เชจเชตเซ‹ RMQ เชฒเซ‹เชจเซเชš เช•เชฐเซเชฏเซ‹ เชœเซ‡เชฅเซ€ เชคเซ‡ เชนเชพเชฒเชจเซ€ เชธเซ‡เชตเชพเช“ เช…เชจเซ‡ เชชเซเชฐเชตเซ‡เชถ เชนเซ‡เช เชณ เช†เชตเซ‡, เช…เชจเซ‡ เชชเซ‹เชก เชฒเซ‹เชจเซเชš เช•เชฐเชคเซ€ เชตเช–เชคเซ‡ เช…เชฎเซ‡ เชฒเซ‡เชฌเชฒเซ‹เชจเซ‡ เชนเชพเชฅเชฅเซ€ เชšเชพเชฒเชพเช•เซ€ เช•เชฐเซ€, เชถเชฐเซ‚เช†เชคเชฎเชพเช‚ เชคเซ‡เชฎเชจเซ‡ เชฆเซ‚เชฐ เช•เชฐเซเชฏเชพ เชœเซ‡เชฅเซ€ เชตเชฟเชจเช‚เชคเซ€เช“ เชชเชฐ เชจ เช†เชตเซ‡. เช–เชพเชฒเซ€ RMQ, เช…เชจเซ‡ เชธเช‚เชฆเซ‡เชถเชพเช“ เชธเชฎเชจเซเชตเชฏเชฟเชค เชฅเชฏเชพ เชชเช›เซ€ เชคเซ‡เชฎเชจเซ‡ เชชเชพเช›เชพ เช‰เชฎเซ‡เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ‡.

เชฌเชฆเชฒเชพเชฏเซ‡เชฒ เชฐเซ‚เชชเชฐเซ‡เช–เชพเช‚เช•เชจ เชธเชพเชฅเซ‡ RabbitMQ เชจเซ‡ เชจเชตเชพ เชธเช‚เชธเซเช•เชฐเชฃ เชชเชฐ เช…เชชเชกเซ‡เชŸ เช•เชฐเชคเซ€ เชตเช–เชคเซ‡ เช…เชฎเซ‡ เชธเชฎเชพเชจ เชตเซเชฏเซ‚เชนเชฐเชšเชจเชพเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซเชฏเซ‹ - เชฌเชงเซเช‚ เช˜เชกเชฟเชฏเชพเชณเชจเซ€ เชœเซ‡เชฎ เช•เชพเชฎ เช•เชฐเซ‡ เช›เซ‡.

PS

เช† เชธเชพเชฎเช—เซเชฐเซ€เชจเชพ เชคเชพเชฐเซเช•เชฟเช• เชธเชพเชคเชคเซเชฏ เชคเชฐเซ€เช•เซ‡, เช…เชฎเซ‡ MongoDB (เชนเชพเชฐเซเชกเชตเซ‡เชฐ เชธเชฐเซเชตเชฐเชฅเซ€ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธเชฎเชพเช‚ เชธเซเชฅเชณเชพเช‚เชคเชฐ) เช…เชจเซ‡ MySQL (เช† DBMSเชจเซ‡ เช•เซเชฌเชฐเชจเซ‡เชŸเซเชธเชจเซ€ เช…เช‚เชฆเชฐ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชคเซˆเชฏเชพเชฐ เช•เชฐเซ€เช เช›เซ€เช) เชตเชฟเชถเซ‡ เชฒเซ‡เช–เซ‹ เชคเซˆเชฏเชพเชฐ เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ€เช. เชคเซ‡เช“ เช†เช—เชพเชฎเซ€ เชฎเชนเชฟเชจเชพเชฎเชพเช‚ เชชเซเชฐเช•เชพเชถเชฟเชค เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡.

เชชเซ€.เชชเซ€.เชเชธ.

เช…เชฎเชพเชฐเชพ เชฌเซเชฒเซ‹เช— เชชเชฐ เชชเชฃ เชตเชพเช‚เชšเซ‹:

เชธเซ‹เชฐเซเชธ: www.habr.com

เชเช• เชŸเชฟเชชเซเชชเชฃเซ€ เช‰เชฎเซ‡เชฐเซ‹