iSCSI рдорд╛рд░реНрдлрдд Ceph - рд╡рд╛ рд╣реНрдпрд╛рдордХрдорд╛ рдЙрднрд┐рдПрд░ рд╕реНрдХреАрдЗрдЩ

рдХреЗ рд╣рд╛рдореА рдорд╛рдЭ (tsefovodov) рдХреЛ "рд╡реНрдпрд╛рд╡рд╕рд╛рдпрд┐рдХ рдЪрд░рдо" рдорди рдкрд░реНрджреИрди?

рдпреЛ рдЕрд╕рдореНрднрд╡ рдЫ - рдЕрдиреНрдпрдерд╛ рд╣рд╛рдореА рдпреЛ рдЕрддреНрдпрдиреНрддреИ рдЪрд╛рдЦрд▓рд╛рдЧреНрджреЛ рд░ рд╣рд╛рд╕реНрдпрд╛рд╕реНрдкрдж рдЙрддреНрдкрд╛рджрдирдХреЛ рд╡рд░рд┐рдкрд░рд┐ рдЯрдореНрдмрд▓рд┐рдВрдЧ рд╣реБрдиреЗ рдЫреИрдиреМрдВред

рдзреЗрд░реИ рдЬрд╕реЛ Ceph рдХреЛ рд╕рдЮреНрдЪрд╛рд▓рдирдорд╛ рд╕рдВрд▓рдЧреНрди рдерд┐рдП рдПрдХ рдзреЗрд░реИ рдкрдЯрдХ (рд╡рд╛ рдзреЗрд░реИ рд╡рд┐рд░рд▓реИ) рддрд░ рдХрд╣рд┐рд▓реЗ рдХрд╛рдБрд╣реА рдорд╛рдЧ рдХреЛ рдорд╛рдорд▓рд╛ рдорд╛ рднреЗрдЯрд┐рдПрдХреЛ рдЫ - iSCSI рд╡рд╛ FC рдорд╛рд░реНрдлрдд Ceph рдЬрдбрд╛рдиред рдХреЗ рдХреЛ рд▓рд╛рдЧрд┐? рдареАрдХ рдЫ, рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, Ceph рдмрд╛рдЯ рд╡рд┐рдиреНрдбреЛрдЬ рд╡рд╛ рд╕реЛрд▓рд╛рд░рд┐рд╕ рд╕рд░реНрднрд░рдорд╛ рдЫрд╡рд┐ рдкреЗрд╢ рдЧрд░реНрдиреБрд╣реЛрд╕реН рдЬреБрди рдХреБрдиреИ рдХрд╛рд░рдгрд▓реЗ рднрд░реНрдЪреБрдЕрд▓рд╛рдЗрдЬ рдЧрд░рд┐рдПрдХреЛ рдЫреИрдиред рд╡рд╛ рднрд░реНрдЪреБрдЕрд▓рд╛рдЗрдЬ рдЧрд░рд┐рдПрдХреЛ, рддрд░ рд╣рд╛рдЗрдкрд░рднрд╛рдЗрдЬрд░ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджреИ рдЬреБрди Ceph рдЧрд░реНрди рд╕рдХреНрджреИрди - рд░, рд╣рд╛рдореАрд▓рд╛рдИ рдерд╛рд╣рд╛ рдЫ, рддреНрдпрд╣рд╛рдБ рдзреЗрд░реИ рдЫрдиреНред рдЙрджрд╛рд╣рд░рдг рдХреЛ рд▓рд╛рдЧреА? рдареАрдХ рдЫ, рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, HyperV рд╡рд╛ ESXi, рдЬреБрди рд╕рдХреНрд░рд┐рдп рд░реВрдкрдорд╛ рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдиреНрдЫред рд░ рдпрджрд┐ рдХрд╛рд░реНрдп Ceph рдмрд╛рдЯ рдЕрддрд┐рдерд┐ рдореЗрд╕рд┐рдирдорд╛ рдЫрд╡рд┐ рд╕реЗрд╡рд╛ рдЧрд░реНрдиреЗ рдХрд╛рдо рдЙрдареНрдЫ, рдпреЛ рдзреЗрд░реИ рд░реЛрдорд╛рдЮреНрдЪрдХ рдХрд╛рд░реНрдпрдорд╛ рдкрд░рд┐рдгрдд рд╣реБрдиреНрдЫред

рддреНрдпрд╕реИрд▓реЗ, рджрд┐рдЗрдПрдХреЛ рдЫ:

  1. рдкрд╣рд┐рд▓реЗ рдиреИ рдЪрд▓рд┐рд░рд╣реЗрдХреЛ Ceph рдХреНрд▓рд╕реНрдЯрд░
  2. рдкрд╣рд┐рд▓реЗ рдиреИ рдЕрд╡рд╕реНрдерд┐рдд рдЫрд╡рд┐ рдЬреБрди iSCSI рдорд╛рд░реНрдлрдд рд╕реЗрд╡рд╛ рдЧрд░рд┐рдиреБ рдкрд░реНрдЫ
  3. рдкреЛрдЦрд░реА рдирд╛рдо mypool, рдЫрд╡рд┐ рдирд╛рдо рдореЗрд░реЛ рддрд╕реНрд╡реАрд░

рд╕реБрд░реБ рдЧрд░реНрдиреЗ?

рд╕рдмреИрднрдиреНрджрд╛ рдкрд╣рд┐рд▓реЗ, рдЬрдм рд╣рд╛рдореА FC рд╡рд╛ iSCSI рдХреЛ рдмрд╛рд░реЗрдорд╛ рдХреБрд░рд╛ рдЧрд░реНрдЫреМрдВ, рд╣рд╛рдореАрд╕рдБрдЧ рдкреНрд░рд╛рд░рдореНрднрдХрд░реНрддрд╛ рд░ рд▓рдХреНрд╖реНрдп рдЬрд╕реНрддрд╛ рд╕рдВрд╕реНрдерд╛рд╣рд░реВ рдЫрдиреНред рд▓рдХреНрд╖реНрдп рд╡рд╛рд╕реНрддрд╡рдорд╛ рдПрдХ рд╕рд░реНрднрд░ рд╣реЛ, рд╕реБрд░реБрд╡рд╛рддрдХрд░реНрддрд╛ рдПрдХ рдЧреНрд░рд╛рд╣рдХ рд╣реЛред рд╣рд╛рдореНрд░реЛ рдХрд╛рд░реНрдп рднрдиреЗрдХреЛ рдиреНрдпреВрдирддрдо рдкреНрд░рдпрд╛рд╕рдХреЛ рд╕рд╛рде рдкреНрд░рд╛рд░рдореНрднрдХрд░реНрддрд╛рд▓рд╛рдИ Ceph рдЫрд╡рд┐ рдкреЗрд╢ рдЧрд░реНрдиреБ рд╣реЛред рдпрд╕рдХреЛ рдорддрд▓рдм рд╣рд╛рдореАрд▓реЗ рд▓рдХреНрд╖реНрдп рд╡рд┐рд╕реНрддрд╛рд░ рдЧрд░реНрдиреБрдкрд░реНрдЫред рддрд░ рдХрд╣рд╛рдБ, рдХреБрди рдХрдореНрдкреНрдпреБрдЯрд░рдорд╛?

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

# yum -y install iscsi-initiator-utils targetcli

рд╕реНрдерд╛рдкрд┐рдд рдкреНрдпрд╛рдХреЗрдЬрд╣рд░реВрдХреЛ рдЙрджреНрджреЗрд╢реНрдп рдХреЗ рд╣реЛ?

  • targetcli тАФ рд▓рд┐рдирдХреНрд╕ рдХрд░реНрдиреЗрд▓рдорд╛ рдирд┐рд░реНрдорд┐рдд SCSI рд▓рдХреНрд╖реНрдп рдкреНрд░рдмрдиреНрдз рдЧрд░реНрдирдХреЛ рд▓рд╛рдЧрд┐ рдЙрдкрдпреЛрдЧрд┐рддрд╛
  • iscsi-initiator-utils тАФ рд▓рд┐рдирдХреНрд╕ рдХрд░реНрдиреЗрд▓рдорд╛ рдирд┐рд░реНрдорд┐рдд iSCSI рдкреНрд░рд╛рд░рдореНрднрдХрд░реНрддрд╛ рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдЧрд░реНрди рдкреНрд░рдпреЛрдЧ рдЧрд░рд┐рдПрдХрд╛ рдЙрдкрдпреЛрдЧрд┐рддрд╛рд╣рд░реВрд╕рдБрдЧрдХреЛ рдкреНрдпрд╛рдХреЗрдЬ

рд╕реБрд░реБрд╡рд╛рддрдХрд░реНрддрд╛рд▓рд╛рдИ iSCSI рдорд╛рд░реНрдлрдд рдЫрд╡рд┐ рдкреЗрд╢ рдЧрд░реНрди, рдШрдЯрдирд╛рд╣рд░реВрдХреЛ рд╡рд┐рдХрд╛рд╕рдХреЛ рд▓рд╛рдЧрд┐ рджреБрдИ рд╡рд┐рдХрд▓реНрдкрд╣рд░реВ рдЫрдиреН - рд▓рдХреНрд╖реНрдпрдХреЛ рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╕реНрдкреЗрд╕ рдмреНрдпрд╛рдХрдЗрдиреНрдб рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдиреБрд╣реЛрд╕реН рд╡рд╛ рдЫрд╡рд┐рд▓рд╛рдИ рдЕрдкрд░реЗрдЯрд┐рдЩ рд╕рд┐рд╕реНрдЯрдордорд╛ рджреЗрдЦрд┐рдиреЗ рдмреНрд▓рдХ рдЙрдкрдХрд░рдгрдХреЛ рд░реВрдкрдорд╛ рдЬрдбрд╛рди рдЧрд░реНрдиреБрд╣реЛрд╕реН рд░ рдпрд╕рд▓рд╛рдИ iSCSI рдорд╛рд░реНрдлрдд рдирд┐рд░реНрдпрд╛рдд рдЧрд░реНрдиреБрд╣реЛрд╕реНред рд╣рд╛рдореА рджреЛрд╕реНрд░реЛ рдмрд╛рдЯреЛ рдЬрд╛рдиреЗрдЫреМрдВ - рдкреНрд░рдпреЛрдЧрдХрд░реНрддрд╛рд╕реНрдкреЗрд╕ рдмреНрдпрд╛рдХрдЗрдиреНрдб рдЕрдЭреИ рдкрдирд┐ "рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ" рдЕрд╡рд╕реНрдерд╛рдорд╛ рдЫ рд░ рдЙрддреНрдкрд╛рджрдирд╢реАрд▓ рдкреНрд░рдпреЛрдЧрдХреЛ рд▓рд╛рдЧрд┐ рдереЛрд░реИ рддрдпрд╛рд░ рдЫреИрдиред рдпрд╕рдХреЛ рдЕрддрд┐рд░рд┐рдХреНрдд, рддреНрдпрд╣рд╛рдБ рдпрд╕рдХреЛ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛рд╣рд░реВ рдЫрдиреН, рдЬрд╕рдХреЛ рдмрд╛рд░реЗрдорд╛ рддрдкрд╛рдИрдВ рдзреЗрд░реИ рдХреБрд░рд╛ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рд░ (рдУрд╣ рдбрд░рд╛рд╡рдиреА!) рддрд░реНрдХ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред

рдпрджрд┐ рд╣рд╛рдореАрд▓реЗ рд▓рд╛рдореЛ рд╕рдорд░реНрдерди рдЪрдХреНрд░рдХреЛ рд╕рд╛рде рдХреЗрд╣реА рд╣рджрд╕рдореНрдо рд╕реНрдерд┐рд░ рд╡рд┐рддрд░рдг рдкрдирд┐ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫреМрдВ рднрдиреЗ, рд╣рд╛рдореАрд╕рдБрдЧ рднрдПрдХреЛ рдХрд░реНрдиреЗрд▓ рдХреЗрд╣реА рдкреБрд░рд╛рдиреЛ, рдкреБрд░рд╛рдиреЛ рд╕рдВрд╕реНрдХрд░рдг рд╣реЛред рдЙрджрд╛рд╣рд░рдг рдХреЛ рд▓рд╛рдЧреА, CentOS7 рдорд╛ рдпреЛ 3.10.* рдЫ, CentOS8 рдорд╛ рдпреЛ 4.19 рд╣реЛред рд░ рд╣рд╛рдореА рдХрдореНрддрд┐рдорд╛ 5.3 (рд╡рд╛ рдмрд░реБ 5.4) рд░ рдирдпрд╛рдБрдХреЛ рдХрд░реНрдиреЗрд▓рдорд╛ рд░реБрдЪрд┐ рд░рд╛рдЦреНрдЫреМрдВред рдХрд┐рди? рдХрд┐рдирднрдиреЗ рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд рд░реВрдкрдорд╛ Ceph рдЫрд╡рд┐рд╣рд░реВрдорд╛ рд╡рд┐рдХрд▓реНрдкрд╣рд░реВрдХреЛ рд╕реЗрдЯ рд╕рдХреНрд╖рдо рдЧрд░рд┐рдПрдХреЛ рдЫ рдЬреБрди рдкреБрд░рд╛рдиреЛ рдХрд░реНрдиреЗрд▓рд╣рд░реВрд╕рдБрдЧ рдорд┐рд▓реНрджреИрдиред рдпрд╕рдХреЛ рдорддрд▓рдм рд╣рд╛рдореАрд▓реЗ рд╣рд╛рдореНрд░реЛ рд╡рд┐рддрд░рдгрдХреЛ рд▓рд╛рдЧрд┐ рдирдпрд╛рдБ рдХрд░реНрдиреЗрд▓рд╕рдБрдЧ рднрдгреНрдбрд╛рд░ рдЬрдбрд╛рди рдЧрд░реНрдЫреМрдВ (рдЙрджрд╛рд╣рд░рдгрдХрд╛ рд▓рд╛рдЧрд┐, CentOS рдХреЛ рд▓рд╛рдЧрд┐ рдпреЛ elrepo рд╣реЛ), рдирдпрд╛рдБ рдХрд░реНрдиреЗрд▓ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реН рд░ рдирдпрд╛рдБ рдХрд░реНрдиреЗрд▓рд╕рдБрдЧ рдХрд╛рдо рдЧрд░реНрди рдкреНрд░рдгрд╛рд▓реА рд░рд┐рдмреБрдЯ рдЧрд░реНрдиреБрд╣реЛрд╕реН:

  • рдкреНрд░рдпреЛрдЧрдХреЛ рд▓рд╛рдЧрд┐ рдЪрдпрди рдЧрд░рд┐рдПрдХреЛ рдордирд┐рдЯрд░рдорд╛ рдЬрдбрд╛рди рдЧрд░реНрдиреБрд╣реЛрд╕реН
  • рд╣рд╛рдореА рдирд┐рд░реНрджреЗрд╢рдирд╣рд░реВ рдЕрдиреБрд╕рд╛рд░ elrepo рднрдгреНрдбрд╛рд░рд╣рд░реВ рдЬрдбрд╛рди рдЧрд░реНрдЫреМрдВ - elrepo.org/tiki/tiki-index.php
  • рдХрд░реНрдиреЗрд▓ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реН: yum -y тАФenablerepo=elrepo-kernel install kernel-ml
  • рдордирд┐рдЯрд░рдХреЛ рд╕рд╛рде рд╕рд░реНрднрд░ рд░рд┐рдмреБрдЯ рдЧрд░реНрдиреБрд╣реЛрд╕реН (рд╣рд╛рдореАрд╕рдБрдЧ рддреАрдирд╡рдЯрд╛ рдореЛрдирд┐рдЯрд░рд╣рд░реВ рдЫрдиреН, рд╕рд╣реА?)

рдЫрд╡рд┐рд▓рд╛рдИ рдмреНрд▓рдХ рдЙрдкрдХрд░рдгрдХреЛ рд░реВрдкрдорд╛ рдЬрдбрд╛рди рдЧрд░реНрджреИ

# rbd map mypool/myimage
/dev/rbd0

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

рдлрд╛рдЗрд▓ /dev/rbd/mypool/myimage рд╕рдБрдЧ рд╕рдореНрдмрдиреНрдзрд┐рдд рдбрд┐рд╕реНрдХ рез рдирд╛рдордХреЛ рдмреНрдпрд╛рдХрдЗрдиреНрдб рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реНред рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдлрд╛рдЗрд▓ udev рдбреЗрдорди рджреНрд╡рд╛рд░рд╛ /dev/rbd1 рдорд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдкрдорд╛ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░рд┐рдПрдХреЛ рдкреНрд░рддреАрдХрд╛рддреНрдордХ рд▓рд┐рдЩреНрдХ рд╣реЛред рд╣рд╛рдореА рдПрдХ рдкреНрд░рддреАрдХрд╛рддреНрдордХ рд▓рд┐рдЩреНрдХ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрдЫреМрдВ рдХрд┐рдирднрдиреЗ rbd рдпрдиреНрддреНрд░рдХреЛ рдирд╛рдо рд╣реЛрд╕реНрдЯрдорд╛ Ceph рдЫрд╡рд┐рд╣рд░реВ рдЬреЛрдбрд┐рдПрдХреЛ рдХреНрд░рдордХреЛ рдЖрдзрд╛рд░рдорд╛ рдкрд░рд┐рд╡рд░реНрддрди рд╣реБрди рд╕рдХреНрдЫред

рдмреНрдпрд╛рдХрдЗрдиреНрдб рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реН:

# targetcli /backstores/block create disk1 /dev/rbd/mypool/myimage

рдПрдЙрдЯрд╛ iSCSI рд▓рдХреНрд╖реНрдп рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреБрд╣реЛрд╕реН:

# targetcli /iscsi create iqn.2020-01.demo.ceph:mypool

рд╣рд╛рдореА рд▓рдХреНрд╖реНрдпрдорд╛ LUN рдХреЛ рд░реВрдкрдорд╛ рдмреНрдпрд╛рдХрдЗрдиреНрдб рдЬрдбрд╛рди рдЧрд░реНрдЫреМрдВ:

# targetcli /iscsi/iqn.2020-01.demo.ceph:mypool/tpg1/luns create /backstores/block/disk1

рдбреЗрдореЛ рдореЛрдбрдХреЛ рд▓рд╛рдЧрд┐ рд▓рдХреНрд╖реНрдп рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реМрдВ:

# targetcli /iscsi/iqn.2020-01.demo.ceph:mypool/tpg1/ set
> attribute demo_mode_write_protect=0
# targetcli /iscsi/iqn.2020-01.demo.ceph:mypool/tpg1/ set
> attribute generate_node_acls=1
# targetcli /iscsi/iqn.2020-01.demo.ceph:mypool/tpg1/ set
> attribute cache_dynamic_acls=1

рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рдмрдЪрдд рдЧрд░реНрдиреБрд╣реЛрд╕реН:

# targetcli saveconfig

рд▓рдХреНрд╖реНрдпрдХреЛ рдЙрдкрд╕реНрдерд┐рддрд┐ рдЬрд╛рдБрдЪ рдЧрд░реНрджреИ:

# iscsiadm -m discovery -t st -p 127.0.0.1:3260
127.0.0.1:3260,1 iqn.2020-01.demo.ceph:mypool

рд╣рд╛рдореА рд▓рдХреНрд╖реНрдп рдЬрдбрд╛рди рдЧрд░реНрдЫреМрдВ:

# iscsiadm -m node --login
Logging in to [iface: default, target: iqn.2020-01.demo.ceph:mypool, portal: 127.0.0.1,3260] (multiple)
Login to [iface: default, target: iqn.2020-01.demo.ceph:mypool, portal: 127.0.0.1,3260] successful.

рдпрджрд┐ рддрдкрд╛рдИрдВрд▓реЗ рд╕рдмреИ рдХреБрд░рд╛ рдареАрдХрд╕рдБрдЧ рдЧрд░реНрдиреБрднрдпреЛ рднрдиреЗ, рд╕рд░реНрднрд░рдорд╛ рдирдпрд╛рдБ рдбрд┐рд╕реНрдХ рджреЗрдЦрд╛ рдкрд░реНрдиреЗрдЫ, рдЬреБрди SCSI рдпрдиреНрддреНрд░ рдЬрд╕реНрддреЛ рджреЗрдЦрд┐рдиреНрдЫ, рддрд░ рд╡рд╛рд╕реНрддрд╡рдорд╛ Ceph рдмрд╛рдЯ рдПрдЙрдЯрд╛ рдЫрд╡рд┐ рд╣реЛ, iSCSI рд▓рдХреНрд╖реНрдп рдорд╛рд░реНрдлрдд рдкрд╣реБрдБрдЪ рдЧрд░рд┐рдиреНрдЫред рдмреБрдЯ рд╕рдорд╕реНрдпрд╛рд╣рд░реВрдмрд╛рдЯ рдмрдЪреНрдирдХреЛ рд▓рд╛рдЧрд┐, рд╕реНрдерд╛рдиреАрдп рдкреНрд░рд╛рд░рдореНрднрдХрд░реНрддрд╛рдмрд╛рдЯ рдЬрдбрд╛рди рдЧрд░рд┐рдПрдХреЛ рдбрд┐рд╕реНрдХ рд░ рдкрддреНрддрд╛ рд▓рдЧрд╛рдЗрдПрдХреЛ рд▓рдХреНрд╖реНрдп рд╣рдЯрд╛рдЙрдиреБ рд░рд╛рдореНрд░реЛ рд╣реБрдиреНрдЫ:

# iscsiadm -m node --logout
# iscsiadm -m discoverydb -o delete -t st -p 127.0.0.1:3260

рдмрд╛рдБрдХреА рд╕рдмреИ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рдЬрд╛рд░реА рд░рд╛рдЦреНрдиреБ рд╣реЛ рддрд╛рдХрд┐ рдЫрд╡рд┐ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдкрдорд╛ рдЬрдбрд╛рди рд╣реБрдиреНрдЫ рд░ рдЬрдбрд╛рди рдкрдЫрд┐, рд▓рдХреНрд╖реНрдп рд╕реНрддрд░реАрдХреГрдд рд╣реБрдиреНрдЫред рд▓рдХреНрд╖реНрдп рд╕реБрд░реБ рдЧрд░реНрджрд╛ рджреБрдИ рдЪрд░рдгрд╣рд░реВ рд╣реБрдиреНрдЫрдиреН - RBD рдЬрдбрд╛рди рдЧрд░реНрдиреЗ рд░ рд╡рд╛рд╕реНрддрд╡рдорд╛ рд▓рдХреНрд╖реНрдп рд╕реБрд░реБ рдЧрд░реНрдиреЗред

рдкрд╣рд┐рд▓реЗ, рд╣реЛрд╕реНрдЯрдорд╛ RBD рдЫрд╡рд┐рд╣рд░реВрдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЬрдбрд╛рди рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реМрдВред рдпреЛ /etc/ceph/rbdmap рдлрд╛рдЗрд▓рдорд╛ рдирд┐рдореНрди рд▓рд╛рдЗрдирд╣рд░реВ рдердкреЗрд░ рдЧрд░рд┐рдиреНрдЫ:

# cat /etc/ceph/rbdmap
# RbdDevice Parameters
mypool/myimage id=admin
# systemctl enable rbdmap

рд▓рдХреНрд╖реНрдп рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рдкреБрдирд░реНрд╕реНрдерд╛рдкрдирд╛ рдЕрд▓рд┐ рдмрдвреА рдЬрдЯрд┐рд▓ рдЫ - рд╣рд╛рдореАрд▓реЗ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рдкреБрдирд░реНрд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрдиреЗ systemd рдХреЛ рд▓рд╛рдЧреА рдПрдХ рдЗрдХрд╛рдИ рд▓реЗрдЦреНрди рдЖрд╡рд╢реНрдпрдХ рдЫ:

# cat /usr/lib/systemd/system/scsi-target.service
[Unit] Description=Start iSCSI target

After=network-online.target rbdmap.service
Before=remote-fs-pre.target
Wants=network-online.target remote-fs-pre.target

[Service] Type=oneshot
RemainAfterExit=yes
ExecStart=/bin/targetcli restoreconfig

[Install] WantedBy=multi-user.target

# systemctl daemon-reload
# systemctl enable scsi-target

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

рдХреЗ рдмрд╛рдБрдХреА рдЫ?

рд╕рд░реНрднрд░рдорд╛ рдкреНрд░рд╛рд░рдореНрднрдХрд░реНрддрд╛ рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реНрдиреБрд╣реЛрд╕реН рдЬрд╣рд╛рдБ рд╣рд╛рдореА рд▓рдХреНрд╖реНрдп рдкрдард╛рдЙрди рдЪрд╛рд╣рдиреНрдЫреМрдВред

рд╣рд╛рдореНрд░реЛ рд▓рдХреНрд╖реНрдпрдХреЛ рджреЛрд╖ рд╕рд╣рд┐рд╖реНрдгреБрддрд╛ рдХрд╕рд░реА рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдЧрд░реНрдиреЗ?

рддрдкрд╛рдИрд▓реЗ рдЕрдиреНрдп рдордирд┐рдЯрд░рд╣рд░реВрдорд╛ рд▓рдХреНрд╖реНрдпрд╣рд░реВ рдХрдиреНрдлрд┐рдЧрд░ рдЧрд░реНрди рд░ рдорд▓реНрдЯрд┐рдкрд╛рде рд╕реЗрдЯрдЕрдк рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ (vmware рд▓реЗ рдпреЛ рдмреБрдЭреНрдиреЗрдЫ рд░ рдХрд╛рдо рдкрдирд┐ рдЧрд░реНрдиреЗрдЫ, Hyper-V рд▓реЗ рдмреБрдЭреНрджреИрди - рдпрд╕рд▓рд╛рдИ SCSI рд▓рдХрд╣рд░реВ рдЪрд╛рд╣рд┐рдиреНрдЫ)ред рдХрд░реНрдиреЗрд▓рдмрд╛рдЯ Ceph рдХреНрд▓рд╛рдЗрдиреНрдЯрд▓реЗ рдХреНрдпрд╛рд╕рд┐рдЩ рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджреИрди, рдпреЛ рдПрдХрджрдо рдХрд╛рдордпреЛрдЧреНрдп рдЫред рд╡рд╛ рдЕрд░реНрдХреЛ рд╡рд┐рдХрд▓реНрдк рднрдиреЗрдХреЛ рддреАрдирд╡рдЯрд╛ рдХрдореНрдкреЛрдиреЗрдиреНрдЯрд╣рд░реВрдХреЛ рдХреНрд▓рд╕реНрдЯрд░ рд╕реНрд░реЛрдд рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрдиреБ рд╣реЛ - рдПрдХ рд╕рдорд░реНрдкрд┐рдд рд▓рдХреНрд╖реНрдп IP рдареЗрдЧрд╛рдирд╛ рд░ rbdmap рд░ scsi-target рд╕реЗрд╡рд╛рд╣рд░реВ, рд░ рдХреНрд▓рд╕реНрдЯрд░рд┐рдЩ рдЙрдкрдХрд░рдгрд╣рд░реВ (рдХрд╕рд▓реЗ рдкреЗрд╕рдореЗрдХрд░ рднрдиреНрдиреБрднрдпреЛ?) рдорд╛рд░реНрдлрдд рдпреЛ рд╕реНрд░реЛрдд рд╡реНрдпрд╡рд╕реНрдерд╛рдкрди рдЧрд░реНрдиреБрд╣реЛрд╕реНред

рдпрд╕рдХреЛ рд╕рдЯреНрдЯрд╛ рдкрдЫрд┐

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

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

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

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