[rudder-users] CPU load on the server
Olivier Desport
olivier.desport at ac-versailles.fr
Wed Apr 17 14:24:22 CEST 2013
Le 17/04/2013 14:00, Nicolas Charles a écrit :
> On 17/04/2013 12:33, Olivier Desport wrote:
>>
>> Le 17/04/2013 12:28, Matthieu CERDA a écrit :
>>> Le 17/04/2013 12:22, Olivier Desport a écrit :
>>>> Hello,
>>>>
>>>> Since I've migrated to the 2.5.1release-squeeze0 version the cpu
>>>> load of cf-agent on the Rudder server is very high :
>>>>
>>>> PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
>>>> 8128 root 20 0 35720 4780 2864 R 50 0.0 8:12.29 cf-agent
>>>> 9912 root 20 0 35724 4780 2864 R 50 0.0 2:19.35 cf-agent
>>>> 7143 root 20 0 49572 12m 2924 R 25 0.1 13:18.39 cf-agent
>>>> 7304 root 20 0 35720 4776 2864 R 25 0.0 7:29.65 cf-agent
>>>> 10749 root 20 0 35720 4776 2864 R 25 0.0 0:03.61 cf-agent
>>>> 9015 root 20 0 35720 4776 2864 R 25 0.0 4:23.80 cf-agent
>>>>
>>>> Therefore, the server is very slow. Can you help me please ?
>>>>
>>>>
>>>> --
>>>>
>>>>
>>>> *Olivier DESPORT
>>>> *Infrastructures Tice
>>>> DSI
>>>>
>>>> Tél : 01 30 83 52 92
>>>> Tcp. 01 30 83 48 46
>>>> Rectorat de Versailles . 3 boulevard de Lesseps . 78017 Versailles
>>>> cedex .
>>>> http://www.ac-versailles.fr
>>>> <cid:part2.00090308.02000409 at ac-versailles.fr>
>>>>
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> rudder-users mailing list
>>>> rudder-users at lists.rudder-project.org
>>>> http://www.rudder-project.org/mailman/listinfo/rudder-users
>>>
>>> Hello Olivier,
>>>
>>> Can you please try a "ps -faux" to have a complete process tree of
>>> every cf-agent ? It will help us to debug this problem.
>>>
>>> Thanks in advance,
>>> Regards,
>>> --
>>> ------------------------------------------------------------------------
>>> *Matthieu CERDA*
>>> /Administrateur - Systèmes et Réseaux/
>>> Normation <http://www.normation.com>
>>> ------------------------------------------------------------------------
>>> *87 rue de Turbigo, 75003 Paris, France*
>>> Telephone: +33 (0)1 84 16 06 01
>>> ------------------------------------------------------------------------
>>>
>> Here is `ps -faux` output :
>>
>> root 25908 0.4 0.0 190276 6644 ? Ssl Apr15 12:25
>> /var/rudder/cfengine-community/bin/cf-serverd
>> root 25939 0.0 0.0 147280 4292 ? Ssl Apr15 0:07
>> /var/rudder/cfengine-community/bin/cf-execd
>> root 12641 0.0 0.0 3956 584 ? S 12:26 0:00 \_ sh
>> -c "/var/rudder/cfengine-community/bin/cf-agent" -f failsafe.cf &&
>> "/var/rudder/cfengine-community/bin/cf-agent" -Dfrom_cfexecd
>> root 12890 96.5 0.0 49576 12600 ? Rs 12:27 4:31 |
>> \_ /var/rudder/cfengine-community/bin/cf-agent -Dfrom_cfexecd
>> root 13726 0.0 0.0 3956 580 ? S 12:30 0:00 \_ sh
>> -c "/var/rudder/cfengine-community/bin/cf-agent" -f failsafe.cf &&
>> "/var/rudder/cfengine-community/bin/cf-agent" -Dfrom_cfexecd
>> root 13727 95.6 0.0 35724 4780 ? Rs 12:30 1:02
>> \_ /var/rudder/cfengine-community/bin/cf-agent -f failsafe.cf
>>
>
> Hi Olivier,
>
> That's unfortunate, as it does't give much details on what could go slow.
> Could you send us the output of the
> /var/rudder/cfengine-community/bin/cf-agent -v ? (you may want to
> edit this output, as it may contain sensitive information like
> hostname, ip, text contents, etc)
>
> Thanks !
> Nicolas
>
>
/var/rudder/cfengine-community/bin/cf-agent -v :
cf3> Cfengine - autonomous configuration engine - commence
self-diagnostic prelude
cf3>
------------------------------------------------------------------------
cf3> Work directory is /var/rudder/cfengine-community
cf3> Making sure that locks are private...
cf3> Checking integrity of the state database
cf3> Checking integrity of the module directory
cf3> Checking integrity of the PKI directory
cf3> Looking for a source of entropy in
/var/rudder/cfengine-community/randseed
cf3> -> Loaded private key
/var/rudder/cfengine-community/ppkeys/localhost.priv
cf3> -> Loaded public key
/var/rudder/cfengine-community/ppkeys/localhost.pub
cf3> Setting cfengine default port to 5308 = 5308
cf3> Reference time set to Wed Apr 17 14:15:04 2013
cf3> CFEngine Core 3.2.4
cf3>
------------------------------------------------------------------------
cf3> Host name is: celebrimbor
cf3> Operating System Type is linux
cf3> Operating System Release is 2.6.32-5-amd64
cf3> Architecture = x86_64
cf3> Using internal soft-class linux for host celebrimbor
cf3> The time is now Wed Apr 17 14:15:04 2013
cf3>
------------------------------------------------------------------------
cf3> # Extended system discovery is only available in version Nova and above
cf3> Additional hard class defined as: 64_bit
cf3> Additional hard class defined as: linux_2_6_32_5_amd64
cf3> Additional hard class defined as: linux_x86_64
cf3> Additional hard class defined as: linux_x86_64_2_6_32_5_amd64
cf3> GNU autoconf class from compile time: compiled_on_linux_gnu
cf3> Address given by nameserver: <ip_adress>
cf3> Interface 1: lo
cf3> Interface 2: eth0
cf3> Adding alias celebrimbor..
cf3> Trying to locate my IPv6 address
cf3> Found IPv6 address xxxxxxxxxxxxxxxxxxxxxxxxx
cf3> Looking for environment from cf-monitord...
cf3> Unable to detect environment from cf-monitord
cf3> This appears to be a debian system.
cf3> Looking for Debian version...
cf3> This appears to be a Debian 6.0 system.
cf3> This system seems to have the aptitude package system
cf3> ***********************************************************
cf3> Loading persistent classes
cf3> ***********************************************************
cf3> ***********************************************************
cf3> Loaded persistent memory
cf3> ***********************************************************
cf3> -> Found a policy server (hub) on 127.0.0.1
cf3> -> Policy is already validated
cf3> > Parsing file /var/rudder/cfengine-community/inputs/promises.cf
cf3> Initiate variable convergence...
cf3> -> Checking common class promises...
cf3> ?> defining additional global class policy_server
cf3> ?> defining additional global class root_server
cf3> -> Checking common class promises...
rudder> > Parsing file
/var/rudder/cfengine-community/inputs/common/1.0/cf-served.cf
rudder> Initiate variable convergence...
rudder> -> Checking common class promises...
rudder> -> Checking common class promises...
rudder> > Parsing file
/var/rudder/cfengine-community/inputs/common/1.0/cfengine_stdlib.cf
rudder> Initiate variable convergence...
rudder> -> Checking common class promises...
rudder> -> Checking common class promises...
rudder> > Parsing file
/var/rudder/cfengine-community/inputs/common/1.0/rudder_lib.cf
rudder> Initiate variable convergence...
rudder> -> Checking common class promises...
rudder> -> Checking common class promises...
rudder> > Parsing file
/var/rudder/cfengine-community/inputs/common/1.0/rudder_stdlib.cf
rudder> Initiate variable convergence...
rudder> -> Checking common class promises...
rudder> -> Checking common class promises...
rudder> > Parsing file
/var/rudder/cfengine-community/inputs/common/1.0/process_matching.cf
rudder> Initiate variable convergence...
rudder> -> Checking common class promises...
rudder> -> Checking common class promises...
rudder> > Parsing file
/var/rudder/cfengine-community/inputs/common/1.0/internal_security.cf
rudder> Initiate variable convergence...
rudder> -> Checking common class promises...
rudder> -> Checking common class promises...
rudder> > Parsing file
/var/rudder/cfengine-community/inputs/common/1.0/e2s_activation.cf
rudder> Initiate variable convergence...
rudder> -> Checking common class promises...
rudder> -> Checking common class promises...
rudder> > Parsing file
/var/rudder/cfengine-community/inputs/common/1.0/site.cf
rudder> Initiate variable convergence...
rudder> -> Checking common class promises...
rudder> -> Checking common class promises...
rudder> > Parsing file
/var/rudder/cfengine-community/inputs/common/1.0/update.cf
rudder> Initiate variable convergence...
rudder> -> Checking common class promises...
rudder> -> Checking common class promises...
rudder> ?> defining additional global class disable_agent
rudder> !! Duplicate selection of value for variable "execRun" in scope g
rudder> !! Rule from
/var/rudder/cfengine-community/inputs/common/1.0/site.cf at/before line 58
rudder> > Parsing file
/var/rudder/cfengine-community/inputs/inventory/1.0/fetchFusionTools.cf
rudder> Initiate variable convergence...
rudder> -> Checking common class promises...
rudder> -> Checking common class promises...
rudder> !! Duplicate selection of value for variable "execRun" in scope g
rudder> !! Rule from
/var/rudder/cfengine-community/inputs/common/1.0/site.cf at/before line 58
rudder> > Parsing file
/var/rudder/cfengine-community/inputs/inventory/1.0/virtualMachines.cf
rudder> Initiate variable convergence...
rudder> -> Checking common class promises...
rudder> -> Checking common class promises...
rudder> !! Duplicate selection of value for variable "execRun" in scope g
rudder> !! Rule from
/var/rudder/cfengine-community/inputs/common/1.0/site.cf at/before line 58
rudder> -> Checking common class promises...
rudder> > Parsing file
/var/rudder/cfengine-community/inputs/inventory/1.0/fusionAgent.cf
rudder> Initiate variable convergence...
rudder> -> Checking common class promises...
rudder> -> Checking common class promises...
rudder> !! Duplicate selection of value for variable "execRun" in scope g
rudder> !! Rule from
/var/rudder/cfengine-community/inputs/common/1.0/site.cf at/before line 58
rudder> -> Checking common class promises...
rudder> > Parsing file
/var/rudder/cfengine-community/inputs/distributePolicy/1.0/propagatePromises.cf
rudder> Initiate variable convergence...
rudder> -> Checking common class promises...
rudder> -> Checking common class promises...
rudder> !! Duplicate selection of value for variable "execRun" in scope g
rudder> !! Rule from
/var/rudder/cfengine-community/inputs/common/1.0/site.cf at/before line 58
rudder> -> Checking common class promises...
rudder> > Parsing file
/var/rudder/cfengine-community/inputs/distributePolicy/1.0/rsyslogConf.cf
rudder> Initiate variable convergence...
rudder> -> Checking common class promises...
rudder> -> Checking common class promises...
rudder> !! Duplicate selection of value for variable "execRun" in scope g
rudder> !! Rule from
/var/rudder/cfengine-community/inputs/common/1.0/site.cf at/before line 58
rudder> -> Checking common class promises...
rudder> > Parsing file
/var/rudder/cfengine-community/inputs/distributePolicy/1.0/initCheck.cf
rudder> Initiate variable convergence...
rudder> -> Checking common class promises...
rudder> -> Checking common class promises...
rudder> !! Duplicate selection of value for variable "execRun" in scope g
rudder> !! Rule from
/var/rudder/cfengine-community/inputs/common/1.0/site.cf at/before line 58
rudder> -> Checking common class promises...
rudder> > Parsing file
/var/rudder/cfengine-community/inputs/distributePolicy/1.0/postgresCheck.cf
rudder> Initiate variable convergence...
rudder> -> Checking common class promises...
rudder> -> Checking common class promises...
rudder> !! Duplicate selection of value for variable "execRun" in scope g
rudder> !! Rule from
/var/rudder/cfengine-community/inputs/common/1.0/site.cf at/before line 58
rudder> -> Checking common class promises...
rudder> > Parsing file
/var/rudder/cfengine-community/inputs/distributePolicy/1.0/logrotateCheck.cf
rudder> Initiate variable convergence...
rudder> -> Checking common class promises...
rudder> -> Checking common class promises...
rudder> !! Duplicate selection of value for variable "execRun" in scope g
rudder> !! Rule from
/var/rudder/cfengine-community/inputs/common/1.0/site.cf at/before line 58
rudder> -> Checking common class promises...
rudder> > Parsing file
/var/rudder/cfengine-community/inputs/distributePolicy/1.0/integrityCheck.cf
rudder> Initiate variable convergence...
rudder> -> Checking common class promises...
rudder> -> Checking common class promises...
rudder> !! Duplicate selection of value for variable "execRun" in scope g
rudder> !! Rule from
/var/rudder/cfengine-community/inputs/common/1.0/site.cf at/before line 58
rudder> -> Checking common class promises...
rudder> > Parsing file
/var/rudder/cfengine-community/inputs/distributePolicy/1.0/networkCheck.cf
rudder> Initiate variable convergence...
rudder> -> Checking common class promises...
rudder> -> Checking common class promises...
rudder> !! Duplicate selection of value for variable "execRun" in scope g
rudder> !! Rule from
/var/rudder/cfengine-community/inputs/common/1.0/site.cf at/before line 58
rudder> -> Checking common class promises...
rudder> > Parsing file
/var/rudder/cfengine-community/inputs/distributePolicy/1.0/aliveCheck.cf
rudder> Initiate variable convergence...
rudder> -> Checking common class promises...
rudder> -> Checking common class promises...
rudder> !! Duplicate selection of value for variable "execRun" in scope g
rudder> !! Rule from
/var/rudder/cfengine-community/inputs/common/1.0/site.cf at/before line 58
rudder> -> Checking common class promises...
rudder> > Parsing file
/var/rudder/cfengine-community/inputs/distributePolicy/1.0/passwordCheck.cf
rudder> Initiate variable convergence...
rudder> -> Checking common class promises...
rudder> -> Checking common class promises...
rudder> !! Duplicate selection of value for variable "execRun" in scope g
rudder> !! Rule from
/var/rudder/cfengine-community/inputs/common/1.0/site.cf at/before line 58
rudder> -> Checking common class promises...
rudder> -> getfields: defining psql_password[1] = RUDDER_PSQL_PASSWORD
rudder> -> getfields: defining psql_password[2] = xxxxxxxxxxxxxx
rudder> -> getfields: defining ldap_password[1] =
RUDDER_OPENLDAP_BIND_PASSWORD
rudder> -> getfields: defining ldap_password[2] = xxxxxxxxxxxx
rudder> -> getfields: defining psql_pass[1] = RUDDER_PSQL_PASSWORD
rudder> -> getfields: defining psql_pass[2] = xxxxxxxxxxxxx
rudder> Initiate variable convergence...
rudder> -> Checking common class promises...
rudder> -> Checking common class promises...
rudder> !! Duplicate selection of value for variable "execRun" in scope g
rudder> !! Rule from
/var/rudder/cfengine-community/inputs/common/1.0/site.cf at/before line 58
rudder> -> Checking common class promises...
rudder> -> getfields: defining psql_password[1] = RUDDER_PSQL_PASSWORD
rudder> -> getfields: defining psql_password[2] = xxxxxxxxxxxxxxxxxxx
rudder> -> getfields: defining ldap_password[1] =
RUDDER_OPENLDAP_BIND_PASSWORD
rudder> -> getfields: defining ldap_password[2] = xxxxxxxxxx
rudder> -> getfields: defining psql_pass[1] = RUDDER_PSQL_PASSWORD
rudder> -> getfields: defining psql_pass[2] = xxxxxxxxxxxxxxxx
rudder> # Knowledge map reporting feature is only available in version
Nova and above
rudder> -> Defined classes = { 172_31_136_121 64_bit Afternoon April
Day17 GMT_Hr12 Hr14 Hr14_Q2 Lcycle_0 Min15 Min15_20
PK_MD5_e62a434c299e2a92117259118d577a12 Q2 Wednesday Yr2013
ac_versailles_fr agent any celebrimbor celebrimbor_in_ac_versailles_fr
cfengine cfengine_3 cfengine_3_2 cfengine_3_2_4 community_edition
compiled_on_linux_gnu debian debian_6 debian_6_0 debian_6_0__n__l
disable_agent fe80__783e_84ff_fe94_edbd fr have_aptitude
in_ac_versailles_fr ipv4_172 ipv4_172_31 ipv4_172_31_136
ipv4_172_31_136_121 linux linux_2_6_32_5_amd64 linux_x86_64
linux_x86_64_2_6_32_5_amd64
linux_x86_64_2_6_32_5_amd64__1_SMP_Mon_Feb_25_00_26_11_UTC_2013
net_iface_eth0 policy_server root_server verbose_mode x86_64 }
rudder> -> Negated Classes = { }
rudder> !! Duplicate selection of value for variable "execRun" in scope g
rudder> !! Rule from
/var/rudder/cfengine-community/inputs/distributePolicy/1.0/passwordCheck.cf
at/before line 298
rudder> -> getfields: defining psql_password[1] = RUDDER_PSQL_PASSWORD
rudder> -> getfields: defining psql_password[2] = xxxxxxxxxxxxxxxx
rudder> -> getfields: defining ldap_password[1] =
RUDDER_OPENLDAP_BIND_PASSWORD
rudder> -> getfields: defining ldap_password[2] = xxxxxxxxxxxxxxxxxxxxx
rudder> -> getfields: defining psql_pass[1] = RUDDER_PSQL_PASSWORD
rudder> -> getfields: defining psql_pass[2] = xxxxxxxxxxxxxxxxxx
rudder> Initiate variable convergence...
rudder> -> Checking common class promises...
rudder> -> Checking common class promises...
rudder> !! Duplicate selection of value for variable "execRun" in scope g
rudder> !! Rule from
/var/rudder/cfengine-community/inputs/common/1.0/site.cf at/before line 58
rudder> -> Checking common class promises...
rudder> -> getfields: defining psql_password[1] = RUDDER_PSQL_PASSWORD
rudder> -> getfields: defining psql_password[2] = xxxxxxxxxxxxxxxx
rudder> -> getfields: defining ldap_password[1] =
RUDDER_OPENLDAP_BIND_PASSWORD
rudder> -> getfields: defining ldap_password[2] = xxxxxxxxxxxxx
rudder> -> getfields: defining psql_pass[1] = RUDDER_PSQL_PASSWORD
rudder> -> getfields: defining psql_pass[2] = xxxxxxxxxx
rudder> -> Immunizing against parental death
rudder> SET ifelapsed = 1
rudder> SET environment variables from ...
rudder> SET Abort classes from ...
rudder> SET Syslog FACILITY = LOG_LOCAL6
rudder> SET repository = /var/rudder/modified-files
rudder> -> Bundlesequence =>
{'startExecution','clean_red_button','update','set_red_button','internal_security','check_red_button_status','process_matching','check_cf_processes','check_cron_daemon','garbage_collection','check_binaries_freshness','check_log_system','e2s_enable','check_uuid','fetchFusionTools','virtualMachines','doInventory','setup_debian_backports','install_rsyslogd','propagatePromises','root_init_check','root_postgres_check','root_logrotate_check','root_integrity_check','root_networks_check','root_alive_check','root_password_check_file','root_password_check_ldap','root_password_check_psql','root_password_check_dav','root_password_restart_jetty','sendInventoryToCmdb','endExecution'}
rudder>
rudder> *****************************************************************
rudder> BUNDLE startExecution
rudder> *****************************************************************
rudder>
rudder>
rudder> + Private classes augmented:
rudder>
rudder> - Private classes diminished:
rudder>
rudder>
rudder>
rudder> =========================================================
rudder> reports in bundle startExecution (1)
rudder> =========================================================
rudder>
The command still runs and the outup hangs on this last line.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.rudder-project.org/pipermail/rudder-users/attachments/20130417/67f97cef/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/jpeg
Size: 2372 bytes
Desc: not available
URL: <http://www.rudder-project.org/pipermail/rudder-users/attachments/20130417/67f97cef/attachment-0001.jpe>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/png
Size: 3503 bytes
Desc: not available
URL: <http://www.rudder-project.org/pipermail/rudder-users/attachments/20130417/67f97cef/attachment-0001.png>
More information about the rudder-users
mailing list