• 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Le P2P ne fonctionne plus ?
#26
si quelqu'un peux m'aider :

--------------------------
info supplémentaire mon registre :
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\FusionInventory-Agent]
"backend-collect-timeout"="180"
"ca-cert-dir"=""
"ca-cert-file"=""
"debug"="2"
"delaytime"="30"
"html"="0"
"httpd-ip"="0.0.0.0"
"httpd-port"="62354"
"httpd-trust"="127.0.0.1,192.168.250.21"
"local"=""
"logfile"="C:\\Program Files\\FusionInventory-Agent\\fusioninventory-agent.log"
"logfile-maxsize"="16"
"logger"="File"
"no-category"=""
"no-httpd"="0"
"no-p2p"="0"
"no-ssl-check"="0"
"no-task"=""
"password"=""
"proxy"=""
"server"="http://glpi/plugins/fusioninventory/"
"scan-homedirs"="0"
"scan-profiles"="0"
"tag"=""
"timeout"="180"
"user"=""
---------------------------------------------------------

ma commande d’installation de l agent
fusioninventory-agent_windows-x64_2.3.17.exe" /acceptlicense /debug=2 /p2p /delaytime=30 /installtasks=Full /runnow /S /httpd-trust=127.0.0.1,192.168.250.21 /server="http://glpi/plugins/fusioninventory/"

---------------------------------------------------------

ma config
FusionInventory 0.85+1.2
Glpi 0.90
Mes Agents 2.3.17

---------------------------------------------------------
Pare feu désactivé sur les agents , agent joignable à partir du reseau via : http://IP:62354/status
---------------------------------------------------------

------------------------------------------------------------------------
paquet de déploiement créé avec 15 jours de rétention.
------------------------------------------------------------------------
Problème et constat
Sur l'agent lors du déploiement, je constate que la taille du répertoire c$\Program Files\FusionInventory-Agent\var\http..__glpi_plugins_fusioninventory_\deploy augmente puis a la fin de la tache celui ci se retrouve sa taille d'origine.
le paquet ne reste donc pas présent sur le poste.
De plus d'après le fichier de log (début 2) il ne semble pas que l'agent scan le réseau. Dans la log je ne vois pas non plus le terme p2p ou même peer.

-------------------------------------------------------------------------

ma log

[Fri Dec 18 08:48:41 2015][debug] WakeOnLan task execution not requested
[Fri Dec 18 08:48:47 2015][debug] forking process -3652 to handle task Deploy
[Fri Dec 18 08:48:47 2015][info] running task Deploy
[Fri Dec 18 08:48:47 2015][debug2] http://glpi/plugins/fusioninventory/?action=getConfig&machineid=MC2A_INF04.mc2a.ad-2015-12-10-10-18-56&task[Deploy]=2.0.4
[Fri Dec 18 08:48:50 2015][debug] Free space on C:\Program Files\FusionInventory-Agent\var\http..__glpi_plugins_fusioninventory_\deploy: 232044
[Fri Dec 18 08:48:50 2015][debug2] http://glpi//plugins/fusioninventory/b/deploy/?action=getJobs&machineid=MC2A_INF04.mc2a.ad-2015-12-10-10-18-56
[Fri Dec 18 08:48:50 2015][debug2] http://glpi//plugins/fusioninventory/b/deploy/?action=setStatus&uuid=5673b4927e196&part=job&machineid=MC2A_INF04.mc2a.ad-2015-12-10-10-18-56&currentStep=checking&msg=starting
[Fri Dec 18 08:48:51 2015][debug2] http://glpi//plugins/fusioninventory/b/deploy/?action=setStatus&uuid=5673b4927e196&part=job&machineid=MC2A_INF04.mc2a.ad-2015-12-10-10-18-56&currentStep=checking&status=ok&msg=all%20checks%20are%20ok
[Fri Dec 18 08:48:51 2015][debug2] http://glpi//plugins/fusioninventory/b/deploy/?action=setStatus&uuid=5673b4927e196&part=job&machineid=MC2A_INF04.mc2a.ad-2015-12-10-10-18-56&currentStep=downloading&msg=downloading%20files
[Fri Dec 18 08:48:51 2015][debug2] http://glpi//plugins/fusioninventory/b/deploy/?action=setStatus&sha512=70dd924b0513b00bf6452de181498ac3fdcc1fdcd029fccbc65e8d9f071217cd0e28f8ced2511f72323d7e1328602d393fa0effdfb9fd610cf670076be0bc37f&uuid=5673b4927e196&part=file&msg=DisabledComponentsIpv6.reg%20already%20downloaded&machineid=MC2A_INF04.mc2a.ad-2015-12-10-10-18-56&currentStep=downloading&status=ok
[Fri Dec 18 08:48:51 2015][debug2] http://glpi//plugins/fusioninventory/b/deploy/?action=setStatus&uuid=5673b4927e196&part=job&machineid=MC2A_INF04.mc2a.ad-2015-12-10-10-18-56&currentStep=downloading&status=ok&msg=success
[Fri Dec 18 08:48:55 2015][debug] reading ab6723fbce6b624255982615f6c8c9c28ceb826250fe767baecac6e0cee57444ffd82a6320efaedad21ef7fe17225261b9d7852b41588ff2226a8b78e3ce1f54
[Fri Dec 18 08:48:55 2015][debug2] http://glpi//plugins/fusioninventory/b/deploy/?action=setStatus&uuid=5673b4927e196&part=job&machineid=MC2A_INF04.mc2a.ad-2015-12-10-10-18-56&currentStep=prepare&status=ok&msg=success
[Fri Dec 18 08:48:56 2015][debug]

[Fri Dec 18 08:48:56 2015][debug] C:\Program Files\FusionInventory-Agent\perl\bin>cd "C:\Program Files\FusionInventory-Agent\var\http..__glpi_plugins_fusioninventory_\deploy\workdir\5673b4927e196"

[Fri Dec 18 08:48:56 2015][debug]

[Fri Dec 18 08:48:56 2015][debug] C:\Program Files\FusionInventory-Agent\var\http..__glpi_plugins_fusioninventory_\deploy\workdir\5673b4927e196>reg import DisabledComponentsIpv6.reg

[Fri Dec 18 08:48:56 2015][debug]

[Fri Dec 18 08:48:56 2015][debug] C:\Program Files\FusionInventory-Agent\var\http..__glpi_plugins_fusioninventory_\deploy\workdir\5673b4927e196>exit 0

[Fri Dec 18 08:48:56 2015][debug] --------------------------------
[Fri Dec 18 08:48:56 2015][debug] exit status: `0'
[Fri Dec 18 08:48:56 2015][debug] ok, no check to evaluate.
[Fri Dec 18 08:48:56 2015][debug] exitStatus: 0


-----------------------
mon fichier p2p.pm

package FusionInventory::Agent::Task:Big Grineploy:Tongue2P;

use strict;
use warnings;

use English qw(-no_match_vars);
use HTTP::Request::Common qw(GET);
use Net::IP;
use POE qw(Component::Client::TCP Component::Client:Tongueing);

use UNIVERSAL::require;

# POE Debug
#sub POE::Kernel::TRACE_REFCNT () { 1 }

my %cache = (
date => 0,
data => undef
);

sub _computeIPToTest {
my ($logger, $addresses, $ipLimit) = @_;

# Max number of IP to pick from a network range
$ipLimit = 255 unless $ipLimit;

my @ipToTest;
foreach my $address (@$addresses) {
my @ip_bytes = split(/\./, $address->{ip});
my @mask_bytes = split(/\./, $address->{mask});
next if $ip_bytes[0] == 127; # Ignore 127.x.x.x addresses
next if $ip_bytes[0] == 169; # Ignore 169.x.x.x range too

# compute range
my @start;
my @end;

foreach my $idx (0..3) {
## no critic (ProhibitBitwise)
push @start, $ip_bytes[$idx] & (255 & $mask_bytes[$idx]);
push @end, $ip_bytes[$idx] | (255 - $mask_bytes[$idx]);
}

my $ipStart = join('.', @start);
my $ipEnd = join('.', @end);

my $ipInterval = Net::IP->new($ipStart.' - '.$ipEnd) || die Net::IP::Error();

next if $ipStart eq $ipEnd;

if ($ipInterval->size() > 5000) {
$logger->debug("Range to large: ".$ipInterval->size()." (max 5000)");
next;
}

my $after = 0;
my @newIPs;
do {
push @newIPs, $ipInterval->ip();
if ($after || $address->{ip} eq $ipInterval->ip()) {
$after++;
} elsif (@newIPs > ($ipLimit / 2)) {
shift @newIPs;
}
} while (++$ipInterval && ($after < ($ipLimit / 2)));


$logger->debug("Scanning from ".$newIPs[0]." to ".$newIPs[@newIPs-1]) if $logger;

push @ipToTest, @newIPs;

}
return @ipToTest;

}

sub fisher_yates_shuffle {
my $deck = shift; # $deck is a reference to an array

return unless @$deck; # must not be empty!

my $i = @$deck;
while (--$i) {
my $j = int rand ($i+1);
@$deck[$i,$j] = @$deck[$j,$i];
}
}

sub findPeer {
my ( $port, $logger ) = @_;

# $logger->debug("cachedate: ".$cache{date});
$logger->info("looking for a peer in the network");
return $cache{data} if $cache{date} + 600 > time;

my @interfaces;


if ($OSNAME eq 'linux') {
FusionInventory::Agent::Tools::Linux->require();
@interfaces = FusionInventory::Agent::Tools::Linux::getInterfacesFromIfconfig();

} elsif ($OSNAME eq 'MSWin32') {
FusionInventory::Agent::Tools::Win32->require();
@interfaces = FusionInventory::Agent::Tools::Win32::getInterfaces();
}


my @addresses;

foreach my $interface (@interfaces) {
#if interface has both ip and netmask setup then push the address
next unless $interface->{IPADDRESS};
next unless $interface->{IPMASK};
next unless lc($interface->{STATUS}) eq 'up';
next if $interface->{IPADDRESS} =~ /^127\./;


push @addresses, {
ip => $interface->{IPADDRESS},
mask => $interface->{IPMASK}
};
}


if (!@addresses) {
$logger->info("No network to scan...");
return;
}

$cache{date}=time;
$cache{data}=scan({logger => $logger, port => $port}, _computeIPToTest($logger, \@addresses));
return $cache{data};
}


sub scan {
my ($params, @ipToTestList) = @_;
my $port = $params->{port};
my $logger = $params->{logger};


fisher_yates_shuffle(\@ipToTestList);

POE::Component::Client:Tongueing->spawn(
Timeout => 5, # defaults to 1 second
);

my $ipCpt = int(@ipToTestList);
my @ipFound;
POE::Session->create(
inline_states => {
_start => sub {
$_[HEAP]->{shutdown_on_error}=1;
$_[KERNEL]->yield( "add", 0 );
},
add => sub {
my $ipToTest = shift @ipToTestList;

return unless $ipToTest;

print ".";

$_[KERNEL]->post(
"pinger", # Post the request to the "pingthing" component.
"ping", # Ask it to "ping" an address.
"pong", # Have it post an answer as a "pong" event.
$ipToTest, # This is the address we want to ping.
);

if (@ipToTestList && @ipFound < 30) {
$_[KERNEL]->delay(add => 0.1)
} else {
$_[KERNEL]->yield("shutdown");
}


},
pong => sub {
my ($response) = $_[ARG1];

my ($addr) = @$response;

if (!$addr) {
$ipCpt--;
$logger->debug("cpt:".$ipCpt);

return;
}
$logger->debug($addr." is up");

POE::Component::Client::TCP->new(
RemoteAddress => $addr,
RemotePort => $port,
ConnectTimeout => 10,
Connected => sub {
push @ipFound, "http://$addr:$port/deploy/getFile/";
},
ServerInput => sub { }
);
},
},
);
# Run everything, and exit when it's all done.
$poe_kernel->run();
$logger->debug("end of POE loop");
return \@ipFound;
}

1;
  Reply
#27
Mise à jour du plugin vers 0.90+1.0 toujours le même problème ( Merci à david concernant le bug de l'affichage des imprimantes dans glpi )

bug dans la version 0.90 maintenant, il n est même plus possible de créer un paquet avec l'option p2p

http://prntscr.com/9gos9w
  Reply
#28
je confirme dans un premier temps le bug d'affichage pour la création de paquet glpi 0.90.1 fusion 0.90+1.0
http://prntscr.com/9gsn0s

je viens de réinstaller sur un windows un xamp tout neuf
j ai déposé glpi, fusion
Aucune info sur la page web de création du paquet qui indique que le p2p est sélectionné pour ce paquet, mais il y a bien le symbole pour le mode compresser
lien vers ma log de mon agent 2.3.17 sur mon installation propre
http://dl.free.fr/iyTRlVsEF

-------------------------------------------------------------------------------

Après de nombreux test et le formidable travail de Orthagh et g-bougard les bugs ont été identifié.

1 er bug, l affichage des cases à coché dans la création paquet dans le plugin fusion glpi = bug corrigé
2 eme bug , le nombre de jour de rétention la valeur n est pas bonne = bug à corrigé = 23/01/2016 bug corrigé
3 eme bug Manque des fichiers dans la compilation de l'agent = bug à corrigé = 23/01/2016 bug corrigé = Bug avec l'agent perl inclus dans l'agent version2.3.18 rc1
4 eme le p2p ne fonctionne pas sur l intégralité du sous réseau, s'arret à 192.168.x.128 = bug en cours de correction au 23/01/2016 le scan commence puis plantage "perl à cesser de fonctionner" ( test sur windows 7 32, windows 7 64, windows 10 64 )
Merci encore et vivement une mise à dispo de tous ses correctifs pour la communauté
  Reply
#29
je donne suite à mon post pour vous informez des avancés
Pour le point 4
un client fusion 2.3.18 est en cours de développement ( version rc4 a ce jour )
l agent scan entièrement le réseau mais perl s'arrêt de fonctionner
cela serai du à un pb de "Multithreading"
je vous tiens informé :-)
  Reply
#30
Bonjour,

Juste pour dire que je m’intéresse en ce moment à FusionInventory pour remplacer OCS (inventaire + déploiement).

Je cherche depuis longtemps un outil de déploiement (gratuit) qui intègre des critères (Audit sur cet outil) et surtout le P2P afin d'éviter de surcharger les liaisons WAN lors des gros déploiements.

Je découvre en lisant ces lignes que pour le moment, ça ne fonctionne pas (l'audit non plus de ce que j'ai vu sur un autre POST) mais je vais donc suivre cela de prêt.

Bonne continuation pour la recherche et la correction des bugs.

Versions actuelles de test :
GLPI 0.90.3
FusionInventory 0.90+1.2
Agent Windows : 2.3.17
  Reply
#31
Le p2p fonctionne depuis plusieurs mois
  Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)