GitLab рддреБрдореНрд╣рд╛рд▓рд╛ рдореЛрдареНрдпрд╛ NextCloud рд╕реНрдЯреЛрд░реЗрдЬрдЪрд╛ рдмреЕрдХрдЕрдк рдШреЗрдгреНрдпрд╛рд╕ рдХрд╢реА рдорджрдд рдХрд░рддреЗ

рдЕрд╣реЛ рд╣рд╛рдмреНрд░!

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

рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рдирдЪреНрдпрд╛ рд╡реИрд╢рд┐рд╖реНрдЯреНрдпрд╛рдВрдореБрд│реЗ рдЙрджреНрднрд╡рд▓реЗрд▓реНрдпрд╛ рд╕рдорд╕реНрдпрд╛ рдореНрд╣рдгрдЬреЗ рднрд░рдкреВрд░ рдбреЗрдЯрд╛ рдЖрд╣реЗ. рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб, рд░рд┐рдбрдВрдбрдВрд╕реА, рд╡реНрдпрдХреНрддрд┐рдирд┐рд╖реНрда рдХрд╛рд░рдгреЗ рдЖрдгрд┐ рдмрд░реЗрдЪ рдХрд╛рд╣реА рджреНрд╡рд╛рд░реЗ рдкреНрд░рджрд╛рди рдХреЗрд▓реЗрд▓реА рдЖрд╡реГрддреНрддреА рдЕрдиреЗрдХ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рддрдпрд╛рд░ рдХрд░рддреЗ.

prehistory

рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓реЙрдбрдЪреЗ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдХрд░рддрд╛рдирд╛, рдкреНрд░рднрд╛рд╡реА рдмреЕрдХрдЕрдк рдЖрдпреЛрдЬрд┐рдд рдХрд░рдгреНрдпрд╛рдЪреА рд╕рдорд╕реНрдпрд╛ рдЙрджреНрднрд╡рддреЗ, рдЬреА рдПрдиреНрдХреНрд░рд┐рдкреНрдЯ рдХреЗрд▓реЗрд▓реА рдЕрд╕рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ, рдХрд╛рд░рдг рдбреЗрдЯрд╛ рдореМрд▓реНрдпрд╡рд╛рди рдЖрд╣реЗ.

рдЖрдореНрд╣реА рдЖрдордЪреНрдпрд╛ рдард┐рдХрд╛рдгреА рдХрд┐рдВрд╡рд╛ рдЧреНрд░рд╛рд╣рдХрд╛рдВрдЪреНрдпрд╛ рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдбрдЪреНрдпрд╛ рд╡реЗрдЧрд│реНрдпрд╛ рдорд╢реАрдирд╡рд░ рдмреЕрдХрдЕрдк рд╕рдВрдЪрдпрд┐рдд рдХрд░рдгреНрдпрд╛рдЪреЗ рдкрд░реНрдпрд╛рдп рдСрдлрд░ рдХрд░рддреЛ, рдЬреНрдпрд╛рд╕рд╛рдареА рдкреНрд░рд╢рд╛рд╕рдирд╛рдХрдбреЗ рд▓рд╡рдЪрд┐рдХ рд╕реНрд╡рдпрдВрдЪрд▓рд┐рдд рджреГрд╖реНрдЯреАрдХреЛрди рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ.

рдмрд░реЗрдЪ рдХреНрд▓рд╛рдпрдВрдЯ рдЖрд╣реЗрдд, рддреЗ рд╕рд░реНрд╡ рднрд┐рдиреНрди рдХреЙрдиреНрдлрд┐рдЧрд░реЗрд╢рдирд╕рд╣ рдЖрдгрд┐ рд╕рд░реНрд╡ рддреНрдпрд╛рдВрдЪреНрдпрд╛ рд╕реНрд╡рддрдГрдЪреНрдпрд╛ рд╕рд╛рдЗрдЯрд╡рд░ рдЖрдгрд┐ рддреНрдпрд╛рдВрдЪреНрдпрд╛ рд╕реНрд╡рддрдГрдЪреНрдпрд╛ рд╡реИрд╢рд┐рд╖реНрдЯреНрдпрд╛рдВрд╕рд╣. рдЬреЗрд╡реНрд╣рд╛ рд╕рдВрдкреВрд░реНрдг рд╕рд╛рдЗрдЯ рддреБрдордЪреНрдпрд╛ рдорд╛рд▓рдХреАрдЪреА рдЕрд╕рддреЗ рдЖрдгрд┐ рдмреЕрдХрдЕрдк рдХреНрд░рд╛рдЙрдирдкрд╛рд╕реВрди рдмрдирд╡рд▓реЗ рдЬрд╛рддрд╛рдд рддреЗрд╡реНрд╣рд╛ рд╣реЗ рдПрдХ рдорд╛рдирдХ рддрдВрддреНрд░ рдЖрд╣реЗ; рддреЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдмрд╕рдд рдирд╛рд╣реА.

рдкреНрд░рдердо, рдЗрдирдкреБрдЯ рдбреЗрдЯрд╛ рдкрд╛рд╣реВ. рдЖрдореНрд╣рд╛рд▓рд╛ рдЧрд░рдЬ рдЖрд╣реЗ:

  • рдПрдХ рдиреЛрдб рдХрд┐рдВрд╡рд╛ рдЕрдиреЗрдХрд╛рдВрдЪреНрдпрд╛ рджреГрд╖реНрдЯреАрдиреЗ рд╕реНрдХреЗрд▓реЗрдмрд┐рд▓рд┐рдЯреА. рдореЛрдареНрдпрд╛ рд╕реНрдерд╛рдкрдиреЗрд╕рд╛рдареА рдЖрдореНрд╣реА рд╕реНрдЯреЛрд░реЗрдЬ рдореНрд╣рдгреВрди рдорд┐рдиреАрдУ рд╡рд╛рдкрд░рддреЛ.
  • рдмреЕрдХрдЕрдк рдШреЗрдгреНрдпрд╛рдд рдпреЗрдгрд╛рд▒реНрдпрд╛ рд╕рдорд╕реНрдпрд╛рдВрдмрджреНрджрд▓ рдЬрд╛рдгреВрди рдШреНрдпрд╛.
  • рддреБрдореНрд╣рд╛рд▓рд╛ рддреБрдордЪреНрдпрд╛ рдХреНрд▓рд╛рдпрдВрдЯ рдЖрдгрд┐/рдХрд┐рдВрд╡рд╛ рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдмреЕрдХрдЕрдк рдареЗрд╡рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ.
  • рддреНрд╡рд░реАрдд рдЖрдгрд┐ рд╕рд╣рдЬрдкрдгреЗ рд╕рдорд╕реНрдпрд╛ рд╣рд╛рддрд╛рд│рд╛.
  • рдХреНрд▓рд╛рдпрдВрдЯ рдЖрдгрд┐ рд╕реНрдерд╛рдкрдирд╛ рдПрдХрдореЗрдХрд╛рдВрдкрд╛рд╕реВрди рдЦреВрдк рднрд┐рдиреНрди рдЖрд╣реЗрдд - рдПрдХрд╕рдорд╛рдирддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдгреЗ рд╢рдХреНрдп рдирд╛рд╣реА.
  • рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддреАрдЪреА рдЧрддреА рджреЛрди рдкрд░рд┐рд╕реНрдерд┐рддреАрдВрдордзреНрдпреЗ рдХрдореАрддрдХрдореА рдЕрд╕рд╛рд╡реА: рдкреВрд░реНрдг рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддреА (рдЖрдкрддреНрддреА), рдПрдХ рдлреЛрд▓реНрдбрд░ рдЪреБрдХреВрди рдорд┐рдЯрд╡рд▓реЗ.
  • рдбреБрдкреНрд▓рд┐рдХреЗрд╢рди рдлрдВрдХреНрд╢рди рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ.

GitLab рддреБрдореНрд╣рд╛рд▓рд╛ рдореЛрдареНрдпрд╛ NextCloud рд╕реНрдЯреЛрд░реЗрдЬрдЪрд╛ рдмреЕрдХрдЕрдк рдШреЗрдгреНрдпрд╛рд╕ рдХрд╢реА рдорджрдд рдХрд░рддреЗ

рдмреЕрдХрдЕрдк рд╡реНрдпрд╡рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреНрдпрд╛рдЪреНрдпрд╛ рд╕рдорд╕реНрдпреЗрдЪреЗ рдирд┐рд░рд╛рдХрд░рдг рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдЖрдореНрд╣реА GitLab рд╕реНрдерд╛рдкрд┐рдд рдХреЗрд▓реЗ. рдЯреЕрдХрд▓рджреНрд╡рд╛рд░реЗ рдЕрдзрд┐рдХ рддрдкрд╢реАрд▓.

рдЕрд░реНрдерд╛рдд, рдЕрд╢рд╛ рд╕рдорд╕реНрдпреЗрдЪреЗ рдирд┐рд░рд╛рдХрд░рдг рдХрд░рдгрд╛рд░реЗ рдЖрдореНрд╣реА рдкрд╣рд┐рд▓реЗ рдирд╛рд╣реА, рдкрд░рдВрддреБ рдЕрд╕реЗ рджрд┐рд╕рддреЗ рдХреА рдЖрдордЪрд╛ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ, рдХрд╖реНрдЯрд╛рдиреЗ рдорд┐рд│рд╡рд▓реЗрд▓рд╛ рдЕрдиреБрднрд╡ рдордиреЛрд░рдВрдЬрдХ рдЕрд╕реВ рд╢рдХрддреЛ рдЖрдгрд┐ рдЖрдореНрд╣реА рддреЗ рд╕рд╛рдорд╛рдпрд┐рдХ рдХрд░рдгреНрдпрд╛рд╕ рддрдпрд╛рд░ рдЖрд╣реЛрдд.

рдЖрдордЪреНрдпрд╛ рдХрдВрдкрдиреАрдЪреЗ рдУрдкрди рд╕реЛрд░реНрд╕ рдкреЙрд▓рд┐рд╕реА рдЕрд╕рд▓реНрдпрд╛рдиреЗ, рдЖрдореНрд╣реА рдУрдкрди рд╕реЛрд░реНрд╕ рд╕реЛрд▓реНрдпреВрд╢рди рд╢реЛрдзрдд рд╣реЛрддреЛ. рддреНрдпрд╛ рдмрджрд▓реНрдпрд╛рдд, рдЖрдореНрд╣реА рдЖрдордЪреНрдпрд╛ рдШрдбрд╛рдореЛрдбреА рд╕рд╛рдорд╛рдпрд┐рдХ рдХрд░рддреЛ рдЖрдгрд┐ рддреНрдпрд╛ рдкреЛрд╕реНрдЯ рдХрд░рддреЛ. рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, GitHub рд╡рд░ рдЖрд╣реЗ рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдбрд╕рд╛рдареА рдЖрдордЪреЗ рдкреНрд▓рдЧрдЗрди, рдЬреЗ рдЖрдореНрд╣реА рдЧреНрд░рд╛рд╣рдХрд╛рдВрдирд╛ рдкреНрд░рджрд╛рди рдХрд░рддреЛ, рдЕрдкрдШрд╛рддрд╛рдиреЗ рдХрд┐рдВрд╡рд╛ рд╣реЗрддреБрдкреБрд░рд╕реНрд╕рд░ рд╣рдЯрд╡рд▓реНрдпрд╛рдЪреНрдпрд╛ рдмрд╛рдмрддреАрдд рдбреЗрдЯрд╛ рд╕реБрд░рдХреНрд╖рд┐рддрддрд╛ рд╡рд╛рдврд╡рддреЛ.

рдмреЕрдХрдЕрдк рд╕рд╛рдзрдиреЗ

рдЖрдореНрд╣реА рдмреЕрдХрдЕрдк рддрдпрд╛рд░ рдХрд░рдгреНрдпрд╛рдЪреЗ рд╕рд╛рдзрди рдирд┐рд╡рдбреВрди рдЙрдкрд╛рдп рдкрджреНрдзрддреА рд╢реЛрдзрдгреНрдпрд╛рд╕ рд╕реБрд░реБрд╡рд╛рдд рдХреЗрд▓реА.

рдирд┐рдпрдорд┐рдд рдЯрд╛рд░ + gzip рдЪрд╛рдВрдЧрд▓реЗ рдХрд╛рд░реНрдп рдХрд░рдд рдирд╛рд╣реА - рдбреЗрдЯрд╛ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдЖрд╣реЗ. рдПрдХрд╛ рд╡рд╛рдвреАрдордзреНрдпреЗ рд╕рд╣рд╕рд╛ рдЦреВрдк рдХрдореА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдмрджрд▓ рдЕрд╕рддрд╛рдд рдЖрдгрд┐ рдПрдХрд╛рдЪ рдлрд╛рдИрд▓рдордзреАрд▓ рдмрд░реНрдпрд╛рдЪ рдбреЗрдЯрд╛рдЪреА рдкреБрдирд░рд╛рд╡реГрддреНрддреА рд╣реЛрддреЗ.
рдЖрдгрдЦреА рдПрдХ рд╕рдорд╕реНрдпрд╛ рдЖрд╣реЗ - рд╡рд┐рддрд░рд┐рдд рдбреЗрдЯрд╛ рд╕реНрдЯреЛрд░реЗрдЬрдЪреА рд░рд┐рдбрдВрдбрдВрд╕реА. рдЖрдореНрд╣реА minio рд╡рд╛рдкрд░рддреЛ рдЖрдгрд┐ рддреНрдпрд╛рдЪрд╛ рдбреЗрдЯрд╛ рдореБрд│рд╛рдд рдЕрдирд╛рд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рдХрд┐рдВрд╡рд╛ рддреБрдореНрд╣рд╛рд▓рд╛ minio рджреНрд╡рд╛рд░реЗрдЪ рдмреЕрдХрдЕрдк рдШреНрдпрд╛рд╡рд╛ рд▓рд╛рдЧрд▓рд╛ - рддреЗ рд▓реЛрдб рдХрд░рд╛ рдЖрдгрд┐ рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдордордзреАрд▓ рд╕рд░реНрд╡ рд╕реНрдкреЗрд╕рд░ рд╡рд╛рдкрд░рд╛ рдЖрдгрд┐, рдХрдореА рдорд╣рддреНрддреНрд╡рд╛рдЪреЗ рдирд╛рд╣реА, рдХрд╛рд╣реА рдмрд╛рджрд▓реНрдпрд╛ рдЖрдгрд┐ рдореЗрдЯрд╛-рдорд╛рд╣рд┐рддреА рд╡рд┐рд╕рд░рдгреНрдпрд╛рдЪрд╛ рдзреЛрдХрд╛ рдЖрд╣реЗ. рдХрд┐рдВрд╡рд╛ рдбреБрдкреНрд▓рд┐рдХреЗрд╢рди рд╡рд╛рдкрд░рд╛.

рдбреБрдкреНрд▓рд┐рдХреЗрд╢рдирд╕рд╣ рдмреЕрдХрдЕрдк рд╕рд╛рдзрдиреЗ рдореБрдХреНрдд рд╕реНрддреНрд░реЛрддрд╛рдордзреНрдпреЗ рдЙрдкрд▓рдмреНрдз рдЖрд╣реЗрдд (рд╣реЕрдмреНрд░реЗрд╡рд░ рддреЗрдереЗ рд╣реЛрддреА рд▓реЗрдЦ рдпрд╛ рдереАрдо рдмрджреНрджрд▓) рдЖрдгрд┐ рдЖрдордЪреЗ рдЕрдВрддрд┐рдо рд╕реНрдкрд░реНрдзрдХ рд╣реЛрддреЗ рдмреЛрд░реНрдЧ ╨╕ рд╡рд┐рд╢реНрд░рд╛рдВрддреА. рдЖрдордЪреА рджреЛрди рдНрдкреНрд▓рд┐рдХреЗрд╢рдиреНрд╕рдЪреА рддреБрд▓рдирд╛ рдЦрд╛рд▓реА рдЖрд╣реЗ, рдкрд░рдВрддреБ рдЖрддреНрддрд╛ рдЖрдореНрд╣реА рддреБрдореНрд╣рд╛рд▓рд╛ рд╕рд╛рдВрдЧреВ рдХреА рдЖрдореНрд╣реА рд╕рдВрдкреВрд░реНрдг рдпреЛрдЬрдирд╛ рдХрд╢реА рдЖрдпреЛрдЬрд┐рдд рдХреЗрд▓реА.

рдмреЕрдХрдЕрдк рд╡реНрдпрд╡рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдгреЗ

рдмреЛрд░реНрдЧ рдЖрдгрд┐ рд░реЗрд╕реНрдЯрд┐рдХ рдЪрд╛рдВрдЧрд▓реЗ рдЖрд╣реЗрдд, рдкрд░рдВрддреБ рдХреЛрдгрддреНрдпрд╛рд╣реА рдЙрддреНрдкрд╛рджрдирд╛рдордзреНрдпреЗ рдХреЗрдВрджреНрд░реАрдХреГрдд рдирд┐рдпрдВрддреНрд░рдг рдпрдВрддреНрд░рдгрд╛ рдирд╛рд╣реА. рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдЖрдгрд┐ рдирд┐рдпрдВрддреНрд░рдгрд╛рдЪреНрдпрд╛ рдЙрджреНрджреЗрд╢рд╛рд╕рд╛рдареА, рдЖрдореНрд╣реА рдПрдХ рд╕рд╛рдзрди рдирд┐рд╡рдбрд▓реЗ рдЖрд╣реЗ рдЬреЗ рдЖрдореНрд╣реА рдЖрдзреАрдЪ рд▓рд╛рдЧреВ рдХреЗрд▓реЗ рдЖрд╣реЗ, рдЬреНрдпрд╛рд╢рд┐рд╡рд╛рдп рдЖрдореНрд╣реА рдСрдЯреЛрдореЗрд╢рдирд╕рд╣ рдЖрдордЪреНрдпрд╛ рдХрд╛рдорд╛рдЪреА рдХрд▓реНрдкрдирд╛ рдХрд░реВ рд╢рдХрдд рдирд╛рд╣реА - рд╣реЗ рд╕реБрдкреНрд░рд╕рд┐рджреНрдз CI/CD - GitLab рдЖрд╣реЗ.

рдХрд▓реНрдкрдирд╛ рдЦрд╛рд▓реАрд▓рдкреНрд░рдорд╛рдгреЗ рдЖрд╣реЗ: рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдб рдбреЗрдЯрд╛ рд╕рдВрдЪрдпрд┐рдд рдХрд░рдгрд╛рд░реНтАНрдпрд╛ рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдбрд╡рд░ gitlab-runner рд╕реНрдерд╛рдкрд┐рдд рдХреЗрд▓реЗ рдЖрд╣реЗ. рдзрд╛рд╡рдкрдЯреВ рдПрдХрд╛ рд╢реЗрдбреНрдпреВрд▓рд╡рд░ рдПрдХ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЪрд╛рд▓рд╡рддреЛ рдЬреЛ рдмреЕрдХрдЕрдк рдкреНрд░рдХреНрд░рд┐рдпреЗрд╡рд░ рд▓рдХреНрд╖ рдареЗрд╡рддреЛ рдЖрдгрд┐ рддреЛ рдмреЛрд░реНрдЧ рдХрд┐рдВрд╡рд╛ рд░реЗрд╕реНрдЯрд┐рдХ рд▓рд╛рдБрдЪ рдХрд░рддреЛ.

рдЖрдореНрд╣рд╛рд▓рд╛ рдХрд╛рдп рдорд┐рд│рд╛рд▓реЗ? рдЕрдВрдорд▓рдмрдЬрд╛рд╡рдгреАрдХрдбреВрди рдЕрднрд┐рдкреНрд░рд╛рдп, рдмрджрд▓рд╛рдВрд╡рд░ рд╕реЛрдпреАрд╕реНрдХрд░ рдирд┐рдпрдВрддреНрд░рдг, рддреНрд░реБрдЯреА рдЖрдврд│рд▓реНрдпрд╛рд╕ рддрдкрд╢реАрд▓.

рдпреЗрдереЗ рдпреЗрдереЗ GitHub рд╡рд░ рдЖрдореНрд╣реА рд╡рд┐рд╡рд┐рдз рдХрд╛рд░реНрдпрд╛рдВрд╕рд╛рдареА рд╕реНрдХреНрд░рд┐рдкреНрдЯрдЪреА рдЙрджрд╛рд╣рд░рдгреЗ рдкреЛрд╕реНрдЯ рдХреЗрд▓реА рдЖрдгрд┐ рдЖрдореНрд╣реА рддреА рдХреЗрд╡рд│ рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓рд╛рдЙрдбрдЪреНрдпрд╛рдЪ рдирд╡реНрд╣реЗ рддрд░ рдЗрддрд░ рдЕрдиреЗрдХ рд╕реЗрд╡рд╛рдВрдЪреНрдпрд╛ рдмреЕрдХрдЕрдкрдордзреНрдпреЗ рд╕рдВрд▓рдЧреНрди рдХреЗрд▓реА. рддреБрдореНрд╣рд╛рд▓рд╛ рддреЗ рд╕реНрд╡рд╣рд╕реНрддреЗ рдХреЙрдиреНрдлрд┐рдЧрд░ рдХрд░рд╛рдпрдЪреЗ рдирд╕рд▓реНрдпрд╛рд╕ рддреЗрдереЗ рд╢реЗрдбреНрдпреБрд▓рд░ рджреЗрдЦреАрд▓ рдЖрд╣реЗ (рдЖрдгрд┐ рдЖрдореНрд╣рд╛рд▓рд╛ рддреЗ рдирдХреЛ рдЖрд╣реЗ) рдЖрдгрд┐ .gitlab-ci.yml

Gitlab API рдордзреНрдпреЗ рдЕрджреНрдпрд╛рдк CI/CD рдХрд╛рд▓рдмрд╛рд╣реНрдп рдмрджрд▓рдгреНрдпрд╛рдЪрд╛ рдХреЛрдгрддрд╛рд╣реА рдорд╛рд░реНрдЧ рдирд╛рд╣реА, рдкрд░рдВрддреБ рддреЛ рд▓рд╣рд╛рди рдЖрд╣реЗ. рддреЗ рд╡рд╛рдврд╡рдгреНрдпрд╛рдЪреА рдЧрд░рдЬ рдЖрд╣реЗ, рдЕрд╕реЗ рдореНрд╣рдгрд╛ 1d.

рдЧрд┐рдЯрд▓реЕрдм, рд╕реБрджреИрд╡рд╛рдиреЗ, рдХреЗрд╡рд│ рдХрдорд┐рдЯрдиреБрд╕рд╛рд░рдЪ рдирд╡реНрд╣реЗ рддрд░ рдХреЗрд╡рд│ рд╢реЗрдбреНрдпреВрд▓рдиреБрд╕рд╛рд░ рд▓реЙрдиреНрдЪ рдХрд░реВ рд╢рдХрддреЗ, рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдиреЗрдордХреЗ рд╣реЗрдЪ рд╣рд╡реЗ рдЖрд╣реЗ.

рдЖрддрд╛ рд░реЕрдкрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯрдмрджреНрджрд▓.

рдЖрдореНрд╣реА рдпрд╛ рд╕реНрдХреНрд░рд┐рдкреНрдЯрд╕рд╛рдареА рдЦрд╛рд▓реАрд▓ рдЕрдЯреА рд╕реЗрдЯ рдХреЗрд▓реНрдпрд╛ рдЖрд╣реЗрдд:

  • рд╣реЗ рд╕рдорд╛рди рдХрд╛рд░реНрдпрдХреНрд╖рдорддреЗрд╕рд╣ рд░рдирд░рджреНрд╡рд╛рд░реЗ рдЖрдгрд┐ рдХрдиреНрд╕реЛрд▓рдордзреВрди рд╣рд╛рддрд╛рдиреЗ рджреЛрдиреНрд╣реА рд▓реЙрдиреНрдЪ рдХреЗрд▓реЗ рдЬрд╛рд╡реЗ.
  • рддреНрд░реБрдЯреА рд╣рд╛рддрд╛рд│рдгрд╛рд░реЗ рдЕрд╕рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ:
  • рд░рд┐рдЯрд░реНрди рдХреЛрдб.
  • рд▓реЙрдЧрдордзреНрдпреЗ рд╕реНрдЯреНрд░рд┐рдВрдЧ рд╢реЛрдзрд╛. рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, рдЖрдордЪреНрдпрд╛рд╕рд╛рдареА рддреНрд░реБрдЯреА рд╣рд╛ рд╕рдВрджреЗрд╢ рдЕрд╕реВ рд╢рдХрддреЛ рдЬреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдШрд╛рддрдХ рдорд╛рдирдд рдирд╛рд╣реА.
  • рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛рд▓рдмрд╛рд╣реНрдп. рд▓реАрдб рдЯрд╛рдЗрдо рд╡рд╛рдЬрд╡реА рдЕрд╕рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ.
  • рдЖрдореНрд╣рд╛рд▓рд╛ рдЦреВрдк рддрдкрд╢реАрд▓рд╡рд╛рд░ рд▓реЙрдЧ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рдкрд░рдВрддреБ рдХреЗрд╡рд│ рддреНрд░реБрдЯреАрдЪреНрдпрд╛ рдмрд╛рдмрддреАрдд.
  • рд╕реБрд░реВ рдХрд░рдгреНрдпрд╛рдкреВрд░реНрд╡реА рдЕрдиреЗрдХ рдЪрд╛рдЪрдгреНрдпрд╛ рджреЗрдЦреАрд▓ рдХреЗрд▓реНрдпрд╛ рдЬрд╛рддрд╛рдд.
  • рд╕реЛрдпреАрд╕рд╛рдареА рдЫреЛрдЯреЗ рдмреЛрдирд╕ рдЬреЗ рдЖрдореНрд╣рд╛рд▓рд╛ рд╕рдорд░реНрдерди рдкреНрд░рдХреНрд░рд┐рдпреЗрджрд░рдореНрдпрд╛рди рдЙрдкрдпреБрдХреНрдд рд╡рд╛рдЯрд▓реЗ:
  • рдкреНрд░рд╛рд░рдВрдн рдЖрдгрд┐ рд╢реЗрд╡рдЯ рд╕реНрдерд╛рдирд┐рдХ рдорд╢реАрдирдЪреНрдпрд╛ рд╕рд┐рд╕реНрд▓реЙрдЧрдордзреНрдпреЗ рд░реЗрдХреЙрд░реНрдб рдХреЗрд▓рд╛ рдЬрд╛рддреЛ. рд╣реЗ рд╕рд┐рд╕реНрдЯрдо рддреНрд░реБрдЯреА рдЖрдгрд┐ рдмреЕрдХрдЕрдк рдСрдкрд░реЗрд╢рди рдХрдиреЗрдХреНрдЯ рдХрд░рдгреНрдпрд╛рдд рдорджрдд рдХрд░рддреЗ.
  • рддреНрд░реБрдЯреА рд▓реЙрдЧрдЪрд╛ рдХрд╛рд╣реА рднрд╛рдЧ, рдЬрд░ рдЕрд╕реЗрд▓ рддрд░, stdout рд╡рд░ рдЖрдЙрдЯрдкреБрдЯ рдХреЗрд▓рд╛ рдЬрд╛рддреЛ, рд╕рдВрдкреВрд░реНрдг рд▓реЙрдЧ рд╡реЗрдЧрд│реНрдпрд╛ рдлрд╛рдИрд▓рдордзреНрдпреЗ рд▓рд┐рд╣рд┐рд▓рд╛ рдЬрд╛рддреЛ. рд╕реАрдЖрдпрдХрдбреЗ рддрд╛рдмрдбрддреЛрдм рдкрд╛рд╣рдгреЗ рдЖрдгрд┐ рддреНрд░реБрдЯреА рдХреНрд╖реБрд▓реНрд▓рдХ рдЕрд╕рд▓реНрдпрд╛рд╕ рддреНрдпрд╛рдЪреЗ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдгреЗ рд╕реЛрдпреАрд╕реНрдХрд░ рдЖрд╣реЗ.
  • рдбреАрдмрдЧрд┐рдВрдЧ рдореЛрдб.

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

рдУрдкрди рд╕реЛрд░реНрд╕ рд╕рдВрджрд░реНрднрд╛рдд рдХреЛрдгрддреНрдпрд╛рд╣реА рд╕реВрдЪрдирд╛ рдЖрдгрд┐ рдЯрд┐рдкреНрдкрдгреНрдпрд╛ рд╡рд┐рдЪрд╛рд░рд╛рдд рдШреЗрддрд▓реНрдпрд╛рд╕ рдЖрдореНрд╣рд╛рд▓рд╛ рдЖрдирдВрдж рд╣реЛрдИрд▓ - рд╕реНрд╡рд╛рдЧрдд рдЖрд╣реЗ.

рдпрд╛ рдХрд╕реЗ рдХрд╛рд░реНрдп рдХрд░рддреЗ

рдмреЕрд╢ рдПрдХреНрдЭрд┐рдХреНрдпреБрдЯрд░рд╕рд╣ рдзрд╛рд╡рдгрд╛рд░рд╛ рдмреЕрдХрдЕрдк рдиреЛрдбрд╡рд░ рд▓реЙрдиреНрдЪ рдХреЗрд▓рд╛ рдЬрд╛рддреЛ. рд╢реЗрдбреНрдпреБрд▓рд░рдиреБрд╕рд╛рд░, рдЬреЙрдм рд╕реАрдЖрдп/рд╕реАрдбреА рдПрдХрд╛ рд╡рд┐рд╢реЗрд╖ рд╕рд▓рдЧрдо рдирд╛рд╡рд╛рдиреЗ рд▓рд╛рдБрдЪ рдХреЗрд▓реА рдЬрд╛рддреЗ. рдзрд╛рд╡рдкрдЯреВ рдЕрд╢рд╛ рдХрд╛рдорд╛рдВрд╕рд╛рдареА рдпреБрдирд┐рд╡реНрд╣рд░реНрд╕рд▓ рд░реЕрдкрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд╛рдБрдЪ рдХрд░рддреЛ, рддреЛ рдмреЕрдХрдЕрдк рд░реЗрдкреЙрдЬрд┐рдЯрд░реА, рдорд╛рдЙрдВрдЯ рдкреЙрдЗрдВрдЯреНрд╕ рдЖрдгрд┐ рдЖрдкрд▓реНрдпрд╛рд▓рд╛ рдкрд╛рд╣рд┐рдЬреЗ рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рд╕рд░реНрд╡ рдЧреЛрд╖реНрдЯреАрдВрдЪреА рд╡реИрдзрддрд╛ рддрдкрд╛рд╕рддреЛ, рдирдВрддрд░ рдмреЕрдХрдЕрдк рдШреЗрддреЛ рдЖрдгрд┐ рдЬреБрдиреА рд╕рд╛рдл рдХрд░рддреЛ. рдкреВрд░реНрдг рдЭрд╛рд▓реЗрд▓рд╛ рдмреЕрдХрдЕрдк рд╕реНрд╡рддрдГ S3 рд╡рд░ рдкрд╛рдард╡рд▓рд╛ рдЬрд╛рддреЛ.

рдЖрдореНрд╣реА рдпрд╛ рдпреЛрдЬрдиреЗрдиреБрд╕рд╛рд░ рдХрд╛рд░реНрдп рдХрд░рддреЛ - рд╣реЗ рдмрд╛рд╣реНрдп AWS рдкреНрд░рджрд╛рддрд╛ рдХрд┐рдВрд╡рд╛ рд░рд╢рд┐рдпрди рд╕рдорддреБрд▓реНрдп рдЖрд╣реЗ (рддреЗ рд╡реЗрдЧрд╡рд╛рди рдЖрд╣реЗ рдЖрдгрд┐ рдбреЗрдЯрд╛ рд░рд╢рд┐рдпрди рдлреЗрдбрд░реЗрд╢рди рд╕реЛрдбрдд рдирд╛рд╣реА). рдХрд┐рдВрд╡рд╛ рдЖрдореНрд╣реА рдпрд╛ рд╣реЗрддреВрдВрд╕рд╛рдареА рдХреНрд▓рд╛рдпрдВрдЯрд╕рд╛рдареА рддреНрдпрд╛рдЪреНрдпрд╛ рд╕рд╛рдЗрдЯрд╡рд░ рдПрдХ рд╡реЗрдЧрд│рд╛ minio рдХреНрд▓рд╕реНрдЯрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЛ. рдЖрдореНрд╣реА рд╣реЗ рд╕рд╣рд╕рд╛ рд╕реБрд░рдХреНрд╖рд┐рддрддреЗрдЪреНрдпрд╛ рдХрд╛рд░рдгрд╛рдВрд╕рд╛рдареА рдХрд░рддреЛ, рдЬреЗрд╡реНрд╣рд╛ рдХреНрд▓рд╛рдпрдВрдЯрд▓рд╛ рдбреЗрдЯрд╛ рддреНрдпрд╛рдВрдЪреНрдпрд╛ рд╕рд░реНрдХрд┐рдЯрдордзреВрди рдмрд╛рд╣реЗрд░ рдкрдбреВ рдЗрдЪреНрдЫрд┐рдд рдирд╛рд╣реА.

рдЖрдореНрд╣реА ssh рджреНрд╡рд╛рд░реЗ рдмреЕрдХрдЕрдк рдкрд╛рдард╡рд┐рдгреНрдпрд╛рдЪреЗ рд╡реИрд╢рд┐рд╖реНрдЯреНрдп рд╡рд╛рдкрд░рд▓реЗ рдирд╛рд╣реА. рд╣реЗ рд╕реБрд░рдХреНрд╖рд┐рддрддрд╛ рдЬреЛрдбрдд рдирд╛рд╣реА, рдЖрдгрд┐ S3 рдкреНрд░рджрд╛рддреНрдпрд╛рдЪреНрдпрд╛ рдиреЗрдЯрд╡рд░реНрдХ рдХреНрд╖рдорддрд╛ рдЖрдордЪреНрдпрд╛ рдПрдХрд╛ ssh рдорд╢реАрдирдкреЗрдХреНрд╖рд╛ рдЦреВрдк рдЬрд╛рд╕реНрдд рдЖрд╣реЗрдд.

рддреБрдордЪреНтАНрдпрд╛ рд╕реНтАНрдерд╛рдирд┐рдХ рдорд╢реАрдирд▓рд╛ рд╣реЕрдХрд░рдкрд╛рд╕реВрди рд╕рдВрд░рдХреНрд╖рд┐рдд рдХрд░рдгреНтАНрдпрд╛рд╕рд╛рдареА, рдХрд╛рд░рдг рддреЛ S3 рд╡рд░реАрд▓ рдбреЗрдЯрд╛ рдорд┐рдЯрд╡реВ рд╢рдХрддреЛ, рддреБрдореНтАНрд╣реА рдЖрд╡реГрддреНрддреА рд╕рдХреНрд╖рдо рдХрд░рдгреЗ рдЖрд╡рд╢реНтАНрдпрдХ рдЖрд╣реЗ.
рдмреЕрдХрдЕрдк рдиреЗрд╣рдореА рдмреЕрдХрдЕрдк рдПрдиреНрдХреНрд░рд┐рдкреНрдЯ рдХрд░рддреЛ.

рдмреЛрд░реНрдЧрдордзреНрдпреЗ рдПрдирдХреНрд░рд┐рдкреНрдЯреЗрдб рдореЛрдб рдЖрд╣реЗ none, рдкрд░рдВрддреБ рдЖрдореНрд╣реА рддреЗ рдЪрд╛рд▓реВ рдХрд░рдгреНрдпрд╛рдЪреА рдЬреЛрд░рджрд╛рд░ рд╢рд┐рдлрд╛рд░рд╕ рдХрд░рдд рдирд╛рд╣реА. рдпрд╛ рдореЛрдбрдордзреНрдпреЗ, рдХреЗрд╡рд│ рдПрдиреНрдХреНрд░рд┐рдкреНрд╢рди рд╣реЛрдгрд╛рд░ рдирд╛рд╣реА, рдкрд░рдВрддреБ рдЬреЗ рд▓рд┐рд╣рд┐рд▓реЗ рдЬрд╛рдд рдЖрд╣реЗ рддреНрдпрд╛рдЪреА рдЪреЗрдХрд╕рдо рдореЛрдЬрд▓реА рдЬрд╛рдд рдирд╛рд╣реА, рдпрд╛рдЪрд╛ рдЕрд░реНрде рдЕрдЦрдВрдбрддрд╛ рдХреЗрд╡рд│ рдирд┐рд░реНрджреЗрд╢рд╛рдВрдХ рд╡рд╛рдкрд░реВрди рдЕрдкреНрд░рддреНрдпрдХреНрд╖рдкрдгреЗ рддрдкрд╛рд╕рд▓реА рдЬрд╛рдК рд╢рдХрддреЗ.

рд╕реНрд╡рддрдВрддреНрд░ рд╢реЗрдбреНрдпреБрд▓рд░ рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рдЖрдгрд┐ рд╕рд╛рдордЧреНрд░реАрдЪреНрдпрд╛ рдЕрдЦрдВрдбрддреЗрд╕рд╛рдареА рдмреЕрдХрдЕрдк рддрдкрд╛рд╕рддреЛ. рдЪреЗрдХ рдордВрдж рдЖрдгрд┐ рд▓рд╛рдВрдм рдЖрд╣реЗ, рдореНрд╣рдгреВрди рдЖрдореНрд╣реА рдорд╣рд┐рдиреНрдпрд╛рддреВрди рдПрдХрджрд╛ рд╕реНрд╡рддрдВрддреНрд░рдкрдгреЗ рдЪрд╛рд▓рд╡рддреЛ. рдпрд╛рд╕ рдЕрдиреЗрдХ рджрд┐рд╡рд╕ рд▓рд╛рдЧреВ рд╢рдХрддрд╛рдд.

рд░рд╢рд┐рдпрдирдордзреНрдпреЗ рд░реАрдбрдореА

рдореБрдЦреНрдп рдХрд╛рд░реНрдпреЗ

  • prepare рдкреНрд░рд╢рд┐рдХреНрд╖рдг
  • testcheck рддрдпрд╛рд░реА рддрдкрд╛рд╕рдгреА
  • maincommand рдореБрдЦреНрдп рд╕рдВрдШ
  • forcepostscript рдлрдВрдХреНрд╢рди рдЬреЗ рд╢реЗрд╡рдЯреА рдХрд┐рдВрд╡рд╛ рдЪреБрдХреВрди рдЕрдВрдорд▓рд╛рдд рдЖрдгрд▓реЗ рдЬрд╛рддреЗ. рдЖрдореНрд╣реА рддреЗ рд╡рд┐рднрд╛рдЬрди рдЕрдирдорд╛рдЙрдВрдЯ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рд╡рд╛рдкрд░рддреЛ.

рд╕реЗрд╡рд╛ рдХрд╛рд░реНрдпреЗ

  • cleanup рдЖрдореНрд╣реА рддреНрд░реБрдЯреА рд░реЗрдХреЙрд░реНрдб рдХрд░рддреЛ рдХрд┐рдВрд╡рд╛ рд▓реЙрдЧ рдлрд╛рдЗрд▓ рдорд┐рдЯрд╡рддреЛ.
  • checklog рддреНрд░реБрдЯреА рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рдУрд│реАрдЪреНрдпрд╛ рдШрдЯрдиреЗрд╕рд╛рдареА рд▓реЙрдЧрдЪреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░рд╛.
  • ret рдмрд╛рд╣реЗрд░ рдкрдбрд╛ рд╣рдБрдбрд▓рд░.
  • checktimeout рдХрд╛рд▓рдмрд╛рд╣реНрдп рддрдкрд╛рд╕рд╛.

рдкрд░реНрдпрд╛рд╡рд░рдг

  • VERBOSE=1 рдЖрдореНрд╣реА рддрддреНрдХрд╛рд│ рд╕реНрдХреНрд░реАрдирд╡рд░ рддреНрд░реБрдЯреА рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд░рддреЛ (stdout).
  • SAVELOGSONSUCCES=1 рдпрд╢рд╛рд╡рд░ рд▓реЙрдЧ рдЬрддрди рдХрд░рд╛.
  • INIT_REPO_IF_NOT_EXIST=1 рддреЗ рдЕрд╕реНрддрд┐рддреНрд╡рд╛рдд рдирд╕рд▓реНрдпрд╛рд╕ рднрд╛рдВрдбрд╛рд░ рддрдпрд╛рд░ рдХрд░рд╛. рдбреАрдлреЙрд▓реНрдЯрдиреБрд╕рд╛рд░ рдЕрдХреНрд╖рдо.
  • TIMEOUT рдореБрдЦреНрдп рдСрдкрд░реЗрд╢рдирд╕рд╛рдареА рдЬрд╛рд╕реНрддреАрдд рдЬрд╛рд╕реНрдд рд╡реЗрд│. рддреБрдореНрд╣реА рд╢реЗрд╡рдЯреА 'm', 'h' рдХрд┐рдВрд╡рд╛ 'd' рдореНрд╣рдгреВрди рд╕реЗрдЯ рдХрд░реВ рд╢рдХрддрд╛.

рдЬреБрдиреНрдпрд╛ рдкреНрд░рддреАрдВрд╕рд╛рдареА рд╕реНрдЯреЛрд░реЗрдЬ рдореЛрдб. рдбреАрдлреЙрд▓реНрдЯ:

  • KEEP_DAILY=7
  • KEEP_WEEKLY=4
  • KEEP_MONTHLY=6

рд╕реНрдХреНрд░рд┐рдкреНрдЯрдордзреАрд▓ рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓реНрд╕

  • ERROR_STRING тАФ рддреНрд░реБрдЯреАрд╕рд╛рдареА рд▓реЙрдЧ рдЗрди рдЪреЗрдХрд╕рд╛рдареА рд╕реНрдЯреНрд░рд┐рдВрдЧ.
  • EXTRACT_ERROR_STRING тАФ рддреНрд░реБрдЯреА рдЕрд╕рд▓реНрдпрд╛рд╕ рд╢реЛ рд╕реНрдЯреНрд░рд┐рдВрдЧрд╕рд╛рдареА рдЕрднрд┐рд╡реНрдпрдХреНрддреА.
  • KILL_TIMEOUT_SIGNAL - рдХрд╛рд▓рдмрд╛рд╣реНрдп рдЭрд╛рд▓реНрдпрд╛рд╕ рдорд╛рд░рдгреНрдпрд╛рд╕рд╛рдареА рд╕рд┐рдЧреНрдирд▓.
  • TAIL тАФ рд╕реНрдХреНрд░реАрдирд╡рд░ рддреНрд░реБрдЯреАрдВрд╕рд╣ рдХрд┐рддреА рд╕реНрдЯреНрд░рд┐рдВрдЧ рдЖрд╣реЗрдд.
  • COLORMSG - рд╕рдВрджреЗрд╢рд╛рдЪрд╛ рд░рдВрдЧ (рдбрд┐рдлреЙрд▓реНрдЯ рдкрд┐рд╡рд│рд╛).

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

рд░реЗрд╕реНрдЯрд┐рдХ рд╡рд┐ рдмреЛрд░реНрдЧ

рдмреЛрд░реНрдЧ рдЖрдгрд┐ рд░реЗрд╕реНрдЯрд┐рдХ рдпрд╛рдВрдЪреНрдпрд╛рддрд╣реА рддреБрд▓рдирд╛ рдЖрд╣реЗрдд рдпреЗрдереЗ Habr├й рд╡рд░, рдЖрдгрд┐ рдЖрдордЪреНрдпрд╛рдХрдбреЗ рдлрдХреНрдд рджреБрд╕рд░реЗ рдмрдирд╡рдгреНрдпрд╛рдЪреЗ рдХрд╛рдо рдирд╡реНрд╣рддреЗ, рдкрд░рдВрддреБ рдЖрдордЪреЗ рд╕реНрд╡рддрдГрдЪреЗ. рдЖрдордЪреНрдпрд╛ рдбреЗрдЯрд╛рд╡рд░, рдЖрдордЪреНрдпрд╛ рддрдкрд╢реАрд▓рд╛рдВрд╕рд╣ рддреЗ рдХрд╕реЗ рджрд┐рд╕реЗрд▓ рд╣реЗ рдЖрдордЪреНрдпрд╛рд╕рд╛рдареА рдорд╣рддреНрддреНрд╡рд╛рдЪреЗ рд╣реЛрддреЗ. рдЖрдореНрд╣реА рддреНрдпрд╛рдВрдирд╛ рдЖрдгрддреЛ.

рдЖрдордЪреЗ рдирд┐рд╡рдб рдирд┐рдХрд╖, рдЖрдзреАрдЪ рдирдореВрдж рдХреЗрд▓реЗрд▓реНрдпрд╛ рд╡реНрдпрддрд┐рд░рд┐рдХреНрдд (рдбреБрдкреНрд▓рд┐рдХреЗрд╢рди, рдЬрд▓рдж рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддреА рдЗ.):

  • рдЕрдкреВрд░реНрдг рдХрд╛рдорд╛рдЪрд╛ рдкреНрд░рддрд┐рдХрд╛рд░. рдорд╛рд░рдгреНрдпрд╛рд╕рд╛рдареА рддрдкрд╛рд╕рд╛ -9.
  • рдбрд┐рд╕реНрдХрд╡рд░реАрд▓ рдЖрдХрд╛рд░.
  • рд╕рдВрд╕рд╛рдзрдирд╛рдВрдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ (CPU, рдореЗрдорд░реА).
  • рд╕рдВрдЧреНрд░рд╣рд┐рдд blobs рдЖрдХрд╛рд░.
  • S3 рд╕рд╣ рдХрд╛рдо рдХрд░рдд рдЖрд╣реЗ.
  • рдЕрдЦрдВрдбрддрд╛ рддрдкрд╛рд╕рдгреА.

рдЪрд╛рдЪрдгреАрд╕рд╛рдареА, рдЖрдореНрд╣реА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдбреЗрдЯрд╛ рдЖрдгрд┐ рдПрдХреВрдг 1,6 TB рдЖрдХрд╛рд░рд╛рд╕рд╣ рдПрдХ рдХреНрд▓рд╛рдпрдВрдЯ рдШреЗрддрд▓рд╛.
рдкрд░рд┐рд╕реНрдерд┐рддреА.

рдмреЛрд░реНрдЧрд▓рд╛ S3 рд╕рд╣ рдереЗрдЯ рдХрд╕реЗ рдХрд╛рд░реНрдп рдХрд░рд╛рд╡реЗ рд╣реЗ рдорд╛рд╣рд┐рдд рдирд╛рд╣реА рдЖрдгрд┐ рдЖрдореНрд╣реА рдбрд┐рд╕реНрдХрд▓рд╛ рдлреНрдпреВрдЬ рдореНрд╣рдгреВрди рдорд╛рдЙрдВрдЯ рдХреЗрд▓реЗ. рдореВрд░реНрдЦ. рд░реЗрд╕реНрдЯрд┐рдХрдиреЗ рддреЗ S3 рд╡рд░рдЪ рдкрд╛рдард╡рд▓реЗ.

Goofys рдЕрддрд┐рд╢рдп рдЬрд▓рдж рдЖрдгрд┐ рдЪрд╛рдВрдЧрд▓реЗ рдХрд╛рд░реНрдп рдХрд░рддреЗ, рдЖрдгрд┐ рдЖрд╣реЗрдд рдбрд┐рд╕реНрдХ рдХреЕрд╢реЗ рдореЙрдбреНрдпреВрд▓, рдЬреЗ рдХрд╛рдорд╛рд▓рд╛ рдЖрдгрдЦреА рдЧрддреА рджреЗрддреЗ. рд╣реЗ рдмреАрдЯрд╛ рдЯрдкреНрдкреНрдпрд╛рдд рдЖрд╣реЗ, рдЖрдгрд┐ рд╕реНрдкрд╖реНрдЯрдкрдгреЗ, рдЖрдореНрд╣реА рдЪрд╛рдЪрдгреНрдпрд╛ (рдЗрддрд░) рджрд░рдореНрдпрд╛рди рдбреЗрдЯрд╛ рдЧрдорд╛рд╡рд▓реНрдпрд╛рдореБрд│реЗ рдХреНрд░реЕрд╢ рдЭрд╛рд▓реЛ. рдкрд░рдВрддреБ рд╕реЛрдп рдЕрд╢реА рдЖрд╣реЗ рдХреА рдмреЕрдХрдЕрдк рдкреНрд░рдХреНрд░рд┐рдпреЗрд╕рд╛рдареА рд╕реНрд╡рддрдГрдЪ рдЬрд╛рд╕реНрдд рд╡рд╛рдЪрди рдЖрд╡рд╢реНрдпрдХ рдирд╕рддреЗ, рдкрд░рдВрддреБ рдмрд╣реБрддреЗрдХ рд▓реЗрдЦрдирд╛рдЪреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдЕрд╕рддреЗ, рдореНрд╣рдгреВрди рдЖрдореНрд╣реА рдХреЕрд╢реЗрдЪрд╛ рд╡рд╛рдкрд░ рдХреЗрд╡рд│ рдЕрдЦрдВрдбрддрд╛ рддрдкрд╛рд╕рдгреА рджрд░рдореНрдпрд╛рди рдХрд░рддреЛ.

рдиреЗрдЯрд╡рд░реНрдХрдЪрд╛ рдкреНрд░рднрд╛рд╡ рдХрдореА рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА, рдЖрдореНрд╣реА рд╕реНрдерд╛рдирд┐рдХ рдкреНрд░рджрд╛рддрд╛ - рдпрд╛рдВрдбреЗрдХреНрд╕ рдХреНрд▓рд╛рдЙрдбрдЪрд╛ рд╡рд╛рдкрд░ рдХреЗрд▓рд╛.

рддреБрд▓рдирд╛ рдЪрд╛рдЪрдгреА рдкрд░рд┐рдгрд╛рдо.

  • рдЖрдгрдЦреА рд░реАрд╕реНрдЯрд╛рд░реНрдЯрд╕рд╣ рдХрд┐рд▓ -9 рджреЛрдиреНрд╣реА рдпрд╢рд╕реНрд╡реА рдЭрд╛рд▓реЗ.
  • рдбрд┐рд╕реНрдХрд╡рд░реАрд▓ рдЖрдХрд╛рд░. рдмреЛрд░реНрдЧ рд╕рдВрдХреБрдЪрд┐рдд рдХрд░реВ рд╢рдХрддреЛ, рддреНрдпрд╛рдореБрд│реЗ рдкрд░рд┐рдгрд╛рдо рдЕрдкреЗрдХреНрд╖рд┐рдд рдЖрд╣реЗрдд.

рдмреЕрдХрдЕрдк
рдЖрдХрд╛рд░

рдмреЛрд░реНрдЧ
562Gb

рд╡рд┐рд╢реНрд░рд╛рдВрддреА
628Gb

  • CPU рджреНрд╡рд╛рд░реЗ
    рдбрд┐рдлреЙрд▓реНрдЯ рдХреЙрдореНрдкреНрд░реЗрд╢рдирд╕рд╣ рдмреЛрд░реНрдЧ рд╕реНрд╡рддрдГрдЪ рдереЛрдбреЗрд╕реЗ рд╡рд╛рдкрд░рддреЛ, рдкрд░рдВрддреБ рддреНрдпрд╛рдЪреЗ рдореБрд▓реНрдпрд╛рдВрдХрди рдореБрд░реНрдЦ рдкреНрд░рдХреНрд░рд┐рдпреЗрд╕рд╣ рдПрдХрддреНрд░рд┐рддрдкрдгреЗ рдХрд░рдгреЗ рдЖрд╡рд╢реНрдпрдХ рдЖрд╣реЗ. рдПрдХреВрдг, рддреЗ рддреБрд▓рдирд╛рддреНрдордХ рдЖрд╣реЗрдд рдЖрдгрд┐ рд╕рдорд╛рди рдЪрд╛рдЪрдгреА рдЖрднрд╛рд╕реА рдорд╢реАрдирд╡рд░ рд╕реБрдорд╛рд░реЗ 1,2 рдХреЛрд░ рд╡рд╛рдкрд░рддрд╛рдд.
  • рд╕реНрдореГрддреА. рд░реЗрд╕реНрдЯрд┐рдХ рдЕрдВрджрд╛рдЬреЗ 0,5GB рдЖрд╣реЗ, рдмреЛрд░реНрдЧ рдЕрдВрджрд╛рдЬреЗ 200MB рдЖрд╣реЗ. рдкрд░рдВрддреБ рд╕рд┐рд╕реНрдЯрдо рдлрд╛рдЗрд▓ рдХреЕрд╢реЗрдЪреНрдпрд╛ рддреБрд▓рдиреЗрдд рд╣реЗ рд╕рд░реНрд╡ рдирдЧрдгреНрдп рдЖрд╣реЗ. рддреНрдпрд╛рдореБрд│реЗ рдЕрдзрд┐рдХ рдореЗрдорд░реА рд╡рд╛рдЯрдк рдХрд░рдгреНрдпрд╛рдЪрд╛ рд╕рд▓реНрд▓рд╛ рджрд┐рд▓рд╛ рдЬрд╛рддреЛ.
  • рдмреНрд▓реЙрдмрдЪреНрдпрд╛ рдЖрдХрд╛рд░рд╛рддреАрд▓ рдлрд░рдХ рдзрдХреНрдХрд╛рджрд╛рдпрдХ рд╣реЛрддрд╛.

рдмреЕрдХрдЕрдк
рдЖрдХрд╛рд░

рдмреЛрд░реНрдЧ
рд╕реБрдорд╛рд░реЗ 500MB

рд╡рд┐рд╢реНрд░рд╛рдВрддреА
рд╕реБрдорд╛рд░реЗ 5MB

  • рд░реЗрд╕реНрдЯрд┐рдХрдЪрд╛ S3 рдЕрдиреБрднрд╡ рдЙрддреНрдХреГрд╖реНрдЯ рдЖрд╣реЗ. рдЧреЛрдлреАрджреНрд╡рд╛рд░реЗ рдмреЛрд░реНрдЧрд╕реЛрдмрдд рдХрд╛рдо рдХреЗрд▓реНрдпрд╛рдиреЗ рдХреЛрдгрддреЗрд╣реА рдкреНрд░рд╢реНрди рдЙрджреНрднрд╡рдд рдирд╛рд╣реАрдд, рдкрд░рдВрддреБ рд╣реЗ рд▓рдХреНрд╖рд╛рдд рдЖрд▓реЗ рдЖрд╣реЗ рдХреА рдХреЕрд╢реЗ рдкреВрд░реНрдгрдкрдгреЗ рд░реАрд╕реЗрдЯ рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдмреЕрдХрдЕрдк рдкреВрд░реНрдг рдЭрд╛рд▓реНрдпрд╛рдирдВрддрд░ рдЙрдорд╛рдЙрдВрдЯ рдХрд░рдгреНрдпрд╛рдЪрд╛ рд╕рд▓реНрд▓рд╛ рджрд┐рд▓рд╛ рдЬрд╛рддреЛ. S3 рдЪреЗ рд╡реИрд╢рд┐рд╖реНрдареНрдп рдореНрд╣рдгрдЬреЗ рдЕрдВрдбрд░-рдкрдВрдк рдХреЗрд▓реЗрд▓реЗ рднрд╛рдЧ рдХрдзреАрд╣реА рдмрд╛рджрд▓реАрдордзреНрдпреЗ рдкрд╛рдард╡рд▓реЗ рдЬрд╛рдгрд╛рд░ рдирд╛рд╣реАрдд, рдпрд╛рдЪрд╛ рдЕрд░реНрде рдЕрдкреВрд░реНрдг рднрд░рд▓реЗрд▓реНрдпрд╛ рдбреЗрдЯрд╛рдореБрд│реЗ рдореЛрдареЗ рдиреБрдХрд╕рд╛рди рд╣реЛрддреЗ.
  • рдЕрдЦрдВрдбрддрд╛ рддрдкрд╛рд╕рдгреА рджреЛрдиреНрд╣реА рдкреНрд░рдХрд░рдгрд╛рдВрдордзреНрдпреЗ рдЪрд╛рдВрдЧрд▓реА рдХрд╛рд░реНрдп рдХрд░рддреЗ, рдкрд░рдВрддреБ рд╡реЗрдЧ рд▓рдХреНрд╖рдгреАрдп рднрд┐рдиреНрди рдЖрд╣реЗ.
    рдЖрд░рд╛рдорд╢реАрд░ 3,5 рддрд╛рд╕.
    рдмреЛрд░реНрдЧ, 100GB SSD рдлрд╛рдЗрд▓ рдХреЕрд╢реЗрд╕рд╣ - 5 рддрд╛рд╕.рдбреЗрдЯрд╛ рд╕реНрдерд╛рдирд┐рдХ рдбрд┐рд╕реНрдХрд╡рд░ рдЕрд╕рд▓реНрдпрд╛рд╕ рдЕрдВрджрд╛рдЬреЗ рд╕рдорд╛рди рдЧрддреАрдЪрд╛ рдкрд░рд┐рдгрд╛рдо.
    рдмреЛрд░реНрдЧ рдереЗрдЯ S3 рд╡рд░реВрди рдХреЕрд╢реЗрд╢рд┐рд╡рд╛рдп рд╡рд╛рдЪрддреЛ 33 рддрд╛рд╕. рд░рд╛рдХреНрд╖рд╕реА рд▓рд╛рдВрдм.

рд╕рд░реНрд╡рд╛рдд рдорд╣рддреНрддреНрд╡рд╛рдЪреА рдЧреЛрд╖реНрдЯ рдЕрд╢реА рдЖрд╣реЗ рдХреА рдмреЛрд░реНрдЧ рдХреЙрдореНрдкреНрд░реЗрд╕ рдХрд░реВ рд╢рдХрддреЛ рдЖрдгрд┐ рддреНрдпрд╛рдд рдореЛрдареЗ рдмреНрд▓реЙрдм рдЖрд╣реЗрдд - рдЬреЗ S3 рдордзреНрдпреЗ рд╕реНрдЯреЛрд░реЗрдЬ рдЖрдгрд┐ GET/PUT рдСрдкрд░реЗрд╢рдиреНрд╕ рд╕реНрд╡рд╕реНрдд рдХрд░рддрд╛рдд. рдкрд░рдВрддреБ рд╣реЗ рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдЖрдгрд┐ рд╣рд│реВ рдкрдбрддрд╛рд│рдгреАрдЪреНрдпрд╛ рдЦрд░реНрдЪрд╛рд╡рд░ рдпреЗрддреЗ. рдкреБрдирд░реНрдкреНрд░рд╛рдкреНрддреАрдЪреНрдпрд╛ рдЧрддреАрдмрджреНрджрд▓, рдЖрдореНрд╣рд╛рд▓рд╛ рдХреЛрдгрддрд╛рд╣реА рдлрд░рдХ рдЬрд╛рдгрд╡рд▓рд╛ рдирд╛рд╣реА. рд░реЗрд╕реНрдЯрд┐рдХ рдирдВрддрд░рдЪреЗ рдмреЕрдХрдЕрдк (рдкрд╣рд┐рд▓реНрдпрд╛ рдирдВрддрд░) рдереЛрдбрд╛ рдЬрд╛рд╕реНрдд рд╡реЗрд│ рдШреЗрддреЗ, рдкрд░рдВрддреБ рд▓рдХреНрд╖рдгреАрдп рдирд╛рд╣реА.

рдирд┐рд╡рдбреАрдордзреНрдпреЗ рд╢реЗрд╡рдЯрдЪреЗ рдкрд░рдВрддреБ рдХрд┐рдорд╛рди рдирд╛рд╣реА рд╕рдореБрджрд╛рдпрд╛рдЪрд╛ рдЖрдХрд╛рд░ рд╣реЛрддрд╛.

рдЖрдгрд┐ рдЖрдореНрд╣реА рдмреЛрд░реНрдЧ рдирд┐рд╡рдбрд▓рд╛.

рдХреЙрдореНрдкреНрд░реЗрд╢рди рдмрджреНрджрд▓ рдХрд╛рд╣реА рд╢рдмреНрдж

рдмреЛрд░реНрдЧрдЪреНрдпрд╛ рд╢рд╕реНрддреНрд░рд╛рдЧрд╛рд░рд╛рдд рдПрдХ рдЙрддреНрдХреГрд╖реНрдЯ рдирд╡реАрди рдХреЙрдореНрдкреНрд░реЗрд╢рди рдЕрд▓реНрдЧреЛрд░рд┐рджрдо рдЖрд╣реЗ - zstd. рдХреЙрдореНрдкреНрд░реЗрд╢рди рдЧреБрдгрд╡рддреНрддрд╛ gzip рдкреЗрдХреНрд╖рд╛ рд╡рд╛рдИрдЯ рдирд╛рд╣реА, рдкрд░рдВрддреБ рдЦреВрдк рд╡реЗрдЧрд╡рд╛рди рдЖрд╣реЗ. рдЖрдгрд┐ рдбреАрдлреЙрд▓реНрдЯ lz4 рдЪреНрдпрд╛ рдЧрддреАрд╢реА рддреБрд▓рдирд╛ рдХрд░рддрд╛ рдпреЗрдИрд▓.

рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, MySQL рдбреЗрдЯрд╛рдмреЗрд╕ рдбрдВрдк рд╕рдорд╛рди рд╡реЗрдЧрд╛рдиреЗ lz4 рдкреЗрдХреНрд╖рд╛ рджреЛрди рдкрдЯреАрдиреЗ рдЪрд╛рдВрдЧрд▓реЗ рд╕рдВрдХреБрдЪрд┐рдд рдХреЗрд▓реЗ рдЬрд╛рддреЗ. рддрдерд╛рдкрд┐, рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдбреЗрдЯрд╛рдЪрд╛ рдЕрдиреБрднрд╡ рджрд░реНрд╢рд╡рд┐рддреЛ рдХреА рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓реЙрдб рдиреЛрдбрдЪреНрдпрд╛ рдХреЙрдореНрдкреНрд░реЗрд╢рди рд░реЗрд╢реЛрдордзреНрдпреЗ рдлрд╛рд░рдЪ рдХрдореА рдлрд░рдХ рдЖрд╣реЗ.

рдмреЛрд░реНрдЧрдХрдбреЗ рдПрдХ рдмреЛрдирд╕ рдХреЙрдореНрдкреНрд░реЗрд╢рди рдореЛрдб рдЖрд╣реЗ - рдЬрд░ рдлрд╛рдЗрд▓рдордзреНрдпреЗ рдЙрдЪреНрдЪ рдПрдиреНрдЯреНрд░реЙрдкреА рдЕрд╕реЗрд▓ рддрд░ рдХреЙрдореНрдкреНрд░реЗрд╢рди рдЕрдЬрд┐рдмрд╛рдд рд▓рд╛рдЧреВ рдХреЗрд▓реЗ рдЬрд╛рдд рдирд╛рд╣реА, рдЬреНрдпрд╛рдореБрд│реЗ рд╡реЗрдЧ рд╡рд╛рдврддреЛ. рддрдпрд╛рд░ рдХрд░рддрд╛рдирд╛ рдкрд░реНрдпрд╛рдпрд╛рдиреЗ рд╕рдХреНрд╖рдо рдХреЗрд▓реЗ
-C auto,zstd
zstd рдЕрд▓реНрдЧреЛрд░рд┐рджрдорд╕рд╛рдареА
рддрд░ рдпрд╛ рдкрд░реНрдпрд╛рдпрд╛рд╕рд╣, рдбрд┐рдлреЙрд▓реНрдЯ рдХреЙрдореНрдкреНрд░реЗрд╢рдирдЪреНрдпрд╛ рддреБрд▓рдиреЗрдд, рдЖрдореНрд╣рд╛рд▓рд╛ рдорд┐рд│рд╛рд▓реЗ
560Gb рдЖрдгрд┐ 562Gb рдЕрдиреБрдХреНрд░рдореЗ. рд╡рд░реАрд▓ рдЙрджрд╛рд╣рд░рдгрд╛рддреАрд▓ рдбреЗрдЯрд╛, рдореА рддреБрдореНрд╣рд╛рд▓рд╛ рдЖрдард╡рдг рдХрд░реВрди рджреЗрддреЛ, рдХреЙрдореНрдкреНрд░реЗрд╢рдирд╢рд┐рд╡рд╛рдп рдкрд░рд┐рдгрд╛рдо 628Gb рдЖрд╣реЗ. 2GB рдлрд░рдХрд╛рдЪреНрдпрд╛ рдкрд░рд┐рдгрд╛рдорд╛рдиреЗ рдЖрдореНрд╣рд╛рд▓рд╛ рдХрд╛рд╣реАрд╕реЗ рдЖрд╢реНрдЪрд░реНрдпрдЪрдХрд┐рдд рдХреЗрд▓реЗ, рдкрд░рдВрддреБ рдЖрдореНрд╣рд╛рд▓рд╛ рд╡рд╛рдЯрд▓реЗ рдХреА рдЖрдореНрд╣реА рд╢реЗрд╡рдЯреА рддреЗ рдирд┐рд╡рдбреВ. auto,zstd.

рдмреЕрдХрдЕрдк рд╕рддреНрдпрд╛рдкрди рдкрджреНрдзрдд

рд╢реЗрдбреНрдпреВрд▓рд░рдиреБрд╕рд╛рд░, рд╡реНрд╣рд░реНрдЪреНрдпреБрдЕрд▓ рдорд╢реАрди рдереЗрдЯ рдкреНрд░рджрд╛рддреНрдпрд╛рдХрдбреВрди рдХрд┐рдВрд╡рд╛ рдХреНрд▓рд╛рдпрдВрдЯрдХрдбреВрди рд▓реЙрдиреНрдЪ рдХреЗрд▓реА рдЬрд╛рддреЗ, рдЬреНрдпрд╛рдореБрд│реЗ рдиреЗрдЯрд╡рд░реНрдХ рд▓реЛрдб рдореЛрдареНрдпрд╛ рдкреНрд░рдорд╛рдгрд╛рдд рдХрдореА рд╣реЛрддреЗ. рдХрдореАрддрдХрдореА рддреЗ рд╕реНрд╡рддрдГ рд╡рд╛рдврд╡рдгреНрдпрд╛рдкреЗрдХреНрд╖рд╛ рдЖрдгрд┐ рд░рд╣рджрд╛рд░реА рдЪрд╛рд▓рд╡рд┐рдгреНрдпрд╛рдкреЗрдХреНрд╖рд╛ рд╕реНрд╡рд╕реНрдд рдЖрд╣реЗ.

goofys --cache "--free:5%:/mnt/cache" -o allow_other --endpoint https://storage.yandexcloud.net --file-mode=0666 --dir-mode=0777 xxxxxxx.com /mnt/goofys
export BORG_PASSCOMMAND="cat /home/borg/.borg-passphrase"
borg list /mnt/goofys/borg1/
borg check --debug -p --verify-data /mnt/goofys/borg1/

рд╕рдорд╛рди рдпреЛрдЬрдирд╛ рд╡рд╛рдкрд░реБрди, рдЖрдореНрд╣реА рдЕрдБрдЯреАрд╡реНрд╣рд╛рдпрд░рд╕рд╕рд╣ рдлрд╛рдпрд▓реА рддрдкрд╛рд╕рддреЛ (рд╡рд╛рд╕реНрддрд╡рд┐рдХрддреЗрдирдВрддрд░). рд╢реЗрд╡рдЯреА, рд╡рд╛рдкрд░рдХрд░реНрддреЗ рдиреЗрдХреНрд╕реНрдЯрдХреНрд▓реЙрдбрд╡рд░ рд╡реЗрдЧрд╡реЗрдЧрд│реНрдпрд╛ рдЧреЛрд╖реНрдЯреА рдЕрдкрд▓реЛрдб рдХрд░рддрд╛рдд рдЖрдгрд┐ рдкреНрд░рддреНрдпреЗрдХрд╛рдХрдбреЗ рдЕрдБрдЯреАрд╡реНрд╣рд╛рдпрд░рд╕ рдирд╕рддреЛ. рдУрддрдгреНрдпрд╛рдЪреНрдпрд╛ рд╡реЗрд│реА рддрдкрд╛рд╕рдгреА рдХрд░рдгреЗ рдЦреВрдк рд╡реЗрд│ рдШреЗрддреЗ рдЖрдгрд┐ рд╡реНрдпрд╡рд╕рд╛рдпрд╛рдд рд╣рд╕реНрддрдХреНрд╖реЗрдк рдХрд░рддреЗ.

рд╡реЗрдЧрд╡реЗрдЧрд│реНрдпрд╛ рдЯреЕрдЧрд╕рд╣ рд╡реЗрдЧрд╡реЗрдЧрд│реНрдпрд╛ рдиреЛрдбреНрд╕рд╡рд░ рдзрд╛рд╡рдкрдЯреВ рдЪрд╛рд▓рд╡реВрди рд╕реНрдХреЗрд▓реЗрдмрд┐рд▓рд┐рдЯреА рдкреНрд░рд╛рдкреНрдд рд╣реЛрддреЗ.
рдЖрдордЪреЗ рдирд┐рд░реАрдХреНрд╖рдг GitLab API рджреНрд╡рд╛рд░реЗ рдПрдХрд╛ рд╡рд┐рдВрдбреЛрдордзреНрдпреЗ рдмреЕрдХрдЕрдк рд╕реНрдерд┐рддреА рд╕рдВрдХрд▓рд┐рдд рдХрд░рддреЗ; рдЖрд╡рд╢реНрдпрдХ рдЕрд╕рд▓реНрдпрд╛рд╕, рд╕рдорд╕реНрдпрд╛ рд╕рд╣рдЬрдкрдгреЗ рд▓рдХреНрд╖рд╛рдд рдпреЗрддрд╛рдд рдЖрдгрд┐ рддрд┐рддрдХреНрдпрд╛рдЪ рд╕рд╣рдЬрдкрдгреЗ рд╕реНрдерд╛рдирд┐рдХреАрдХреГрдд рдХреЗрд▓реНрдпрд╛ рдЬрд╛рддрд╛рдд.

рдирд┐рд╖реНрдХрд░реНрд╖

рдкрд░рд┐рдгрд╛рдореА, рдЖрдореНрд╣рд╛рд▓рд╛ рдЦрд╛рддреНрд░реА рдЖрд╣реЗ рдХреА рдЖрдореНрд╣реА рдмреЕрдХрдЕрдк рдШреЗрддреЛ, рдЖрдордЪреЗ рдмреЕрдХрдЕрдк рд╡реИрдз рдЖрд╣реЗрдд, рддреНрдпрд╛рдВрдЪреНрдпрд╛рд╕рд╣ рдЙрджреНрднрд╡рд▓реЗрд▓реНрдпрд╛ рд╕рдорд╕реНрдпрд╛рдВрдирд╛ рдереЛрдбрд╛ рд╡реЗрд│ рд▓рд╛рдЧрддреЛ рдЖрдгрд┐ рдХрд░реНрддрд╡реНрдп рдкреНрд░рд╢рд╛рд╕рдХрд╛рдЪреНрдпрд╛ рд╕реНрддрд░рд╛рд╡рд░ рдирд┐рд░рд╛рдХрд░рдг рдХреЗрд▓реЗ рдЬрд╛рддреЗ. tar.gz рдХрд┐рдВрд╡рд╛ Bacula рдЪреНрдпрд╛ рддреБрд▓рдиреЗрдд рдмреЕрдХрдЕрдк рдЦрд░реЛрдЦрд░рдЪ рдХрдореА рдЬрд╛рдЧрд╛ рдШреЗрддрд╛рдд.

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

рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдЬреЛрдбрд╛