iSCSI - iSCSI
I databehandling, iSCSI ( / aɪ s k ʌ z i / ( lytt ) 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:
- Vertsnavn eller IP -adresse (f.eks. "Iscsi.example.com")
- Portnummer (f.eks. 3260)
- iSCSI-navn (f.eks. IQN "iqn.2003-01.com.ibm:00.fcd0ab21.shark128")
- 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å
- ATA-over-Ethernet (AoE)
- Fiber Channel over Ethernet (FCoE)
- Fiber Channel over IP (FCIP)
- HyperSCSI SCSI over Ethernet -rammer i stedet for IP (som iSCSI er)
- Krav til ISCSI -konformitetstesting og testverktøy
- iSCSI -utvidelser for RDMA (iSER)
- Internet Fiber Channel Protocol (iFCP)
- Internet Storage Name Service (iSNS)
- LIO Linux SCSI -mål
- Nettverksblokk -enhet (NBD)
- Den SCST Linux SCSI målet software stack
- Service Location Protocol
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)