Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de
  Teamcenter
  4Tier - mehrere, verteilte Distribution - Server

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für NX
  
Doll Fahrzeugbau GmbH: Stücklisten-Qualität unter Kontrolle , ein Anwenderbericht
Autor Thema:  4Tier - mehrere, verteilte Distribution - Server (3800 mal gelesen)
MAhrens
Mitglied
Dipl.-Ing.


Sehen Sie sich das Profil von MAhrens an!   Senden Sie eine Private Message an MAhrens  Schreiben Sie einen Gästebucheintrag für MAhrens

Beiträge: 528
Registriert: 17.11.2000

SAP,TC8.3,NX7.5,T4S

erstellt am: 09. Feb. 2011 08:57    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Teamcenter Administratoren,

wir stehen kurz vor der Umstellung von Teamcenter 2005SR1 4Tier Multisite auf Teamcenter 8.3 4Tier Single Site.

In der bisherigen Multisite Konfiguration hat jeder Standort (Site) seine eigene Vollausstattung bezüglich der Serverkomponenten:
- ORACLE Datenbank
- JBOSS Web Application Server
- JAVA Remote Invocation Method (RMI) Server
- Rich Client Distribution Server

In der 4Tier Umgebung installieren und aktualisieren sich alle Rich Client Computer über eine Web Anfrage (OTW Over The Web) und holen ihre Konfiguration uns Software von dem Distribution Server ab. Diese Anfrage findet immer vor der Teamcenter Sitzung statt. So werden auch Softwareaktualisierungen in einem Rutsch auf alle Clients verteilt.

Da jede Site bisher ihren eigenen, lokalen Distribution - Server hat, funktioniert die Abfrage und das Herunterladen von Software - Images auch recht flott.

In der neuen Umgebung haben wir nur noch eine ORACLE - JBOSS Instanz in Deutschland mit verteilten FSC's und Volumes an mehreren weltweiten Standorten. Die Standardinstalltion der 4Tier Server Komponenten bringt nun auch wieder einen RMI Server und einen Distribution - Server mit.

Wenn ich nun aus USA, Brasilien oder Australien eine Softwareinstallation durchführe bzw. Die Clients eine Aktualisierungsanfrage durchführen, dann sprechen diese immer den Distribution - Server in Deutschland an. Bei Latenzzeiten jenseits der 100ms wird der Transfer von bereitstehenden Software - Images entsprechend Zeitaufwendig. So dauert eine Rich Client Installation über das Web dann schon mal meherer Stunden, bis überhaupt die ganzen ZIP Archive vo Deutschland heruntergeladen wurden.

Für eine globale, effiziente Verbreitung würde ich gerne an verschiedenen Standorten zusätzliche Distribution - Server aufbauen. So das die Client - Computer die Aktualisierungsanfragen an einen näher gelegenen Distribution - Server richten. Speziell der Download von Software - Images soll damit erheblich verkürzt werden.

Das zum Hintergrund.

Wer hat schon Erfahrung mit nur einer Wep - Application / Database Instanz aber mehreren Distribution - Servern?
Wie baut man das am besten auf?
Wie stellt man sicher, dass alle Distribution - Server das gleiche Software - Image verteilen?
Wie stellt man ein, das bestimmte Clients einen bestimmten Distribution Server ansprechen?
Kann man auch eine Lösung "Suche mir den nächstliegenden Distribution - Server!" einbauen?
Muss man nur den Distribution Serverdienst an verschiedenen Standorten replizieren oder muss auch der RMI Dienst an den jeweiligen Standorten eingerichtet werden?

Für jede Art von Hinweisen oder Anregung wäre ich dankbar. Die Anwenderakzeptanz hängt nun mal sehr stark von der Geschwindigkeit der Plattform ab.


Gruß

Matthias

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

MAhrens
Mitglied
Dipl.-Ing.


Sehen Sie sich das Profil von MAhrens an!   Senden Sie eine Private Message an MAhrens  Schreiben Sie einen Gästebucheintrag für MAhrens

Beiträge: 528
Registriert: 17.11.2000

SAP,TC8.3,NX7.5,T4S

erstellt am: 24. Mrz. 2011 12:25    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Teamcenter Admin Kollegen,

nach Rückfrage mittel CALL by Siemens habe ich nun einen Ansatz gefunden, der recht gut funktioniert. Mittels dieser Konfiguration kann man nun auch die 4Tier Over The Web Installation an entfernten Standorten schneller durchführen.

Vorgehen:
- Das TC_WEB Verzeichnis in dem der Distribution - Server und die fertigen 4Tier Profile liegen, wird komplett auf einen entfernten Server mit exakt gleichem Verzeichnispfad und Laufwerk kopiert.
- Auf dem entfernten Server werden jetzt das RMI Startskript und das DIST Startskript ausgeführt. Nun laufen zwei oder mehrer eigenständige Distribution - Server, die alle das gleiche OTW 4Tier Client Profil bereitstellen.
- Wenn man für das Kopieren auch noch ROBOCOPY einsetzt, kann man auch bei Änderungen, diese schnell auf alle angeschlossenen Distribution - Server verteilen.
- Jetzt muss man noch für jeden Distribution Server eine eigene OTW Webseite auf dem zentralen Web Server (JBOSS) erstellen. Hierzu kopiert man die "installing.html" Datei an gleicher Stelle. Der neue Dateiname sollte jeweils einen möglichen Distribution - Server wiederspiegeln. Pro Distribution Server erhält man so meherer "installing_STANDORT.html" Dateien.
- In jeder dieser Dateien ändert man nun den Verweis auf den jeweiligen Distribution Server:
In dem  "<object ..." tag ändert man den parameter tag "<param name='server_name'..." so, dass er auf den jeweiligen Distribution Server zeigt. Z.B.:
...
<object classid="clsid:8AD9C840-044E-11D1-B3E9-00805F499D93"
codebase="http://java.sun.com/update/1.5.0/jinstall-1_5-windows-i586.cab#Version=1,5,0,0"
onerror="document.location='launcherror.html'" WIDTH="1" HEIGHT="1" VIEWASTEXT>
<param name="CODE" value="com.teamcenter.install.otw.installer.Installer">
<param name="type" value="application/x-java-applet;jpi-version=1.5">
<param name="scriptable" value="false">
<param name="archive" value="otw_installer.jar,jdom.jar,commons-lang.jar">
<param name="instance" value="4TierClientVisConfigOnly">
<param name="server_name" value="DistributionServerInstanz:12099">
...

Somit kann man schon gezielt Installationen über einen bestimmten Distribution Server ausführen, wenn man die entsprechende Webseite direkt als URL im Browser verwendet.

Die Startseite "index.html" verweist aber immer noch auf den ursprünglichen Distribution Server. Aber auch das kann man in einem Umfeld mit reinen Windows Clients anpassen. So habe ich in unserer Umgebung einige Funktionen eingebaut, die jeweils eine der vorherigen "installing_STANDORT.html" Seiten zurückliefert. Diese wird anhand einer vorgeschalteten Distanzmessung (WMI PING) entschieden.

Zuerst baut man zwei neue JAVASCRIPT Funktionen ping(host) und pingtime(host)ein:
// ***********************************************
// This function is using the Windows WMI to check
// if a specific host / server is available by
// a PING command
// ***********************************************
function ping(host) {
var wmi = GetObject("Winmgmts:");
var eStatus = new Enumerator(wmi.ExecQuery("Select StatusCode from Win32_PingStatus Where Address='" + host + "'"));
return eStatus.item().StatusCode == 0;
}
// ***********************************************
// This function is using the Windows WMI to check
// response time of a PING command to a specific
// host / server
// ***********************************************
function pingtime(host) {
var wmi2 = GetObject("Winmgmts:");
var eResponse = new Enumerator(wmi2.ExecQuery("Select ResponseTime from Win32_PingStatus Where Address='" + host + "'"));
return eResponse.item().ResponseTime;
}

Die erste wird verwendet um zu prüfen, ob ein bestimmter Server überhaupt am Netz ist. Die zweite Funktione ermittelt die PING Response Zeit.

Nun wird noch eine weitere Funktion benötigt, in der man nun die verschiedenen Distribution Server auflistet und die entsprechenden "installingXXXX.html" Seiten vermerkt. Diese Funktion durchläuft nun die Liste und ermittelt den nächstgelegenen Server. Entsprechend der Auflistung gibt es die korrospondierende Seite zurück.

// ***********************************************
// This function is reporting a corrosponding
// webpage (default installing.html) by coomparing
// the distance to multiple servers
// ***********************************************
function getDistPage() {
var distServer = new Array();
var distPage = new Array();

distServer[0] = "DistServer_A";
distServer[1] = "DistServer_B";
distPage[0] = "installing_DistServer_A.html";
distPage[1] = "installing_DistServer_B.html";

var nearTime = 99999999999999;
var nearPointer = 999999999999;

// Cycle the array of servers, with distribution instances
var i=0;
for (i=0;i<=1;i++)
{
// Check if the distribution server is reach able
if (ping(distServer[i]))
{
// Get the ping distance
var currTime = pingtime(distServer[i]);
//Compare the distance and select it it if it is the nearest
if ( currTime < nearTime)
{
nearTime = currTime;
nearPointer = i;
}
}
}
// return the corrposponding html page
return distPage[nearPointer];
}

Im oberen Bereich der index.html muss man nun konsequent die Einträge "document.location.replace("installing.html");" durch "document.location.replace(getDistPage());" austauschen.

Somit testet OTW nun, wer ist der nächstgelegene Server und ruft dessen Distribution Instanz auf.

Vielleicht hilt es dem einen oder anderen weiter.

Gruß

Matthias

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

schulze
Ehrenmitglied V.I.P. h.c.
CAD/CAE Manager


Sehen Sie sich das Profil von schulze an!   Senden Sie eine Private Message an schulze  Schreiben Sie einen Gästebucheintrag für schulze

Beiträge: 2312
Registriert: 26.03.2001

erstellt am: 25. Mrz. 2011 13:23    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für MAhrens 10 Unities + Antwort hilfreich

Matthias,

vielen Dank, dass Du uns auch eine Lösung präsentierst.
Ich hab zwar augenblicklich nicht solche Sorgen, aber es ist schon faszinierend zu sehen, was man alles machen kann.

------------------
R.Schulze

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2025 CAD.de | Impressum | Datenschutz