← Back to team overview

sslug-teknik team mailing list archive

Re: rsh port problem

 

On 25/04/2008, at 10.24, Bjarne Büchmann wrote:

Hej,

Jeg arbejder med at opsætte en linux/beowulf klynge. Vi har et meget kotrolleret miljø, som gør, at vi kan tillade os at bruge rsh til kommunikation internt på klyngen. Jeg er klar over, at vi kan bruge ssh og/eller pdsh i stedet, men det vil jeg (af forskellige grunde) helst undgå pt.

Hvilke grunde er der til at du vil undgå det?



Aktuelt har jeg et problem med, at rsh fejler, når der er "pres på", dvs når der laves mange rsh-forbindelser efter hinanden. For eksempel når jeg fra to noder (samtidigt) kører op imod en tredie som f.eks.:

bjb@n001> for i in `seq 1 300`; do echo $i ; rsh n003 true ; done

bjb@n002> for i in `seq 1 300`; do echo $i ; rsh n003 true ; done

Efter en stund får jeg:
...
157
158
poll: protocol failure in circuit setup
159
poll: protocol failure in circuit setup
...

På den tilgåede node (her n003) ser jeg i /var/log/messages masser af disse:
...
Apr 25 10:05:21 n003 rshd[16606]: can't get stderr port: Resource temporarily unavailable Apr 25 10:05:21 n003 rshd[16610]: can't get stderr port: Resource temporarily unavailable Apr 25 10:05:21 n003 rshd[16611]: can't get stderr port: Resource temporarily unavailable
...

Jeg har ændret i /etc/xinetd.conf (og /etc/xinietd.d/rsh) og sørget for, at bruge:
   cps             = 200 1
   instances       = UNLIMITED
   per_source      = UNLIMITED
Men det har ikke hjulpet (har genstartet xinetd).

Når jeg kører nogle af vores perl-baserede programmer med bedre håndtering af STDERR, kan jeg på klient-siden (her n001 og n002) også se fejl som:

rcmd: socket: All ports in use


Jeg er klar over, at rsh bruger "trusted ports" (max op til no 1023 eller så). Selv om vi bruger mange rsh-forbindelser, så bruger vi ikke særligt mange *ad gangen*.

Jeg har pt en fornemmelse af at problemet kan have at gøre med, at systemet ikke frigiver de brugte rsh-porte hurtigt nok. Det, at når der kommer en indgående rsh (på n003 i dette tilfælde), så ser in.rshd at der ikke er flere ledige porte - også selvom en del af de optagede porte ikke er i brug længere - og vil blive frigjort lidt senere.

Kører rsh ikke via inetd?



JonB

Follow ups

References