50 Häufig gestellte Fragen und Antworten zu WebSphere-Interviews

Inhaltsverzeichnis

Eine Sammlung von IBM-Interviewfragen, die häufig in Bewerbungsgesprächen für Einsteiger bis hin zu erfahrenen Fachleuten gestellt werden.

Mir wird oft die Aufgabe gestellt, eine Liste mit Interviewfragen zum IBM WebSphere Application Server zusammenzustellen, daher kann ich Ihr Anliegen nachvollziehen.

WebSphere ist ein Anwendungsserver (eine Middleware-Lösung) von IBM, und IBM hat die führende Position im Bereich der Middleware-Marktanteile inne.

WebSphere ist eine Produktpalette, und dieser Artikel befasst sich ausschließlich mit dem WebSphere Application Server.

Falls Sie sich fragen, welche Produkte Teil der WebSphere-Suite sind, hier eine Auswahl:

  • WebSphere Portal
  • WebSphere DataPower
  • WebSphere Cast Iron
  • WebSphere eXtreme Scale
  • WebSphere Front Office
  • WebSphere Message Broker
  • WebSphere MQ
  • WebSphere Real Time
  • WebSphere Remote Server
  • WebSphere Virtual Enterprise
  • WebSphere Community Edition
  • Und viele weitere…

Sind Sie bereit, die Fragen durchzugehen?

1. Was versteht man unter einem Ripple-Start?

Ein Ripple-Start ist eine Methode zum Neustarten eines WAS-Clusters. Dabei werden die JVMs nacheinander gestoppt und wieder gestartet. Der Ripple-Start gewährleistet, dass immer nur eine JVM außer Betrieb ist, wodurch Ausfallzeiten für die Anwendungen vermieden werden.

Beispielsweise, wenn Sie 5 JVMs in einem Cluster haben, wird beim Ripple-Start zuerst JVM1 gestoppt und wieder gestartet, bevor andere JVMs innerhalb des Clusters angehalten werden.

2. Was würden Sie unternehmen, wenn eine JVM 100 % CPU- und Speicherauslastung auf einem Server verursacht?

Zunächst identifizieren Sie die JVM, die die hohe Auslastung verursacht. Erstellen Sie einen Thread-Dump dieser JVM zur Analyse und starten Sie die JVM als Notlösung neu, um die CPU-/Speicherauslastung zu reduzieren.

3. Was ist die Knotensynchronisation?

IBM WAS speichert alle Konfigurationsdaten in einem zentralen Repository, dem sogenannten „Master-Repository“. Jeder Knoten verfügt zusätzlich über sein eigenes lokales Repository.

Wenn Sie Änderungen am Knoten über den DMGR vornehmen, müssen Sie diese synchronisieren, damit die Konfiguration auf den jeweiligen Knotenserver übertragen wird.

Die Synchronisation erfolgt stets vom Master zum lokalen Repository und ist somit eine Einwegkommunikation.

4. Kann die Anwendung reibungslos weiterlaufen, wenn der DMGR ausfällt?

Ja, ein Ausfall des DMGR hat keine Auswirkungen auf bereits laufende Anwendungen. Jedoch sind Sie in der Durchführung von Änderungen oder Bereitstellungen über den DMGR eingeschränkt.

5. Wie stellt man eine Anwendung in WebSphere bereit?

Es gibt drei gängige Methoden zur Bereitstellung:

  • Hot Deployment: Kopieren Sie die Anwendungsdatei in das Anwendungsverzeichnis. Diese Methode eignet sich gut für nicht-produktive Umgebungen, wird jedoch für den Produktionsbetrieb nicht empfohlen.
  • DMGR: Sie können eine Anwendung über den DMGR bereitstellen, indem Sie zu Anwendungen >> Neue Anwendung navigieren.
  • Skripte: Sie können wsadmin-Skripte oder Ant-Tasks für die Implementierung von Anwendungen entwickeln.

6. Warum startet eine JVM automatisch, obwohl ich den Prozess manuell stoppe/beende?

Dies kann zwei Gründe haben:

Der automatische Neustart ist für die JVM aktiviert, was die Standardeinstellung ist und unter JVM >> Überwachungsrichtlinie zu finden ist.

Sollte dies nicht der Fall sein, könnte ein Skript in Cron existieren, welches den Prozess überwacht und ihn startet, sobald er nicht mehr gefunden wird.

7. Welche Dateitypen können in WebSphere bereitgestellt werden?

Sie können WAR-, EAR-, JAR- oder SAR-Module über die DMGR-Konsole oder Skripte bereitstellen.

8. Was ist ein virtueller Host?

Ein virtueller Host bündelt mehrere URLs (IP- oder FQDN-basiert) für eine einzige Anwendung. Die Konfiguration erfolgt über die WAS-Administrationskonsole.

Damit eine Anwendung über eine bestimmte URL erreichbar ist, muss diese URL im virtuellen Host existieren und mit der Anwendung verknüpft sein.

9. Wie würden Sie mit Kundenbeschwerden über langsame Anwendungen umgehen?

Langsamkeit kann verschiedene Ursachen haben, und es ist wichtig, zu ermitteln, ob sie von WebSphere oder anderen Komponenten herrührt. Zur Isolierung des Problems können Sie Folgendes überprüfen:

  • Tritt die Langsamkeit bei allen Benutzern auf?
  • Ist die gesamte Anwendung langsam oder nur eine spezifische Funktion?
  • Wie sieht es beim direkten Zugriff auf die JVM-URL aus (unter Umgehung des Webservers)?

Wenn die Langsamkeit auf der JVM gefunden wird, können Sie einen Dump erstellen und die Protokolle überprüfen, um die Ursache zu finden. Es lohnt sich, zu prüfen, ob es ein Release gab und die Langsamkeit direkt danach aufgetreten ist.

10. Wie erstellt man eine WAS-Konfigurationssicherung, ohne den DMGR zu stoppen?

Navigieren Sie zum DMGR-Profil und zum bin-Ordner.

Führen Sie ./backupConfig.sh -nostop aus, um eine Sicherung zu erstellen.

11. Was ist der Standard-WAS-Port?

Der Standardport für HTTP ist 9080 und für HTTPS 9443. Weitere Informationen finden Sie auf der Standardportseite.

12. Welche WebSphere-Editionen sind verfügbar?

  • WAS – Network Deployment
  • WAS – Developer
  • WAS – z/OS
  • WAS – Hypervisor
  • WAS – Express
  • WAS – Base
  • WAS – Liberty Core

13. Wie generiert und propagiert man das Plugin?

  • Melden Sie sich an der WAS-Administrationskonsole an.
  • Gehen Sie zu Server >> Webserver.
  • Wählen Sie den Server aus und klicken Sie auf die Schaltfläche „Generieren“ und „Propagieren“.

14. Welche sind die häufigsten Probleme, mit denen Sie konfrontiert wurden?

Es ist wichtig, dass Sie ehrlich über Ihre Fachkenntnisse sind, um sich ein Bild zu machen. Hier sind einige Beispiele:

  • Virtueller Host nicht definiert
  • Protokolle werden nicht rotiert
  • Interner Serverfehler
  • OutOfMemory-Ausnahme
  • Langsamkeit
  • JVM startet nicht
  • Hohe CPU-/Speicher-/Festplattenauslastung

15. Wie überprüfe ich die installierte WAS-Version?

  • Navigieren Sie zum Profil- und Bin-Ordner.
  • Führen Sie ./versionInfo.sh aus.

16. Woher wissen Sie, ob Ihre JVM aktiv ist oder nicht?

Es gibt verschiedene Methoden zur Bestätigung:

  • Verwenden Sie ein Monitoring-Tool, um nach Warnungen oder dem aktuellen Status zu suchen.
  • Melden Sie sich an einem Server an und suchen Sie mit dem Befehl ps -ef | grep jvmname nach der JVM.
  • Überprüfen Sie, ob Sie auf die JVM-URL zugreifen können.
  • Überprüfen Sie, ob Sie die JVM-URL und den Port per Telnet erreichen können.
  • Überprüfen Sie, ob der JVM-Port auf dem Server lauscht.
  • Verwenden Sie den Befehl serverStatus.sh –all, um den Status zu prüfen.

Wählen Sie die Methode, die Ihnen am einfachsten erscheint.

17. Nennen Sie einige der von WebSphere generierten Protokolldateien?

  • SystemOut.log
  • SystemErr.log
  • native_stdout.log
  • native_stderr.log

18. Wie generiere ich einen Thread-Dump?

Es gibt drei Methoden zur Erstellung eines Thread-Dumps:

19. Was ist der Unterschied zwischen einem vertikalen und einem horizontalen Cluster?

Ein vertikaler Cluster hat seine Mitglieder auf demselben Knoten oder Server, während sich ein horizontaler Cluster über mehrere Knoten und Server innerhalb einer Zelle erstreckt.

20. Was ist Garbage Collection?

Die Garbage Collection ist ein Speicherverwaltungsprozess, der automatisch Speicher freigibt, der von Objekten belegt wird, die nicht mehr vom Programm verwendet werden.

21. Wie deaktiviert man die Sicherheit in WebSphere?

Sie können die Sicherheit deaktivieren, indem Sie „securityoff“ über wsadmin.sh ausführen. Nach dem Deaktivieren der Sicherheit muss der DMGR neu gestartet werden.

22. Wie aktiviere ich die ausführliche Garbage Collection?

Die ausführliche GC ist standardmäßig nicht aktiviert. Wenn Sie diese benötigen, können Sie sie wie folgt aktivieren:

  • Server >> Servertypen >> WebSphere Application Server
  • Wählen Sie die JVM >> Prozessdefinition unter „Java und Prozessverwaltung“.
  • Klicken Sie unter „Zusätzliche Eigenschaften“ auf Java Virtual Machine und aktivieren Sie das Kontrollkästchen für „verbose Garbage Collection“.

23. Wie lässt sich WebSphere beim Neustart des Servers automatisch starten?

WebSphere generiert automatisch ein Startskript in /etc/init.d, das sicherstellt, dass es beim Neustart gestartet wird.

Sollte aus irgendeinem Grund kein Skript vorhanden sein, können Sie es erstellen und unter /etc/init.d ablegen und wie unten beschrieben aktivieren.

chkconfig --add WebSphere #Name der Skriptdatei
chkconfig WebSphere on

Weitere Details finden Sie in meinem ausführlichen Artikel zum automatischen Starten von Diensten beim Booten.

24. Wie erhöht man die Heap-Größe der JVM?

  • Melden Sie sich an der Verwaltungskonsole an.
  • Gehen Sie zu Server >> Servertypen >> WebSphere Application Server.
  • Wählen Sie die JVM >> Prozessdefinition >> Java Virtual Machine.

Hier können Sie die anfängliche und maximale Heap-Größe konfigurieren.

25. Können Sie den Knoten synchronisieren, wenn der Knotenagent heruntergefahren ist?

Der Knotenagent muss gestartet sein, damit die Synchronisation funktioniert.

26. Was sind die Befehle zum Stoppen und Starten von DMGR, Knotenagent und JVM?

Stoppen:

  • JVM – stopServer.sh JVMNAME
  • Knotenagent – stopNode.sh
  • DMGR – stopManager.sh

Starten:

  • JVM – startServer.sh JVMNAME
  • Knotenagent – startNode.sh
  • DMGR – startManager.sh

27. Was ist neu in WAS 8.5.5?

Auf hoher Ebene:

  • Java SE 7-Unterstützung
  • HPEL-Protokollierung
  • Integriertes Gesundheitsmanagement
  • Liberty-Profil
  • Intelligentes Routing
  • Dynamisches Clustering
  • JDBC 4.1-Clustering
  • Web 2.0-Unterstützung

Detailliertere Informationen finden Sie auch hier.

28. Was bedeutet Knoten-Federation?

Die Federation in WebSphere bedeutet das Hinzufügen eines Knotens zur Zelle. Dies wird mithilfe des Befehls addNode.sh durchgeführt und kann je nach Größe des Knotens einige Minuten dauern.

29. Was ist FFDC?

FFDC (First Failure Data Capture) erfasst Ereignisse und Fehler während der WebSphere-Laufzeit. FFDC-Daten können hilfreich sein, um das Problem zu analysieren. Sie werden häufig vom IBM Support angefordert, wenn wir uns bei Problemen an ihn wenden.

30. Können Sie WebSphere-Keystore-XOR entschlüsseln?

Ja, das ist mit dem folgenden Online-Tool möglich: https://strelitzia.net/wasXORdecoder/wasXORdecoder.html

31. Welche Skriptsprache ist die Standardsprache in WebSphere? JACL oder Jython?

JACL ist die Standardskriptsprache in WebSphere.

32. Wie können Sie das Fixpack in WebSphere 8.5.x anwenden?

IBM IM kann verwendet werden, um den Fix anzuwenden. Detaillierte Anweisungen finden Sie im Handbuch zur Anwendung des Fixpacks.

33. Welche Umgebungen unterstützen Sie?

Seien Sie ehrlich und erläutern Sie die Umgebungen, die Sie unterstützen. Sie können beispielsweise folgende Umgebungen unterstützen:

  • Entwicklung
  • CIT
  • SIT
  • UAT
  • DEMO
  • Vorproduktion
  • Produktion
  • Staging
  • Qualitätssicherung

34. Wo wird Ihr Webserver gehostet?

Erläutern Sie Ihre unterstützte Anwendungsarchitektur. In einer typischen Produktionsumgebung für Anwendungen mit Internetzugang befinden sich Webserver in einer DMZ und Anwendungsserver in einem Core-Netzwerk.

Dies bedeutet, dass Sie die notwendigen Ports in der Firewall zwischen den Webservern und einem Anwendungsserver freigegeben haben müssen.

35. Was ist Session-Affinität?

Session-Affinität, auch Sitzungspersistenz genannt, ermöglicht es, eine Anforderung an eine einzelne JVM zu binden. Das bedeutet, dass die resultierenden Anfragen immer an dieselbe JVM weitergeleitet werden.

36. Können Sie mehr als eine Anwendung in einer einzelnen JVM bereitstellen?

Ja, die Bereitstellung mehrerer Anwendungen ist in einer einzigen JVM möglich, solange das Kontextstammverzeichnis für jede Anwendung eindeutig ist.

37. Welche Datenbank verwenden Sie mit WebSphere?

Nennen Sie die Datenbank, die Sie verwenden. Die meisten Organisationen verwenden Oracle-Datenbanken, WebSphere unterstützt jedoch auch die folgenden Datenbanken:

  • DB2
  • Oracle Database
  • Microsoft SQL Server
  • Sybase

38. Wie verbinden Sie den Webserver mit WAS?

Es gibt zwei Möglichkeiten, eine Verbindung zu WAS herzustellen:

  • Verwendung eines Plugins: Dies ist die empfohlene Methode, um das WAS-Plugin auf einem Webserver zu installieren.
  • Verwendung von ProxyPass: Wenn Sie Apache verwenden und das Plugin nicht nutzen möchten, können Sie sich mithilfe der ProxyPass-Anweisung mit der WAS-JVM verbinden.

39. Benötige ich einen Webserver vor WAS?

Es wird empfohlen, einen unterstützten Webserver vor WAS zu verwenden, um die Sicherheit, Leistung und Wartung zu verbessern.

40. Was ist eine Zelle?

Eine Zelle ist eine logische Gruppierung von Knoten, die einen oder mehrere Knoten haben kann; Cluster werden zentral über eine einzige Verwaltungskonsole verwaltet.

41. Was ist das Standard-Sitzungstimeout für eine Verwaltungskonsole?

30 Minuten

42. Was ist ein Fixpack?

Ein Fixpack ist eine Sammlung von Patches, die von IBM bereitgestellt werden. Sie können Fehlerbehebungen, Sicherheitspatches und Leistungsverbesserungen beinhalten.

43. Welche Registrierung oder welches Repository wird in WebSphere unterstützt?

  • Föderiertes Repository
  • Lokales Betriebssystem
  • Eigenständige LDAP-Registry
  • Eigenständige benutzerdefinierte Registry

44. Was sind gemeinsam genutzte Bibliotheken?

Es wird empfohlen, gemeinsam genutzte Bibliotheken zu erstellen, um doppelte Bibliotheksdateien zu reduzieren. Eine einzelne gemeinsam genutzte Bibliothek kann von mehreren Anwendungen innerhalb einer Zelle verwendet werden.

45. Was ist ein Kontextstammverzeichnis?

Ein Kontextstammverzeichnis sollte innerhalb der Zelle für jede Anwendung eindeutig sein. Es ist im Deployment-Deskriptor definiert und wird für den Zugriff auf die Anwendung verwendet.

Beispiel: Wenn die Anwendung A ein Kontextstammverzeichnis mit dem Namen „retail“ hat, ist die Anwendung über https://servername:port/retail erreichbar.

46. Wie lautet die Konfigurationsdatei des WAS-Plugins?

Der Konfigurationsname des WebSphere-Plugins ist plugin-cfg.xml.

47. Wie ändere ich die Größe des WebContainer-Threadpools?

Die Größe des WebContainer-Threadpools kann angepasst werden, indem Sie zu JVM >> Threadpools >> WebContainer navigieren.

48. Können Sie das Kontextstammverzeichnis für eine bereitgestellte Anwendung ändern?

Ja, das ist möglich. Navigieren Sie dazu über die Verwaltungskonsole zur Anwendung und klicken Sie auf „Kontextstammverzeichnis für Webmodule“, um das Kontextstammverzeichnis zu ändern.

Die JVM muss nach der Änderung neu gestartet werden.

49. Welches Skript dient zum Ändern des vom Profil verwendeten Java SDK?

Das Skript managedsdk.sh ist im Ordner bin verfügbar und hilft bei der Änderung des SDK.

50. Was ist PMT?

PMT (Profile Management Tool) ist eine GUI zum Erstellen und Verwalten von WebSphere-Profilen.

Ich hoffe, die oben genannten Informationen helfen Ihnen dabei, eine Stelle als WebSphere-Administrator zu finden. Wenn Sie Hilfe bei Ihrem Lebenslauf und Ihrem Vorstellungsgespräch benötigen, schauen Sie sich dieses Tutorial an.