ECS: Nfs eksterne I/U-feil; Endring av kurveier for FS-aktivert kurv kan føre til at applikasjoner og brukere ikke får tilgang til NFS-filer
Summary: Tidligere kurveier er ikke tillatt eller begrenset ObjectControllerException: Method updateObjectInternal not allowed for previous bucket owner (MetodeoppdateringObjectInternal er ikke tillatt for forrige kurveier) ...
This article applies to
This article does not apply to
This article is not tied to any specific product.
Not all product versions are identified in this article.
Symptoms
Endring gjort av brukeren til kurveiersiden i brukergrensesnittet:
Dette problemet gjelder for NFS-aktiverte kurver og en endring av kurveieren av brukergrensesnittet. Dette kan føre til at applikasjoner eller brukere som er koblet til, mistet tilgangen til kurven på Linux-filsystemet. Selv om vi tilbakestiller endringen til den opprinnelige eieren igjen, vil tilgangen ikke være mulig, noe som fører til DU.
I dette eksemplet:
Kurveieren ble endret til "sham2" ved hjelp av brukergrensesnittet. På grunn av en begrensning i ECS, selv etter at du har endret navnet på kurveieren tilbake til "sham1". ECS vil ikke endre kurveieren tilbake til "sham1" ved hjelp av brukergrensesnittet. Dette kan bare gjøres for øyeblikket med CLI ved hjelp av en API med nyttelast for å tilbakestille eierskapsflagget til sant.
Fremgangsmåter for å identifisere problemet på Linux-maskinen ber brukeren om å berøre en fil for eksempel:
Dette problemet gjelder for NFS-aktiverte kurver og en endring av kurveieren av brukergrensesnittet. Dette kan føre til at applikasjoner eller brukere som er koblet til, mistet tilgangen til kurven på Linux-filsystemet. Selv om vi tilbakestiller endringen til den opprinnelige eieren igjen, vil tilgangen ikke være mulig, noe som fører til DU.
I dette eksemplet:
Kurveieren ble endret til "sham2" ved hjelp av brukergrensesnittet. På grunn av en begrensning i ECS, selv etter at du har endret navnet på kurveieren tilbake til "sham1". ECS vil ikke endre kurveieren tilbake til "sham1" ved hjelp av brukergrensesnittet. Dette kan bare gjøres for øyeblikket med CLI ved hjelp av en API med nyttelast for å tilbakestille eierskapsflagget til sant.
Fremgangsmåter for å identifisere problemet på Linux-maskinen ber brukeren om å berøre en fil for eksempel:
admin@node1~>touch file
touch: setting times of `file': Remote I/O error
se svc_log with the string "method updateObjectInternal "
Command:
# svc_log -a -sr dataheadsvc | grep "method updateObjectInternal"
Example:
admin@node1~>svc_log -a -sr dataheadsvc | grep "method updateObjectInternal" svc_log v1.0.22 (svc_tools v1.5.3) Started 2019-06-06 10:45:04 Running on nodes: <All nodes> Time range: 2019-06-05 10:45:04 - 2019-06-06 10:45:04 Filter string(s): <All messages> Show nodename(s): True Search reclaim logs (if any): False com.emc.storageos.data.object.exception.ObjectControllerException: method updateObjectInternal not allowed for previous bucket owner sham1 Caused by: com.emc.storageos.data.object.exception.ObjectControllerException: method updateObjectInternal not allowed for previous bucket owner sham1
Cause
Opprette en kurv med en bestemt bruker som eier, etterfulgt av en endring av eierskapet til kurven. Til slutt mislykkes det å gi den opprinnelige eieren full kontroll ved hjelp av tilgangskontrollister-siden med ECS-loggunntak:
ObjectControllerException: method updateObjectInternal not allowed for previous bucket owner <ownerid> This is a known issue currently being evaluated by Dell EMC at this time.
Resolution
Løsningen er å endre kurveieren ved hjelp av API-en via CLI med nyttelast for å tilbakestille eierflagget til True (Sann).
1. Finn gjeldende eier av kurv.
2. Opprett en enkel XML-fil ved hjelp av Vi-redigeringsprogrammet. I eksemplet nedenfor kalles det /tmp/bucket-owner.xml. Dette er en totrinnsprosess. Vi må stille det inn på en ny eier midlertidig av sham2. Som i dette eksemplet nedenfor, før du går tilbake til den opprinnelige eieren Sham1, må du bekrefte utdataene:
. 7. Når konfigurasjonsendringen er fullført, skal vi ikke se den samme feilen lenger
1. Finn gjeldende eier av kurv.
Krev rotpassordet for brukergrensesnittet for å generere TOKEN. Eksempel:
admin@ecsnode1:~> tok=$(curl -iks https://XX.XX.XX.XX:4443/login -u 'root:ChangeMe' | grep X-SDS-AUTH-TOKEN)
Kontroller gjeldende kurveier (bytte ut kurv og navneområde i din situasjon):
admin@node1:~> curl -s -k -X GET -H "$tok" https://XX.XX.XX.XX:4443/object/bucket/sham_bk_nfs/info?namespace=degreat_nfs | xmllint --format - | grep '<owner>' <owner>sham2</owner>
Dette bekrefter at parameteren reset_previous_owners er nødvendig for å være sann. Den gjenopprettede kurveieren er på brukergrensesnittet, men API-en via CLI bekrefter at ECS fortsatt ser på kurveieren som "sham2".
2. Opprett en enkel XML-fil ved hjelp av Vi-redigeringsprogrammet. I eksemplet nedenfor kalles det /tmp/bucket-owner.xml. Dette er en totrinnsprosess. Vi må stille det inn på en ny eier midlertidig av sham2. Som i dette eksemplet nedenfor, før du går tilbake til den opprinnelige eieren Sham1, må du bekrefte utdataene:
admin@node1:~ # vi /tmp/bucket-owner.xml admin@ecsnode1:~ # cat /tmp/bucket-owner.xml <object_bucket_update_owner> <namespace>degreat_nfs</namespace> <new_owner>sham2</new_owner> <reset_previous_owners>true</reset_previous_owners> </object_bucket_update_owner> 3. Change the bucket owner to the temporary owner.
API-syntaksen som kreves for å endre kurveieren til "sham2" via XML-filen, er som følger:
admin@ecsnode1:~> curl -v -k -X "POST" "https://xx.xx.xx.xx:4443/object/bucket/sham_bk_nfs/owner" -H "$tok" -H "Content-Type: application/xml" -H "ACCEPT:application/xml" -d @/tmp/bucket-owner.xml -v * Hostname was NOT found in DNS cache * Trying xx.xx.xx.xx... * Connected to xx.xx.xx.xx (xx.xx.xx.xx) port 4443 (#0) * successfully set certificate verify locations: * CAfile: none CApath: /etc/ssl/certs/ * SSLv3, TLS unknown, Certificate Status (22): * SSLv3, TLS handshake, Client hello (1): * SSLv3, TLS handshake, Server hello (2): * SSLv3, TLS handshake, Certificate (11): * SSLv3, TLS handshake, Server key exchange (12): * SSLv3, TLS handshake, Server finished (14): * SSLv3, TLS handshake, Client key exchange (16): * SSLv3, TLS change cipher, Client hello (1): * SSLv3, TLS handshake, Finished (20): * SSLv3, TLS change cipher, Client hello (1): * SSLv3, TLS handshake, Finished (20): * SSL connection using TLSv1.2 / ECDHE-RSA-AES256-GCM-SHA384 * Server certificate: * subject: CN=localhost * start date: 2019-03-25 09:53:41 GMT * expire date: 2029-03-22 09:53:41 GMT * issuer: CN=localhost * SSL certificate verify result: self signed certificate (18), continuing anyway. > POST /object/bucket/sham_bk_nfs/owner HTTP/1.1 > User-Agent: curl/7.37.0 > Host: xx.xx.xx.xx:4443 > X-SDS-AUTH-TOKEN: BAAcUy9KYlhxTlVYb2M0bnF3bTNscEsvSEdDeWhJPQMAjAQASHVybjpzdG9yYWdlb3M6VmlydHVhbERhdGFDZW50ZXJEYXRhOmJhOGQ3ZTkzLTMyMGYtNDNmNy05Y2FkLWM4YWQzMWFiMzY1MAIADTE1NTk3Mzk3OTA2MDgDAC51cm46VG9rZW46YjQ4NGNiZjEtNTkwNy00YWI3LTgzYTctM2Y3OGRhM2RiY2NiAgAC0A8= > Content-Type: application/xml > ACCEPT:application/xml > Content-Length: 179 > * upload completely sent off: 179 out of 179 bytes < HTTP/1.1 200 OK < Date: Thu, 06 Jun 2019 10:56:08 GMT < Content-Length: 0 < Connection: keep-alive < * Connection #0 to host xx.xx.xx.xx left intact 4. Edit the simple.xml file previously created in step 2 and this time insert original owner of sham1
admin@node1:~ # vi /tmp/bucket-owner.xml admin@ecsnode1:~ # cat /tmp/bucket-owner.xml <object_bucket_update_owner> <namespace>degreat_nfs</namespace> <new_owner>sham1</new_owner> <reset_previous_owners>true</reset_previous_owners> </object_bucket_update_owner> 5. Change the bucket owner back to the original owner The API syntax required to change the bucket owner back to "sham1" through the xml file is as follows:
admin@ecsnode1:~> curl -v -k -X "POST" "https://xx.xx.xx.xx:4443/object/bucket/sham_bk_nfs/owner" -H "$tok" -H "Content-Type: application/xml" -H "ACCEPT:application/xml" -d @/tmp/bucket-owner.xml -v * Hostname was NOT found in DNS cache * Trying xx.xx.xx.xx... * Connected to xx.xx.xx.xx (xx.xx.xx.xx) port 4443 (#0) * successfully set certificate verify locations: * CAfile: none CApath: /etc/ssl/certs/ * SSLv3, TLS unknown, Certificate Status (22): * SSLv3, TLS handshake, Client hello (1): * SSLv3, TLS handshake, Server hello (2): * SSLv3, TLS handshake, Certificate (11): * SSLv3, TLS handshake, Server key exchange (12): * SSLv3, TLS handshake, Server finished (14): * SSLv3, TLS handshake, Client key exchange (16): * SSLv3, TLS change cipher, Client hello (1): * SSLv3, TLS handshake, Finished (20): * SSLv3, TLS change cipher, Client hello (1): * SSLv3, TLS handshake, Finished (20): * SSL connection using TLSv1.2 / ECDHE-RSA-AES256-GCM-SHA384 * Server certificate: * subject: CN=localhost * start date: 2019-03-25 09:53:41 GMT * expire date: 2029-03-22 09:53:41 GMT * issuer: CN=localhost * SSL certificate verify result: self signed certificate (18), continuing anyway. > POST /object/bucket/sham_bk_nfs/owner HTTP/1.1 > User-Agent: curl/7.37.0 > Host: xx.xx.xx.xx:4443 > X-SDS-AUTH-TOKEN: BAAcUy9KYlhxTlVYb2M0bnF3bTNscEsvSEdDeWhJPQMAjAQASHVybjpzdG9yYWdlb3M6VmlydHVhbERhdGFDZW50ZXJEYXRhOmJhOGQ3ZTkzLTMyMGYtNDNmNy05Y2FkLWM4YWQzMWFiMzY1MAIADTE1NTk3Mzk3OTA2MDgDAC51cm46VG9rZW46YjQ4NGNiZjEtNTkwNy00YWI3LTgzYTctM2Y3OGRhM2RiY2NiAgAC0A8= > Content-Type: application/xml > ACCEPT:application/xml > Content-Length: 179 > * upload completely sent off: 179 out of 179 bytes < HTTP/1.1 200 OK < Date: Thu, 06 Jun 2019 10:56:08 GMT < Content-Length: 0 < Connection: keep-alive < * Connection #0 to host xx.xx.xx.xx left intact 6. Confirm the bucket owner change is reflected.
Bekreft at endringen av kurveieren nå er "sham1".
admin@ecsnode1:~> curl -s -k -X GET -H "$tok" https://XX.XX.XX.XX:4443/object/bucket/sham_bk_nfs/info?namespace=degreat_nfs | xmllint --format - | grep '<owner>' <owner>sham1</owner>
Når kurveieren er tilbakestilt på API-en, må du bekrefte at verten nå kan få tilgang til kurven på Linux-filsystemet.
. 7. Når konfigurasjonsendringen er fullført, skal vi ikke se den samme feilen lenger
svc_log -f "method updateObjectInternal not allowed" -start "20 hour ago" -sr all -sh -st hour svc_log v1.0.22 (svc_tools v1.6.8) Started 2020-01-23 09:28:17 Running on nodes: <All nodes> Time range: 2020-01-22 13:28:17 - 2020-01-23 09:28:17 Filter string(s): 'method updateObjectInternal not allowed' Show nodename(s): True Search reclaim logs (if any): False Count of message occurrences per hour: 2020-01-22 13:xx - 5066 2020-01-22 14:xx - 9580 2020-01-22 15:xx - 9574 2020-01-22 16:xx - 9580 2020-01-22 17:xx - 9570 2020-01-22 18:xx - 9576 2020-01-22 19:xx - 9564 2020-01-22 20:xx - 9576 2020-01-22 21:xx - 9576 2020-01-22 22:xx - 9572 2020-01-22 23:xx - 9564 2020-01-23 00:xx - 9586 2020-01-23 01:xx - 9574 2020-01-23 02:xx - 9572 2020-01-23 03:xx - 4564 2020-01-23 04:xx - 0 2020-01-23 05:xx - 0 2020-01-23 06:xx - 0 2020-01-23 07:xx - 0 2020-01-23 08:xx - 0 2020-01-23 09:xx - 0 Dell EMC is aware of this issue and are working on a fix in a future release.
Additional Information
Relatert NFS KB:
Du kan abonnere på oppdateringer ved å følge instruksjonene i kunnskapsartikkelen nedenfor:
DELL EMC: Slik abonnerer du på produktsider – Dells kundestøtte?
- ECS: Slik oppretter du en grunnleggende NFS-eksport og monterer den på en klient
- ECS: NFS kan ikke skrive eller slette objekter
- ECS: Store NFS-skriveoperasjoner fra ESXi kan mislykkes etter 3.2-oppgradering
- ECS: Tilbakestilling av NFS-eksportkonfigurasjon etter å ha lagt til ny eksport i multi-VDC-miljø
- ECS: feil ved strømming av datahodervc-logg: NFSv3-prosedyre LINK støttes ikke i forespørsel ReadLinkRequest
- ECS: Duplisert informasjonskapselfeil ved oppføring av NFS
- ECS: NFS-montering mislyktes med ingen slik fil eller katalog eller ERROR_OBJECT_NOT_FOUND
- ECS: Filoversikt over NFS-kurver som inneholder mer enn 2 millioner filer, kan være trege eller mislykkes
- ECS: Undermappen eller katalogen som er opprettet ved hjelp av S3-nettleseren, er ikke oppført av NFS-klienten/Linux-maskinen, men innholdet i undermappen vises i hovedkatalogen eller rotkatalogen
- ECS: Ekstern I/U-feil mottatt når du prøver å skrive til en kurv med NFS
- ECS: Nfs eksterne I/U-feil; Endring av kurveier for FS-aktivert kurv kan føre til at applikasjoner/brukere ikke får tilgang til NFS-filer
- ECS: NFS-skrivefeil forårsaker I/U-feil etter en viss mengde data.
- ECS: Bruke NFS-fildeling fra ECS med et VMware NFS-datalager
- ECS: Beste praksis for montering av ECS NFS-eksporter
- ECS: Slik monterer du NFS-deling på Windows-klient
- ECS: NFS kan ikke monteres etter endring av fileksportinnstillinger i brukergrensesnittet
- ECS: Er Oracle WebCenter Content (WCC) kompatibelt med ECS?
Du kan abonnere på oppdateringer ved å følge instruksjonene i kunnskapsartikkelen nedenfor:
DELL EMC: Slik abonnerer du på produktsider – Dells kundestøtte?
Affected Products
Elastic Cloud StorageProducts
ECS Appliance, ECS Appliance Software with Encryption, ECS Appliance Software without Encryption, Elastic Cloud StorageArticle Properties
Article Number: 000055535
Article Type: Solution
Last Modified: 25 Mar 2025
Version: 4
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.