[gelöst] Fehler nach dem Upgrade von OTRS 5 auf 6

Hilfe zu OTRS Problemen aller Art
Post Reply
kaiserchrss
Znuny newbie
Posts: 11
Joined: 23 Mar 2018, 10:45
Znuny Version: 6.0.6

[gelöst] Fehler nach dem Upgrade von OTRS 5 auf 6

Post by kaiserchrss »

Hallo,

Ich habe den Upgrade-Prozess von OTRS 5 (lief auf CentOS Server) auf OTRS 6.06 (auf einem Debian 9 Server) quasi abgeschlossen.

Während des Updates sind ein paar kleine Probleme aufgetreten. z. B. mussten viele der DB-Tabellen auf eine andere Storage-Engine umgestellt werden (InnoDB)

Während das Migrationsskript gelaufen ist, wurde mir in der Konsole eine Fehlermeldung angezeigt.
Trotzdem lief das Migrationsscript vollständig durch.

Nur leider bekomme ich inzwischen, seitdem der OTRS-Server im Livebetrieb ist, ständig vom Daemon eine Mail, die genau den gleichen Fehler zeigt, wie das Update-Skript.

Die Mails kommen bei mir einmal pro MINUTE an.
Falls sich das also irgendwie beheben lassen sollte, wäre ich sehr dankbar für Unterstützung.

Der Fehler ist der fogende:

Code: Select all

OTRS Scheduler Daemon SystemConfigurationSyncManager: ConfigurationDeploySync

Kernel::Config::Files::Config has no Load() method. at /opt/otrs/Kernel/Config/Defaults.pm line 1967.
Meine Defaults.pm zeigt in Zeile 1967 folgenden Code

Image+



Vielen Dank schon mal! :)
Last edited by kaiserchrss on 03 Apr 2018, 08:35, edited 1 time in total.
reneeb
Znuny guru
Posts: 5018
Joined: 13 Mar 2011, 09:54
Znuny Version: 6.0.x
Real Name: Renée Bäcker
Company: Perl-Services.de
Contact:

Re: Fehler nach dem Upgrade von OTRS 5 auf 6

Post by reneeb »

Dann zeig doch mal Deine Kernel/Config/Files/Config.pm . Die braucht eine "sub Load { ... }"
Perl / Znuny development: http://perl-services.de
Free Znuny add ons from the community: http://opar.perl-services.de
Commercial add ons: http://feature-addons.de
kaiserchrss
Znuny newbie
Posts: 11
Joined: 23 Mar 2018, 10:45
Znuny Version: 6.0.6

Re: Fehler nach dem Upgrade von OTRS 5 auf 6

Post by kaiserchrss »

reneeb wrote:Dann zeig doch mal Deine Kernel/Config/Files/Config.pm . Die braucht eine "sub Load { ... }"

Alles klar. Hier ist sie:

Code: Select all

# --
# Copyright (C) 2001-2015 xxx, http://otrs.com/
# --
# This software comes with ABSOLUTELY NO WARRANTY. For details, see
# the enclosed file COPYING for license information (AGPL). If you
# did not receive this file, see http://www.gnu.org/licenses/agpl.txt.
# --
#  Note:
#
#  -->> Most OTRS configuration should be done via the OTRS web interface
#       and the SysConfig. Only for some configuration, such as database
#       credentials and customer data source changes, you should edit this
#       file. For changes do customer data sources you can copy the definitions
#       from Kernel/Config/Defaults.pm and paste them in this file.
#       Config.pm will not be overwritten when updating OTRS.
# --

package Kernel::Config;

use strict;
use warnings;
use utf8;

sub Load {
    my $Self = shift;

    # ---------------------------------------------------- #
    # database settings                                    #
    # ---------------------------------------------------- #

    # The database host
    $Self->{'DatabaseHost'} = '127.0.0.1';

    # The database name
    $Self->{'Database'} = "otrs";

    # The database user
    $Self->{'DatabaseUser'} = "otrs";

    # The password of database user. You also can use bin/otrs.Console.pl Maint::Database::PasswordCrypt
    # for crypted passwords
    $Self->{'DatabasePw'} = '[gelöscht]';

    # The database DSN for MySQL ==> more: "perldoc DBD::mysql"
    $Self->{'DatabaseDSN'} = "DBI:mysql:database=$Self->{Database};host=$Self->{DatabaseHost}";

    # The database DSN for PostgreSQL ==> more: "perldoc DBD::Pg"
    # if you want to use a local socket connection
#    $Self->{DatabaseDSN} = "DBI:Pg:dbname=$Self->{Database};";
    # if you want to use a TCP/IP connection
#    $Self->{DatabaseDSN} = "DBI:Pg:dbname=$Self->{Database};host=$Self->{DatabaseHost};";

    # The database DSN for Microsoft SQL Server - only supported if OTRS is
    # installed on Windows as well
#    $Self->{DatabaseDSN} = "DBI:ODBC:driver={SQL Server};Database=$Self->{Database};Server=$Self->{DatabaseHost},1433";

    # The database DSN for Oracle ==> more: "perldoc DBD::oracle"
#    $Self->{DatabaseDSN} = "DBI:Oracle://$Self->{DatabaseHost}:1521/$Self->{Database}";
#
#    $ENV{ORACLE_HOME}     = '/path/to/your/oracle';
#    $ENV{NLS_DATE_FORMAT} = 'YYYY-MM-DD HH24:MI:SS';
#    $ENV{NLS_LANG}        = 'AMERICAN_AMERICA.AL32UTF8';

    # ---------------------------------------------------- #
    # fs root directory
    # ---------------------------------------------------- #
    $Self->{Home} = '/opt/otrs';

    # ---------------------------------------------------- #
    # insert your own config settings "here"               #
    # config settings taken from Kernel/Config/Defaults.pm #
    # ---------------------------------------------------- #
    # $Self->{SessionUseCookie} = 0;
    # $Self->{CheckMXRecord} = 0;

    # ---------------------------------------------------- #

    # ---------------------------------------------------- #
    # data inserted by installer                           #
    # ---------------------------------------------------- #
    # $DIBI$

####################################################################################
############################ LBO settings /bafr ####################################
####################################################################################

###### LBO LDAP customer settings

# CustomerUser
# (customer ldap backend and settings)
$Self->{CustomerUser1} = {
	Name => 'LDAP LBO',
	Module => 'Kernel::System::CustomerUser::LDAP',
	Params => {
		# ldap host
		Host => '[gelöscht].de',
		# ldap base dn
		BaseDN => 'OU=Benutzer,DC=int,DC=[gelöscht],DC=de',
		# search scope (one|sub)
		SSCOPE => 'sub',
		# The following is valid but would only be necessary if the
		# anonymous user does NOT have permission to read from the LDAP tree
		UserDN => 'CN=ticket,OU=ed,OU=Benutzer,DC=int,DC=[gelöscht],DC=de',
		UserPw => '[gelöscht]',
			# if the charset of your ldap server is iso-8859-1, use this:
			SourceCharset => 'utf-8',
			DestCharset => 'iso-8859-1',
			# Net::LDAP new params (if needed - for more info see perldoc Net::LDAP)
			Params => {
			port => 389,
			timeout => 120,
			async => 0,
			version => 3,
		},
	},

	# customer unique id
	CustomerKey => 'sAMAccountName',
	# customer #
	CustomerID => 'department',
	CustomerUserListFields => ['displayname', 'department', 'mail'],
	CustomerUserSearchFields => ['sAMAccountName', 'displayName', 'mail', 'department'],
	CustomerUserSearchPrefix => '*',
	CustomerUserSearchSuffix => '*',
	CustomerUserSearchListLimit => 250,
	CustomerUserPostMasterSearchFields => ['mail'],
	CustomerUserNameFields => ['givenname', 'sn'],
	# show not own tickets in customer panel, CompanyTickets
	CustomerUserExcludePrimaryCustomerID => 0,
	# add an ldap filter for valid users (expert setting)
	# CustomerUserValidFilter => '(!(description=locked))',
	# administrator can't change customer preferences
	AdminSetPreferences => 0,
	# cache time to live in sec. - cache any database queries
	# CacheTTL => 0,
	Map => [
	# note: Login, Email and CustomerID are mandatory!
	# var, frontend, storage, shown (1=always,2=lite), required, storage-type, http-link, readonly
	[ 'UserSalutation', 'Title',      'displayName',     1, 0, 'var', '', 0 ],
	[ 'UserFirstname',  'Firstname',  'givenname',       1, 1, 'var', '', 0 ],
	[ 'UserLastname',   'Lastname',   'sn',              1, 1, 'var', '', 0 ],
	[ 'UserLogin',      'Login',   'sAMAccountName',     1, 1, 'var', '', 0 ],
	[ 'UserEmail',      'Email',      'mail',            1, 1, 'var', '', 0 ],
	[ 'UserCustomerID', 'CustomerID', 'department',      0, 1, 'var', '', 0 ],
#	[ 'UserCustomerIDs', 'CustomerIDs', 'second_customer_ids', 1, 0, 'var', '', 0 ],
	[ 'UserPhone',      'Phone',      'telephonenumber', 1, 0, 'var', '', 0 ],
	[ 'UserAddress',    'Address',    'postaladdress',   1, 0, 'var', '', 0 ],
	[ 'UserComment',    'Comment',    'description',     1, 0, 'var', '', 0 ],
	],
};

#### LDAP Authentication

$Self->{'AuthModule'} = 'Kernel::System::Auth::LDAP';
$Self->{'AuthModule::LDAP::Host'} = '[gelöscht].de';
$Self->{'AuthModule::LDAP::BaseDN'} = 'OU=Benutzer,DC=int,DC=[gelöscht],DC=de';
$Self->{'AuthModule::LDAP::UID'} = 'sAMAccountName';
$Self->{'AuthModule::LDAP::SearchUserDN'} = 'CN=ticket,OU=ed,OU=Benutzer,DC=int,DC=[gelöscht],DC=de';
$Self->{'AuthModule::LDAP::SearchUserPw'} = '[gelöscht]';

# Net::LDAP new params (if needed - for more info see perldoc Net::LDAP)
$Self->{'AuthModule::LDAP::Params'} = {
	port => 389,
	timeout => 120,
	async => 0,
	version => 3,
};

# defines AuthSyncBackend (AuthSyncModule) for AuthModule
# if this key exists and is empty, there won't be a sync.
# example values: AuthSyncBackend, AuthSyncBackend2
#$Self->{'AuthModule::UseSyncBackend'} = 'AuthSyncBackend';

# agent data sync against ldap
#$Self->{'AuthSyncModule'} = 'Kernel::System::Auth::Sync::LDAP';
#$Self->{'AuthSyncModule::LDAP::Host'} = 'ldap://[gelöscht].de/';
#$Self->{'AuthSyncModule::LDAP::BaseDN'} = 'OU=Benutzer,DC=int,DC=[gelöscht],DC=de';
#$Self->{'AuthSyncModule::LDAP::UID'} = 'sAMAccountName';
#$Self->{'AuthSyncModule::LDAP::SearchUserDN'} = 'CN=ticket,OU=ed,OU=Benutzer,DC=int,DC=[gelöscht],DC=de';
#$Self->{'AuthSyncModule::LDAP::SearchUserPw'} = '[gelöscht]';
#$Self->{'AuthSyncModule::LDAP::UserSyncMap'} = {
	# DB -> LDAP
#	UserFirstname => 'givenName',
#	UserLastname  => 'sn',
#	UserEmail     => 'mail',
#};

# AuthSyncModule::LDAP::UserSyncInitialGroups
# (sync following group with rw permission after initial create of first agent login)

#$Self->{'AuthSyncModule::LDAP::UserSyncInitialGroups'} = [
#	'Benutzer',
#];

##### Customer LDAP authentication
$Self->{'Customer::AuthModule'} = 'Kernel::System::CustomerAuth::LDAP';
$Self->{'Customer::AuthModule::LDAP::Host'} = '[gelöscht].de';
$Self->{'Customer::AuthModule::LDAP::BaseDN'} = 'OU=Benutzer,DC=int,DC=[gelöscht],DC=de';
$Self->{'Customer::AuthModule::LDAP::UID'} = 'sAMAccountName';
$Self->{'Customer::AuthModule::LDAP::SearchUserDN'} = 'CN=ticket,OU=ed,OU=Benutzer,DC=int,DC=[gelöscht],DC=de';		
$Self->{'Customer::AuthModule::LDAP::SearchUserPw'} = '[gelöscht]';

# Net::LDAP new params (if needed - for more info see perldoc Net::LDAP)
$Self->{'Customer::AuthModule::LDAP::Params'} = {
	port => 389,
	timeout => 120,
	async => 0,
	version => 3,
};

###################################################################################
####################### ENDE LBO settings /bafr ###################################
###################################################################################


    # ---------------------------------------------------- #
    # ---------------------------------------------------- #
    #                                                      #
    # end of your own config options!!!                    #
    #                                                      #
    # ---------------------------------------------------- #
    # ---------------------------------------------------- #
};

# ---------------------------------------------------- #
# needed system stuff (don't edit this)                #
# ---------------------------------------------------- #

use base qw(Kernel::Config::Defaults);

# ----------------------------------------------------- #

1;

Die pikanten Stellen habe ich mal geschwärzt und durch ein [gelöscht] markiert.
reneeb
Znuny guru
Posts: 5018
Joined: 13 Mar 2011, 09:54
Znuny Version: 6.0.x
Real Name: Renée Bäcker
Company: Perl-Services.de
Contact:

Re: Fehler nach dem Upgrade von OTRS 5 auf 6

Post by reneeb »

Die Datei sollte als Kernel/Config.pm gespeichert werden, *nicht* als Kernel/Config/Files/Config.pm
Perl / Znuny development: http://perl-services.de
Free Znuny add ons from the community: http://opar.perl-services.de
Commercial add ons: http://feature-addons.de
kaiserchrss
Znuny newbie
Posts: 11
Joined: 23 Mar 2018, 10:45
Znuny Version: 6.0.6

Re: Fehler nach dem Upgrade von OTRS 5 auf 6

Post by kaiserchrss »

Na das würde dann ja einiges erklären.

Ich habe gerade meine alte OTRS 5 installation kurzzeitig hochgefahren - dort existiert gar keine Config.pm-Datei in /opt/otrs/Kernel/Config/Files/.
Dann muss ich die wohl beim Kopieren auf den aktuellen Server die Config.pm in beide Ordner (/opt/otrs/Kernel & /opt/otrs/Kernel/Config/Files) eingefügt haben.

Wäre es demnach ausreichend, wenn ich einfach die Config.pm aus dem Ordner /opt/otrs/Kernel/Config/Files rauslöschen würde oder muss die Datei bei OTRS 6.0.6 existent sein? Wenn ja, gibt es eine Beispieldatei, die ich entsprechend anpassen kann?
reneeb
Znuny guru
Posts: 5018
Joined: 13 Mar 2011, 09:54
Znuny Version: 6.0.x
Real Name: Renée Bäcker
Company: Perl-Services.de
Contact:

Re: Fehler nach dem Upgrade von OTRS 5 auf 6

Post by reneeb »

Wenn die Datei als Kernel/Config.pm existiert, kannst Du die Kernel/Config/Files/Config.pm einfach löschen...
Perl / Znuny development: http://perl-services.de
Free Znuny add ons from the community: http://opar.perl-services.de
Commercial add ons: http://feature-addons.de
kaiserchrss
Znuny newbie
Posts: 11
Joined: 23 Mar 2018, 10:45
Znuny Version: 6.0.6

Re: Fehler nach dem Upgrade von OTRS 5 auf 6

Post by kaiserchrss »

Super!

Ich werde die Datei mal außerhalb der Tagesgeschäftszeiten löschen, da wohl dann auch ein Server-Restart nötig sein wird und melde mich dann, ob alles funktioniert hat :)


Vielen Dank so weit.
kaiserchrss
Znuny newbie
Posts: 11
Joined: 23 Mar 2018, 10:45
Znuny Version: 6.0.6

Re: Fehler nach dem Upgrade von OTRS 5 auf 6

Post by kaiserchrss »

So.

habe soeben die Config.pm aus dem Ordner /Kernel/Config/Files gelöscht.
Neustart war nicht mal erforderlich. Habe nur kurz den Daemon gestoppt und wieder gestartet.

Und siehe da. Jetzt ist alles bestens.

Vielen Dank nochmal für deine Hilfe reneeb!

Fall erledigt :D
Post Reply