W ECS pamięć podręczna NFS trwa około 20 minut, aby propagować i odświeżać pamięć podręczną NFS w usłudze dataheadsvc w urządzeniu ECS. Ten problem często występuje podczas konfiguracji nowego eksportu NFS, ponieważ do rozwiązania dostosowania eksportu potrzebne są pewne zmiany.
Takie zachowanie jest oczekiwane w ECS po modyfikacji istniejącego eksportu NFS, a eksport jest wyświetlany jako aktywny w ECS.
- Aby sprawdzić, czy ten problem występuje, sprawdź eksport w ECS:
Polecenie: (na kliencie NFS Linux)
# showmount -e <Adres IP przykładu ECS>
:
[root@nfsclient ~]# showmount -e xxx.xxx.xxx
Export list for xxx.xxx.xxx.xxx:
/namespace/nfsbucket *
- Spróbuj zamontować eksport, który został zweryfikowany w ECS:
Polecenie: (Uwaga: Jest to przykładowe polecenie i dodajemy opcję -vv, aby uzyskać bardziej szczegółowe dane wyjściowe na kliencie NFS Linux).
# mount -vv -t nfs -o vers=3, nolock, sec=sys, proto=tcp <ADRES IP ECS: przykład lokalnego punktu>montowania ścieżki><eksportu:<>
[root@ nfsclient ~]# mount -vv -t nfs -o vers=3,,nolock,sec=sys,proto=tcp xxx.xxx.xxx.xxx:/namespace/nfsbucket /mnt/test
mount.nfs: timeout set for Wed Aug 14 09:37:03 2019
mount.nfs: trying text-based options 'vers=3,nolock,sec=sys,proto=tcp,addr= xxx.xxx.xxx.xxx '
mount.nfs: prog 100003, trying vers=3, prot=6
mount.nfs: trying xxx.xxx.xxx.xxx prog 100003 vers 3 prot TCP port 2049
mount.nfs: prog 100005, trying vers=3, prot=6
mount.nfs: trying xxx.xxx.xxx.xxx prog 100005 vers 3 prot TCP port 2049
mount.nfs: mount(2): No such file or directory
mount.nfs: mounting xxx.xxx.xxx.xxx:/namespace/nfsbucket failed, reason given by server: No such file or directory
- Weryfikuj w ECS, że eksport nie może być zlokalizowany:
Polecenie: (Uwaga: powoduje to jednoczesne przeskanowanie wszystkich dzienników węzłów w poszukiwaniu słowa kluczowego nfs w ciągu ostatnich 5 minut w klastrze ECS)
# svc_log -i -f nfs -sr all -sn -sf -n all -start '5 minutes ago'
Przykład:
admin@ecsnode1:~> svc_log -i -f nfs -sr all -sn -sf -n all -start '5 minutes ago'
svc_log v0.9.19 (svc_tools v1.1.1) Started 2019-08-14 15:35:57
Running on nodes: <All nodes>
Time range: 2019-08-14 15:30:57 - 2019-08-14 15:35:57
Filter string(s): 'nfs'
Show filename(s): True
Show nodename(s): True
Search reclaim logs (if any): False
Case insensitive: True
169.254.1.1 dataheadsvc.log 2019-08-14T15:35:05,953 [RpcDispatcherMD-3082827] INFO RpcProgramMountd.java (line 101) MOUNT MNT path: /namespace/nfsbucket Client: /xxx.xxx.xxx
169.254.1.1 dataheadsvc.log 2019-08-14T15:35:05,958 [RpcDispatcherMD-3082827] INFO ExportsService.java (line 98) added key /namespace/nfsbucket/ to the cache
169.254.1.1 dataheadsvc.log 2019-08-14T15:35:05,960 [RpcDispatcherMD-3082827] ERROR RpcProgramMountd.java (line 111) Couldn't locate the exportEntry for the path /namespace/nfsbucket
- Poczekaj ok. 20 minut na odświeżenie konfliktów ustawień eksportu w ECS i ponów próbę polecenia montowania:
Polecenie: (Uwaga: Jest to przykładowe polecenie i dodajemy opcję -vv, aby uzyskać bardziej szczegółowe dane wyjściowe na kliencie NFS Linux).
# mount -vv -t nfs -o vers=3, nolock, sec=sys, proto=tcp <ADRES IP ECS: przykład lokalnego punktu>montowania ścieżki><eksportu:<>
[root@client ~]# mount -vv -t nfs -o vers=3,,nolock,sec=sys,proto=tcp xxx.xxx.xxx: /namespace/nfsbucket mnt/test
final mount options: 'vers=3,,nolock,sec=sys,proto=tcp'
mount.nfs: timeout set for Wed Aug 14 13:55:00 2019
mount.nfs: trying text-based options 'vers=3,nolock,sec=sys,proto=tcp,addr= xxx.xxx.xxx '
mount.nfs: prog 100003, trying vers=3, prot=6
mount.nfs: trying xxx.xxx.xxx prog 100003 vers 3 prot TCP port 2049
mount.nfs: prog 100005, trying vers=3, prot=6
mount.nfs: trying xxx.xxx.xxx prog 100005 vers 3 prot TCP port 2049
xxx.xxx.xxx:/namespace/nfsbucket on /mnt/test type nfs (rw,vers=3,,nolock,sec=sys,proto=tcp)