Impossible d'acceder au magasin de données

Ferme CITRIX Metaframe XPa composée de 5 serveurs W2k.



Depuis quelques semaines j’ai un soucis récurent qui perturbe de plus en plus l’utilisation de CITRIX.



A l’ouverture de la console sur certains serveurs:

"Le magasin de données n’est pas disponible. Il se peut que certaines fonctionnalités ne soient pas disponibles. Code d’erreur : 1612"

Dans le journal des évènements:

“96 heures ont passé depuis la dernière connexion réussie au magasin de données. Ce serveur n’acceptera plus les connexions jusqu’à ce qu’une connexion au magasin de données puisse être établie.” (IMAService, ID 3619)



Sur les clients ICA:

“Vous ne disposez pas des droits d’accès pour vous connecter à cette sessions”

"Le système n’a pas pus acquérir de licence de produit Citrix. Le service IMA n’est peut-être pas en cours d’exécution."



En redémarrant le service IMA rien ne change.

En rebootant le serveur CITRIX parfois les connexions sont de nouveau possible mais pas à chaque fois…



Ça fait un moment que je cherche mais ne trouve pas la solution.

Est ce quelqu’un a une piste à me proposer ?

Le magasin de données, c’est bien la base SQL en accès directe ou la base access en mode indirect ? Comment tester cet accès ?



Merci.

l’info pour savoir si tes serveurs sont en mode direct de connexion au DataStore ou en mode indirect (c’est à dire que les 4 autres serveurs passeront au travers du dernier serveur pour accéder au DataStore) est dans HKEY_LOCAL_MACHINESOFTWARECitrixIMA



la clef DatabaseDriver indique imasql.dll par exemple pour un DataStore SQL et imaodbc.dll pour un mode indirect

la clef PsServer indique le nom du serveur vers lequel ton service IMA va se connecter en mode indirect

J’ai 1 serveur de base SQL et 5 serveurs dans la ferme CITRIX.

Sur les 5 j’en ai 3 en mode direct et 2 en mode indirect…

Sur les 3 en mode direct j’en ai 2 qui fonctionne correctement et le 3ème, qui bien sûr sert de passerelle pour les 2 en mode indirect, n’accède plus ou rarement à la base.



Comment puis-je tester la liaison entre mon 1er serveur “mode direct” avec la base SQL distante ?

DSVERIFY ? Je ne trouve pas à télécharger cet outils.



En comparant le HKEY_LOCAL_MACHINESOFTWARECitrixIMA des 3 serveurs en mode direct celui qui ne fonctionne pas a 2 clés qui diffère :

“DataStoreFailure Time” (normal du coup…) et “NewFarm” (à 1 au lieu de 0 sur les 2 autres, certainement parce qu’il sert de passerelle)

dsverify ne doit PAS être utilisé car trop vieux (prévu pour MF XP ) mais DSCHECK 3.5 peut etre utilisé.

cependant, cela n’aidera pas car le souci ne vient pas du DataStore, que plusieurs serveurs peuvent contacter.



vérifie la connectivité entre ton serveur en direct et le DataStore…

Le serveur CITRIX contact bien le serveur SQL : Ping OK et ouverture partage réseau OK.

Il n’y a aucun firewall ou blocage réseau particulier…

Y’a-t-il un autre point à contrôler ?



Rq: Sur le serveur CITRIX, on arrive à ouvrir une session cliente mais les autres sont refusées.

tu as vérifier que le fichier DSN utilisé fonctionne correctement via les outils d’admin ODBC ?

dans ton eventlog, tu n’a pas de messages du genre BAD_PASSWORD etc lié au service IMA ?

Comment vérifier le fichier DSN ?



Côté journal des évènements je n’ai que ça :



IMAService - ID 3614

Le serveur Citrix MetaFrame n’a pas pu se connecter au magasin de données. Erreur - IMA_RESULT_DBCONNECT_FAILURE La base de données est hors service ou il y a eu un problème réseau.



Application popup : Message de session ICA Citrix : Le système n’a pas pu acquérir une licence de produit Citrix. Le service IMA n’est peut-être pas en cours d’exécution. Veuillez contacter votre administrateur système.



Impossible d’obtenir une licence pour l’utilisateur…



IMAService - ID 3619

96 heures ont passé depuis la dernière connexion réussie au magasin de données. Ce serveur n’acceptera plus les connexions jusqu’à ce qu’une connexion au magasin de données puisse être établie.

"duke" wrote:
Comment vérifier le fichier DSN ?

je l'ai indiqué dans mon post précédent : via les outils d'admin ODBC
Start Menu/Programs/Administratitive Tools/Data Source (ODBC)

oui mais de quelle manière ?

Désolé mais je ne maitrise pas bien cette partie. :-

regarde les captures d’écran.



le fichier DSN est là : %programfiles%citrixindependant management architecturemf20.dsn



Attention de bien choisir l’autentification (NT ou SQL) que t’indiquera ton admin SQL !!



sinon un google t’aidera…

http://books.google.fr/books?id=R-tN-r1_18gC&pg=RA1-PA630&lpg=RA1-PA630&dq=troubleshooting+datastore+communication&source=bl&ots=ymC8z1xUjl&sig=-h90QjEJ5Rl_pwOPnE47LjWCBjQ&hl=fr&ei=r-caSuiADo-OjAeytNDwDA&sa=X&oi=book_result&ct=result&resnum=6



http://support.citrix.com/article/ctx18225 (MetaFrame XP training)

http://support.citrix.com/article/ctx106727 (Brief Troubleshooting Guide) <= c’est un MUST HAVE pour tous les admins Citrix !!!

J’ai testé le l’accès avec la base SQL distante avec les outils d’admin ODBC : SUCCESS



Par contre dans “%programfiles%citrixindependant management architecture” j’ai 3 fichiers DSN.



Plus ça va, moins je comprend ce qui ce passe sur cette ferme bancale dont j’ai hérité… :-

Vivement que je mette en place une nouvelle ferme en W2k3 avec une version Citrix plus récente !

un seul entre ton mf20.dsn et ton SQLS_DS.dsn (ne touche PAS à l’autre dsn) est utilisé et il est indiqué dans le registre que j’avais déjà communiqué (DataSourceName)



sinon un DSMAINT CONFIG forcera le service IMA à utiliser le bon fichier

C’est bien le user/pwd de connexion à la base SQL qu’il faut utiliser ?

Parce que ça marche pas.



>dsmaint config /user:citrix /pwd:**** /dsn:SQLS_DS.dsn

Tentative de connexion au magasin de données avec les nouveaux réglages de configuration.

Échec de la connexion au magasin de données. Les réglages de la configuration précédente seront restaurés.

Impossible de modifier les réglages de configuration.

Veuillez vérifier les paramètres et la source de données.



>dsmaint config /user:citrix /pwd:**** /dsn:MF20.dsn

Tentative de connexion au magasin de données avec les nouveaux réglages de configuration.

Échec de la connexion au magasin de données. Les réglages de la configuration précédente seront restaurés.

Impossible de modifier les réglages de configuration.

Veuillez vérifier les paramètres et la source de données.

déjà, lequel des deux DSN te permet, via l’outil ODBC, une connexion à la base de données ?



ensuite, dans ta ligne de commande tu indiques citrix comme utilisateur j’en déduis donc que tu utilises l’autentification SQL et que tu as un utilisateur nommé citrix sur ton serveur SQL avec les droits sur cette base ?



si c’est l’autentification NT il faut taper :

dsmaint config /user:mondomainemonuser /pwd:monpassword /dsn:"c:program filescitrixindependant management architecturemf20.DSN"

ou SQLS_DS.dsn bien sûr

Quand je teste avec la commande DSMAINT CONFIG la connexion est établie mais toujours impossible de lancer la console et même message d’erreur de connexion au magasin de données.



>dsmaint config /user:citrix /pwd:**** /dsn:"C:Program FilesCitrixIndependent Management ArchitectureSQLS_DS.dsn"

DrvName is: sql server

DataSource is C:Program FilesCitrixIndependent Management ArchitectureSQLS_DS.dsn

Tentative de connexion au magasin de données avec les nouveaux réglages de configuration.

Réussite de la connexion au magasin de données.

La modification de configuration a réussi.

Veuillez redémarrer le service IMA pour que cette modification soit prise

en compte.



Par contre quand j’essaie avec MF20.dsn ça marche et je peux ouvrir la console, par contre ça correspond à l’ancienne configuration de la ferme…

Du coup j’ai copié le SQLS_DS.dsn du serveur qui fonctionne, relancer la commande dsmaint puis redémarrer le service IMA mais même soucis.



J’ai tenté une authentification NT plutôt que SQL mais ça ne passe pas.



RQ: Dans “Outils admin ODBC” je n’ai aucune ligne dans Base système avec cet accès SQL, idem sur le serveur pour lequel ça fonctionne.

en clair, tes fichiers DSN ne sont pas bons, récupère les infos requises de la part de ton admin SQL pour vérifier quel fichier DSN est le bon et utilise DSMAINT ensuite

Il faudrait que je régénère le cache dsn et rétablir l’accès avec la base de données mais je ne connais pas la marche à suivre. Le fait de sortir le serveur de la ferme et le réintégrer résoudrait-il le problème ?

Afin de débloquer en partie la situation il faudrait que je puisse passer mes 2 serveurs du mode indirect en mode direct. Est-ce possible ?

oui c’est possible, il suffit de créer un fichier DSN correct…

puis de faire un DSMAINT CONFIG



en clair, tout réside dans le fichier DSN !



tu as déjà des serveurs en mode direct, alors pourquoi ne pas te baser sur leur DSN qui fonctionne?

vérifie sur ces serveurs, quel DSN est spécifié dans le registre, puis récupère le, ouvre le avec notepad et ouvre le MF20.DSN des serveurs qui déconne, modifie les informations nécessaires, enregistre les modifs et fais ton DSMAINT CONFIG