Memasang iSCSI LUNs ke klien Linux - FSx for ONTAP

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Memasang iSCSI LUNs ke klien Linux

Contoh yang disajikan dalam prosedur ini menggunakan pengaturan berikut:

  • iSCSI LUN yang semakin dipasang ke host Linux sudah dibuat. Untuk informasi selengkapnya, lihat Membuat LUN iSCSI.

  • Host Linux yang memasang iSCSI LUN adalah instans Amazon EC2 yang menjalankan Amazon Linux 2 Amazon Machine Image (AMI). Ini memiliki kelompok keamanan VPC yang dikonfigurasi untuk memungkinkan lalu lintas masuk dan keluar seperti yang dijelaskan dalam Kontrol Akses Sistem File dengan Amazon VPC .

  • Host Linux dan FSx untuk sistem file ONTAP terletak di VPC yang sama danAkun AWS. Jika host terletak di VPC lain, Anda dapat menggunakan peering VPC atauAWS Transit Gatewayuntuk memberikan akses VPC lainnya ke titik akhir iSCSI volume. Untuk informasi selengkapnya, lihat Mengakses data dari luar penyebaran VPC.

    Jika Anda menggunakan instans EC2 yang menjalankan AMI Linux yang berbeda, beberapa utilitas yang diinstal pada host mungkin sudah diinstal sebelumnya, dan Anda mungkin menggunakan perintah yang berbeda untuk menginstal paket yang diperlukan. Selain menginstal paket, perintah yang digunakan dalam bagian ini berlaku untuk AMI Linux EC2 lainnya.

    Sebaiknya instans EC2 berada di zona ketersediaan yang sama dengan subnet pilihan sistem file Anda, seperti yang ditunjukkan pada grafik berikut.


                     Gambar yang menampilkan Amazon FSx for NetApp Sistem file ONTAP dengan iSCSI LUN dan instans Amazon EC2 yang terletak di zona ketersediaan yang sama dengan subnet pilihan sistem file.

Instal dan konfigurasikan iSCSI pada klien Linux

Untuk menginstal klien iSCSI

  1. Konfirmasi bahwaiscsi-initiator-utilsdandevice-mapper-multipathdiinstal pada perangkat Linux Anda. Connect ke instans Linux Anda menggunakan klien SSH. Untuk informasi selengkapnya, lihatConnect ke instans Linux Anda menggunakan SSH.

  2. Pasangmultipathdan klien iSCI menggunakan perintah berikut. Menginstalmultipathdiperlukan jika Anda ingin secara otomatis failover antara server file Anda.

    ~$ sudo yum install -y device-mapper-multipath iscsi-initiator-utils
  3. Untuk memfasilitasi respons yang lebih cepat saat gagal secara otomatis di antara server file saat menggunakanmultipath, mengatur nilai timeout pengganti di/etc/iscsi/iscsid.conffile ke nilai5alih-alih menggunakan nilai default dari120.

    ~$ sudo sed -i 's/node.session.timeo.replacement_timeout = .*/node.session.timeo.replacement_timeout = 5/' /etc/iscsi/iscsid.conf; sudo cat /etc/iscsi/iscsid.conf | grep node.session.timeo.replacement_timeout
  4. Mulai layanan iSCSI.

    ~$ sudo service iscsid start

    Perhatikan bahwa tergantung pada versi Linux Anda, Anda mungkin harus menggunakan perintah ini sebagai gantinya:

    ~$ sudo systemctl start iscsid
  5. Konfirmasikan bahwa layanan berjalan menggunakan perintah berikut.

    ~$ sudo systemctl status iscsid.service

    Sistem merespons dengan output berikut ini:

    iscsid.service - Open-iSCSI Loaded: loaded (/usr/lib/systemd/system/iscsid.service; disabled; vendor preset: disabled) Active: active (running) since Fri 2021-09-02 00:00:00 UTC; 1min ago Docs: man:iscsid(8) man:iscsiadm(8) Process: 14658 ExecStart=/usr/sbin/iscsid (code=exited, status=0/SUCCESS) Main PID: 14660 (iscsid) CGroup: /system.slice/iscsid.service ├─14659 /usr/sbin/iscsid └─14660 /usr/sbin/iscsid

Untuk mengkonfigurasi iSCSI pada klien Linux Anda

  1. Untuk memungkinkan klien Anda untuk secara otomatis failover antara server file Anda, Anda harus mengkonfigurasi multipath. Gunakan perintah berikut:

    ~$ sudo mpathconf --enable --with_multipathd y
  2. Tentukan nama penggagas host Linux Anda menggunakan perintah berikut. Lokasi nama inisiator tergantung pada utilitas iSCSI Anda. Jika Anda menggunakaniscsi-initiator-utils, nama inisiator terletak di file/etc/iscsi/initiatorname.iscsi.

    ~$ sudo cat /etc/iscsi/initiatorname.iscsi

    Sistem merespons dengan nama inisiator.

    InitiatorName=iqn.1994-05.com.redhat:abcdef12345

Mengkonfigurasi iSCSI pada FSx untuk sistem file ONTAP

  1. Connect ke NetApp ONTAP CLI pada FSx untuk sistem file ONTAP tempat Anda membuat iSCSI LUN menggunakan perintah berikut. Untuk informasi selengkapnya, lihat Menggunakan NetApp CLI.

    ~$ ssh fsxadmin@your_management_endpoint_ip
  2. Buat grup inisiator (igroup) menggunakan NetApp CLI. Kelompok inisiator memetakan ke iSCSI LUNs dan mengontrol inisiator (klien) yang memiliki akses ke LUNs. Gantihost_initiator_namedengan nama inisiator dari host Linux Anda yang Anda ambil dalam prosedur sebelumnya.

    ::> lun igroup create -vserver svm_name -igroup igroup_name -initiator host_initiator_name -protocol iscsi -ostype linux

    Jika Anda ingin membuat LUNs dipetakan ke igroup ini tersedia untuk beberapa host, Anda dapat menentukan beberapa nama inisiator dipisahkan dengan koma. Untuk informasi selengkapnya, lihatlun membuatdiPusat Dokumentasi NetApp ONTAP.

  3. Konfirmasi bahwaigroupada menggunakan perintah berikut ini:

    ::> lun igroup show

    Sistem merespons dengan output berikut ini:

    Vserver Igroup Protocol OS Type Initiators --------- ------------ -------- -------- ------------------------------------ svm_name igroup_name iscsi linux iqn.1994-05.com.redhat:abcdef12345
  4. Langkah ini mengasumsikan bahwa Anda telah membuat iSCSI LUN. Jika Anda belum, lihatMembuat LUN iSCSIuntuk step-by-step instruksi untuk melakukannya.

    Buat pemetaan dari LUN yang Anda buat ke igroup yang Anda buat, tentukan atribut berikut:

    • svm_name— Nama mesin virtual penyimpanan yang menyediakan target iSCSI. Host menggunakan nilai ini untuk mencapai LUN.

    • vol_name— Nama volume hosting LUN.

    • lun_nameNama yang Anda tetapkan ke LUN.

    • igroup_name— Nama grup inisiator.

    • lun_id— LUN ID integer khusus untuk pemetaan, bukan untuk LUN itu sendiri. Ini digunakan oleh inisiator di igroup sebagai Nomor Unit Logis menggunakan nilai ini untuk inisiator saat mengakses penyimpanan.

    ::> lun mapping create -vserver svm_name -path /vol/vol_name/lun_name -igroup igroup_name -lun-id lun_id
  5. Menggunakanlun show -pathperintah untuk mengkonfirmasi LUN dibuat, online, dan dipetakan.

    ::> lun show -path /vol/vol_name/lun_name -fields state,mapped,serial-hex

    Sistem merespons dengan output berikut.

    Vserver Path serial-hex state mapped --------- ------------------------------- ------------------------ -------- -------- svm_name /vol/vol_name/lun_name 6c5742314e5d52766e796150 online mapped

    Simpanserial_hexnilai (dalam contoh ini, itu adalah6c5742314e5d52766e796150), Anda akan menggunakannya di langkah selanjutnya untuk membuat nama yang ramah untuk perangkat blok.

  6. Menggunakannetwork interface show -vserverperintah untuk mengambil alamat dariiscsi_1daniscsi_2antarmuka untuk SVM di mana Anda telah membuat iSCSI LUN Anda.

    ::> network interface show -vserver svm_name

    Sistem merespons dengan output berikut ini:

    Logical Status Network Current Current Is Vserver Interface Admin/Oper Address/Mask Node Port Home ----------- ---------- ---------- ------------------ ------------- ------- ---- svm_name iscsi_1 up/up 172.31.0.143/20 FSxId0123456789abcdef8-01 e0e true iscsi_2 up/up 172.31.21.81/20 FSxId0123456789abcdef8-02 e0e true nfs_smb_management_1 up/up 198.19.250.177/20 FSxId0123456789abcdef8-01 e0e true 3 entries were displayed.

    Dalam contoh ini, alamat IPiscsi_1adalah172.31.0.143daniscsi_2adalah172.31.21.81.

Pasang iSCSI LUN pada klien Linux Anda

  1. Pada klien Linux Anda, gunakan perintah berikut untuk menemukan node iSCSI target menggunakaniscsi_1Alamat IPISCSI_1_IP.

    ~$ sudo iscsiadm --mode discovery --op update --type sendtargets --portal iscsi_1_IP
    172.31.0.143:3260,1029 iqn.1992-08.com.netapp:sn.9cfa2c41207a11ecac390182c38bc256:vs.3 172.31.21.81:3260,1028 iqn.1992-08.com.netapp:sn.9cfa2c41207a11ecac390182c38bc256:vs.3

    Dalam contoh ini,iqn.1992-08.com.netapp:sn.9cfa2c41207a11ecac390182c38bc256:vs.3sesuai dengantarget_initiatoruntuk iSCSI LUN di zona ketersediaan pilihan.

  2. (Opsional) Anda dapat membuat sesi tambahan dengantarget_initiator. Amazon EC2 memiliki batas bandwidth 5 Gb/s (~ 625 MB/s) untuk lalu lintas aliran tunggal, tetapi Anda dapat membuat beberapa sesi untuk mendorong tingkat throughput yang lebih tinggi ke sistem file Anda dari satu klien. Untuk informasi selengkapnya, lihatbandwidth jaringan instans Amazon EC2diPanduan Pengguna Amazon Elastic Compute Cloud untuk Instans Linux.

    Perintah berikut menetapkan 4 sesi per inisiator per node ONTAP di setiap zona ketersediaan, memungkinkan klien untuk mendorong hingga 20 Gb/s (2.500 MB/s) throughput agregat ke iSCSI LUN.

    ~$ sudo iscsiadm --mode node -T target_initiator --op update -n node.session.nr_sessions -v 4
  3. Masuk ke inisiator target. iSCSI Anda disajikan sebagai disk yang tersedia.

    ~$ sudo iscsiadm --mode node -T target_initiator --login
    Logging in to [iface: default, target: iqn.1992-08.com.netapp:sn.9cfa2c41207a11ecac390182c38bc256:vs.3, portal: 172.31.14.66,3260] (multiple) Login to [iface: default, target: iqn.1992-08.com.netapp:sn.9cfa2c41207a11ecac390182c38bc256:vs.3, portal: 172.31.14.66,3260] successful.

    Output di atas terpotong; Anda harus melihatnyaLogging indan satuLogin successfulrespon untuk setiap sesi pada setiap server file. Dalam kasus 4 sesi per node, akan ada 8Logging indan 8Login successfultanggapan.

  4. Gunakan perintah berikut untuk memverifikasi bahwadm-multipathtelah mengidentifikasi dan menggabungkan sesi iSCSI dengan menunjukkan LUN tunggal dengan beberapa kebijakan. Harus ada jumlah perangkat yang sama yang terdaftar sebagaiactivedan yang terdaftar sebagaienabled.

    ~$ sudo multipath -ll

    Dalam output, nama disk diformat sebagaidm-xyz, tempatxyzadalah integer. Jika tidak ada disk multipath lainnya, nilai inidm-0.

    3600a09806c5742314e5d52766e79614f dm-xyz NETAPP ,LUN C-Mode size=10G features='4 queue_if_no_path pg_init_retries 50 retain_attached_hw_handle' hwhandler='0' wp=rw |-+- policy='service-time 0' prio=50 status=active | |- 0:0:0:1 sda 8:0 active ready running | |- 1:0:0:1 sdc 8:32 active ready running | |- 3:0:0:1 sdg 8:96 active ready running | `- 4:0:0:1 sdh 8:112 active ready running `-+- policy='service-time 0' prio=10 status=enabled |- 2:0:0:1 sdb 8:16 active ready running |- 7:0:0:1 sdf 8:80 active ready running |- 6:0:0:1 sde 8:64 active ready running `- 5:0:0:1 sdd 8:48 active ready running

    Perangkat blok Anda sekarang terhubung ke klien Linux Anda. Hal ini terletak di bawah jalan/dev/dm-xyz. Anda tidak boleh menggunakan jalur ini untuk tujuan administratif; sebagai gantinya, gunakan tautan simbolis yang berada di bawah jalur/dev/mapper/wwid, tempatwwidadalah pengidentifikasi unik untuk LUN Anda yang konsisten di seluruh perangkat. Pada langkah berikutnya, Anda akan memberikan nama ramah untukwwidsehingga Anda bisa membedakannya dari disk multipathed lainnya.

Untuk memberikan perangkat blok Anda nama ramah

  1. Untuk memberikan nama ramah pada perangkat Anda, buat alias di/etc/multipath.confberkas. Untuk melakukan ini, tambahkan entri berikut ke file menggunakan editor teks pilihan Anda, ganti placeholder berikut ini:

    • Gantiserial_hexdengan nilai yang Anda simpan diMengkonfigurasi iSCSI pada FSx untuk sistem file ONTAPprosedur.

    • Tambahkan prefiks3600a0980keserial_hexseperti yang ditunjukkan pada contoh. Ini adalah pembukaan yang unik untuk NetApp Distribusi ONTAP yang digunakan Amazon FSx NetApp ONTAP menggunakan.

    • Gantidevice_namedengan nama ramah yang ingin Anda gunakan untuk perangkat Anda.

    multipaths { multipath { wwid 3600a0980serial_hex alias device_name } }

    Sebagai alternatif, Anda dapat menyalin dan menyimpan skrip berikut sebagai file bash, sepertimultipath_alias.sh. Anda dapat menjalankan skrip dengan hak istimewa sudo, menggantiserial_hex(tanpa awalan 3600a0980) dandevice_namedengan nomor seri Anda masing-masing dan nama ramah yang diinginkan. Skrip ini mencari komentar yang tidak dikomentarimultipathsbagian di/etc/multipath.confberkas. Jika ada, itu menambahkanmultipathmasuk ke bagian itu; jika tidak, itu akan membuat barumultipathsbagian denganmultipathentri untuk perangkat blok Anda.

    #!/bin/bash SN=serial_hex ALIAS=device_name CONF=/etc/multipath.conf grep -q '^multipaths {' $CONF UNCOMMENTED=$? if [ $UNCOMMENTED -eq 0 ] then sed -i '/^multipaths {/a\\tmultipath {\n\t\twwid 3600a0980'"${SN}"'\n\t\talias '"${ALIAS}"'\n\t}\n' $CONF else printf "multipaths {\n\tmultipath {\n\t\twwid 3600a0980$SN\n\t\talias $ALIAS\n\t}\n}" >> $CONF fi
  2. Mulai Ulangmultipathdlayanan untuk perubahan/etc/multipathd.confberlaku.

    ~$ systemctl restart multipathd.service

Untuk partisi LUN

Langkah selanjutnya adalah memformat dan mempartisi LUN Anda menggunakanfdisk.

  1. Gunakan perintah berikut untuk memverifikasi bahwa jalur ke lokasi Andadevice_namehadir.

    ~$ ls /dev/mapper/device_name
    /dev/device_name
  2. Partisi disk menggunakanfdisk. Anda akan memasukkan prompt interaktif. Masukkan opsi sesuai urutan yang ditampilkan. Perhatikan bahwaLast sectorNilai akan bervariasi tergantung pada ukuran iSCSI LUN Anda (10GB dalam contoh ini). Anda dapat membuat beberapa partisi dengan menggunakan nilai yang lebih kecil dari sektor terakhir (20971519dalam contoh ini).

    ~$ sudo fdisk /dev/mapper/device_name

    Parameterfsdiskdimulai prompt interaktif.

    Welcome to fdisk (util-linux 2.30.2). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Device does not contain a recognized partition table. Created a new DOS disklabel with disk identifier 0x66595cb0. Command (m for help): n Partition type p primary (0 primary, 0 extended, 4 free) e extended (container for logical partitions) Select (default p): p Partition number (1-4, default 1): 1 First sector (2048-20971519, default 2048): 2048 Last sector, +sectors or +size{K,M,G,T,P} (2048-20971519, default 20971519): 20971519 Created a new partition 1 of type 'Linux' and of size 512 B. Command (m for help): w The partition table has been altered. Calling ioctl() to re-read partition table. Syncing disks.

    Setelah masukw, partisi baru Anda/dev/mapper/partition_namemenjadi tersedia. Parameterpartition_namememiliki format<device_name><partition_number>.1digunakan sebagai nomor partisi yang digunakan dalamfdiskperintah pada langkah sebelumnya.

  3. Membuat sistem file Anda menggunakan/dev/mapper/partition_namesebagai jalur.

    ~$ sudo mkfs.ext4 /dev/mapper/partition_name

    Sistem merespons dengan output berikut ini:

    mke2fs 1.42.9 (28-Dec-2013) Discarding device blocks: done Filesystem label= OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) Stride=0 blocks, Stripe width=16 blocks 655360 inodes, 2621184 blocks 131059 blocks (5.00%) reserved for the super user First data block=0 Maximum filesystem blocks=2151677952 80 block groups 32768 blocks per group, 32768 fragments per group 8192 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632 Allocating group tables: done Writing inode tables: done Creating journal (32768 blocks): done Writing superblocks and filesystem accounting information: done

Untuk me-mount LUN pada klien Linux

  1. Membuat direktoridirectory_pathsebagai titik dudukan untuk sistem file Anda.

    ~$ sudo mkdir /directory_path/mount_point
  2. Pasang sistem file menggunakan perintah berikut.

    ~$ sudo mount -t ext4 /dev/mapper/partition_name /directory_path/mount_point
  3. (Opsional) Anda dapat mengubah kepemilikan direktori mount ke pengguna Anda. Gantiusernamedengan nama pengguna Anda.

    ~$ sudo chown username:username /directory_path/mount_point
  4. (Opsional) Verifikasi bahwa Anda dapat membaca dari dan menulis data ke sistem file.

    ~$ echo "Hello world!" > /directory_path/mount_point/HelloWorld.txt ~$ cat directory_path/HelloWorld.txt Hello world!

    Anda telah berhasil membuat dan memasang iSCSI LUN pada klien Linux Anda.