Comprehensive data protection for all workloads
Post Reply
CMN_2
Lurker
Posts: 2
Liked: 2 times
Joined: Sep 10, 2015 7:05 am
Contact:

Failed to start PerlSoap protocol

Post by CMN_2 »

Hello everyone,

After searching for several hours, I'm out of ideas how to fix my issue.
I explain first my case :

I have Veeam BCk&Rep v8 and FreeNAS9.3 stable
I want to create a Linux backup repository on Veeam with FreeNas.
I made all prerequisites steps to allow populate :

- install perl 5.20.6 from FreeBSD
- install sudo from FreeBSD
- create a nfs volume from FreeNAS
- create user veeam with root privileges (http://forums.veeam.com/veeam-backup-re ... 11869.html) from FreeBSD
- install all requires modules and dependencies from this user (http://www.virtualtothecore.com/en/veea ... -centos-7/) from FreeBSD

Then tried populate from veeam but doesn't work.
When I look into logs, I have a PerlSoap error.
So I installed SOAP module then try again but still not work. So I installed p5-SOAP-Lite-1.14.txz and dependencies but still doesn't work.

Here my logs :

Code: Select all

[10.09.2015 09:54:46] <132> Info     [Ssh] Creating new connection [host: 'xxx.xxx.xxx.xxx', port: 22, user: 'veeam', elevation to root: 'yes', autoSudo: no, auth type: 'Password'.].
[10.09.2015 09:54:46] <132> Info     [Ssh] logon, host: 'xxx.xxx.xxx.xxx', port: 22, user: 'veeam', elevation to root: 'yes', autoSudo: no, auth type: 'Password'.
[10.09.2015 09:54:46] <132> Info     [Ssh] Server (xxx.xxx.xxx.xxx) version string: "SSH-2.0-OpenSSH_6.6.1_hpn13v11 FreeBSD-20140420"
[10.09.2015 09:54:46] <132> Info     [Ssh] Ssh connection Used: 1
[10.09.2015 09:54:46] <132> Info     Starting perlSoap protocol to "xxx.xxx.xxx.xxx"
[10.09.2015 09:54:46] <132> Info     Installing perlsoap library to /tmp/vee5f5e029a-b061-4d46-a466-6aa16b865db2
[10.09.2015 09:54:46] <132> Info     [Ssh] Execute failed('Failed to start PerlSoap protocol   Ã  Veeam.Backup.SSH.LibFactory.StartSoapProtocol()
[10.09.2015 09:54:46] <132> Info        Ã  Veeam.Backup.SSH.CSshConnectionImpl.GetSoapProtocol(CSshConnection sshConnection)
[10.09.2015 09:54:46] <132> Info        Ã  Veeam.Backup.SSH.CSshConnection.SoapFunction`1.Do(CSshConnectionImpl impl)
[10.09.2015 09:54:46] <132> Info        Ã  Veeam.Backup.SSH.CSshConnection.Execute(ISshOperation op)
[10.09.2015 09:54:46] <132> Info     Error: Ambiguous output redirect.
[10.09.2015 09:54:46] <132> Info     , answer:    Ã  Veeam.Backup.SSH.LibFactory.Install()
[10.09.2015 09:54:46] <132> Info        Ã  Veeam.Backup.SSH.LibFactory.StartSoapProtocol()'). Reloading...
[10.09.2015 09:54:46] <132> Info     Removing from cache. Reason: Removed
[10.09.2015 09:54:46] <132> Warning  CacheItem [-2070038023:132] was not released 1 times
[10.09.2015 09:54:46] <132> Info     [Ssh] Disconnecting from xxx.xxx.xxx.xxx
[10.09.2015 09:54:46] <132> Info     [Ssh] Creating new connection [host: 'xxx.xxx.xxx.xxx', port: 22, user: 'veeam', elevation to root: 'yes', autoSudo: no, auth type: 'Password'.].
[10.09.2015 09:54:46] <132> Info     [Ssh] logon, host: 'xxx.xxx.xxx.xxx', port: 22, user: 'veeam', elevation to root: 'yes', autoSudo: no, auth type: 'Password'.
[10.09.2015 09:54:47] <132> Info     [Ssh] Server (xxx.xxx.xxx.xxx) version string: "SSH-2.0-OpenSSH_6.6.1_hpn13v11 FreeBSD-20140420"
[10.09.2015 09:54:47] <132> Info     [Ssh] Ssh connection Used: 1
[10.09.2015 09:54:47] <132> Error    Ssh file commander operation has failed. (Veeam.Backup.Common.CRegeneratedTraceException)
[10.09.2015 09:54:47] <132> Error       Ã  Veeam.Backup.Core.CSshFileCommInvoker.DoInvoke(CSshFileCommConnection reconnecter, Delegate dlg, Object[] args)
[10.09.2015 09:54:47] <132> Error       Ã  Veeam.Backup.Core.CSshFileCommander.RunESXCommand(String command, String& text)
[10.09.2015 09:54:47] <132> Error       Ã  Veeam.Backup.Core.CSshFileCommander.GetDrives()
[10.09.2015 09:54:47] <132> Error       Ã  Veeam.Backup.Core.CServerStorage.GetRemoteLinuxDrives(CHost host)
[10.09.2015 09:54:47] <132> Error       Ã  Veeam.Backup.Core.CServerStorage.Request()
[10.09.2015 09:54:47] <132> Error       Ã  Veeam.Backup.Common.CBackgroundFunctionRunner.ThreadProc()
[10.09.2015 09:54:47] <132> Error    Une exception a été levée par la cible d'un appel. (System.Reflection.TargetInvocationException)
[10.09.2015 09:54:47] <132> Error       Ã  System.RuntimeMethodHandle.InvokeMethod(Object target, Object[] arguments, Signature sig, Boolean constructor)
[10.09.2015 09:54:47] <132> Error       Ã  System.Reflection.RuntimeMethodInfo.UnsafeInvokeInternal(Object obj, Object[] parameters, Object[] arguments)
[10.09.2015 09:54:47] <132> Error       Ã  System.Delegate.DynamicInvokeImpl(Object[] args)
[10.09.2015 09:54:47] <132> Error       Ã  Veeam.Backup.Core.CSshFileCommInvoker.DoInvoke(CSshFileCommConnection reconnecter, Delegate dlg, Object[] args)
[10.09.2015 09:54:47] <132> Error    Failed to start PerlSoap protocol (System.Exception)
[10.09.2015 09:54:47] <132> Error       Ã  Veeam.Backup.SSH.CSshConnection.Execute(ISshOperation op)
[10.09.2015 09:54:47] <132> Error       Ã  Veeam.Backup.SSH.CSshConnection.ExecuteSoapCommand[T](Func`2 command)
[10.09.2015 09:54:47] <132> Error       Ã  Veeam.Backup.EsxManager.ESXManager.RunCommand(CSshConnection connection, String command, String& text)
[10.09.2015 09:54:47] <132> Error    Error: Ambiguous output redirect.
[10.09.2015 09:54:47] <132> Error    , answer:  (Veeam.Backup.SSH.PerlSoapException)
[10.09.2015 09:54:47] <132> Error       Ã  Veeam.Backup.SSH.LibFactory.Install()
[10.09.2015 09:54:47] <132> Error       Ã  Veeam.Backup.SSH.LibFactory.StartSoapProtocol()
[10.09.2015 09:54:47] <01> Error    [Veeam Backup and Replication] An error has occurred. See logs for details.
[10.09.2015 09:54:48] <01> Error    Ssh file commander operation has failed.   Ã  Veeam.Backup.Common.CBackgroundFunctionRunner.Run(Function function, Form splashForm, Int32 minShowTime)
[10.09.2015 09:54:48] <01> Error       Ã  Veeam.Backup.Common.CBackgroundFunctionRunner.Run(Function function, String message)
[10.09.2015 09:54:48] <01> Error       Ã  Veeam.Backup.UI.Repository.ServerStorageCtrl.Populate(CHost host)
[10.09.2015 09:54:48] <01> Error    Failed to start PerlSoap protocol   Ã  Veeam.Backup.SSH.CSshConnection.Execute(ISshOperation op)
[10.09.2015 09:54:48] <01> Error       Ã  Veeam.Backup.SSH.CSshConnection.ExecuteSoapCommand[T](Func`2 command)
[10.09.2015 09:54:48] <01> Error       Ã  Veeam.Backup.EsxManager.ESXManager.RunCommand(CSshConnection connection, String command, String& text)
[10.09.2015 09:54:48] <01> Error    Error: Ambiguous output redirect.
[10.09.2015 09:54:48] <01> Error    , answer:    Ã  Veeam.Backup.SSH.LibFactory.Install()
[10.09.2015 09:54:48] <01> Error       Ã  Veeam.Backup.SSH.LibFactory.StartSoapProtocol()
I saw an existing package SOAP-Lite-0.60. Do I have to install this one on FreeNAS for perl sap protocol to start ?
I don't know where the problem come from, at veeam server side or freenas side.
Hope I gave enough details.
Your help will be really helpfull.
Thanks in advance.
CMN_2
Lurker
Posts: 2
Liked: 2 times
Joined: Sep 10, 2015 7:05 am
Contact:

Re: Failed to start PerlSoap protocol

Post by CMN_2 » 2 people like this post

After some inverstigations, I missed one important things in requirements for Veeam.
It needs to have for Linux must support 32 bits for having backup repository. Unfortunately, FreeNAS version is at 9.3 and this one is only 64 bits. Means this version is not compatible for Veeam B&R.
If you want so, take FreeNAS 9.2.1.9 it will better work.

Hope this could help.
Martin Damgaard
Influencer
Posts: 19
Liked: 8 times
Joined: Aug 31, 2015 6:31 am
Full Name: Martin Damgaard
Contact:

[MERGED] FreeBSD / FreeNAS agent support

Post by Martin Damgaard » 1 person likes this post

Please, please, for the love of all things, please consider making af port og your VeeamAgent that can be run on FreeBSD / FreeNAS / Illumos systems!
This is easily the simplest, cheapest, damn hard resillient setup, to bring online for a Veeam backup repository!

The only thing holding i back, is no Veeam backup agent. So all backup and transforms happens over slow(er) SMB/NFS connections instead of running locally on the filer.

This is such a shame, as this is probably the most cost efficient scale-out model that exist today. It is SO easy to get startet in a small microserver setup and migrate slowly to some monster setup with 10/40GE and multiple diskshelves later on.

Please again consider porting this!
I know running your agent (with modifications) is possible on limited NAS devices like Synology and QNAP, even with only a Busybox envireoment, so this should also be doably on the BSD platforms...
This could probably be only a small task for your RD appartment, as most of the libs and binaries are allready available - perhaps only a small recompile would be needed.

I urge your, to consider this - it would make a small number of Veeam customers very happy - and give existing, and new, a very interesting new repository platform!


Best regards
Martin Damgaard
prolix21
Influencer
Posts: 10
Liked: 1 time
Joined: Mar 15, 2010 3:06 pm
Full Name: dan
Contact:

Re: FreeBSD / FreeNAS agent support

Post by prolix21 »

This would indeed be nice. We use FreeNAS for all our back-end repository storage. Currently its all mounted via iSCSI to a Windows VM. Would be cool to cut out the middle man if possible.
foggy
Veeam Software
Posts: 21139
Liked: 2141 times
Joined: Jul 11, 2011 10:22 am
Full Name: Alexander Fogelson
Contact:

Re: Failed to start PerlSoap protocol

Post by foggy »

Guys, thanks for the feedback. You can try to make FreeNAS an agent-enabled repository even now, please see above for details.
Martin Damgaard
Influencer
Posts: 19
Liked: 8 times
Joined: Aug 31, 2015 6:31 am
Full Name: Martin Damgaard
Contact:

[MERGED] FreeBSD / FreeNAS agent support for repository targ

Post by Martin Damgaard »

Please consider making af port og your VeeamAgent that can be run on FreeBSD / FreeNAS / Illumos systems!
This is easily the simplest, cheapest, damn hard resillient setup, to bring online for a Veeam backup repository!

The only thing holding i back, is no Veeam backup agent. So all backup and transforms happens over slow(er) SMB/NFS connections instead of running locally on the filer.

This is such a shame, as this is probably the most cost efficient scale-out model that exist today. It is SO easy to get startet in a small microserver setup and migrate slowly to some monster setup with 10/40GE and multiple diskshelves later on.

Please again consider porting this!
I know running your agent (with modifications) is possible on limited NAS devices like Synology and QNAP, even with only a Busybox envireoment, so this should also be doably on the BSD platforms...
This could probably be only a small task for your RD appartment, as most of the libs and binaries are allready available - perhaps only a small recompile would be needed.

I urge your, to consider this - it would make a small number of Veeam customers very happy - and give existing, and new, a very interesting new repository platform!


Best regards
Martin Damgaard
Gostev
Chief Product Officer
Posts: 31806
Liked: 7300 times
Joined: Jan 01, 2006 1:01 am
Location: Baar, Switzerland
Contact:

Re: FreeBSD / FreeNAS agent support for repository target

Post by Gostev »

Hi, Martin.

Currently we have no plans for this features due to lack of requests in the past 10 years, but your voice is counted.
That said, this is no small task for R&D as adding another platform increases the amount of test cases dramatically.

Thanks!
busitech
Novice
Posts: 6
Liked: never
Joined: Jan 26, 2016 3:40 am

Re: Failed to start PerlSoap protocol

Post by busitech »

I too would like to see FreeNAS supported.
bayoda
Lurker
Posts: 1
Liked: never
Joined: Dec 03, 2016 9:55 am
Full Name: Mike Tomaselli
Contact:

Re: Failed to start PerlSoap protocol

Post by bayoda »

Me too need a 64Bit compilation of the veeam agent :-)

We too have smartos box running for backup and CIFS mount is nice but an NFS mount would be far better...

So if freenas is supported - i think you can support :

Nexenta
Smartos
illumnos based distros

That would be a real great thing...

Thanks a lot for considering!
Gostev
Chief Product Officer
Posts: 31806
Liked: 7300 times
Joined: Jan 01, 2006 1:01 am
Location: Baar, Switzerland
Contact:

Re: Failed to start PerlSoap protocol

Post by Gostev »

bayoda wrote:Me too need a 64Bit compilation of the veeam agent :-)
Just to be clear, Veeam has 64-bit Linux agent since summer 2015.
dgrandja
Lurker
Posts: 1
Liked: never
Joined: Dec 16, 2013 7:26 pm
Contact:

Re: Failed to start PerlSoap protocol

Post by dgrandja »

I would also like to add a voice to requesting FreeNAS support / BSD support for Veeam....

SMB works for some things
Linux jails in FreeNAS create more unnecessary overhead


How many people do you actually need before you will consider this ?
waltgra
Lurker
Posts: 1
Liked: never
Joined: Feb 07, 2017 5:51 pm
Full Name: Walter Grau
Contact:

Re: Failed to start PerlSoap protocol

Post by waltgra »

Please count me too as a voice. 32 BIT systems are no longer state of the art. For example If you plan to use zfs you are lost.
For me a linux ssh repository is a save place aginst ramsomeware. I don´t need encrypted backups if a real desaster is happening.
So a linux repository is importend and i dont understand why i have to deside between 64 or 32 bit.

Best regards
Walter
vmhosts_ge
Service Provider
Posts: 6
Liked: 4 times
Joined: Jul 04, 2016 9:30 am
Full Name: Gary Eastwood
Contact:

Re: Failed to start PerlSoap protocol

Post by vmhosts_ge » 4 people like this post

Just to add to everyone looking at this - I had a 64 bit CentOS 7 install running as a backup repository.

I just had to make sure I installed perl-Data-Dumper using command

Code: Select all

yum install -y perl-Data-Dumper
This is because one of the Perl modules is now missing in CentOS 7 default installation.

After this I ran through the wizard with no problem
datagen24
Service Provider
Posts: 13
Liked: 4 times
Joined: May 22, 2017 5:23 pm
Full Name: Steven Peterson
Contact:

Re: Failed to start PerlSoap protocol

Post by datagen24 »

To put my hat in the ring

I agree support for FreeBSD Illumos is a valid request for a datastore
We use ZFS extensively for backends for VMware, File storage (SMB/NFS/AFP) we run ZFS on Mac and Linux

It is used by Netgear on their Pro Nas Boxes. Support for ZFS on FreeBSD or Illumos (The reference implementation is the latter)
DRUMDUDESAN
Enthusiast
Posts: 26
Liked: 2 times
Joined: May 07, 2016 2:42 pm
Full Name: Jeff
Contact:

Re: Failed to start PerlSoap protocol

Post by DRUMDUDESAN »

Hi,
Me too. I just got burned when I upgraded.
Thanks
Jeff
jens-slfonden
Lurker
Posts: 1
Liked: never
Joined: May 01, 2013 8:46 am
Full Name: Jens Andersson
Contact:

Re: Failed to start PerlSoap protocol

Post by jens-slfonden »

Anyone know if it is possible now to get reunning on Freenas11?
jgould
Novice
Posts: 5
Liked: 6 times
Joined: Jul 29, 2017 5:11 am
Contact:

Re: Failed to start PerlSoap protocol

Post by jgould » 1 person likes this post

You would think it would work, considering all the listed requirements are met within FreeNAS.
But to date I've been unable to make it work direction on FreeNAS or even in a FreeNAS jail.
A bhyve VM seems to be the next alternative. Not sure how that would perform compared to iSCSI.


Seems like Veeam doesn't quite know what the "requirements" are. The use of Perl has caused quite a bit of problems even on Linux boxes that "meet the requirements". I remember learning Perl years ago and universally everyone hated it. Even today I look at Perl and wonder why anyone would use it. And every time I do see it used it ends up causing problems.
jgould
Novice
Posts: 5
Liked: 6 times
Joined: Jul 29, 2017 5:11 am
Contact:

Re: Failed to start PerlSoap protocol

Post by jgould » 1 person likes this post

I managed to get it working on native FreeNAS 11 after 2 days of trying!
No jail/VM/iscsi/NFS/CIFS...just pure FreeNAS.

The part I was missing, and I didn't find mentioned in requirements, is that the user account that will run the perl scripts needs to be set to BASH shell.
You can do that in the freenas GUI under users. I change it for both veeam and root user accounts.

The rest of the steps I used this thread HERE. Lots of the buttons didn't function for me. Populate buttons returns "unable to retrieve drive info". Populate returns <unknown> for my capacity and free space. But the Browse button worked so I could select my folder which is all I really needed.

The biggest issue now is that there is no persistent way I know to edit the /usr/local/etc/sudoers file in FreeNAS. Default it doesn't have the #includedir that would include files in /sudoers.d. If you add directly to the sudoers file it will just be overwritten when you edit users/groups and probably on upgrades. You aren't supposed to edit this on FreeNAS and I can't find another method of allowing passwordless sudo. You could enable root password login which is an option in the freenas GUI. Or perhaps you could use private/public keys (going to try that next).
jgould
Novice
Posts: 5
Liked: 6 times
Joined: Jul 29, 2017 5:11 am
Contact:

Re: Failed to start PerlSoap protocol

Post by jgould » 2 people like this post

Well, turns out even though I've made progress it still doesn't work. While I could add freenas 11 as a backup repository, it didn't actually run the backup jobs. They just failed.

I realized that the VeeamAgent linux binary was being written to /tmp/ but wasn't able to run. I tried to run it from the cmd but it failed. I then realized that freenas doesn't load the linux binary compatibility (linux64.ko). So I ran the following to enable and verify;

Code: Select all

kldload linux64
kldstat
The job then began to run and even wrote out ~3GB of a 6GB backup (have to say, it did this REALLY FAST). But for whatever reason it just "failed". I was watching the processes in htop and I could see the VeeamAgent running using the RAM/CPU and then disappear. I'll keep testing but I suspect it hit something it wasn't compatible with in the binary.
jgould
Novice
Posts: 5
Liked: 6 times
Joined: Jul 29, 2017 5:11 am
Contact:

Re: Failed to start PerlSoap protocol

Post by jgould » 2 people like this post

I know have FreeNAS 11 working as a linux backup repository. Backup jobs are working!
All settings are possible directly from the GUI so no issues messing with FreeNAS config files in the CLI that don't persist reboots.

To enable the Linux Binary Compatibility so the the VeeamAgent binary can run from the /tmp/ directory we will create a tunable. This replaces manually loading he kernel modules using kldload linux64.

Code: Select all

System->Tunables -> Add Tunable(s)
variable: linux_enable
value: YES
Type: rc.conf
Veeam requires an extra KexAlgorithm that has been removed from OpenSSH (used on FreeNAS/FreeBSD). I do NOT recommend you try to fully replace the KexAlgorithm string as if you forget any that FreeNAS requires you will mess up other SSH functionality (replication over SSH, trying to SSH with a previous private key, rsync over ssh, etc). Note that I use a "+" to denote I am APPENDING to the list.

Code: Select all

Services -> SSH -> Extra Options
KexAlgorithms +diffie-hellman-group1-sha1
I also added "ClientAliveInterval 30" and "TCPKeepAlive yes" but I haven't tested if they are necessary or not.

I then ran

Code: Select all

ssh-keygen -A
to regenerate existing keys. I'm actually not sure this was necessary. Reboot server or restart sshd (service sshd restart).

Now you need an account for veeam to run the VeeamAgent binary and perl scripts under.
That user will need to have their shell set to bash or the scripts will fail to run.
The whole creating a veeam user that has passwordless sudo wasn't feasible for FreeNAS as you can't alter the sudoers file without it being overwritten. So we either use the root user account or another service account (call it veeam) with enough permission to run the binary executables and set file/folder permissions (chmod). The login can be either password based login or public/private key login. I just used the root user with public/private keys.

I used PuTTYgen to generate the keys, but you can just do it on any Mac/Linux CLI. Plenty of tutorials on that.

Code: Select all

Account -> Users -> root
Primary group: wheel
Shell: bash
SSH Public Key: [Past your public key]
If you use a veeam service account, you could probably set the primary group to something more restrictive then wheel. That would probably be the most secure, but I didn't bother. Of course you could always just use passwords, but I wasn't willing to use password for an account with full permissions.

And that is it.
matt1237
Lurker
Posts: 1
Liked: never
Joined: Aug 10, 2010 10:08 pm
Full Name: Charles Coleman
Contact:

Re: Failed to start PerlSoap protocol

Post by matt1237 »

Add my name to the FreeBSD list too. Running FreeNAS... a very common installation.
gennari
Lurker
Posts: 1
Liked: never
Joined: Mar 14, 2018 9:48 am
Full Name: Antonio Perrone
Contact:

Re: Failed to start PerlSoap protocol

Post by gennari »

Hi,
I have PerlSoap issue in my Debian 9.4 64bit server. Can you help me to resolve my problem?

Thanks in advance.

gen
Bowman4864
Lurker
Posts: 1
Liked: never
Joined: Dec 28, 2017 3:06 pm
Full Name: Chris Bowman
Contact:

Re: Failed to start PerlSoap protocol

Post by Bowman4864 »

vmhosts_ge wrote:Just to add to everyone looking at this - I had a 64 bit CentOS 7 install running as a backup repository.

I just had to make sure I installed perl-Data-Dumper using command

Code: Select all

yum install -y perl-Data-Dumper
This is because one of the Perl modules is now missing in CentOS 7 default installation.

After this I ran through the wizard with no problem

This did the trick for me, thanks for posting!!
dmds17
Lurker
Posts: 1
Liked: never
Joined: May 29, 2019 1:29 pm
Full Name: DMDS
Contact:

Re: Failed to start PerlSoap protocol

Post by dmds17 »

Thanks!! My problem were resolved!!
bonzovt
Enthusiast
Posts: 42
Liked: 1 time
Joined: Sep 09, 2016 6:15 pm
Full Name: Adam Fisher
Contact:

Re: Failed to start PerlSoap protocol

Post by bonzovt »

Just ran into this as well with Ubuntu x64 server. Fixed the issue right up, thanks!
allegiancetech
Lurker
Posts: 1
Liked: never
Joined: May 22, 2020 6:15 pm
Contact:

Re: Failed to start PerlSoap protocol

Post by allegiancetech »

Worked for me too, thank you!

Only issue is that it doesn't seem to know the capacity nor free space of the FreeNAS share. Any ideas on this?
Post Reply

Who is online

Users browsing this forum: Majestic-12 [Bot] and 266 guests