iSCSI - iSCSI


I databehandling, iSCSI ( / s k ʌ z i / ( lytt ) Om denne lyden EYE -skuz-ee ) er en forkortelse for Internet Small Computer Systems Interface , en Internet Protocol (IP) -basert lagringsnettverk standard for å koble data lagring. Det gir tilgang til lagringsenheter på blokknivå ved å bære SCSI- kommandoer over et TCP/IP- nettverk. iSCSI brukes til å lette dataoverføringer over intranett og til å administrere lagring over lange avstander. Den kan brukes til å overføre data over lokalnettverk (LAN), wide area network (WAN) eller Internett, og kan aktivere posisjonsuavhengig datalagring og gjenfinning.

Den protokollen tillater klienter (kalt initiatorer ) for å sende kommandoer (SCSI CDBs ) til lagringsenhetene ( målretter ) på fjerntliggende servere. Det er en SAN -protokoll ( storage area network ), som lar organisasjoner konsolidere lagring i lagringsarrayer mens de gir klienter (for eksempel database og webservere) en illusjon av lokalt tilkoblede SCSI -disker. Den konkurrerer hovedsakelig med Fiber Channel , men i motsetning til tradisjonell Fiber Channel som vanligvis krever dedikert kabling, kan iSCSI kjøres over lange avstander ved hjelp av eksisterende nettverksinfrastruktur. iSCSI ble banebrytende av IBM og Cisco i 1998 og levert som et utkast til standard i mars 2000.

Begreper

I hovedsak tillater iSCSI to verter å forhandle og deretter utveksle SCSI -kommandoer ved hjelp av Internet Protocol (IP) nettverk. Ved å gjøre dette, tar iSCSI en populær høyytelses lokal lagringsbuss og emulerer den over et bredt spekter av nettverk, og skaper et lagringsområde nettverk (SAN). I motsetning til noen SAN -protokoller krever iSCSI ingen dedikert kabling; den kan kjøres over eksisterende IP -infrastruktur. Som et resultat blir iSCSI ofte sett på som et rimelig alternativ til Fibre Channel , som krever dedikert infrastruktur bortsett fra FCoE (Fiber Channel over Ethernet) -formen. Imidlertid kan ytelsen til en iSCSI SAN -distribusjon bli alvorlig forringet hvis den ikke brukes på et dedikert nettverk eller delnett (LAN eller VLAN ), på grunn av konkurranse om en fast båndbredde.

Selv om iSCSI kan kommunisere med vilkårlige typer SCSI -enheter, bruker systemadministratorer det nesten alltid for å tillate servere (for eksempel databaseservere) å få tilgang til diskvolumer på lagringsarrayer. iSCSI SAN har ofte ett av to mål:

Lagringskonsolidering
Organisasjoner flytter forskjellige lagringsressurser fra servere rundt nettverket til sentrale steder, ofte i datasentre; Dette gir mulighet for mer effektiv tildeling av lagring, ettersom selve lagringen ikke lenger er knyttet til en bestemt server. I et SAN -miljø kan en server tildeles et nytt diskvolum uten endringer i maskinvare eller kabling.
Gjenoppretting av katastrofer
Organisasjoner speiler lagringsressurser fra ett datasenter til et eksternt datasenter, som kan fungere som en hot / standby i tilfelle langvarig avbrudd. Spesielt tillater iSCSI SAN -er hele diskmatriser å bli migrert over et WAN med minimale konfigurasjonsendringer, noe som faktisk gjør lagring "routbar" på samme måte som nettverkstrafikk.

Initiativtaker

En initiator fungerer som en iSCSI -klient. En initiator tjener vanligvis samme formål for en datamaskin som en SCSI -bussadapter, bortsett fra at i stedet for fysisk kabling av SCSI -enheter (som harddisker og båndvekslere) sender en iSCSI -initiator SCSI -kommandoer over et IP -nettverk. En initiativtaker faller inn i to brede typer:

En programvareinitiator bruker kode for å implementere iSCSI. Vanligvis skjer dette i en kjerneboende enhetsdriver som bruker det eksisterende nettverkskortet (NIC) og nettverksstakken for å etterligne SCSI-enheter for en datamaskin ved å snakke iSCSI-protokollen. Programvareinitiatorer er tilgjengelige for de mest populære operativsystemene og er den vanligste metoden for å distribuere iSCSI.

En maskinvareinitiator bruker dedikert maskinvare, vanligvis i kombinasjon med fastvare som kjører på den maskinvaren, for å implementere iSCSI. En maskinvareinitiator reduserer overheadene til iSCSI- og TCP -behandling og Ethernet -avbrudd , og kan derfor forbedre ytelsen til servere som bruker iSCSI. En iSCSI -vertsbussadapter (mer vanlig HBA) implementerer en maskinvareinitiator. En typisk HBA er pakket som en kombinasjon av en Gigabit (eller 10 Gigabit) Ethernet -nettverksgrensesnittkontroller , en slags TCP/IP offload engine (TOE) teknologi og en SCSI -bussadapter, slik det ser ut for operativsystemet. En iSCSI HBA kan inneholde PCI -alternativ -ROM for å tillate oppstart fra et iSCSI SAN.

En iSCSI -avlastningsmotor , eller iSOE -kort , tilbyr et alternativ til en full iSCSI HBA. En iSOE "laster ned" iSCSI -initiatoroperasjonene for dette nettverksgrensesnittet fra vertsprosessoren, og frigjør CPU -sykluser for de viktigste vertsprogrammene. iSCSI HBAer eller iSOE-er brukes når den ekstra ytelsesforbedringen begrunner tilleggskostnaden ved å bruke en HBA for iSCSI, i stedet for å bruke en programvarebasert iSCSI-klient (initiator). iSOE kan implementeres med tilleggstjenester, for eksempel TCP -avlastningsmotor (TOE) for å redusere CPU -bruken av vertsserveren ytterligere.

Mål

ISCSI -spesifikasjonen refererer til en lagringsressurs som ligger på en iSCSI -server (mer generelt en av potensielt mange forekomster av iSCSI -lagringsnoder som kjører på den serveren) som et mål .

Et iSCSI-mål er ofte en dedikert nettverkstilkoblet harddisklagringsenhet, men kan også være en datamaskin for alle formål, siden programvare for å gi et iSCSI-mål er tilgjengelig for de fleste vanlige operativsystemer, som for initiatorer.

Vanlige distribusjonsscenarier for et iSCSI -mål inkluderer:

Lagringsarray

I et datasenter eller bedriftsmiljø ligger et iSCSI -mål ofte i et stort lagringssystem. Disse matrisene kan være i form av varemaskinvare med gratis programvare -baserte iSCSI -implementeringer, eller som kommersielle produkter som i Quantastor , CloudByte, StorTrends , Pure Storage , HP StorageWorks , EqualLogic , Tegile Systems , Nimble storage , Reduxio , IBM Storwize familie , Isilon , NetApp filer , Dell EMC , Kaminario , NS-serien, CX4, VNX, VNXe, VMAX, Hitachi Data Systems HNAS eller Pivot3 vSTAC.

En lagringsgruppe gir vanligvis forskjellige iSCSI -mål for mange klienter.

Programvaremål

Nesten alle moderne mainstream serveroperativsystemer (som BSD , Linux , Solaris eller Windows Server ) kan tilby iSCSI-målfunksjonalitet, enten som en innebygd funksjon eller med tilleggsprogramvare. Noen spesifikke operativsystemer implementerer iSCSI-målstøtte.

Logisk enhetsnummer

I SCSI -terminologi står LU for logisk enhet , som er spesifisert av et unikt logisk enhetsnummer . En LUN representerer en individuelt adresserbar (logisk) SCSI -enhet som er en del av en fysisk SCSI -enhet (mål). I et iSCSI -miljø er LUNer i hovedsak nummererte diskstasjoner. En initiativtaker forhandler med et mål om å etablere tilkobling til en LUN; resultatet er en iSCSI -tilkobling som emulerer en tilkobling til en SCSI -harddisk. Initiativtakere behandler iSCSI LUNer på samme måte som de ville gjort med en rå SCSI- eller IDE -harddisk; for eksempel, i stedet for å montere eksterne kataloger som ville blitt gjort i NFS- eller CIFS -miljøer, formaterer og styrer iSCSI -systemer filsystemer direkte på iSCSI LUNer.

I enterprise -distribusjoner representerer LUN vanligvis delsett av store RAID -diskarrayer, ofte tildelt en per klient. iSCSI pålegger ingen regler eller begrensninger for flere datamaskiner som deler individuelle LUN -er; det etterlater delt tilgang til et enkelt underliggende filsystem som en oppgave for operativsystemet.

Oppstart av nettverk

For generell datalagring på en datamaskin som allerede er startet, kan alle typer generiske nettverksgrensesnitt brukes til å få tilgang til iSCSI-enheter. Et generisk nettverksgrensesnitt av forbrukerkvalitet kan imidlertid ikke starte en diskløs datamaskin fra en ekstern iSCSI-datakilde. I stedet er det vanlig at en server laster det første operativsystemet fra en TFTP -server eller lokal oppstartsenhet, og deretter bruker iSCSI for datalagring når oppstart fra den lokale enheten er fullført.

En egen DHCP -server kan være konfigurert for å hjelpe grensesnitt utstyrt med nettverksoppstartskapasitet for å kunne starte over iSCSI. I dette tilfellet ser nettverksgrensesnittet etter en DHCP -server som tilbyr et PXE- eller bootp -oppstartsbilde . Dette brukes til å starte iSCSI ekstern oppstartsprosess, ved å bruke oppstartsnettverksgrensesnittets MAC -adresse for å lede datamaskinen til riktig iSCSI -oppstartsmål. Man kan deretter bruke en programvare-bare tilnærming til å laste inn et lite oppstartsprogram som igjen kan montere et eksternt iSCSI-mål som om det var en lokal SCSI-stasjon og deretter starte oppstartsprosessen fra nevnte iSCSI-mål. Dette kan oppnås ved å bruke en eksisterende oppstarts -ROM for Preboot Execution Environment (PXE), som er tilgjengelig på mange kablede Ethernet -adaptere. Oppstartskoden kan også lastes fra CD/DVD, diskett (eller diskettbilde) og USB-lagring, eller den kan erstatte eksisterende PXE-oppstartskode på adaptere som kan blinker på nytt. Den mest populære gratis programvaren som tilbyr støttestøtte for iSCSI er iPXE .

De fleste Intel Ethernet -kontrollere for servere støtter iSCSI -oppstart.

Adressering

iSCSI bruker TCP (vanligvis TCP-porter 860 og 3260) for selve protokollene, med navn på høyere nivå som brukes til å adressere objektene i protokollen. Spesielle navn refererer til både iSCSI -initiativtakere og mål. iSCSI har tre navneformater:

iSCSI -kvalifisert navn (IQN)
Format: iSCSI Qualified Name er dokumentert i RFC 3720, med ytterligere eksempler på navn i RFC 3721. I korte trekk er feltene:
  • bokstavelig iqn (iSCSI -kvalifisert navn)
  • dato (åååå-mm) som navnemyndigheten tok eierskapet til domenet
  • omvendt domenenavn på autoriteten (f.eks. org.alpinelinux, com.example, to.yp.cr)
  • Valgfritt ":" prefiks et lagringsmålnavn spesifisert av navnemyndigheten.
Fra RFC:
Type . Dato . Navngi Auth : String definert av example.com Naming Authority
iqn . 1992-01 . com. eksempel : lagring: diskarrays-sn-a8675309
iqn . 1992-01 . com. eksempel
iqn . 1992-01 . com. eksempel : storage.tape1.sys1.xyz
iqn . 1992-01 . com. eksempel : storage.disk2.sys1.xyz
Utvidet unik identifikator (EUI)
Format: eui. {EUI-64 bit address} (f.eks. Eui.02004567A425678D )
T11 Network Address Authority (NAA)
Format: naa. {NAA 64 eller 128 biters identifikator} (f.eks. Naa.52004567BA64678D )

IQN -formatadresser forekommer oftest. De er kvalifisert til en dato (åååå-mm) fordi domenenavn kan utløpe eller bli anskaffet av en annen enhet.

IEEE-registreringsmyndigheten gir EUI i samsvar med EUI-64-standarden. NAA er en del OUI som er levert av IEEE Registration Authority. NAA -navnformater ble lagt til iSCSI i RFC 3980, for å gi kompatibilitet med navnekonvensjoner som brukes i Fiber Channel og Serial Attached SCSI (SAS) lagringsteknologier.

Vanligvis kan en iSCSI -deltaker defineres av tre eller fire felt:

  1. Vertsnavn eller IP -adresse (f.eks. "Iscsi.example.com")
  2. Portnummer (f.eks. 3260)
  3. iSCSI-navn (f.eks. IQN "iqn.2003-01.com.ibm:00.fcd0ab21.shark128")
  4. En valgfri CHAP Secret (f.eks. "Secretsarefun")

iSNS

iSCSI -initiativtakere kan finne passende lagringsressurser ved hjelp av iSNS -protokollen ( Internet Storage Name Service ). I teorien gir iSNS iSCSI SAN -er den samme styringsmodellen som dedikerte Fiber Channel SAN -er. I praksis kan administratorer tilfredsstille mange distribusjonsmål for iSCSI uten å bruke iSNS.

Sikkerhet

Godkjenning

iSCSI -initiativtakere og mål beviser identiteten sin for hverandre ved hjelp av CHAP , som inkluderer en mekanisme for å forhindre at klartext -passord vises på ledningen. I seg selv er CHAP sårbart for ordbokangrep , spoofing og refleksjonsangrep . Hvis den følges nøye, reduserer de beste fremgangsmåtene for bruk av CHAP i iSCSI overflaten for disse angrepene og reduserer risikoen.

I tillegg, som med alle IP-baserte protokoller, kan IPsec operere på nettverkslaget. ISCSI -forhandlingsprotokollen er designet for å imøtekomme andre autentiseringsordninger, selv om interoperabilitetsproblemer begrenser distribusjonen.

Logisk nettverksisolasjon

For å sikre at bare gyldige initiatorer kobler seg til lagringsarrayer, kjører administratorer oftest iSCSI bare over logisk isolerte bakkanalnettverk. I denne distribusjonsarkitekturen er det bare administrasjonsportene for lagringsarrayer som blir utsatt for det generelle interne nettverket, og selve iSCSI-protokollen kjøres over dedikerte nettverkssegmenter eller virtuelle LAN (VLAN). Dette demper autentiseringsproblemer; Uautoriserte brukere er ikke fysisk tilrettelagt for iSCSI, og kan derfor ikke snakke med lagringsarrayer. Imidlertid skaper det også et transitivt tillitsproblem , ved at en enkelt kompromittert vert med en iSCSI -disk kan brukes til å angripe lagringsressurser for andre verter.

Fysisk nettverksisolasjon

Selv om iSCSI logisk kan isoleres fra det generelle nettverket bare ved bruk av VLAN, er det fremdeles ikke forskjellig fra annet nettverksutstyr og kan bruke hvilken som helst kabel eller port så lenge det er en fullført signalbane mellom kilde og mål. Bare en enkelt kabelfeil av en nettverkstekniker kan kompromittere barrieren for logisk separasjon, og en utilsiktet bro kan ikke oppdages umiddelbart fordi det ikke forårsaker nettverksfeil.

For å ytterligere differensiere iSCSI fra det vanlige nettverket og forhindre kabelfeil ved endring av tilkoblinger, kan administratorer implementere selvdefinerte fargekodings- og merkingsstandarder, for eksempel bare bruk av gulfargede kabler for iSCSI-tilkoblingene og bare blå kabler for de vanlige nettverk, og tydelig merking av porter og svitsjer som bare brukes for iSCSI.

Selv om iSCSI kan implementeres som bare en VLAN-klynge av porter på en stor flerportsbryter som også brukes til generell nettverksbruk, kan administratoren i stedet velge å bruke fysisk separate brytere dedikert til iSCSI VLAN bare for å ytterligere forhindre muligheten for en feil tilkoblet kabel koblet til feil port som bygger bro mellom den logiske barrieren.

Autorisasjon

Fordi iSCSI har som mål å konsolidere lagring for mange servere til en enkelt lagringsgruppe, krever iSCSI -distribusjoner strategier for å forhindre at ikke -relaterte initiativtakere får tilgang til lagringsressurser. Som et patologisk eksempel kan en enkelt virksomhets lagringsgruppe inneholde data for servere som er ulikt regulert av Sarbanes - Oxley Act for bedriftsregnskap, HIPAA for informasjon om helsefordeler og PCI DSS for behandling av kredittkort. Under en revisjon må lagringssystemer demonstrere kontroller for å sikre at en server under ett regime ikke kan få tilgang til lagringsressursene til en server under et annet.

Vanligvis kartlegger iSCSI -lagringsarrangører eksplisitt initiatorer til spesifikke mål -LUN -er; en initiativtaker autentiserer ikke til lagringsgruppen, men til den spesifikke lagringsenheten den har tenkt å bruke. Men fordi LUN -målene for SCSI -kommandoer uttrykkes både i iSCSI -forhandlingsprotokollen og i den underliggende SCSI -protokollen, må det tas hensyn til at tilgangskontroll blir gitt konsekvent.

Fortrolighet og integritet

For det meste fungerer iSCSI som en klartekstprotokoll som ikke gir kryptografisk beskyttelse for data i bevegelse under SCSI -transaksjoner. Som et resultat kan en angriper som kan lytte til iSCSI Ethernet -trafikk:

  • Rekonstruer og kopier filene og filsystemene som overføres på ledningen
  • Endre innholdet i filer ved å injisere falske iSCSI -rammer
  • Korrupte filsystemer som åpnes av initiativtakere, og utsetter servere for programvarefeil i dårlig testede filsystemkoder.

Disse problemene oppstår ikke bare med iSCSI, men gjelder heller enhver SAN -protokoll uten kryptografisk sikkerhet. IP-baserte sikkerhetsprotokoller, for eksempel IPsec , kan gi standardbasert kryptografisk beskyttelse til denne trafikken.

Implementeringer

Operativsystemer

Datoene i tabellen nedenfor angir det første utseendet til en opprinnelig driver i hvert operativsystem. Tredjepartsdrivere for Windows og Linux var tilgjengelige allerede i 2001, spesielt for å koble IBMs IP Storage 200i-apparat.

OS Første utgivelsesdato Versjon Funksjoner
IBM i 2006-10 V5R4M0 (som i5/OS) Mål, Multipath
VMware ESX 2006-06 ESX 3.0, ESX 4.0, ESXi 5.x, ESXi 6.x Initiativtaker, Multipath
AIX 2002-10 AIX 5.3 TL10, AIX 6.1 TL3 Initiativtaker, mål
Windows 2003-06 2000, XP Pro, 2003, Vista, 2008, 2008 R2, Windows 7, Windows 8, Windows Server 2012, Windows 8.1, Windows Server 2012 R2, Windows 10, Windows Server 2016 Initiativtaker, mål, flerbane
NetWare 2003-08 NetWare 5.1, 6.5 og OES Initiativtaker, mål
HP-UX 2003-10 HP 11i v1, HP 11i v2, HP 11i v3 Initiativtaker
Solaris 2002-05 Solaris 10, OpenSolaris Initiativtaker, Target, Multipath, iSER
Linux 2005-06 2.6.12, 3.1 Initiativtaker (2.6.12), Target (3.1), Multipath, iSER , VAAI
OpenBSD 2009-10 4.9 Initiativtaker
NetBSD 2002-06 4.0, 5.0 Initiativtaker (5.0), mål (4.0)
FreeBSD 2008-02 7,0 Initiator (7.0), Target (10.0), Multipath, iSER , VAAI
OpenVMS 2002-08 8,3-1H1 Initiativtaker, Multipath
Mac os 2008-07 10.4— Ikke tilgjengelig

Mål

De fleste iSCSI-mål involverer disk, selv om iSCSI-tape og mål for mellomvekslere også er populære. Så langt har fysiske enheter ikke inneholdt native iSCSI -grensesnitt på komponentnivå. I stedet blir enheter med parallelle SCSI- eller Fiber Channel -grensesnitt brobygd ved hjelp av iSCSI -målprogramvare, eksterne broer eller kontroller som er interne i enhetens kabinett.

Alternativt er det mulig å virtualisere disk- og båndmål. I stedet for å representere en faktisk fysisk enhet, presenteres en etterlignet virtuell enhet. Den underliggende implementeringen kan avvike drastisk fra det presenterte målet, slik det gjøres med virtuelle båndbibliotek (VTL) -produkter. VTL -er bruker disklagring for å lagre data skrevet til virtuelle bånd. Som med faktiske fysiske enheter, presenteres virtuelle mål ved å bruke iSCSI -målprogramvare, eksterne broer eller kontroller som er interne i enhetshyllet.

I sikkerhetsproduktindustrien bruker noen produsenter et iSCSI RAID som mål, der initiatoren enten er en IP-aktivert enkoder eller kamera.

Omformere og broer

Det finnes flere systemer som gjør at Fiber Channel, SCSI og SAS -enheter kan kobles til et IP -nettverk for bruk via iSCSI. De kan brukes til å tillate migrering fra eldre lagringsteknologier, tilgang til SAN -er fra eksterne servere og tilkobling av SAN -er over IP -nettverk. En iSCSI -gateway bygger bro mellom IP -servere og Fiber Channel SAN. TCP -tilkoblingen avsluttes ved gatewayen, som er implementert på en Fiber Channel -bryter eller som et frittstående apparat.

Se også

Merknader

Referanser

Videre lesning

  • RFC  3720 - Internett for små datamaskinsystemgrensesnitt (iSCSI) (foreldet)
  • RFC  3721 - Internett Small Computer Systems Interface (iSCSI) Navngivning og oppdagelse (oppdatert)
  • RFC  3722 - String Profile for Internet Small Computer Systems Interface (iSCSI) Navn
  • RFC  3723 - Sikring av blokklagringsprotokoller over IP (omfang: Bruk av IPsec og IKE for å sikre iSCSI, iFCP, FCIP, iSNS og SLPv2.)
  • RFC  3347 - Small Computer Systems Interface protocol over the Internet (iSCSI) Krav og designhensyn
  • RFC  3783 - Small Computer Systems Interface (SCSI) Kommandoordrehensyn med iSCSI
  • RFC  3980 - T11 Network Address Authority (NAA) Naming Format for iSCSI Nodenavn (foreldet)
  • RFC  4018 - Finne Internett Small Computer Systems Interface (iSCSI) mål og navneservere ved å bruke Service Location Protocol versjon 2 (SLPv2)
  • RFC  4173 - Bootstrapping -klienter som bruker Internett Small Computer System Interface (iSCSI) -protokoll
  • RFC  4544 - Definisjoner av Managed Objects for Internet Small Computer System Interface (iSCSI)
  • RFC  4850 - Declarative Public Extension Key for Internet Small Computer Systems Interface (iSCSI) Node Architecture (foreldet)
  • RFC  4939 - Definisjoner av Managed Objects for iSNS (Internet Storage Name Service)
  • RFC  5048 - Internett Small Computer System Interface (iSCSI) Rettelser og presiseringer (foreldet)
  • RFC  5047 - DA: Datamover Architecture for the Internet Small Computer System Interface (iSCSI)
  • RFC  5046 - Internet Small Computer System Interface (iSCSI) -utvidelser for ekstern direkte minnetilgang (RDMA)
  • RFC  7143 - Internett Small Computer System Interface (iSCSI) Protocol (konsolidert)