RabbitMQ рд╣рд╛ Erlang рдордзреНрдпреЗ рд▓рд┐рд╣рд┐рд▓реЗрд▓рд╛ рд╕рдВрджреЗрд╢ рдмреНрд░реЛрдХрд░ рдЖрд╣реЗ рдЬреЛ рддреБрдореНрд╣рд╛рд▓рд╛ рдПрдХрд╛рдзрд┐рдХ рдиреЛрдбреНрд╕рд╡рд░ рд╕рдВрдкреВрд░реНрдг рдбреЗрдЯрд╛ рдкреНрд░рддрд┐рдХреГрддреАрд╕рд╣ рдПрдХ рдлреЗрд▓рдУрд╡реНрд╣рд░ рдХреНрд▓рд╕реНрдЯрд░ рдЖрдпреЛрдЬрд┐рдд рдХрд░рдгреНрдпрд╛рд╕ рдЕрдиреБрдорддреА рджреЗрддреЛ, рдЬреЗрдереЗ рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдб рд╡рд┐рдирдВрддреНрдпрд╛ рд╡рд╛рдЪреВ рдЖрдгрд┐ рд▓рд┐рд╣реВ рд╢рдХрддреЛ. рдЙрддреНрдкрд╛рджрди рдСрдкрд░реЗрд╢рдирдордзреНрдпреЗ рдЕрдиреЗрдХ рдХреБрдмрд░реНрдиреЗрдЯреНрд╕ рдХреНрд▓рд╕реНрдЯрд░реНрд╕ рдЕрд╕рд▓реНрдпрд╛рдореБрд│реЗ, рдЖрдореНрд╣реА рдореЛрдареНрдпрд╛ рд╕рдВрдЦреНрдпреЗрдиреЗ RabbitMQ рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рдирд▓рд╛ рд╕рдорд░реНрдерди рджреЗрддреЛ рдЖрдгрд┐ рдбрд╛рдЙрдирдЯрд╛рдЗрдорд╢рд┐рд╡рд╛рдп рдбреЗрдЯрд╛ рдПрдХрд╛ рдХреНрд▓рд╕реНрдЯрд░рдордзреВрди рджреБрд╕рд░реНтАНрдпрд╛ рдХреНрд▓рд╕реНрдЯрд░рдордзреНрдпреЗ рд╕реНрдерд▓рд╛рдВрддрд░рд┐рдд рдХрд░рдгреНрдпрд╛рдЪреА рдЧрд░рдЬ рд╣реЛрддреА.
рдЖрдореНрд╣рд╛рд▓рд╛ рдХрд┐рдорд╛рди рджреЛрди рдкреНрд░рдХрд░рдгрд╛рдВрдордзреНрдпреЗ рдпрд╛ рдСрдкрд░реЗрд╢рдирдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЖрд╣реЗ:
- Kubernetes рдордзреНрдпреЗ рдирд╕рд▓реЗрд▓реНрдпрд╛ RabbitMQ рдХреНрд▓рд╕реНрдЯрд░рдордзреАрд▓ рдбреЗрдЯрд╛ рдирд╡реАрди тАУ рдЖрдзреАрдЪ тАЬkubernetizedтАЭ (рдореНрд╣рдгрдЬреЗ K8s рдкреЙрдбреНрд╕рдордзреНрдпреЗ рдХрд╛рд░реНрдпрд░рдд) тАУ рдХреНрд▓рд╕реНрдЯрд░рдордзреНрдпреЗ рд╣рд╕реНрддрд╛рдВрддрд░рд┐рдд рдХрд░рдгреЗ.
- рдХреБрдмрд░реНрдиреЗрдЯреНрд╕рдордзреАрд▓ рд░реЕрдмрд┐рдЯрдПрдордХреНрдпреВрдЪреЗ рдПрдХрд╛ рдиреЗрдорд╕реНрдкреЗрд╕рдордзреВрди рджреБрд╕-рдпрд╛ рдиреЗрдорд╕реНрдкреЗрд╕рдордзреНрдпреЗ рд╕реНрдерд▓рд╛рдВрддрд░рдг (рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рдЬрд░ рдиреЗрдорд╕реНрдкреЗрд╕рджреНрд╡рд╛рд░реЗ рд╕рд░реНрдХрд┐рдЯреНрд╕рдЪреЗ рд╕реАрдорд╛рдВрдХрди рдХреЗрд▓реЗ рдЕрд╕реЗрд▓, рддрд░ рдкрд╛рдпрд╛рднреВрдд рд╕реБрд╡рд┐рдзрд╛ рдПрдХрд╛ рд╕рд░реНрдХрд┐рдЯрдордзреВрди рджреБрд╕рд▒реНрдпрд╛ рд╕рд░реНрдХрд┐рдЯрдордзреНрдпреЗ рд╣рд╕реНрддрд╛рдВрддрд░рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА).
рд▓реЗрдЦрд╛рдд рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХреЗрд▓реЗрд▓реА рд░реЗрд╕рд┐рдкреА рдкрд░рд┐рд╕реНрдерд┐рддреАрдВрд╡рд░ рдХреЗрдВрджреНрд░рд┐рдд рдЖрд╣реЗ (рдкрд░рдВрддреБ рддреНрдпрд╛рдВрдЪреНрдпрд╛рдкреБрд░рддреЗрдЪ рдорд░реНрдпрд╛рджрд┐рдд рдирд╛рд╣реА) рдЬреНрдпрд╛рдордзреНрдпреЗ рдПрдХ рдЬреБрдирд╛ RabbitMQ рдХреНрд▓рд╕реНрдЯрд░ рдЖрд╣реЗ (рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, 3 рдиреЛрдбреНрд╕рдЪрд╛), рдПрдХрддрд░ рдЖрдзреАрдкрд╛рд╕реВрди K8 рдордзреНрдпреЗ рдХрд┐рдВрд╡рд╛ рдХрд╛рд╣реА рдЬреБрдиреНрдпрд╛ рд╕рд░реНрд╡реНрд╣рд░рд╡рд░ рдЖрд╣реЗ. Kubernetes рд╡рд░ рд╣реЛрд╕реНрдЯ рдХреЗрд▓реЗрд▓рд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧ (рдЖрдзреАрдкрд╛рд╕реВрдирдЪ рдЖрд╣реЗ рдХрд┐рдВрд╡рд╛ рднрд╡рд┐рд╖реНрдпрд╛рдд) рддреНрдпрд╛рдЪреНрдпрд╛рд╕рд╣ рдХрд╛рд░реНрдп рдХрд░рддреЛ:
... рдЖрдгрд┐ рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕рдордзреАрд▓ рдирд╡реАрди рдЙрддреНрдкрд╛рджрдирд╛рдордзреНрдпреЗ рддреЗ рд╕реНрдерд▓рд╛рдВрддрд░рд┐рдд рдХрд░рдгреНрдпрд╛рдЪреЗ рдХрд╛рд░реНрдп рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдЖрд╣реЗ.
рдкреНрд░рдердо, рд╕реНрдерд▓рд╛рдВрддрд░рд╛рдЪрд╛ рд╕рд╛рдорд╛рдиреНрдп рджреГрд╖реНрдЯрд┐рдХреЛрди рд╕реНрд╡рддрдГрдЪ рд╡рд░реНрдгрди рдХреЗрд▓рд╛ рдЬрд╛рдИрд▓ рдЖрдгрд┐ рддреНрдпрд╛рдирдВрддрд░ рддреНрдпрд╛рдЪреНрдпрд╛ рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрдЪреЗ рддрд╛рдВрддреНрд░рд┐рдХ рддрдкрд╢реАрд▓ рд╡рд░реНрдгрди рдХреЗрд▓реЗ рдЬрд╛рддреАрд▓.
рд╕реНрдерд▓рд╛рдВрддрд░ рдЕрд▓реНрдЧреЛрд░рд┐рджрдо
рдХреЛрдгрддреНрдпрд╛рд╣реА рдХреГрддреАрдкреВрд░реНрд╡реАрдЪрд╛ рдкрд╣рд┐рд▓рд╛, рдкреНрд░рд╛рдердорд┐рдХ, рдЯрдкреНрдкрд╛ рдореНрд╣рдгрдЬреЗ рдЬреБрдиреНрдпрд╛ RabbitMQ рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рдирдордзреНрдпреЗ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛ рдореЛрдб рд╕рдХреНрд╖рдо рдЖрд╣реЗ рд╣реЗ рддрдкрд╛рд╕рдгреЗ (ha-mode: all
:
рдкреБрдврдЪреА рдкрд╛рдпрд░реА рдореНрд╣рдгрдЬреЗ рдХреБрдмрд░реНрдиреЗрдЯреНрд╕ рдкреЙрдбреНрд╕рдордзреНрдпреЗ рдирд╡реАрди рд░реЕрдмрд┐рдЯрдПрдордХреНрдпреВ рдХреНрд▓рд╕реНрдЯрд░ рд╡рд╛рдврд╡рдгреЗ (рдЖрдордЪреНрдпрд╛ рдмрд╛рдмрддреАрдд, рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, 3 рдиреЛрдбреНрд╕ рдЖрд╣реЗрдд, рдкрд░рдВрддреБ рддреНрдпрд╛рдВрдЪреА рд╕рдВрдЦреНрдпрд╛ рднрд┐рдиреНрди рдЕрд╕реВ рд╢рдХрддреЗ).
рдпрд╛рдирдВрддрд░, рдЖрдореНрд╣реА рдЬреБрдиреЗ рдЖрдгрд┐ рдирд╡реАрди RabbitMQ рдХреНрд▓рд╕реНрдЯрд░реНрд╕ рдПрдХрддреНрд░ рдХрд░рддреЛ, рдПрдХрдЪ рдХреНрд▓рд╕реНрдЯрд░ (6 рдиреЛрдбреНрд╕рдЪрд╛):
рдЬреБрдиреНрдпрд╛ рдЖрдгрд┐ рдирд╡реАрди RabbitMQ рдХреНрд▓рд╕реНрдЯрд░реНрд╕рдордзреАрд▓ рдбреЗрдЯрд╛ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭреЗрд╢рдирдЪреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╕реБрд░реВ рдХреЗрд▓реА рдЖрд╣реЗ. рдХреНрд▓рд╕реНрдЯрд░рдордзреАрд▓ рд╕рд░реНрд╡ рдиреЛрдбреНрд╕рдордзреНрдпреЗ рд╕рд░реНрд╡ рдбреЗрдЯрд╛ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭ рдЭрд╛рд▓реНрдпрд╛рдирдВрддрд░, рдЖрдореНрд╣реА рдирд╡реАрди рдХреНрд▓рд╕реНрдЯрд░ рд╡рд╛рдкрд░рдгреНрдпрд╛рд╕рд╛рдареА рдНрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реНрд╡рд┐рдЪ рдХрд░реВ рд╢рдХрддреЛ:
рдпрд╛ рдСрдкрд░реЗрд╢рдиреНрд╕рдирдВрддрд░, рд░реЕрдмрд┐рдЯрдПрдордХреНрдпреВ рдХреНрд▓рд╕реНрдЯрд░рдордзреВрди рдЬреБрдиреЗ рдиреЛрдбреНрд╕ рдХрд╛рдврдгреЗ рдкреБрд░реЗрд╕реЗ рдЖрд╣реЗ рдЖрдгрд┐ рд╣рд▓рд╡рд┐рдгреЗ рдкреВрд░реНрдг рдорд╛рдирд▓реЗ рдЬрд╛рдК рд╢рдХрддреЗ:
рдЖрдореНрд╣реА рд╣реА рдпреЛрдЬрдирд╛ рдЙрддреНрдкрд╛рджрдирд╛рдордзреНрдпреЗ рдЕрдиреЗрдХ рд╡реЗрд│рд╛ рд╡рд╛рдкрд░рд▓реА рдЖрд╣реЗ. рддрдерд╛рдкрд┐, рдЖрдордЪреНрдпрд╛ рд╕реНрд╡рддрдГрдЪреНрдпрд╛ рд╕реЛрдпреАрд╕рд╛рдареА, рдЖрдореНрд╣реА рддреЗ рдПрдХрд╛ рд╡рд┐рд╢реЗрд╖ рдкреНрд░рдгрд╛рд▓реАрдордзреНрдпреЗ рд▓рд╛рдЧреВ рдХреЗрд▓реЗ рдЖрд╣реЗ рдЬреЗ рдПрдХрд╛рдзрд┐рдХ рдХреБрдмрд░реНрдиреЗрдЯреНрд╕ рдХреНрд▓рд╕реНрдЯрд░реНрд╕рдордзреНрдпреЗ рдорд╛рдирдХ RMQ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рди рд╡рд┐рддрд░реАрдд рдХрд░рддреЗ. (рдЬреЗ рдЬрд┐рдЬреНрдЮрд╛рд╕реВ рдЖрд╣реЗрдд рддреНрдпрд╛рдВрдЪреНрдпрд╛рд╕рд╛рдареА: рдЖрдореНрд╣реА рдмреЛрд▓рдд рдЖрд╣реЛрдд
рдЪрд▓рд╛ рд╕рд░рд╛рд╡рд╛рдиреЗ рдкреНрд░рдпрддреНрди рдХрд░реВрдпрд╛
рдЖрд╡рд╢реНрдпрдХрддрд╛
рддрдкрд╢реАрд▓ рдЦреВрдк рд╕реЛрдкреЗ рдЖрд╣реЗрдд:
- рдХреБрдмрд░реНрдиреЗрдЯреНрд╕ рдХреНрд▓рд╕реНрдЯрд░ (рдорд┐рдиреАрдХреНрдпреВрдм рджреЗрдЦреАрд▓ рдХрд╛рд░реНрдп рдХрд░реЗрд▓);
- RabbitMQ рдХреНрд▓рд╕реНрдЯрд░ (рдмреЗрдЕрд░ рдореЗрдЯрд▓рд╡рд░ рдЙрдкрдпреЛрдЬрд┐рдд рдХреЗрд▓реЗ рдЬрд╛рдК рд╢рдХрддреЗ рдЖрдгрд┐ рдЕрдзрд┐рдХреГрдд рд╣реЗрд▓реНрдо рдЪрд╛рд░реНрдЯрд╡рд░реВрди Kubernetes рдордзреНрдпреЗ рдирд┐рдпрдорд┐рдд рдХреНрд▓рд╕реНрдЯрд░рд╕рд╛рд░рдЦреЗ рдмрдирд╡рд▓реЗ рдЬрд╛рдК рд╢рдХрддреЗ).
рдЦрд╛рд▓реАрд▓ рдЙрджрд╛рд╣рд░рдгрд╛рд╕рд╛рдареА, рдореА Kubernetes рд╡рд░ 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 рдХреНрд▓рд╕реНрдЯрд░ рд╕реНрдерд▓рд╛рдВрддрд░рд┐рдд рдХрд░рдд рдЖрд╣реЗ
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 рдХреНрд▓рд╕реНрдЯрд░ рддрдпрд╛рд░ рдЖрд╣реЗ:
рд╕рд░реНрд╡ рдиреЛрдбреНрд╕ рджрд░рдореНрдпрд╛рди рд╕рдВрджреЗрд╢ рд╕рдордХреНрд░рдорд┐рдд рд╣реЛрдИрдкрд░реНрдпрдВрдд рдЖрдкрдг рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рдореЗрд╕реЗрдЬ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭреЗрд╢рди рд╡реЗрд│ рдЬреНрдпрд╛ рд╣рд╛рд░реНрдбрд╡реЗрдЕрд░рд╡рд░ рдХреНрд▓рд╕реНрдЯрд░ рдЙрдкрдпреЛрдЬрд┐рдд рдЖрд╣реЗ рддреНрдпрд╛рдЪреНрдпрд╛ рдХреНрд╖рдорддреЗрд╡рд░ рдЖрдгрд┐ рдореЗрд╕реЗрдЬрдЪреНрдпрд╛ рд╕рдВрдЦреНрдпреЗрд╡рд░ рдЕрд╡рд▓рдВрдмреВрди рдЖрд╣реЗ рдпрд╛рдЪрд╛ рдЕрдВрджрд╛рдЬ рд▓рд╛рд╡рдгреЗ рдЕрд╡рдШрдб рдирд╛рд╣реА. рд╡рд░реНрдгрди рдХреЗрд▓реЗрд▓реНрдпрд╛ рдкрд░рд┐рд╕реНрдерд┐рддреАрдордзреНрдпреЗ, рддреНрдпрд╛рдкреИрдХреА рдлрдХреНрдд 10 рдЖрд╣реЗрдд, рдореНрд╣рдгреВрди рдбреЗрдЯрд╛ рддреНрд╡рд░рд┐рдд рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭ рдХреЗрд▓рд╛ рдЧреЗрд▓рд╛ рд╣реЛрддрд╛, рдкрд░рдВрддреБ рдореЛрдареНрдпрд╛ рд╕рдВрдЦреНрдпреЗрдиреЗ рд╕рдВрджреЗрд╢рд╛рдВрд╕рд╣, рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭреЗрд╢рди рддрд╛рд╕рд╛рдВрдкрд░реНрдпрдВрдд рдЯрд┐рдХреВ рд╢рдХрддреЗ.
рддрд░, рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭреЗрд╢рди рд╕реНрдерд┐рддреА:
рддреЛ рдЖрд╣реЗ +5
рдореНрд╣рдгрдЬреЗ рд╕рдВрджреЗрд╢ рдЖрдзреАрдЪ рдЖрдд рдЖрд╣реЗрдд рдЕрдзрд┐рдХ 5 рдиреЛрдбреНрд╕рд╡рд░ (рдлреАрд▓реНрдбрдордзреНрдпреЗ рдЬреЗ рд╕реВрдЪрд┐рдд рдХреЗрд▓реЗ рдЖрд╣реЗ рддреЗ рд╡рдЧрд│рддрд╛ Node
). рдЕрд╢рд╛ рдкреНрд░рдХрд╛рд░реЗ, рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭреЗрд╢рди рдпрд╢рд╕реНрд╡реА рдЭрд╛рд▓реЗ.
4. рдлрдХреНрдд рдПрд╡рдврдВрдЪ рдЙрд░рд▓реЗ рдЖрд╣реЗ рдХреА рдЕреЕрдкреНрд▓рд┐рдХреЗрд╢рдирдордзреАрд▓ RMQ рдЕреЕрдбреНрд░реЗрд╕рд▓рд╛ рдирд╡реАрди рдХреНрд▓рд╕реНрдЯрд░рд╡рд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдгреЗ (рдпреЗрдереЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХреНрд░рд┐рдпрд╛ рддреБрдореНрд╣реА рд╡рд╛рдкрд░рдд рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рдЯреЗрдХреНрдиреЙрд▓реЙрдЬреА рд╕реНрдЯреЕрдХрд╡рд░ рдЖрдгрд┐ рдЗрддрд░ рдЕреЕрдкреНрд▓рд┐рдХреЗрд╢рди рд╕реНрдкреЗрд╕рд┐рдлрд┐рдХреЗрд╢рдиреНрд╕рд╡рд░ рдЕрд╡рд▓рдВрдмреВрди рдЕрд╕рддрд╛рдд), рддреНрдпрд╛рдирдВрддрд░ рддреБрдореНрд╣реА рдЬреБрдиреНрдпрд╛рд▓рд╛ рдЕрд▓рд╡рд┐рджрд╛ рдореНрд╣рдгреВ рд╢рдХрддрд╛.
рд╢реЗрд╡рдЯрдЪреНрдпрд╛ рдСрдкрд░реЗрд╢рдирд╕рд╛рдареА (рдореНрд╣рдгрдЬреЗ рдЖрдзреАрдЪ ╨┐╨╛╤Б╨╗╨╡ рдНрдкреНрд▓рд┐рдХреЗрд╢рдирд▓рд╛ рдирд╡реАрди рдХреНрд▓рд╕реНрдЯрд░рд╡рд░ рд╕реНрд╡рд┐рдЪ рдХрд░рдгреЗ) рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдбрд╡рд░ рдЬрд╛ рдЬреБрдиреНрдпрд╛ рдХреНрд▓рд╕реНрдЯрд░ рдХрд░рд╛ рдЖрдгрд┐ рдХрдорд╛рдВрдб рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░рд╛:
rabbitmqctl stop_app
rabbitmqctl reset
рдЬреБрдиреНрдпрд╛ рдиреЛрдбреНрд╕рдмрджреНрджрд▓ рдХреНрд▓рд╕реНрдЯрд░ "рд╡рд┐рд╕рд░рд▓рд╛": рддреБрдореНрд╣реА рдЬреБрдиреЗ RMQ рд╣рдЯрд╡реВ рд╢рдХрддрд╛, рдЬреНрдпрд╛ рд╡реЗрд│реА рд╣рд▓рд╡рд╛ рдкреВрд░реНрдг рд╣реЛрдИрд▓.
рд╢реЗрд░рд╛: рдЬрд░ рддреБрдореНрд╣реА рдкреНрд░рдорд╛рдгрдкрддреНрд░рд╛рдВрд╕рд╣ рдЖрд░рдПрдордХреНрдпреВ рд╡рд╛рдкрд░рдд рдЕрд╕рд╛рд▓, рддрд░ рдореВрд▓рднреВрддрдкрдгреЗ рдХрд╛рд╣реАрд╣реА рдмрджрд▓рдд рдирд╛рд╣реА - рд╣рд▓рд╡рдгреНрдпрд╛рдЪреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЕрдЧрджреА рд╕рд╛рд░рдЦреАрдЪ рдХреЗрд▓реА рдЬрд╛рдИрд▓.
рдирд┐рд╖реНрдХрд░реНрд╖
рд╡рд░реНрдгрди рдХреЗрд▓реЗрд▓реА рдпреЛрдЬрдирд╛ рдЬрд╡рд│рдЬрд╡рд│ рд╕рд░реНрд╡ рдкреНрд░рдХрд░рдгрд╛рдВрд╕рд╛рдареА рдпреЛрдЧреНрдп рдЖрд╣реЗ рдЬреЗрд╡реНрд╣рд╛ рдЖрдореНрд╣рд╛рд▓рд╛ RabbitMQ рд╕реНрдерд▓рд╛рдВрддрд░рд┐рдд рдХрд░рдгреНрдпрд╛рдЪреА рдХрд┐рдВрд╡рд╛ рдлрдХреНрдд рдирд╡реАрди рдХреНрд▓рд╕реНрдЯрд░рдордзреНрдпреЗ рдЬрд╛рдгреНрдпрд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЕрд╕рддреЗ.
рдЖрдордЪреНрдпрд╛ рдмрд╛рдмрддреАрдд, рдЕрдбрдЪрдгреА рдлрдХреНрдд рдПрдХрджрд╛рдЪ рдЙрджреНрднрд╡рд▓реНрдпрд╛, рдЬреЗрд╡реНрд╣рд╛ рдЕрдиреЗрдХ рдард┐рдХрд╛рдгрд╛рдВрд╣реВрди RMQ рдНрдХреНрд╕реЗрд╕ рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрдгрд┐ рдЖрдореНрд╣рд╛рд▓рд╛ рд╕рд░реНрд╡рддреНрд░ RMQ рдкрддреНрддрд╛ рдмрджрд▓реВрди рдирд╡реАрди рдХрд░рдгреНрдпрд╛рдЪреА рд╕рдВрдзреА рдорд┐рд│рд╛рд▓реА рдирд╛рд╣реА. рдордЧ рдЖрдореНрд╣реА рддреНрдпрд╛рдЪ рдиреЗрдорд╕реНрдкреЗрд╕рдордзреНрдпреЗ рд╕рдорд╛рди рд▓реЗрдмрд▓рд╛рдВрд╕рд╣ рдПрдХ рдирд╡реАрди RMQ рд▓рд╛рдБрдЪ рдХреЗрд▓рд╛ рдЬреЗрдгреЗрдХрд░реБрди рддреЗ рд╡рд┐рджреНрдпрдорд╛рди рд╕реЗрд╡рд╛ рдЖрдгрд┐ рдкреНрд░рд╡реЗрд╢рд╛рдЪреНрдпрд╛ рдЕрдВрддрд░реНрдЧрдд рдпреЗрдИрд▓ рдЖрдгрд┐ рдкреЙрдб рд▓рд╛рдБрдЪ рдХрд░рддрд╛рдирд╛ рдЖрдореНрд╣реА рд▓реЗрдмрд▓реЗ рд╣рд╛рддрд╛рдиреЗ рд╣рд╛рддрд╛рд│рд▓реА, рд╕реБрд░реБрд╡рд╛рддреАрд▓рд╛ рддреА рдХрд╛рдвреВрди рдЯрд╛рдХрд▓реА рдЬреЗрдгреЗрдХрд░реВрди рд╡рд┐рдирдВрддреНрдпрд╛ рдпреЗрдгрд╛рд░ рдирд╛рд╣реАрдд. рд░рд┐рдХреНрдд RMQ, рдЖрдгрд┐ рд╕рдВрджреЗрд╢ рд╕рд┐рдВрдХреНрд░реЛрдирд╛рдЗрдЭ рдЭрд╛рд▓реНрдпрд╛рдирдВрддрд░ рддреЗ рдкрд░рдд рдЬреЛрдбрдгреЗ.
рдмрджрд▓рд▓реЗрд▓реНрдпрд╛ рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирд╕рд╣ рдирд╡реАрди рдЖрд╡реГрддреНрддреАрдордзреНрдпреЗ RabbitMQ рдЕрджреНрдпрддрдирд┐рдд рдХрд░рддрд╛рдирд╛ рдЖрдореНрд╣реА рд╕рдорд╛рди рдзреЛрд░рдг рд╡рд╛рдкрд░рд▓реЗ - рд╕рд░реНрд╡рдХрд╛рд╣реА рдШрдбреНрдпрд╛рд│рд╛рд╕рд╛рд░рдЦреЗ рдХрд╛рд░реНрдп рдХрд░рддреЗ.
PS
рдпрд╛ рд╕рд╛рдордЧреНрд░реАрдЪреЗ рддрд╛рд░реНрдХрд┐рдХ рд╕рд╛рддрддреНрдп рдореНрд╣рдгреВрди, рдЖрдореНрд╣реА рдореЛрдВрдЧреЛрдбреАрдмреА (рд╣рд╛рд░реНрдбрд╡реЗрдЕрд░ рд╕рд░реНрд╡реНрд╣рд░рд╡рд░реВрди рдХреБрдмрд░реНрдиреЗрдЯреНрд╕рдордзреНрдпреЗ рд╕реНрдерд▓рд╛рдВрддрд░) рдЖрдгрд┐ рдорд╛рдпрдПрд╕рдХреНрдпреВрдПрд▓ (рдЖрдореНрд╣реА рд╣реЗ рдбреАрдмреАрдПрдордПрд╕ рдХреБрдмрд░реНрдиреЗрдЯреНрд╕рдордзреНрдпреЗ рдХрд╕реЗ рддрдпрд╛рд░ рдХрд░рддреЛ) рдмрджреНрджрд▓ рд▓реЗрдЦ рддрдпрд╛рд░ рдХрд░рдд рдЖрд╣реЛрдд. рдпреЗрддреНрдпрд╛ рдХрд╛рд╣реА рдорд╣рд┐рдиреНрдпрд╛рдВрдд рддреЗ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХреЗрд▓реЗ рдЬрд╛рддреАрд▓.
рдкреАрдкреАрдПрд╕
рдЖрдордЪреНрдпрд╛ рдмреНрд▓реЙрдЧрд╡рд░ рджреЗрдЦреАрд▓ рд╡рд╛рдЪрд╛:
- ┬л
рдбреЗрдЯрд╛рдмреЗрд╕ рдЖрдгрд┐ рдХреБрдмрд░реНрдиреЗрдЯреНрд╕ (рдкреБрдирд░рд╛рд╡рд▓реЛрдХрди рдЖрдгрд┐ рд╡реНрд╣рд┐рдбрд┐рдУ рдЕрд╣рд╡рд╛рд▓) "; - ┬л
K8s рдЯрд┐рдкрд╛ рдЖрдгрд┐ рдпреБрдХреНрддреНрдпрд╛: рдореЛрдареНрдпрд╛ рдбреЗрдЯрд╛рдмреЗрд╕рд╕рд╛рдареА рдмреВрдЯрд╕реНрдЯреНрд░реЕрдкрдЪрд╛ рд╡реЗрдЧ рд╡рд╛рдврд╡рдгреЗ ┬╗.
рд╕реНрддреНрд░реЛрдд: www.habr.com