VCenter: Unterschied zwischen den Versionen
Keine Bearbeitungszusammenfassung |
|||
| Zeile 88: | Zeile 88: | ||
'''Einstellungen überprüfen und abschließen''' | '''Einstellungen überprüfen und abschließen''' | ||
Im letzten Schritt alle Angaben nochmals kontrollieren und auf „Beenden“ klicken, um das neue Netzwerk anzulegen. | Im letzten Schritt alle Angaben nochmals kontrollieren und auf „Beenden“ klicken, um das neue Netzwerk anzulegen. | ||
= Dokumentation: VM-Einrichtung & Red Hat Enterprise Linux 9 – SAP HANA Systemumgebung = | |||
Hinweis: Diese Dokumentation beschreibt ein '''Beispielsetup''' anhand der VM ''gryphius''. Die hier beschriebene Konfiguration dient ausschließlich als '''Vorlage''' und muss je nach konkreten Anforderungen (Sizing, Netzwerk, Storage, SAP-Vorgaben etc.) entsprechend angepasst werden. Alle Werte wie CPU-Anzahl, RAM, Festplattengrößen und Netzwerkparameter sind projektspezifisch und können abweichen. | |||
== 1. Einleitung == | |||
Dieses Dokument beschreibt die vollständige Einrichtung einer virtuellen Maschine (VM) auf VMware ESXi sowie die Installation und Konfiguration von Red Hat Enterprise Linux 9 (RHEL 9) für den Einsatz als SAP HANA System. | |||
Die Dokumentation dient als Referenz für zukünftige Installationen und zur Nachvollziehbarkeit der durchgeführten Schritte. Als konkretes Beispiel wird die VM '''gryphius''' verwendet – die Schritte sind jedoch allgemeingültig und auf andere Setups übertragbar. | |||
== 2. Voraussetzungen == | |||
Vor Beginn der Einrichtung müssen folgende Voraussetzungen erfüllt sein: | |||
* Zugang zum VMware vSphere Client (ESXi 6.7 oder höher) | |||
* Ausreichend Ressourcen auf dem ESXi-Host (CPU, RAM, Storage) | |||
* Red Hat Enterprise Linux 9 ISO-Image | |||
* Gültige Red Hat Subscription für SAP HANA | |||
* Netzwerkkonfigurationsdaten (IP-Adresse, Gateway, DNS) | |||
* Festplattenspezifikationen laut SAP-Sizing (werden vorab bereitgestellt) | |||
== 3. VM-Konfiguration auf VMware ESXi == | |||
=== 3.1 Allgemeine VM-Parameter === | |||
Die folgende Tabelle zeigt die konfigurierten Hardware-Parameter der VM am Beispiel von ''gryphius''. '''Diese Werte sind projektspezifisch und müssen an das jeweilige Sizing angepasst werden.''' | |||
{| class="wikitable" | |||
|- | |||
! Parameter !! Wert (Beispiel: gryphius) | |||
|- | |||
| VM-Name || gryphius | |||
|- | |||
| Gastbetriebssystem || Red Hat Enterprise Linux 9 (64-bit) | |||
|- | |||
| Kompatibilität || ESXi 6.7 und höher (VM-Version 14) | |||
|- | |||
| CPU || 12 vCPUs | |||
|- | |||
| Arbeitsspeicher (RAM) || 256 GB | |||
|- | |||
| Netzwerkadapter || 10G-AGI-Server (00:50:56:a3:40:8e) | |||
|- | |||
| VMware Tools || Version 12448 (Verwaltet durch Gast) | |||
|- | |||
| Verschlüsselung || Nicht verschlüsselt | |||
|- | |||
| Datastore || VM_Datastore_esx4 | |||
|} | |||
=== 3.2 Netzwerkkonfiguration === | |||
{| class="wikitable" | |||
|- | |||
! Parameter !! Wert (Beispiel: gryphius) | |||
|- | |||
| DNS-Name || gryphius | |||
|- | |||
| IPv4-Adresse || 172.22.1.68 | |||
|- | |||
| IPv6-Adresse || fe80::250:56ff:fea3:408e | |||
|- | |||
| Netzwerkadapter || 10G-AGI-Server | |||
|} | |||
=== 3.3 Festplattenkonfiguration === | |||
Die VM verfügt im Beispielsetup über insgesamt 6 Festplatten. '''Alle Festplatten sind mit Thin Provisioning konfiguriert''', d. h. der tatsächliche Speicherplatz wird erst bei Bedarf auf dem Datastore belegt und nicht vorab vollständig reserviert. | |||
{| class="wikitable" | |||
|- | |||
! Nr. !! VMDK-Datei !! Typ !! Größe | |||
|- | |||
| 1 || akt-000001.vmdk || Thin Provision || 50 GB | |||
|- | |||
| 2 || akt_1-000001.vmdk || Thin Provision || 350 GB | |||
|- | |||
| 3 || akt_2-000001.vmdk || Thin Provision || 300 GB | |||
|- | |||
| 4 || akt_3-000001.vmdk || Thin Provision || 200 GB | |||
|- | |||
| 5 || akt_4-000001.vmdk || Thin Provision || 100 GB | |||
|- | |||
| 6 || akt_5-000001.vmdk || Thin Provision || 48 GB | |||
|} | |||
'''Gesamtspeicher im Beispiel: 1.048 GB''' | |||
Die Anzahl und Größe der Festplatten richtet sich nach dem jeweiligen SAP-Sizing und kann bei anderen Systemen abweichen. | |||
==== Hinweis: Thin Provisioning ==== | |||
Bei der Erstellung der VM-Festplatten ist darauf zu achten, dass für '''alle''' Festplatten die Option '''Thin Provision''' (dünne Bereitstellung) ausgewählt wird. Dies bedeutet, dass der Speicherplatz auf dem Datastore nicht sofort vollständig allokiert wird, sondern dynamisch wächst. Dies spart Speicherplatz auf dem Datastore, erfordert jedoch eine Überwachung der tatsächlichen Datastore-Auslastung. | |||
==== Hinweis: Festplatten eindeutig unterscheidbar machen ==== | |||
Wenn in den Vorgaben mehrere Festplatten mit '''identischer Größe''' angegeben sind (z. B. zwei Festplatten à 50 GB), sollten diese bei der VM-Erstellung '''bewusst leicht unterschiedlich dimensioniert''' werden – beispielsweise 48 GB und 55 GB statt zweimal 50 GB. So lassen sich die Festplatten später allein anhand ihrer Größe eindeutig zuordnen und voneinander unterscheiden, was die Konfiguration im Betriebssystem (Partitionierung, Mountpoints, LVM-Zuordnung) deutlich erleichtert und Verwechslungen vorbeugt. Die Gesamtkapazität sollte dabei natürlich weiterhin den Anforderungen entsprechen. | |||
== 4. Installation von Red Hat Enterprise Linux 9 == | |||
=== 4.1 Boot und Installationsstart === | |||
# Das RHEL 9 ISO-Image über den vSphere Client als CD/DVD-Laufwerk einbinden. | |||
# Die VM starten und vom ISO-Image booten. | |||
# Im Boot-Menü die Option „Install Red Hat Enterprise Linux 9" auswählen. | |||
# Die gewünschte Sprache und das Tastaturlayout auswählen. | |||
=== 4.2 Festplattenpartitionierung im RHEL-Installer === | |||
Dieser Schritt ist besonders kritisch und erfordert genaue Beachtung der Größenangaben. | |||
Warnung: '''Festplattengrößen im Installer:''' Bei der Partitionierung im RHEL-Installer darf '''niemals''' die volle Festplattengröße verwendet werden. Es muss immer ein kleiner Puffer abgezogen werden (z. B. 0,1 GB). Beispiel: Bei einer 50-GB-Festplatte nur '''49,9 GB''' als Partitionsgröße angeben. Wird die volle Größe verwendet, kommt es zu Fehlern bei der Installation bzw. Partitionierung. | |||
Die Festplatten sind wie folgt im Installer zu konfigurieren (Beispielwerte für ''gryphius''): | |||
{| class="wikitable" | |||
|- | |||
! Festplatte !! VM-Größe !! RHEL-Partition !! Differenz | |||
|- | |||
| Disk 1 || 50 GB || 49,9 GB || −0,1 GB | |||
|- | |||
| Disk 2 || 350 GB || 349,9 GB || −0,1 GB | |||
|- | |||
| Disk 3 || 300 GB || 299,9 GB || −0,1 GB | |||
|- | |||
| Disk 4 || 200 GB || 199,9 GB || −0,1 GB | |||
|- | |||
| Disk 5 || 100 GB || 99,9 GB || −0,1 GB | |||
|- | |||
| Disk 6 || 48 GB || 47,9 GB || −0,1 GB | |||
|} | |||
'''Grundregel: Immer 0,1 GB weniger als die VM-Festplattengröße angeben.''' | |||
=== 4.3 Softwareauswahl === | |||
Im Installationsmenü unter „Software Selection" das passende Profil für den SAP-HANA-Betrieb auswählen. Red Hat bietet spezielle SAP-HANA-Profile an, die bereits die notwendigen Pakete und Kernel-Parameter vorkonfigurieren. | |||
<!-- TODO: Genaues Profil hier ergänzen, z. B. „Server with GUI" oder „SAP HANA Server" --> | |||
=== 4.4 Netzwerkkonfiguration im Installer === | |||
Die Netzwerkkonfiguration wird im Installer vorgenommen: Hostname setzen und die statische IP-Adresse mit den entsprechenden Netzwerkparametern (Subnetzmaske, Gateway, DNS-Server) konfigurieren. | |||
Im Beispiel ''gryphius'': | |||
* Hostname: <code>gryphius</code> | |||
* IP-Adresse: <code>172.22.1.68</code> | |||
<!-- TODO: Subnetzmaske, Gateway, DNS-Server ergänzen --> | |||
=== 4.5 Installation abschließen === | |||
Nach Abschluss aller Konfigurationsschritte die Installation starten. Nach erfolgreichem Abschluss das System neu starten und das ISO-Image aushängen. | |||
== 5. Post-Installations-Schritte == | |||
=== 5.1 System-Update und Registrierung === | |||
# Das System bei Red Hat registrieren: | |||
#: <code>subscription-manager register</code> | |||
# Alle verfügbaren Updates installieren: | |||
#: <code>dnf update -y</code> | |||
# Das SAP-HANA-Repository aktivieren und benötigte Pakete installieren. | |||
=== 5.2 VMware Tools verifizieren === | |||
Die VMware Tools sollten bereits installiert und aktiv sein („Verwaltet durch Gast"). Falls nicht, die open-vm-tools über dnf nachinstallieren: | |||
<code>dnf install open-vm-tools -y</code> | |||
Im Beispiel ''gryphius'' war Version 12448 installiert. | |||
== 6. Zusammenfassung == | |||
{| class="wikitable" | |||
|- | |||
! Komponente !! Übersicht (Beispiel: gryphius) | |||
|- | |||
| VM || 12 vCPUs, 256 GB RAM, 6 Festplatten (ges. 1.048 GB) | |||
|- | |||
| Betriebssystem || Red Hat Enterprise Linux 9 (64-bit) | |||
|- | |||
| Netzwerk || 172.22.1.68 (10G-AGI-Server) | |||
|- | |||
| Storage || Alle Thin Provision auf VM_Datastore_esx4 | |||
|- | |||
| Zweck || SAP HANA System | |||
|} | |||
== Anhang: Bekannte Fallstricke == | |||
* '''Festplattengröße:''' Niemals die volle VM-Festplattengröße im RHEL-Installer verwenden. Immer 0,1 GB weniger angeben, um Fehler bei der Partitionierung zu vermeiden. | |||
* '''Thin Provisioning:''' Bei der VM-Erstellung immer Thin Provision wählen. Thick Provisioning würde unnötig Speicherplatz auf dem Datastore blockieren. | |||
* '''VMware Tools:''' Sicherstellen, dass die VMware Tools installiert und aktuell sind. Ohne VMware Tools ist z. B. kein sauberes Herunterfahren aus dem vSphere Client möglich. | |||
* '''ISO nach Installation entfernen:''' Nach Abschluss der Installation das ISO-Image vom CD/DVD-Laufwerk trennen, um Bootprobleme zu vermeiden. | |||
Version vom 9. Februar 2026, 13:15 Uhr
Eine Auflistung von Aufgaben, die man im vCenter machen kann.
Speichererweiterung einer VM über das vCenter
Wenn der Speicherplatz einer VM erweitert werden muss, dann geht man folgendermaßen vor.
1. Im vCenter anmelden und nach der betroffenen VM suchen.
2. VM mit rechtsklick auswählen und unter „Einstellungen bearbeiten…“ nach den Festplatten sehen.
3. Über den ersten Teil des Namens (den in [xxx]) herausfinden, auf welcher Festplatte die VM hinterlegt ist und über die „Übersicht“ nach dem Verfügbaren Speicher schauen.
4. Wieder zurück zu der Einstellung der VM und dort bei der entsprechenden Festplatte die zugeteilte Größe erweitern.
5. Die Erweiterung kann im laufenden Betrieb durchgeführt werden, daher einfach warten, bis es abgeschlossen ist.
6. Die „Remote Console“ der VM über das vCenter öffnen.
Ab hier gibt es ein Unterschied, je nach verwendetem Betriebssystem:
Unter Windows:
1. Dort dann die „Computerverwaltung“ aufrufen.
2. Über „Datenträgerverwaltung“ mit rechtsklick den Datenträger auswählen, der erweitert werden muss und auf „Volumen erweitern…“ gehen.
3. Mit „Weiter“ bestätigen, den freien Speicher hinzufügen, erneut „Weiter“ und mit „Fertig stellen“ beenden.
4. Im Explorer nachschauen ob der Speicher jetzt erweitert wurde.
Unter Linux:
Folgt noch
VSphere Netzwerk hinzufügen
Schritt-für-Schritt-Anleitung:
1) / 2) ESXi-Host auswählen In der linken Navigationsleiste den richtigen ESXi-Host auswählen, auf dem das neue Netzwerk erstellt werden soll.
3) Zum Reiter „Konfigurieren“ wechseln Oben in der Menüleiste auf „Konfigurieren“ klicken.
4) „Virtuelle Switches“ anzeigen Im linken Menü unter dem Abschnitt „Netzwerk“ den Punkt „Virtuelle Switches“ auswählen.
5) Standard-Switch identifizieren Den passenden Standard-vSwitch identifizieren. Dieser beinhaltet meist bereits die schon bestehenden 10G-Netze.
6) „Netzwerk hinzufügen“ klicken Oben rechts auf „Netzwerk hinzufügen“ klicken.
Netzwerktyp auswählen Im sich öffnenden Fenster die Option „VM-Portgruppe für einen Standard-Switch“ auswählen. Danach auf „Weiter“ klicken.
Standard-Switch auswählen Nun den zuvor identifizierten Standard-vSwitch auswählen, dem die neue Portgruppe zugewiesen werden soll.
7) Netzwerkbezeichnung eingeben Einen sinnvollen Namen für die neue Portgruppe eintragen bzw. den bestehenden Namen korrekt übernehmen.
8) VLAN-ID angeben Die entsprechende VLAN-ID eintragen. Falls kein VLAN verwendet wird, einfach den Wert 0 belassen.
Einstellungen überprüfen und abschließen Im letzten Schritt alle Angaben nochmals kontrollieren und auf „Beenden“ klicken, um das neue Netzwerk anzulegen.
Dokumentation: VM-Einrichtung & Red Hat Enterprise Linux 9 – SAP HANA Systemumgebung
Hinweis: Diese Dokumentation beschreibt ein Beispielsetup anhand der VM gryphius. Die hier beschriebene Konfiguration dient ausschließlich als Vorlage und muss je nach konkreten Anforderungen (Sizing, Netzwerk, Storage, SAP-Vorgaben etc.) entsprechend angepasst werden. Alle Werte wie CPU-Anzahl, RAM, Festplattengrößen und Netzwerkparameter sind projektspezifisch und können abweichen.
1. Einleitung
Dieses Dokument beschreibt die vollständige Einrichtung einer virtuellen Maschine (VM) auf VMware ESXi sowie die Installation und Konfiguration von Red Hat Enterprise Linux 9 (RHEL 9) für den Einsatz als SAP HANA System.
Die Dokumentation dient als Referenz für zukünftige Installationen und zur Nachvollziehbarkeit der durchgeführten Schritte. Als konkretes Beispiel wird die VM gryphius verwendet – die Schritte sind jedoch allgemeingültig und auf andere Setups übertragbar.
2. Voraussetzungen
Vor Beginn der Einrichtung müssen folgende Voraussetzungen erfüllt sein:
- Zugang zum VMware vSphere Client (ESXi 6.7 oder höher)
- Ausreichend Ressourcen auf dem ESXi-Host (CPU, RAM, Storage)
- Red Hat Enterprise Linux 9 ISO-Image
- Gültige Red Hat Subscription für SAP HANA
- Netzwerkkonfigurationsdaten (IP-Adresse, Gateway, DNS)
- Festplattenspezifikationen laut SAP-Sizing (werden vorab bereitgestellt)
3. VM-Konfiguration auf VMware ESXi
3.1 Allgemeine VM-Parameter
Die folgende Tabelle zeigt die konfigurierten Hardware-Parameter der VM am Beispiel von gryphius. Diese Werte sind projektspezifisch und müssen an das jeweilige Sizing angepasst werden.
| Parameter | Wert (Beispiel: gryphius) |
|---|---|
| VM-Name | gryphius |
| Gastbetriebssystem | Red Hat Enterprise Linux 9 (64-bit) |
| Kompatibilität | ESXi 6.7 und höher (VM-Version 14) |
| CPU | 12 vCPUs |
| Arbeitsspeicher (RAM) | 256 GB |
| Netzwerkadapter | 10G-AGI-Server (00:50:56:a3:40:8e) |
| VMware Tools | Version 12448 (Verwaltet durch Gast) |
| Verschlüsselung | Nicht verschlüsselt |
| Datastore | VM_Datastore_esx4 |
3.2 Netzwerkkonfiguration
| Parameter | Wert (Beispiel: gryphius) |
|---|---|
| DNS-Name | gryphius |
| IPv4-Adresse | 172.22.1.68 |
| IPv6-Adresse | fe80::250:56ff:fea3:408e |
| Netzwerkadapter | 10G-AGI-Server |
3.3 Festplattenkonfiguration
Die VM verfügt im Beispielsetup über insgesamt 6 Festplatten. Alle Festplatten sind mit Thin Provisioning konfiguriert, d. h. der tatsächliche Speicherplatz wird erst bei Bedarf auf dem Datastore belegt und nicht vorab vollständig reserviert.
| Nr. | VMDK-Datei | Typ | Größe |
|---|---|---|---|
| 1 | akt-000001.vmdk | Thin Provision | 50 GB |
| 2 | akt_1-000001.vmdk | Thin Provision | 350 GB |
| 3 | akt_2-000001.vmdk | Thin Provision | 300 GB |
| 4 | akt_3-000001.vmdk | Thin Provision | 200 GB |
| 5 | akt_4-000001.vmdk | Thin Provision | 100 GB |
| 6 | akt_5-000001.vmdk | Thin Provision | 48 GB |
Gesamtspeicher im Beispiel: 1.048 GB
Die Anzahl und Größe der Festplatten richtet sich nach dem jeweiligen SAP-Sizing und kann bei anderen Systemen abweichen.
Hinweis: Thin Provisioning
Bei der Erstellung der VM-Festplatten ist darauf zu achten, dass für alle Festplatten die Option Thin Provision (dünne Bereitstellung) ausgewählt wird. Dies bedeutet, dass der Speicherplatz auf dem Datastore nicht sofort vollständig allokiert wird, sondern dynamisch wächst. Dies spart Speicherplatz auf dem Datastore, erfordert jedoch eine Überwachung der tatsächlichen Datastore-Auslastung.
Hinweis: Festplatten eindeutig unterscheidbar machen
Wenn in den Vorgaben mehrere Festplatten mit identischer Größe angegeben sind (z. B. zwei Festplatten à 50 GB), sollten diese bei der VM-Erstellung bewusst leicht unterschiedlich dimensioniert werden – beispielsweise 48 GB und 55 GB statt zweimal 50 GB. So lassen sich die Festplatten später allein anhand ihrer Größe eindeutig zuordnen und voneinander unterscheiden, was die Konfiguration im Betriebssystem (Partitionierung, Mountpoints, LVM-Zuordnung) deutlich erleichtert und Verwechslungen vorbeugt. Die Gesamtkapazität sollte dabei natürlich weiterhin den Anforderungen entsprechen.
4. Installation von Red Hat Enterprise Linux 9
4.1 Boot und Installationsstart
- Das RHEL 9 ISO-Image über den vSphere Client als CD/DVD-Laufwerk einbinden.
- Die VM starten und vom ISO-Image booten.
- Im Boot-Menü die Option „Install Red Hat Enterprise Linux 9" auswählen.
- Die gewünschte Sprache und das Tastaturlayout auswählen.
4.2 Festplattenpartitionierung im RHEL-Installer
Dieser Schritt ist besonders kritisch und erfordert genaue Beachtung der Größenangaben.
Warnung: Festplattengrößen im Installer: Bei der Partitionierung im RHEL-Installer darf niemals die volle Festplattengröße verwendet werden. Es muss immer ein kleiner Puffer abgezogen werden (z. B. 0,1 GB). Beispiel: Bei einer 50-GB-Festplatte nur 49,9 GB als Partitionsgröße angeben. Wird die volle Größe verwendet, kommt es zu Fehlern bei der Installation bzw. Partitionierung.
Die Festplatten sind wie folgt im Installer zu konfigurieren (Beispielwerte für gryphius):
| Festplatte | VM-Größe | RHEL-Partition | Differenz |
|---|---|---|---|
| Disk 1 | 50 GB | 49,9 GB | −0,1 GB |
| Disk 2 | 350 GB | 349,9 GB | −0,1 GB |
| Disk 3 | 300 GB | 299,9 GB | −0,1 GB |
| Disk 4 | 200 GB | 199,9 GB | −0,1 GB |
| Disk 5 | 100 GB | 99,9 GB | −0,1 GB |
| Disk 6 | 48 GB | 47,9 GB | −0,1 GB |
Grundregel: Immer 0,1 GB weniger als die VM-Festplattengröße angeben.
4.3 Softwareauswahl
Im Installationsmenü unter „Software Selection" das passende Profil für den SAP-HANA-Betrieb auswählen. Red Hat bietet spezielle SAP-HANA-Profile an, die bereits die notwendigen Pakete und Kernel-Parameter vorkonfigurieren.
4.4 Netzwerkkonfiguration im Installer
Die Netzwerkkonfiguration wird im Installer vorgenommen: Hostname setzen und die statische IP-Adresse mit den entsprechenden Netzwerkparametern (Subnetzmaske, Gateway, DNS-Server) konfigurieren.
Im Beispiel gryphius:
- Hostname:
gryphius - IP-Adresse:
172.22.1.68
4.5 Installation abschließen
Nach Abschluss aller Konfigurationsschritte die Installation starten. Nach erfolgreichem Abschluss das System neu starten und das ISO-Image aushängen.
5. Post-Installations-Schritte
5.1 System-Update und Registrierung
- Das System bei Red Hat registrieren:
subscription-manager register
- Alle verfügbaren Updates installieren:
dnf update -y
- Das SAP-HANA-Repository aktivieren und benötigte Pakete installieren.
5.2 VMware Tools verifizieren
Die VMware Tools sollten bereits installiert und aktiv sein („Verwaltet durch Gast"). Falls nicht, die open-vm-tools über dnf nachinstallieren:
dnf install open-vm-tools -y
Im Beispiel gryphius war Version 12448 installiert.
6. Zusammenfassung
| Komponente | Übersicht (Beispiel: gryphius) |
|---|---|
| VM | 12 vCPUs, 256 GB RAM, 6 Festplatten (ges. 1.048 GB) |
| Betriebssystem | Red Hat Enterprise Linux 9 (64-bit) |
| Netzwerk | 172.22.1.68 (10G-AGI-Server) |
| Storage | Alle Thin Provision auf VM_Datastore_esx4 |
| Zweck | SAP HANA System |
Anhang: Bekannte Fallstricke
- Festplattengröße: Niemals die volle VM-Festplattengröße im RHEL-Installer verwenden. Immer 0,1 GB weniger angeben, um Fehler bei der Partitionierung zu vermeiden.
- Thin Provisioning: Bei der VM-Erstellung immer Thin Provision wählen. Thick Provisioning würde unnötig Speicherplatz auf dem Datastore blockieren.
- VMware Tools: Sicherstellen, dass die VMware Tools installiert und aktuell sind. Ohne VMware Tools ist z. B. kein sauberes Herunterfahren aus dem vSphere Client möglich.
- ISO nach Installation entfernen: Nach Abschluss der Installation das ISO-Image vom CD/DVD-Laufwerk trennen, um Bootprobleme zu vermeiden.





