Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
distcc will nicht so wie ich will
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German)
View previous topic :: View next topic  
Author Message
Tinitus
Veteran
Veteran


Joined: 20 Sep 2004
Posts: 1754

PostPosted: Mon Jan 18, 2010 10:09 am    Post subject: distcc will nicht so wie ich will Reply with quote

Hallo,

zunächst die Config:

Server 192.168.3.2
Client 192.168.3.33

auf dem Server:


nano /etc/distcc/hosts
Code:

192.168.3.33,foo,cpp,lzo bar,cpp,lzo baz,cpp,lzo


nano /etc/conf.d/distccd
Code:

# /etc/conf.d/distccd: config file for /etc/init.d/distccd

DISTCCD_OPTS=""

# this is the distccd executable
DISTCCD_EXEC="/usr/bin/distccd"

# this is where distccd will store its pid file
DISTCCD_PIDFILE="/var/run/distccd/distccd.pid"

# set this option to run distccd with extra parameters
# Default port is 3632.  For most people the default is okay.
DISTCCD_OPTS="${DISTCCD_OPTS} --port 3632"

# Logging
# You can change some logging options here:
# --log-file FILE
# --log-level LEVEL  [critical,error,warning, notice, info, debug]
#
# Leaving --log-file blank will log to syslog
# example: --log-file /dev/null --log-level warning
# example: --log-level critical

DISTCCD_OPTS="${DISTCCD_OPTS} --log-level debug"

# SECURITY NOTICE:
# It is HIGHLY recomended that you use the --listen option
# for increased security. You can specify an IP to permit connections
# from or a CIDR mask
# --listen accepts only a single IP
# --allow is now mandatory as of distcc-2.18.
# example:  --allow 192.168.0.0/24
# example:  --allow 192.168.0.5 --allow 192.168.0.150
# example:  --listen 192.168.0.2
DISTCCD_OPTS="${DISTCCD_OPTS} --allow 192.168.3.0/24"
#DISTCCD_OPTS="${DISTCCD_OPTS} --listen 192.168.0.2"
DISTCCD_OPTS="${DISTCCD_OPTS} --listen 192.168.3.2"
# set this for niceness
# Default is 15
DISTCCD_OPTS="${DISTCCD_OPTS} -N 15"


nano /etc/make.conf
Code:

MAKEOPTS="-j5"
FEATURES="distcc"


dann:
/etc/init.d/distccd restart
Code:

 * Stopping distccd ...                                                                                                                                                              [ ok ]
 * Starting distccd ...
distccd[1159] (dcc_discard_root) discarded root privileges, changed to uid=240 gid=2                                                                                                 [ ok ]



Client
nano /etc/distcc/hosts
Code:
localhost/1 192.168.3.2/5


nano /etc/conf.d/distccd

Code:
# /etc/conf.d/distccd: config file for /etc/init.d/distccd

DISTCCD_OPTS=""

# this is the distccd executable
DISTCCD_EXEC="/usr/bin/distccd"

# this is where distccd will store its pid file
DISTCCD_PIDFILE="/var/run/distccd/distccd.pid"

# set this option to run distccd with extra parameters
# Default port is 3632.  For most people the default is okay.
DISTCCD_OPTS="${DISTCCD_OPTS} --port 3632"

# Logging
# You can change some logging options here:
# --log-file FILE
# --log-level LEVEL  [critical,error,warning, notice, info, debug]
#
# Leaving --log-file blank will log to syslog
# example: --log-file /dev/null --log-level warning
# example: --log-level critical

DISTCCD_OPTS="${DISTCCD_OPTS} --log-level critical"

# SECURITY NOTICE:
# It is HIGHLY recomended that you use the --listen option
# for increased security. You can specify an IP to permit connections
# from or a CIDR mask
# --listen accepts only a single IP
# --allow is now mandatory as of distcc-2.18.
# example:  --allow 192.168.0.0/24
# example:  --allow 192.168.0.5 --allow 192.168.0.150
# example:  --listen 192.168.0.2
DISTCCD_OPTS="${DISTCCD_OPTS} --allow 192.168.3.0/24"
#DISTCCD_OPTS="${DISTCCD_OPTS} --listen 192.168.0.2"

# set this for niceness
# Default is 15
DISTCCD_OPTS="${DISTCCD_OPTS} -N 15"



Irgendwie kommt keine Verbindung zwischen den Teilnehmern zustande.

Bitte um Hilfe

G. R.
Back to top
View user's profile Send private message
bbgermany
Veteran
Veteran


Joined: 21 Feb 2005
Posts: 1792
Location: Oranienburg/Germany

PostPosted: Mon Jan 18, 2010 11:35 am    Post subject: Reply with quote

Hi,

wie sieht denn deine make.conf auf dem Client aus. Hast du da auch die FEATURES gesetzt? Was auch immer sehr nützlich ist, sind folgende Optionen:

Code:

DISTCCD_OPTS="${DISTCCD_OPTS} --log-level info --log-file /var/log/distcc.log


Dann die Datei mit touch anlegen und die Rechte anpassen. Distcc neu starten dann checken ob sich wer überhaupt verbindet ;)

MfG. Stefan
_________________
1st: i5-4570, 16GB, 1.75TB
2nd: i5-4570, 16GB, 620GB
3rd: i5-4570, 16GB, 10,5TB
4th: Asus N61VN, 8GB, 240GB
5th: C2D T7200, 2GB, 16GB USB + NFS
Back to top
View user's profile Send private message
Tinitus
Veteran
Veteran


Joined: 20 Sep 2004
Posts: 1754

PostPosted: Mon Jan 18, 2010 12:33 pm    Post subject: Reply with quote

bbgermany wrote:
Hi,

wie sieht denn deine make.conf auf dem Client aus. Hast du da auch die FEATURES gesetzt? Was auch immer sehr nützlich ist, sind folgende Optionen:

Code:

DISTCCD_OPTS="${DISTCCD_OPTS} --log-level info --log-file /var/log/distcc.log


Dann die Datei mit touch anlegen und die Rechte anpassen. Distcc neu starten dann checken ob sich wer überhaupt verbindet ;)

MfG. Stefan


Hallo,

danke für die Antwort, ich glaube ich hatte beim Server das localhost vergessen.

Aber was ist der Pump Mode?

G. R.
Back to top
View user's profile Send private message
Tinitus
Veteran
Veteran


Joined: 20 Sep 2004
Posts: 1754

PostPosted: Mon Jan 18, 2010 4:53 pm    Post subject: Reply with quote

Hallo nochmal,

nachdem disstcc nun läuft ist die Compile Zeit schon ein wenig kleiner.

Übrigens das Pump bedeutet, daß auf dem Quellrechner die Paket für die Compileserver CPU schonender vorbereitet werden.

Optimal ist das Ergebnis aber noch nicht, da der Prozzi auf dem Server noch nicht voll ausgenutzt wird..

Also 1 CPU auf dem Source System auf dem Compile Server 4 CPU.

Wie müssen dann die Anzahl der möglichen Prozesse verteilt sein?

Habe jetzt auf dem Server j5 und auf dem Client j2. Ist das OK so?

G. R.
Back to top
View user's profile Send private message
bbgermany
Veteran
Veteran


Joined: 21 Feb 2005
Posts: 1792
Location: Oranienburg/Germany

PostPosted: Mon Jan 18, 2010 9:42 pm    Post subject: Reply with quote

Hi,

trag mal auf dem Rechner wo du emerge ausführst MAKEOPTS="-j6" in deine make.conf ein. Somit werden sechs gcc Prozesse gestartet. Da du die Hostverteilung auf 1/5 gesetzt hast, werden fünf gcc Prozesse auf dem Remoterechner gestartet und einer auf dem lokalen.

MfG. Stefan
_________________
1st: i5-4570, 16GB, 1.75TB
2nd: i5-4570, 16GB, 620GB
3rd: i5-4570, 16GB, 10,5TB
4th: Asus N61VN, 8GB, 240GB
5th: C2D T7200, 2GB, 16GB USB + NFS
Back to top
View user's profile Send private message
Tinitus
Veteran
Veteran


Joined: 20 Sep 2004
Posts: 1754

PostPosted: Sun Feb 07, 2010 2:16 pm    Post subject: Reply with quote

Hallo,

hier mal eine Zusammenfassung aller Fehler und Fallstricke mit distcc.

Habe hier 2 Server mit Core2Quad und einen mit Intel Celereon.

Die 2 Quads sind gleichberechtigt. Der Celeron soll nur unterstützt werden.
Wichtig ist auch die Reihenfolge der Angaben in der make.conf

Code:


MAKEOPTS="-j15"

und dann die Features:

PORTAGE_ELOG_CLASSES="warn error info"
FEATURES="parallel-fetch"
FEATURES="distcc"
ACCEPT_LICENSE="*"

PORTAGE_ELOG_SYSTEM="mail save"
#Zunächst der Empfänger und der zu benutzende SMTP Server
#PORTAGE_ELOG_MAILURI="root@localhost localhost"
PORTAGE_ELOG_MAILURI="root /usr/sbin/sendmail"
#Alternativ können Sie auch einen SMTP Server des Providers benutzen
#PORTAGE_ELOG_MAILURI="tobias.scherbaum@gentoo-ev.org benutzer:passwort@server

#Der Absender der Email
PORTAGE_ELOG_MAILFROM="portage@localhost"

#Der Betreff, Sie können die Variablen $PACKAGE und $HOST nutzen
PORTAGE_ELOG_MAILSUBJECT="Paket \${PACKAGE} auf Host \${HOST} mit Nachrichten installiert"


sowie

wichtig die aktuelle Version von distcc will nicht mit ipv6

Code:
sys-devel/distcc-3.1-r4  USE="gnome gtk -avahi -hardened -ipv6 (-selinux) -xinetd"


nano /etc/distcc/hosts
Code:

localhost       192.168.3.2     192.168.3.3     192.168.3.33/0



nano /etc/conf.d/distccd

Achtung das angegebene Logfile noch erstellen und Berechtigungen festlegen:
hier der Rechner mit der IP
192.168.3.3
Code:

# /etc/conf.d/distccd: config file for /etc/init.d/distccd

DISTCCD_OPTS=""

# this is the distccd executable
DISTCCD_EXEC="/usr/bin/distccd"

# this is where distccd will store its pid file
DISTCCD_PIDFILE="/var/run/distccd/distccd.pid"

# set this option to run distccd with extra parameters
# Default port is 3632.  For most people the default is okay.
DISTCCD_OPTS="${DISTCCD_OPTS} --port 3632"

# Logging
# You can change some logging options here:
# --log-file FILE
# --log-level LEVEL  [critical,error,warning, notice, info, debug]
#
# Leaving --log-file blank will log to syslog
# example: --log-file /dev/null --log-level warning
# example: --log-level critical

DISTCCD_OPTS="${DISTCCD_OPTS} --log-level debug --log-file /var/log/distcc.log"

# SECURITY NOTICE:
# It is HIGHLY recomended that you use the --listen option
# for increased security. You can specify an IP to permit connections
# from or a CIDR mask
# --listen accepts only a single IP
# --allow is now mandatory as of distcc-2.18.
# example:  --allow 192.168.0.0/24
# example:  --allow 192.168.0.5 --allow 192.168.0.150
# example:  --listen 192.168.0.2
DISTCCD_OPTS="${DISTCCD_OPTS} --allow 192.168.3.0/24"
DISTCCD_OPTS="${DISTCCD_OPTS} --listen 192.168.3.3"

# set this for niceness
# Default is 15
DISTCCD_OPTS="${DISTCCD_OPTS} -N 15"



dann klappt auch das Monitoring mit:

Code:

DISTCC_DIR="/var/tmp/portage/.distcc/" distccmon-gui
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum