DBaaS рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдЧрд░реНрди рд╕рдХреНрдиреЗ Kubernetes рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рд╣рд╛рдЗрдмреНрд░рд┐рдб рдХреНрд▓рд╛рдЙрдб рдХрд╕рд░реА рдмрдирд╛рдЙрдиреЗ

рдореЗрд░реЛ рдирд╛рдо Petr Zaitsev рд╣реЛ, рдо рд╕реАрдИрдУ, рд╕рдВрд╕реНрдерд╛рдкрдХ рд╣реБрдБ рдкрд░реНрдХреЛрдирд╛ рд░ рдо рддрд┐рдореАрд▓рд╛рдИ рднрдиреНрди рдЪрд╛рд╣рдиреНрдЫреБ:

  • рд╣рд╛рдореА рдХрд╕рд░реА рд╕реЗрд╡рд╛рдХреЛ рд░реВрдкрдорд╛ рдбрд╛рдЯрд╛рдмреЗрд╕рдорд╛ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рд╕рдорд╛рдзрд╛рдирд╣рд░реВрдмрд╛рдЯ рдЖрдПрдХрд╛ рдЫреМрдВ;
  • рдХреНрд▓рд╛рдЙрдбрдорд╛ рдбрд╛рдЯрд╛рдмреЗрд╕рд╣рд░реВ рдбрд┐рдкреНрд▓реЛрдп рдЧрд░реНрдирдХрд╛ рд▓рд╛рдЧрд┐ рдХреБрди рджреГрд╖реНрдЯрд┐рдХреЛрдгрд╣рд░реВ рдЕрд╡рд╕реНрдерд┐рдд рдЫрдиреН;
  • рдХрд╕рд░реА Kubernetes рд▓реЗ DBaaS рд▓рд╛рдИ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рдЧрд░реНрди рд╕рдХреНрдЫ, рд╡рд┐рдХреНрд░реЗрддрд╛ рдирд┐рд░реНрднрд░рддрд╛ рд╣рдЯрд╛рдЙрди рд░ рд╕реЗрд╡рд╛рдХреЛ рд░реВрдкрдорд╛ DBMS рдХреЛ рд╕рд░рд▓рддрд╛ рдХрд╛рдпрдо рд░рд╛рдЦреНрджреИред

рд▓реЗрдЦ Mail.ru Cloud Solutions рд░ Tarantool рджреНрд╡рд╛рд░рд╛ @Databases Meetup рдорд╛ рдПрдХ рд░рд┐рдкреЛрд░реНрдЯ рдХреЛ рдЖрдзрд╛рд░ рдорд╛ рддрдпрд╛рд░ рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛред рдпрджрд┐ рддрдкрд╛рдЗрдБ рдкрдвреНрди рдЪрд╛рд╣рдиреБрд╣реБрдиреНрди рднрдиреЗ, рддрдкрд╛рдЗрдБ рд╣реЗрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ:


рд╣рд╛рдореА рдХрд╕рд░реА рдХреНрд▓рд╛рдЙрдбрдорд╛ рд╕реЗрд╡рд╛рдХреЛ рд░реВрдкрдорд╛ рдЦреБрд▓рд╛ рд╕реНрд░реЛрддрдмрд╛рдЯ рдбрд╛рдЯрд╛рдмреЗрд╕рдорд╛ рдЖрдпреМрдВ

рдо репреж рдХреЛ рджрд╢рдХрдХреЛ рдЕрдиреНрддреНрдпрджреЗрдЦрд┐ рдЦреБрд▓рд╛ рд╕реНрд░реЛрддрдорд╛ рдХрд╛рдо рдЧрд░рд┐рд░рд╣реЗрдХреЛ рдЫреБред рдмреАрд╕ рд╡рд░реНрд╖ рдкрд╣рд┐рд▓реЗ, рдбрд╛рдЯрд╛рдмреЗрд╕ рдЬрд╕реНрддрд╛ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди, рддреНрдпрддрд┐ рд╕рдЬрд┐рд▓реЛ рдерд┐рдПрдиред рдпреЛ рд╕реНрд░реЛрдд рдХреЛрдб рдбрд╛рдЙрдирд▓реЛрдб рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдерд┐рдпреЛ, рдкреНрдпрд╛рдЪ, рдпрд╕рд▓рд╛рдИ рдХрдореНрдкрд╛рдЗрд▓ рд░ рддреНрдпрд╕рдкрдЫрд┐ рдорд╛рддреНрд░ рдкреНрд░рдпреЛрдЧред

рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рддреНрдпрд╕рдкрдЫрд┐ рд╕рд░рд▓реАрдХрд░рдг рдХреЛ рдПрдХ рд╢реНрд░реГрдВрдЦрд▓рд╛ рдХреЛ рдорд╛рдзреНрдпрдо рдмрд╛рдЯ рдЧрдпреЛ:

  • Tar.gz рд░ рдХрдореНрдкрд╛рдЗрд▓ рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рд╕реНрд░реЛрддрд╣рд░реВ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реН;
  • .deb рд░ .rpm рдЬрд╕реНрддрд╛ рдирд┐рд░реНрднрд░рддрд╛ рднрдПрдХрд╛ рдкреНрдпрд╛рдХреЗрдЬрд╣рд░реВ, рдЬрд╣рд╛рдБ рддрдкрд╛рдИрдВрд▓реЗ рдкреНрдпрд╛рдХреЗрдЬрд╣рд░реВрдХреЛ рд╕реЗрдЯ рдорд╛рддреНрд░ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рд╣реБрдиреНрдЫ;
  • APT рд░ YUM рдЬрд╕реНрддрд╛ рдкреНрдпрд╛рдХреЗрдЬ рднрдгреНрдбрд╛рд░рд╣рд░реВ, рдЬрд╕рдХреЛ рд╕реНрдерд╛рдкрдирд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╣реБрдиреНрдЫ;
  • рд╕рдорд╛рдзрд╛рдирд╣рд░реВ рдЬрд╕реНрддреИ рдбрдХрд░ рд░ рд╕реНрдиреНрдпрд╛рдк, рдЬрд╕рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдмрд╛рд╣реНрдп рдирд┐рд░реНрднрд░рддрд╛ рдмрд┐рдирд╛ рд╕реНрдерд╛рдкрдирд╛рджреНрд╡рд╛рд░рд╛ рдкреНрдпрд╛рдХреЗрдЬрд╣рд░реВ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред

рдирддрд┐рдЬрд╛рдХреЛ рд░реВрдкрдорд╛, рдпреЛ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рд╕рдлреНрдЯрд╡реЗрдпрд░ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдЬрд┐рд▓реЛ рд╣реБрдиреНрдЫ рд░ рддреНрдпрд╕реНрддрд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВ рд╡рд┐рдХрд╛рд╕ рдЧрд░реНрди рдкреНрд░рд╡реЗрд╢рдХреЛ рдЕрд╡рд░реЛрдзрд▓рд╛рдИ рдкрдирд┐ рдХрдо рдЧрд░реНрджрдЫред

рдПрдХреИ рд╕рдордпрдорд╛, 20 рд╡рд░реНрд╖ рдкрд╣рд┐рд▓реЗрдХреЛ рдЕрд╡рд╕реНрдерд╛рдХреЛ рд╡рд┐рдкрд░реАрдд, рдЬрдм рд╕рдмреИрдЬрдирд╛ рдПрдХ рд╕рднрд╛ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рдерд┐рдП, рдЕрдм рдЕрдзрд┐рдХрд╛рдВрд╢ рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд╣рд░реВрд▓реЗ рд╕реНрд░реЛрддрдмрд╛рдЯ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреЗ рдЙрдкрдХрд░рдгрд╣рд░реВ рдирд┐рд░реНрдорд╛рдг рдЧрд░реНрди рд╕рдХреНрджреИрдирдиреНред

рд╡рд╛рд╕реНрддрд╡рдорд╛, рдпреЛ рдЦрд░рд╛рдм рдЫреИрди, рдХрд┐рдирднрдиреЗ:

  1. рд╣рд╛рдореА рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рддрд░ рдЕрдзрд┐рдХ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛-рдЕрдиреБрдХреВрд▓ рд╕рдлреНрдЯрд╡реЗрдпрд░ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХреНрдЫреМрдВред рдЙрджрд╛рд╣рд░рдг рдХреЛ рд▓рд╛рдЧреА, рдПрдХ рдмреНрд░рд╛рдЙрдЬрд░ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рдХреЛ рд▓рд╛рдЧреА рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдЫ, рддрд░ рдпрд╕рд▓реЗ рдзреЗрд░реИ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рдХрдореНрдкреЛрдиреЗрдиреНрдЯрд╣рд░реВ рд╕рдорд╛рд╡реЗрд╢ рдЧрд░реНрджрдЫ рд░ рд╕реНрдХреНрд░реНрдпрд╛рдЪрдмрд╛рдЯ рдирд┐рд░реНрдорд╛рдг рдЧрд░реНрди рдЕрд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдЫред
  2. рдзреЗрд░реИ рдорд╛рдирд┐рд╕рд╣рд░реВ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рд░ рдЕрдиреНрдп рд╕рдлреНрдЯрд╡реЗрдпрд░рдХреЛ рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛ рдмрдиреНрди рд╕рдХреНрдЫрдиреН, рдЕрдзрд┐рдХ рд╕рдлреНрдЯрд╡реЗрдпрд░ рд╡реНрдпрд╡рд╕рд╛рдпрд╣рд░реВ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫ, рд░ рдпрд╕рдХреЛ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдмрдвреА рдЫред

рдирдХрд╛рд░рд╛рддреНрдордХ рдкрдХреНрд╖ рдпреЛ рд╣реЛ рдХрд┐ рд╕рд░рд▓реАрдХрд░рдгрдХреЛ рдЕрд░реНрдХреЛ рдЪрд░рдг рдХреНрд▓рд╛рдЙрдб рд╕рдорд╛рдзрд╛рдирд╣рд░реВрдХреЛ рдкреНрд░рдпреЛрдЧрд╕рдБрдЧ рд╕рдореНрдмрдиреНрдзрд┐рдд рдЫ, рд░ рдпрд╕рд▓реЗ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╡рд┐рдХреНрд░реЗрддрд╛ рд▓рдХ-рдЗрдирдорд╛ рдкреБрд░реНтАНрдпрд╛рдЙрдБрдЫ, рддреНрдпреЛ рд╣реЛ, рдПрдХ рдЖрдкреВрд░реНрддрд┐рдХрд░реНрддрд╛рд▓рд╛рдИ рдмрд╛рдзреНрдп рдкрд╛рд░реНрдиреЗред рд╣рд╛рдореА рд╕рд░рд▓ рд╕рдорд╛рдзрд╛рдирд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫреМрдВ рд░ рдкреНрд░рджрд╛рдпрдХрд╣рд░реВрд▓реЗ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рдХрдореНрдкреЛрдиреЗрдиреНрдЯрд╣рд░реВ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫреМрдВ, рддрд░ рд╡рд╛рд╕реНрддрд╡рдорд╛ рддрд┐рдиреАрд╣рд░реВ рдареВрд▓рд╛ рдХреНрд▓рд╛рдЙрдбрд╣рд░реВ рдордзреНрдпреЗ рдПрдЙрдЯрд╛рдорд╛ рдЯрд╛рдБрд╕рд┐рдПрдХрд╛ рдЫрдиреНред рддреНрдпреЛ рд╣реЛ, рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд (рд░ рдпрд╕рд╕рдБрдЧ рдорд┐рд▓реНрджреЛ рд╕рдлреНрдЯрд╡реЗрдпрд░) рдбрд┐рдкреНрд▓реЛрдп рдЧрд░реНрдиреЗ рд╕рдмреИрднрдиреНрджрд╛ рд╕рдЬрд┐рд▓реЛ рд░ рдЫрд┐рдЯреЛ рддрд░рд┐рдХрд╛ рдХреНрд▓рд╛рдЙрдбрдорд╛ рдЫ, рд╕реНрд╡рд╛рдорд┐рддреНрд╡ API рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ред

рдЬрдм рдХреНрд▓рд╛рдЙрдбрдорд╛ рдбрд╛рдЯрд╛рдмреЗрд╕рдХреЛ рдХреБрд░рд╛ рдЖрдЙрдБрдЫ, рддреНрдпрд╣рд╛рдБ рджреБрдИрд╡рдЯрд╛ рджреГрд╖реНрдЯрд┐рдХреЛрдгрд╣рд░реВ рдЫрдиреН:

  1. рдирд┐рдпрдорд┐рдд рдбрд╛рдЯрд╛ рд╕реЗрдиреНрдЯрд░рдорд╛ рдЬрд╕реНрддреИ рдбрд╛рдЯрд╛рдмреЗрд╕ рдкреВрд░реНрд╡рд╛рдзрд╛рд░ рдЬрдореНрдорд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реНред рддреНрдпреЛ рд╣реЛ, рдорд╛рдирдХ рдирд┐рд░реНрдорд╛рдг рдмреНрд▓рдХрд╣рд░реВ рд▓рд┐рдиреБрд╣реЛрд╕реН: рдЧрдгрдирд╛, рднрдгреНрдбрд╛рд░рдг, рд░ рдпрд╕реНрддреИ, рд▓рд┐рдирдХреНрд╕ рд░ рддрд┐рдиреАрд╣рд░реВрдорд╛ рдбрд╛рдЯрд╛рдмреЗрд╕ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реН, рд░ рддрд┐рдиреАрд╣рд░реВрд▓рд╛рдИ рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реНрдиреБрд╣реЛрд╕реНред
  2. рд╕реЗрд╡рд╛рдХреЛ рд░реВрдкрдорд╛ рдбрд╛рдЯрд╛рдмреЗрд╕ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реН, рдЬрд╣рд╛рдБ рдкреНрд░рджрд╛рдпрдХрд▓реЗ рдХреНрд▓рд╛рдЙрдб рднрд┐рддреНрд░ рд░реЗрдбрд┐рдореЗрдб рдбрд╛рдЯрд╛рдмреЗрд╕ рдкреНрд░рджрд╛рди рдЧрд░реНрджрдЫред

DBaaS рдЕрд╣рд┐рд▓реЗ рджреНрд░реБрдд рд░реВрдкрдорд╛ рдмрдвреНрджреЛ рдмрдЬрд╛рд░ рд╣реЛ рдХрд┐рдирднрдиреЗ рдпрд╕рд▓реЗ рд╡рд┐рдХрд╛рд╕рдХрд░реНрддрд╛рд╣рд░реВрд▓рд╛рдИ рдбрд╛рдЯрд╛рдмреЗрд╕рд╣рд░реВрд╕рдБрдЧ рд╕реАрдзреИ рдХрд╛рдо рдЧрд░реНрди рд░ рджрд┐рдирдЪрд░реНрдпрд╛ рдХрд╛рд░реНрдпрд▓рд╛рдИ рдиреНрдпреВрдиреАрдХрд░рдг рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред рдкреНрд░рджрд╛рдпрдХрд▓реЗ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛ рд░ рд╕рдЬрд┐рд▓реЛ рд╕реНрдХреЗрд▓рд┐рдВрдЧ, рдбрд╛рдЯрд╛рдмреЗрд╕ рдкреНрдпрд╛рдЪрд┐рдЩ, рдмреНрдпрд╛рдХрдЕрдк, рд░ рдХрд╛рд░реНрдпрд╕рдореНрдкрд╛рджрди рдЯреНрдпреБрдирд┐рдЩ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдЧрд░реНрди рдХрд╛рдо рдЧрд░реНрдЫред

рдЦреБрд▓рд╛ рд╕реНрд░реЛрддрдорд╛ рдЖрдзрд╛рд░рд┐рдд рд╕реЗрд╡рд╛рдХреЛ рд░реВрдкрдорд╛ рджреБрдИ рдкреНрд░рдХрд╛рд░рдХрд╛ рдбрд╛рдЯрд╛рдмреЗрд╕ рд░ рдХреБрдмреЗрд░рдиреЗрдЯрдХреЛ рд░реВрдкрдорд╛ рд╡реИрдХрд▓реНрдкрд┐рдХ

рдЦреБрд▓рд╛ рдбрд╛рдЯрд╛рдмреЗрд╕рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рд╕реЗрд╡рд╛рдХреЛ рд░реВрдкрдорд╛ рджреБрдИ рдкреНрд░рдХрд╛рд░рдХрд╛ рдбрд╛рдЯрд╛рдмреЗрд╕рд╣рд░реВ рдЫрдиреН:

  1. рд╕рдЬрд┐рд▓реЛ рддреИрдирд╛рддреА рд░ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрдирдХреЛ рд▓рд╛рдЧрд┐ рдкреНрд░рд╢рд╛рд╕рди рдмреНрдпрд╛рдХрдЗрдиреНрдбрдорд╛ рдкреНрдпрд╛рдХреЗрдЬ рдЧрд░рд┐рдПрдХреЛ рдПрдХ рдорд╛рдирдХ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рдЙрддреНрдкрд╛рджрдиред
  2. рд╡рд┐рднрд┐рдиреНрди рдПрдб-рдЕрдирд╣рд░реВрдХреЛ рд╕рд╛рде рдПрдХ рдЙрдиреНрдирдд рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рд╕рдорд╛рдзрд╛рди, рдЦреБрд▓рд╛ рд╕реНрд░реЛрддрд╕рдБрдЧ рдЙрдкрдпреБрдХреНрддред

рджреБрдмреИ рд╡рд┐рдХрд▓реНрдкрд╣рд░реВрд▓реЗ рдХреНрд▓рд╛рдЙрдбрд╣рд░реВ рдмреАрдЪрдХреЛ рдорд╛рдЗрдЧреНрд░реЗрд╕рдирдХреЛ рд╕рдореНрднрд╛рд╡рдирд╛ рдХрдо рдЧрд░реНрджрдЫ рд░ рдбрд╛рдЯрд╛ рд░ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВрдХреЛ рдкреЛрд░реНрдЯреЗрдмрд┐рд▓рд┐рдЯреА рдХрдо рдЧрд░реНрджрдЫред рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдХрд╛рд░рдХрд╛ рдХреНрд▓рд╛рдЙрдбрд╣рд░реВрд▓реЗ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдкрдорд╛ рдПрдЙрдЯреИ рдорд╛рдирдХ MySQL рд╕рдорд░реНрдерди рдЧрд░реНрдиреЗ рддрдереНрдпрдХреЛ рдмрд╛рд╡рдЬреБрдж, рддрд┐рдиреАрд╣рд░реВ рдмреАрдЪ рдорд╣рддреНрддреНрд╡рдкреВрд░реНрдг рднрд┐рдиреНрдирддрд╛рд╣рд░реВ рдЫрдиреН: рд╕рдЮреНрдЪрд╛рд▓рди, рдХрд╛рд░реНрдпрд╕рдореНрдкрд╛рджрди, рдмреНрдпрд╛рдХрдЕрдк, рд░ рдпрд╕реНрддреИред рдПрдХ рдХреНрд▓рд╛рдЙрдбрдмрд╛рдЯ рдЕрд░реНрдХреЛрдорд╛ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдЧрд░реНрдиреБ рдЪреБрдиреМрддреАрдкреВрд░реНрдг рд╣реБрди рд╕рдХреНрдЫ, рд╡рд┐рд╢реЗрд╖ рдЧрд░реА рдЬрдЯрд┐рд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ред

рд░ рдпрд╣рд╛рдБ рдкреНрд░рд╢реНрди рдЙрдареНрдЫ - рдХреЗ рдпреЛ рд╕реЗрд╡рд╛рдХреЛ рд░реВрдкрдорд╛ рдбрд╛рдЯрд╛рдмреЗрд╕рдХреЛ рд╕реБрд╡рд┐рдзрд╛ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди рд╕рдореНрднрд╡ рдЫ, рддрд░ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рд╕рдорд╛рдзрд╛рдирдХреЛ рд░реВрдкрдорд╛?

рдирд░рд╛рдореНрд░реЛ рдЦрдмрд░ рдпреЛ рд╣реЛ рдХрд┐, рджреБрд░реНрднрд╛рдЧреНрдпрд╡рд╢, рдмрдЬрд╛рд░рдорд╛ рддреНрдпрд╕реНрддрд╛ рдХреБрдиреИ рд╕рдорд╛рдзрд╛рдирд╣рд░реВ рдЫреИрдирдиреНред рд╕реБрд╕рдорд╛рдЪрд╛рд░ рдпреЛ рд╣реЛ рдХрд┐ рддреНрдпрд╣рд╛рдБ Kubernetes рдЫ, рдЬрд╕рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рддреНрдпрд╕реНрддрд╛ рд╕рдорд╛рдзрд╛рдирд╣рд░реВ рд▓рд╛рдЧреВ рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред

Kubernetes рдХреНрд▓рд╛рдЙрдб рд╡рд╛ рдбрд╛рдЯрд╛ рд╕реЗрдиреНрдЯрд░рдХреЛ рд▓рд╛рдЧрд┐ рдПрдЙрдЯрд╛ рдЕрдкрд░реЗрдЯрд┐рдЩ рд╕рд┐рд╕реНрдЯрдо рд╣реЛ рдЬрд╕рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдПрдЙрдЯреИ рд╣реЛрд╕реНрдЯрдорд╛ рдирднрдИ рдХреНрд▓рд╕реНрдЯрд░рдорд╛ рдзреЗрд░реИ рд╕рд░реНрднрд░рд╣рд░реВрдорд╛ рдПрдкреНрд▓рд┐рдХреЗрд╕рди рдбрд┐рдкреНрд▓реЛрдп рд░ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред

рдЕрдм Kubernetes рдпрд╕реНрддреЛ рд╕рдлреНрдЯрд╡реЗрдпрд░ рдХреЛ рд╢реНрд░реЗрдгреА рдорд╛ рдиреЗрддрд╛ рд╣реЛред рддреНрдпрд╕реНрддрд╛ рд╕рдорд╕реНрдпрд╛рд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдзреЗрд░реИ рдлрд░рдХ рд╕рдорд╛рдзрд╛рдирд╣рд░реВ рдерд┐рдП, рддрд░ рдпреЛ рдорд╛рдирдХ рднрдпреЛред рдзреЗрд░реИ рдХрдореНрдкрдиреАрд╣рд░реВ рдЬреЛ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╕рдорд╛рдзрд╛рдирд╣рд░реВрдорд╛ рдзреНрдпрд╛рди рдХреЗрдиреНрджреНрд░рд┐рдд рдЧрд░реНрдереЗ рдЕрдм Kubernetes рд╕рдорд░реНрдерди рдЧрд░реНрди рдЖрдлреНрдиреЛ рдЙрддреНрдкрд╛рджрдирд╣рд░реВ рдЕрдиреБрдХреВрд▓рди рдЧрд░реНрди рдзреНрдпрд╛рди рдХреЗрдиреНрджреНрд░рд┐рдд рдЧрд░реНрджреИ рдЫрдиреНред

рдердк рд░реВрдкрдорд╛, Kubernetes рдПрдХ рд╡рд┐рд╢реНрд╡рд╡реНрдпрд╛рдкреА рд╕рдорд╛рдзрд╛рди рд╣реЛ рдЬреБрди рдзреЗрд░реИ рд╡рд┐рдХреНрд░реЗрддрд╛рд╣рд░реВрдХреЛ рдирд┐рдЬреА, рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рд░ рд╣рд╛рдЗрдмреНрд░рд┐рдб рдХреНрд▓рд╛рдЙрдбрд╣рд░реВрдорд╛ рд╕рдорд░реНрдерд┐рдд рдЫ, рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐: AWS, Google Cloud, Microsoft Azure, Mail.ru рдХреНрд▓рд╛рдЙрдб рд╕рдорд╛рдзрд╛рди.

рдХрд╕рд░реА Kubernetes рдбреЗрдЯрд╛рдмреЗрд╕ рд╕рдВрдЧ рдХрд╛рдо рдЧрд░реНрджрдЫ

Kubernetes рдореВрд▓ рд░реВрдкрдорд╛ рд╕реНрдЯреЗрдЯрд▓реЗрд╕ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВрдХрд╛ рд▓рд╛рдЧрд┐ рдбрд┐рдЬрд╛рдЗрди рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛ рдЬрд╕рд▓реЗ рдбрд╛рдЯрд╛рд▓рд╛рдИ рдкреНрд░рд╢реЛрдзрди рдЧрд░реНрджрдЫ рддрд░ рдХреБрдиреИ рдкрдирд┐ рдЪреАрдЬ рднрдгреНрдбрд╛рд░ рдЧрд░реНрджреИрди, рдЬрд╕реНрддреИ рдорд╛рдЗрдХреНрд░реЛрд╕рд░реНрд╡рд┐рд╕реЗрд╕ рд╡рд╛ рд╡реЗрдм рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВред рдбрд╛рдЯрд╛рдмреЗрд╕рд╣рд░реВ рд╕реНрдкреЗрдХреНрдЯреНрд░рдордХреЛ рдЕрд░реНрдХреЛ рдЫреЗрдЙрдорд╛ рдЫрдиреН, рддреНрдпреЛ рд╣реЛ, рддрд┐рдиреАрд╣рд░реВ рд╕реНрдЯреЗрдЯрдлреБрд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВ рд╣реБрдиреНред рд░ Kubernetes рдореМрд▓рд┐рдХ рд░реВрдкрдорд╛ рддреНрдпрд╕реНрддрд╛ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдЙрджреНрджреЗрд╢реНрдп рдерд┐рдПрдиред

рдЬреЗ рд╣реЛрд╕реН, рддреНрдпрд╣рд╛рдБ рд╕реБрд╡рд┐рдзрд╛рд╣рд░реВ рдЫрдиреН рдЬреБрди рд╣рд╛рд▓реИ Kubernetes рдорд╛ рджреЗрдЦрд╛ рдкрд░реЗрдХрд╛ рдЫрдиреН рдЬрд╕рд▓реЗ рдбрд╛рдЯрд╛рдмреЗрд╕ рд░ рдЕрдиреНрдп рд╕реНрдЯреЗрдЯрдлреБрд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВрдХреЛ рдкреНрд░рдпреЛрдЧрд▓рд╛рдИ рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫ:

  1. рд╕реНрдЯреЗрдЯрдлреБрд▓рд╕реЗрдЯ рдЕрд╡рдзрд╛рд░рдгрд╛ рдкреЛрдбрдХреЛ рдХрд╛рдо рд░реЛрдХреНрди рд░ рдЧреНрд░реЗрд╕рдлреБрд▓ рд╢рдЯрдбрд╛рдЙрди (рдПрдкреНрд▓рд┐рдХреЗрд╢рдирдХреЛ рдЕрдиреБрдорд╛рдирд┐рдд рд╢рдЯрдбрд╛рдЙрди) рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЧрд░реНрдиреЗ рдмрд╛рд░реЗ рдШрдЯрдирд╛рд╣рд░реВ рдкреНрд░рд╢реЛрдзрди рдЧрд░реНрдирдХрд╛ рд▓рд╛рдЧрд┐ рдЖрджрд┐рдорд╣рд░реВрдХреЛ рдПрдХ рд╕рдореНрдкреВрд░реНрдг рд╢реНрд░реГрдВрдЦрд▓рд╛ рд╣реЛред
  2. рдкрд░реНрд╕рд┐рд╕реНрдЯреЗрдиреНрдЯ рднреЛрд▓реНрдпреБрдорд╣рд░реВ рдбреЗрдЯрд╛ рд╕реНрдЯреЛрд░рд╣рд░реВ рд╣реБрдиреН рдЬреБрди рдкреЛрдбрд╣рд░реВ, рдХреБрдмрд░реНрдиреЗрдЯреНрд╕ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рд╡рд╕реНрддреБрд╣рд░реВрд╕рдБрдЧ рд╕рдореНрдмрдиреНрдзрд┐рдд рдЫрдиреНред
  3. рдЕрдкрд░реЗрдЯрд░ рдлреНрд░реЗрдорд╡рд░реНрдХ - рддреНрдпреЛ рд╣реЛ, рдзреЗрд░реИ рдиреЛрдбрд╣рд░реВрдорд╛ рд╡рд┐рддрд░рд┐рдд рдбрд╛рдЯрд╛рдмреЗрд╕рд╣рд░реВ рд░ рдЕрдиреНрдп рд╕реНрдЯреЗрдЯрдлреБрд▓ рдЕрдиреБрдкреНрд░рдпреЛрдЧрд╣рд░реВ рдкреНрд░рдмрдиреНрдз рдЧрд░реНрдирдХрд╛ рд▓рд╛рдЧрд┐ рдХрдореНрдкреЛрдиреЗрдиреНрдЯрд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреЗ рдХреНрд╖рдорддрд╛ред

рдкрд╣рд┐рд▓реЗ рдиреИ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдХреНрд▓рд╛рдЙрдбрд╣рд░реВрдорд╛ рд╕реЗрд╡рд╛рдХреЛ рд░реВрдкрдорд╛ рдареВрд▓рд╛ рдбрд╛рдЯрд╛рдмреЗрд╕рд╣рд░реВ рдЫрдиреН, рдЬрд╕рдХреЛ рдмреНрдпрд╛рдХрдЗрдиреНрдб рдХреБрдмрд░реНрдиреЗрдЯреНрд╕ рд╣реЛ, рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐: CockroachCloud, InfluxDB, PlanetScaleред рддреНрдпреЛ рд╣реЛ, Kubernetes рдорд╛ рдбрд╛рдЯрд╛рдмреЗрд╕ рд╕реИрджреНрдзрд╛рдиреНрддрд┐рдХ рд░реВрдкрдорд╛ рд╕рдореНрднрд╡ рдорд╛рддреНрд░ рд╣реЛрдЗрди, рддрд░ рд╡реНрдпрд╡рд╣рд╛рд░рдорд╛ рдХрд╛рдо рдЧрд░реНрдиреЗ рдХреБрд░рд╛ рдкрдирд┐ рд╣реЛред

Percona рд╕рдБрдЧ Kubernetes рдХреЛ рд▓рд╛рдЧрд┐ рджреБрдИ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рд╕рдорд╛рдзрд╛рдирд╣рд░реВ рдЫрдиреН:

  1. MongoDB рдХреЛ рд▓рд╛рдЧрд┐ Percona рд╕рд░реНрднрд░ рдХреЛ рд▓рд╛рдЧрд┐ Kubernetes рдЕрдкрд░реЗрдЯрд░ред
  2. XtraDB CLUSTER рдХреЛ рд▓рд╛рдЧрд┐ Kubernetes рдЕрдкрд░реЗрдЯрд░ MySQL рд╕рдБрдЧ рдорд┐рд▓реНрджреЛ рд░ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛ рд░ рд╕реНрдерд┐рд░рддрд╛ рдкреНрд░рджрд╛рди рдЧрд░реНрдиреЗ рд╕реЗрд╡рд╛ рд╣реЛред рдпрджрд┐ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛ рдЖрд╡рд╢реНрдпрдХ рдЫреИрди рднрдиреЗ рддрдкрд╛рдИрд▓реЗ рдПрдХрд▓ рдиреЛрдб рдкрдирд┐ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐ dev рдбрд╛рдЯрд╛рдмреЗрд╕рдХреЛ рд▓рд╛рдЧрд┐ред

Kubernetes рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрд▓рд╛рдИ рджреБрдИ рд╕рдореВрд╣рдорд╛ рд╡рд┐рднрд╛рдЬрди рдЧрд░реНрди рд╕рдХрд┐рдиреНрдЫред рдХреЗрд╣реА рд╡реНрдпрдХреНрддрд┐рд╣рд░реВрд▓реЗ рдХреБрдмреЗрд░рдиреЗрдЯ рдЕрдкрд░реЗрдЯрд░рд╣рд░реВ рд╕реАрдзреИ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫрдиреН - рдпреА рдореБрдЦреНрдп рд░реВрдкрдорд╛ рдЙрдиреНрдирдд рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВ рд╣реБрдиреН рдЬрд╕рд▓рд╛рдИ рдкреНрд░рд╡рд┐рдзрд┐рд▓реЗ рдХрд╕рд░реА рдХрд╛рдо рдЧрд░реНрдЫ рднрдиреНрдиреЗ рд░рд╛рдореНрд░реЛрд╕рдБрдЧ рдмреБрдЭреНрджрдЫред рдЕрд░реВрд▓реЗ рдпрд╕рд▓рд╛рдИ рдмреНрдпрд╛рдХрдПрдиреНрдбрдорд╛ рдЪрд▓рд╛рдЙрдБрдЫрдиреН - рддреНрдпрд╕реНрддрд╛ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВ рд╕реЗрд╡рд╛рдХреЛ рд░реВрдкрдорд╛ рдбрд╛рдЯрд╛рдмреЗрд╕ рдЬрд╕реНрддрд╛ рдХреБрд░рд╛рдорд╛ рд░реБрдЪрд┐ рд░рд╛рдЦреНрдЫрдиреН, рддрд┐рдиреАрд╣рд░реВ рдХреБрдмрд░реНрдиреЗрдЯреНрд╕рдХреЛ рд╕реВрдХреНрд╖реНрдорддрд╛рд╣рд░реВрдорд╛ рдЬрд╛рди рдЪрд╛рд╣рдБрджреИрдирдиреНред рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╣рд░реВрдХреЛ рджреЛрд╕реНрд░реЛ рд╕рдореВрд╣рдХреЛ рд▓рд╛рдЧрд┐, рд╣рд╛рдореАрд╕рдБрдЧ рдЕрд░реНрдХреЛ рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд рд╕рдорд╛рдзрд╛рди рдЫ - Percona DBaaS CLI рдЙрдкрдХрд░рдгред рдпреЛ рдкреНрд░рд╡рд┐рдзрд┐рдХреЛ рдЧрд╣рд┐рд░реЛ рдмреБрдЭрд╛рдЗ рдмрд┐рдирд╛ Kubernetes рдорд╛ рдЖрдзрд╛рд░рд┐рдд рдЦреБрд▓рд╛ рд╕реНрд░реЛрдд DBaaS рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди рдЪрд╛рд╣рдиреЗрд╣рд░реВрдХрд╛ рд▓рд╛рдЧрд┐ рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ рд╕рдорд╛рдзрд╛рди рд╣реЛред

Google Kubernetes рдЗрдиреНрдЬрд┐рдирдорд╛ Percona рдХреЛ DBaaS рдХрд╕рд░реА рдЪрд▓рд╛рдЙрдиреЗ

Google Kubernetes рдЗрдиреНрдЬрд┐рди, рдореЗрд░реЛ рд╡рд┐рдЪрд╛рд░рдорд╛, Kubernetes рдкреНрд░рд╡рд┐рдзрд┐рдХреЛ рд╕рдмреИрднрдиреНрджрд╛ рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдордзреНрдпреЗ рдПрдХ рд╣реЛред рдпреЛ рд╕рдВрд╕рд╛рд░рдХрд╛ рдзреЗрд░реИ рдХреНрд╖реЗрддреНрд░рд╣рд░реВрдорд╛ рдЙрдкрд▓рдмреНрдз рдЫ рд░ рдПрдХ рд╕рд░рд▓ рд░ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдХрдорд╛рдгреНрдб рд▓рд╛рдЗрди рдЙрдкрдХрд░рдг (SDK) рдЫ, рдЬрд╕рд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдореНрдпрд╛рдиреБрдЕрд▓ рд░реВрдкрдорд╛ рдкреНрд▓реЗрдЯрдлрд░реНрдо рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдЧрд░реНрдиреБрдХреЛ рд╕рдЯреНрдЯрд╛ рд╕реНрдХреНрд░рд┐рдкреНрдЯрд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫред

рд╣рд╛рдореНрд░реЛ DBaaS рдХрд╛рдо рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐, рд╣рд╛рдореАрд▓рд╛рдИ рдирд┐рдореНрди рдЕрд╡рдпрд╡рд╣рд░реВ рдЪрд╛рд╣рд┐рдиреНрдЫ:

  1. рдХреБрдмреЗрдХреНрдЯрд▓ред
  2. рдЧреБрдЧрд▓ рдХреНрд▓рд╛рдЙрдб SDKред
  3. Percona DBaaS CLIред

kubectl рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реН

рд╣рд╛рдореА рддрдкрд╛рдИрдВрдХреЛ рдЕрдкрд░реЗрдЯрд┐рдЩ рд╕рд┐рд╕реНрдЯрдордХреЛ рд▓рд╛рдЧрд┐ рдкреНрдпрд╛рдХреЗрдЬ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрдЫреМрдВ, рд╣рд╛рдореА рдЙрдмреБрдиреНрдЯреБрдХреЛ рдЙрджрд╛рд╣рд░рдг рд╣реЗрд░реНрдиреЗрдЫреМрдВред рдердк рд╡рд┐рд╡рд░рдг рдпрд╣рд╛рдБ.

sudo apt-get update && sudo apt-get install -y apt-transport-https gnupg2
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add -
echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee -a /etc/apt/sources.list.d/kubernetes.list
sudo apt-get update
sudo apt-get install -y kubectl

Google Cloud SDK рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрджреИ

рд╣рд╛рдореА рд╕рдлреНрдЯрд╡реЗрдпрд░ рдкреНрдпрд╛рдХреЗрдЬ рддреНрдпрд╣рд┐ рддрд░рд┐рдХрд╛рдорд╛ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрдЫреМрдВред рдердк рд╡рд┐рд╡рд░рдг рдпрд╣рд╛рдБ.

# Add the Cloud SDK distribution URI as a package source
echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] 
http://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list

# Import the Google Cloud Platform public key
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key --keyring /usr/share/keyrings/cloud.google.gpg add -

# Update the package list and install the Cloud SDK
sudo apt-get update && sudo apt-get install google-cloud-sdk

Percona DBaaS CLI рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрджреИ

Percona рднрдгреНрдбрд╛рд░рдмрд╛рдЯ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реНред Percona DBaaS CLI рдЙрдкрдХрд░рдг рдЕрдЭреИ рдкрдирд┐ рдПрдХ рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ рдЙрддреНрдкрд╛рджрди рд╣реЛ, рддреНрдпрд╕реИрд▓реЗ рдпреЛ рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ рднрдгреНрдбрд╛рд░рдорд╛ рдЕрд╡рд╕реНрдерд┐рдд рдЫ, рдЬреБрди рддрдкрд╛рдИрд▓реЗ рдкрд╣рд┐рд▓реЗ рдиреИ рдкрд░реНрдХреЛрдирд╛ рд░рд┐рдкреЛрдЬрд┐рдЯрд░реАрд╣рд░реВ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрдиреБрднрдПрдХреЛ рдЫ рднрдиреЗ рдкрдирд┐ рдЫреБрдЯреНрдЯреИ рд╕рдХреНрд╖рдо рд╣реБрдиреБрдкрд░реНрдЫред

рдердк рдкрдвреНрдиреБрд╣реЛрд╕реН рдпрд╣рд╛рдБ.

рд╕реНрдерд╛рдкрдирд╛ рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо:

  1. Percona-рд░рд┐рд▓реАрдЬ рдЙрдкрдХрд░рдг рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ Percona рднрдгреНрдбрд╛рд░рд╣рд░реВ рд╕реЗрдЯрдЕрдк рдЧрд░реНрдиреБрд╣реЛрд╕реНред рдкрд╣рд┐рд▓реЗ рддрдкрд╛рдИрдВрд▓реЗ рдкрд░реНрдХреЛрдирд╛рдмрд╛рдЯ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдкрд░реНрдХреЛрдирд╛-рд░рд┐рд▓реАрдЬ рдкреНрдпрд╛рдХреЗрдЬ рдбрд╛рдЙрдирд▓реЛрдб рд░ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ:
    wget https://repo.percona.com/apt/percona-release_latest.generic_all.deb
    sudo dpkg -i percona-release_latest.generic_all.deb
  2. рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ рдЙрдкрдХрд░рдг рднрдгреНрдбрд╛рд░ рдШрдЯрдХ рд╕рдХреНрд╖рдо рдЧрд░реНрдиреБрд╣реЛрд╕реН:
    sudo percona-release enable tools experimental
    
  3. percona-dbaas-cli рдкреНрдпрд╛рдХреЗрдЬ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реН:
    sudo apt-get update
    sudo apt-get install percona-dbaas-cli

рдЕрд╡рдпрд╡рд╣рд░реВрдХреЛ рд╕рдЮреНрдЪрд╛рд▓рди рд╕реЗрдЯрдЕрдк рдЧрд░реНрджреИ

рд╕реЗрдЯрд┐рдЩрд╣рд░реВрдХреЛ рдмрд╛рд░реЗрдорд╛ рдердк рдпрд╣рд╛рдБ.

рдкрд╣рд┐рд▓реЗ рддрдкрд╛рдИрдВрд▓реЗ рдЖрдлреНрдиреЛ Google рдЦрд╛рддрд╛рдорд╛ рд▓рдЧ рдЗрди рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫред рдпрд╕рдмрд╛рд╣реЗрдХ, рдЧреБрдЧрд▓ рдХреНрд▓рд╛рдЙрдбрд▓реЗ рдПрдХ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд▓рд╛рдИ рдзреЗрд░реИ рд╕реНрд╡рддрдиреНрддреНрд░ рдкрд░рд┐рдпреЛрдЬрдирд╛рд╣рд░реВ рд░рд╛рдЦреНрди рдЕрдиреБрдорддрд┐ рджрд┐рдиреНрдЫ, рддреНрдпрд╕реИрд▓реЗ рддрдкрд╛рдИрдВрд▓реЗ рдпрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛рдХреЛ рд▓рд╛рдЧрд┐ рдХреЛрдб рдкреНрд░рдпреЛрдЧ рдЧрд░реЗрд░ рдХрд╛рдо рдЧрд░реНрдиреЗ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ:

gcloud auth login
gcloud config set project hidden-brace-236921

рдЕрд░реНрдХреЛ, рд╣рд╛рдореА рдХреНрд▓рд╕реНрдЯрд░ рдмрдирд╛рдЙрдБрдЫреМрдВред рдбреЗрдореЛрдХреЛ рд▓рд╛рдЧрд┐, рдореИрд▓реЗ рдХреЗрд╡рд▓ рддреАрди рдиреЛрдбрд╣рд░реВрдХреЛ Kubernetes рдХреНрд▓рд╕реНрдЯрд░ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реЗрдВ - рдпреЛ рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛рдХреЛ рд▓рд╛рдЧрд┐ рдЖрд╡рд╢реНрдпрдХ рдиреНрдпреВрдирддрдо рд╣реЛ:

gcloud container clusters create --zone us-central1-a your-cluster-name --cluster-version 1.15 --num-nodes=3

рдирд┐рдореНрди kubectl рдЖрджреЗрд╢рд▓реЗ рд╣рд╛рдореНрд░реЛ рд╡рд░реНрддрдорд╛рди рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд▓рд╛рдИ рд╡рд╛рдВрдЫрд┐рдд рд╡рд┐рд╢реЗрд╖рд╛рдзрд┐рдХрд╛рд░ рджрд┐рдиреНрдЫ:

kubectl create clusterrolebinding cluster-admin-binding-$USER 
--clusterrole=cluster-admin --user=$(gcloud config get-value core/account)

рддреНрдпрд╕рдкрдЫрд┐ рд╣рд╛рдореА рдПрдЙрдЯрд╛ рдиреЗрдорд╕реНрдкреЗрд╕ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдЫреМрдВ рд░ рдпрд╕рд▓рд╛рдИ рд╕рдХреНрд░рд┐рдп рдмрдирд╛рдЙрдБрдЫреМрдВред рдиреЗрдорд╕реНрдкреЗрд╕, рдореЛрдЯреЗ рд░реВрдкрдорд╛ рдмреЛрд▓реНрдиреЗ, рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╡рд╛ рд╡рд╛рддрд╛рд╡рд░рдг рдЬрд╕реНрддреИ рд╣реЛ, рддрд░ рдкрд╣рд┐рд▓реЗ рдиреИ Kubernetes рдХреНрд▓рд╕реНрдЯрд░ рднрд┐рддреНрд░ рдЫред рдпреЛ рдЧреБрдЧрд▓ рдХреНрд▓рд╛рдЙрдб рдкрд░рд┐рдпреЛрдЬрдирд╛рд╣рд░реВрдмрд╛рдЯ рд╕реНрд╡рддрдиреНрддреНрд░ рдЫ:

kubectl create namespace my-namespace
kubectl config set-context --current --namespace=my-namespace

рдХреНрд▓рд╕реНрдЯрд░ рд╕реБрд░реБ рдЧрд░реНрджреИ

рдПрдХрдЪреЛрдЯрд┐ рд╣рд╛рдореАрд▓реЗ рдпреА рдХреЗрд╣реА рдЪрд░рдгрд╣рд░реВ рдкрд╛рд░ рдЧрд░рд┐рд╕рдХреЗрдкрдЫрд┐, рд╣рд╛рдореА рдпреЛ рд╕рд╛рдзрд╛рд░рдг рдЖрджреЗрд╢рдХреЛ рд╕рд╛рде рддреАрди-рдиреЛрдб рдХреНрд▓рд╕реНрдЯрд░ рд╕реБрд░реБ рдЧрд░реНрди рд╕рдХреНрдЫреМрдВ:

# percona-dbaas mysql create-db example
Starting ......................................... [done]
Database started successfully, connection details are below:
Provider:          k8s
Engine:            pxc
Resource Name:     example
Resource Endpoint: example-proxysql.my-namespace.pxc.svc.local
Port:              3306
User:              root
Pass:              Nt9YZquajW7nfVXTTrP
Status:            ready

рдХреНрд▓рд╕реНрдЯрд░рдорд╛ рдХрд╕рд░реА рдЬрдбрд╛рди рдЧрд░реНрдиреЗ

рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд░реВрдкрдорд╛, рдпреЛ Kubernetes рднрд┐рддреНрд░ рдорд╛рддреНрд░ рдЙрдкрд▓рдмреНрдз рдЫред рддреНрдпреЛ рд╣реЛ, рдпреЛ рдпреЛ рд╕рд░реНрднрд░рдмрд╛рдЯ рдкрд╣реБрдБрдЪрдпреЛрдЧреНрдп рдЫреИрди рдЬрд╣рд╛рдБрдмрд╛рдЯ рддрдкрд╛рдИрдВрд▓реЗ "рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реН" рдЖрджреЗрд╢ рдЪрд▓рд╛рдЙрдиреБрднрдпреЛред рдпрд╕рд▓рд╛рдИ рдЙрдкрд▓рдмреНрдз рдЧрд░рд╛рдЙрдирдХреЛ рд▓рд╛рдЧрд┐, рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, рдХреНрд▓рд╛рдЗрдиреНрдЯрд╕рдБрдЧ рдкрд░реАрдХреНрд╖рдгрдХреЛ рд▓рд╛рдЧрд┐, рддрдкрд╛рдИрдВрд▓реЗ рдкреЛрд░реНрдЯ рдореНрдпрд╛рдкрд┐рдЩ рдорд╛рд░реНрдлрдд рдкреЛрд░реНрдЯ рдлрд░реНрд╡рд╛рд░реНрдб рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ:

kubectl port-forward svc/example-proxysql 3306:3306 $

рддреНрдпрд╕рдкрдЫрд┐ рд╣рд╛рдореА рддрдкрд╛рдЗрдБрдХреЛ MySQL рдХреНрд▓рд╛рдЗрдиреНрдЯ рдЬрдбрд╛рди рдЧрд░реНрдЫреМрдВ:

mysql -h 127.0.0.1 -P 3306 -uroot -pNt9YZquajW7nfVXTTrP

рдЙрдиреНрдирдд рдХреНрд▓рд╕реНрдЯрд░ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдЖрджреЗрд╢рд╣рд░реВ

рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ IP рдорд╛ рдбрд╛рдЯрд╛рдмреЗрд╕

рдпрджрд┐ рддрдкрд╛рдЗрдБ рдХреНрд▓рд╕реНрдЯрд░ рдЙрдкрд▓рдмреНрдзрддрд╛рдХреЛ рд▓рд╛рдЧрд┐ рдердк рд╕реНрдерд╛рдпреА рд╕рдорд╛рдзрд╛рди рдЪрд╛рд╣рдиреБрд╣реБрдиреНрдЫ рднрдиреЗ, рддрдкрд╛рдЗрдБ рдмрд╛рд╣реНрдп рдЖрдИрдкреА рдареЗрдЧрд╛рдирд╛ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред рдпрд╕ рдЕрд╡рд╕реНрдерд╛рдорд╛, рдбрд╛рдЯрд╛рдмреЗрд╕ рдЬрд╣рд╛рдБрдмрд╛рдЯ рдкрдирд┐ рдкрд╣реБрдБрдЪрдпреЛрдЧреНрдп рд╣реБрдиреЗрдЫред рдпреЛ рдХрдо рд╕реБрд░рдХреНрд╖рд┐рдд рдЫ, рддрд░ рдЕрдХреНрд╕рд░ рдЕрдзрд┐рдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХред рдмрд╛рд╣реНрдп IP рдХреЛ рд▓рд╛рдЧреА рд╣рд╛рдореА рдирд┐рдореНрди рдЖрджреЗрд╢ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫреМрдВ:

# percona-dbaas mysql create-db exposed 
--options="proxysql.serviceType=LoadBalancer"
Starting ......................................... [done]
Database started successfully, connection details are below:
Provider:          k8s
Engine:            pxc
Resource Name:     exposed
Resource Endpoint: 104.154.133.197
Port:              3306
User:              root
Pass:              k0QVxTr8EVfgyCLYse
Status:            ready

To access database please run the following command:
mysql -h 104.154.133.197 -P 3306 -uroot -pk0QVxTr8EVfgyCLYse

рд╕реНрдкрд╖реНрдЯ рд░реВрдкрдорд╛ рдкрд╛рд╕рд╡рд░реНрдб рд╕реЗрдЯ рдЧрд░реНрдиреБрд╣реЛрд╕реН

рдкреНрд░рдгрд╛рд▓реАрд▓реЗ рдЕрдирд┐рдпрдорд┐рдд рд░реВрдкрдорд╛ рдкрд╛рд╕рд╡рд░реНрдб рдЙрддреНрдкрдиреНрди рдЧрд░реНрдиреБрдХреЛ рд╕рдЯреНрдЯрд╛, рддрдкрд╛рдЗрдБ рд╕реНрдкрд╖реНрдЯ рд░реВрдкрдорд╛ рдкрд╛рд╕рд╡рд░реНрдб рд╕реЗрдЯ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ:

# percona-dbaas mysql create-db withpw --password=mypassword
Starting ......................................... [done]
Database started successfully, connection details are below:
Provider:          k8s
Engine:            pxc
Resource Name:     withpw
Resource Endpoint: withpw-proxysql.my-namespace.pxc.svc.local
Port:              3306
User:              root
Pass:              mypassword
Status:            ready

рдо рдорд╛рдирд╡ рдкрдвреНрди рдпреЛрдЧреНрдп рдврд╛рдБрдЪрд╛рдорд╛ рд╕реНрдХреНрд░рд┐рдкреНрдЯрд╣рд░реВрдХреЛ рдЖрдЙрдЯрдкреБрдЯ рджреЗрдЦрд╛рдЙрдБрджреИ рдЫреБ, рддрд░ JSON рдврд╛рдБрдЪрд╛ рдкрдирд┐ рд╕рдорд░реНрдерд┐рдд рдЫред

рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛ рдмрдиреНрдж рдЧрд░реНрджреИ

рдирд┐рдореНрди рдЖрджреЗрд╢рдХреЛ рд╕рд╛рде рддрдкрд╛рдИрд▓реЗ рдПрдХрд▓ рдиреЛрдб рдбрд┐рдкреНрд▓реЛрдп рдЧрд░реНрди рдЙрдЪреНрдЪ рдЙрдкрд▓рдмреНрдзрддрд╛ рдЕрд╕рдХреНрд╖рдо рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ:

# percona-dbaas mysql create-db singlenode 
--options="proxysql.enabled=false, allowUnsafeConfigurations=true,pxc.size=1"
Starting ......................................... [done]
Database started successfully, connection details are below:
Provider:          k8s
Engine:            pxc
Resource Name:     singlenode
Resource Endpoint: singlenode-pxc.my-namespace.pxc.svc.local
Port:              3306
User:              root
Pass:              22VqFD96mvRnmPMGg
Status:            ready

рдпреЛ MySQL рд▓рд╛рдИ рдЫрд┐рдЯреЛ рд░ рд╕рдЬрд┐рд▓реИ рд╕рдВрдЧ рдЪрд▓рд╛рдЙрдирдХреЛ рд▓рд╛рдЧрд┐ рдкрд░реАрдХреНрд╖рдг рдХрд╛рд░реНрдпрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐ рдПрдХ рд╕рдорд╛рдзрд╛рди рд╣реЛ, рдпрд╕рд▓рд╛рдИ рдкрд░реАрдХреНрд╖рдг рдЧрд░реНрдиреБрд╣реЛрд╕реН, рд░ рддреНрдпрд╕рдкрдЫрд┐ рдпрд╕рд▓рд╛рдИ рдмрдиреНрдж рдЧрд░реНрдиреБрд╣реЛрд╕реН рд╡рд╛ рд╡рд┐рдХрд╛рд╕рдХреЛ рд▓рд╛рдЧрд┐ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реНред

Percona DBaaS CLI рдЙрдкрдХрд░рдгрд▓реЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ Kubernetes рдорд╛ DBaaS-рдЬрд╕реНрддреЛ рд╕рдорд╛рдзрд╛рди рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрди рдорджреНрджрдд рдЧрд░реНрдЫред рдПрдХреИ рд╕рдордпрдорд╛, рд╣рд╛рдореА рдпрд╕рдХреЛ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд░ рдЙрдкрдпреЛрдЧрд┐рддрд╛рдорд╛ рдХрд╛рдо рдЬрд╛рд░реА рд░рд╛рдЦреНрдЫреМрдВред

рдпреЛ рд░рд┐рдкреЛрд░реНрдЯ рдкрд╣рд┐рд▓реЛ рдкрдЯрдХ рдкреНрд░рд╕реНрддреБрдд рдЧрд░рд┐рдПрдХреЛ рдерд┐рдпреЛ @Databases Meetup Mail.ru рдХреНрд▓рд╛рдЙрдб рд╕рдорд╛рдзрд╛рди рд░ Tarantool рджреНрд╡рд╛рд░рд╛ред рд╣реЗрд░ ╨▓╨╕╨┤╨╡╨╛ рдЕрдиреНрдп рдкреНрд░рджрд░реНрд╢рдирд╣рд░реВ рд░ рдЯреЗрд▓рд┐рдЧреНрд░рд╛рдордорд╛ рдШрдЯрдирд╛ рдШреЛрд╖рдгрд╛рд╣рд░реВрдХреЛ рд╕рджрд╕реНрдпрддрд╛ рд▓рд┐рдиреБрд╣реЛрд╕реН Mail.ru Group рдорд╛ Kubernetes рдХреЛ рд╡рд░рд┐рдкрд░рд┐.

рдпрд╕ рд╡рд┐рд╖рдпрдорд╛ рдЕрд░реВ рдХреЗ рдкрдвреНрдиреЗ:

  1. рдЖрдзреБрдирд┐рдХ IIoT рдкреНрд▓реЗрдЯрдлрд░реНрдордорд╛ рдбрд╛рдЯрд╛рдмреЗрд╕рд╣рд░реВред
  2. рдХрд╕рд░реА рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рд▓рд╛рдЧреА рдПрдХ рдбрд╛рдЯрд╛рдмреЗрд╕ рдЫрдиреЛрдЯ рдЧрд░реНрди рдХреЛ рд▓рд╛рдЧреА рддрдкрд╛рдИрд▓реЗ рдлреЗрд░рд┐ рдЫрдиреМрдЯ рдЧрд░реНрдиреБ рдкрд░реНрджреИрдиред

рд╕реНрд░реЛрдд: www.habr.com

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдердкреНрди