[Praktische Projekterfahrung] Aufbau von openGauss Datakit 5.1.1 basierend auf openEuler22.03

Vorwort Es gibt erhebliche Unterschiede zwischen der neuesten Version von Datakit 5.1 und Datakit 5.0. Die Lagerstruktur hat sich geändert und die vorherigen Dokumente sind nicht mehr anwendbar. In diesem Artikel werden die neueste Version des Datakit-Übungshandbuchs und persönliche Erfahrungen als Referenz für OpenGauss-Enthusiasten vorgestellt.

1 Projekteinführung Bei diesem Projekt handelt es sich um ein webbasiertes visuelles OpenGauss-Tool: DataKit. Der Zweck besteht darin, Kunden die Verwendung und Verwaltung des OpenGauss-Visualisierungstools zu erleichtern. Es kann die Schwelle für die Installation und Verwendung der OpenGauss-Datenbank senken und ein Sicherheitscenter erreichen Verwaltung, Plug-In-Verwaltung und Die Entwicklungs-, Betriebs- und Wartungstools der oberen Ebene basieren auf Plug-Ins, und jedes Plug-In ist unabhängig voneinander, sodass Benutzer es bei Bedarf problemlos einführen können. Jedes Plug-in wird rund um das Ressourcenzentrum von DataKit erweitert und bietet Bereitstellung, Deinstallation, Komponenteninstallation, Multiversions-Upgrades sowie täglichen Betrieb und Wartung, Überwachung, Migration, Entwicklung, Modellierung und andere komplexe Vorgänge mit einem Klick.

2 Umgebungsvorbereitung 2.1 Hinweise Der aktuelle Plattformbetrieb hängt von openJDK11 ab

Die von der Plattform verwendete Datenbank unterstützt derzeit nur die openGauss-Datenbank und die Datenbank muss im Voraus erstellt werden.

Die IP des Bereitstellungsservers muss in der Whitelist der von der Plattform verwendeten openGauss-Datenbank konfiguriert werden.

2.2 Unterstützte Serversysteme

openEuler 20.3LTS(x86_x64,ARM)
centos7.x(x86_x64)

Hinweis: Es wurde überprüft, dass es unter openEuler 22.03 LTS einwandfrei läuft.

Überprüfen Sie die Betriebssystemversion

[root@localhost ~]# cat /etc/os-release 
NAME="openEuler"
VERSION="22.03 LTS"
ID="openEuler"
VERSION_ID="22.03"
PRETTY_NAME="openEuler 22.03 LTS"
ANSI_COLOR="0;31"

2.3 Umweltzusammenfassung

In diesem Artikel wird Datakit 5.1.1 basierend auf dem Betriebssystem openEuler 22.03 LTS bereitgestellt.

2.4 Zusammenfassung des Dokuments

Offizielle openGauss-Dokumentation

https://docs-opengauss.osinfra.cn/zh/docs/5.1.0/docs/ToolandCommandReference/DataKit.htmlNutzungsdokumentation und Entwicklungsdokumentation

https://gitee.com/opengauss/openGauss-workbench/tree/master/openGauss-datakit/doc 2.5 Erwerb von Softwarepaketen Hier habe ich die verschiedenen verwendeten Offline-Pakete in datakit-about.zip organisiert und das Datakit im Hintergrund gesendet Du kannst es bekommen.

Sie können die Installation auch online durchführen oder das entsprechende Offline-Paket zur Installation herunterladen.

2.5.1 Es gibt zwei Möglichkeiten, das Datakit-Softwarepaket zu erhalten:

Laden Sie es über die offizielle Website von openGauss herunter

https://opengauss.org/zh/download/

Laden Sie es über das offizielle Opengauss-Gitee-Repository herunter

Lageradresse

https://gitee.com/opengauss/openGauss-workbench

Die aktuelle Adresse des Installationspakets der neuesten Version

https://opengauss.obs.cn-south-1.myhuaweicloud.com/latest/tools/Datakit/Datakit-5.1.1.tar.gz Das Installationspaket des offiziellen Gitee-Warehouse von openGauss ist im Allgemeinen eine höhere Version als die Installation Paket der offiziellen openGauss-Website, das die neuesten Funktionen und grundlegenden Korrekturen enthält.

2.5.2 Bezug des openGauss-Softwarepakets Ab der openEuler 22.03 LTS-Version wird das Betriebssystem-Image mit dem openGauss-RPM-Paket geliefert, das über rpm oder yum installiert werden kann. Es unterstützt sowohl arm64- als auch x86_64-Architekturen.

Die Spiegeladresse von openEuler22.03 LTS lautet:

https://mirrors.huaweicloud.com/openeuler/openEuler-22.03-LTS Das entsprechende RPM-Paket können Sie unter der oben genannten Adresse herunterladen.

# opengauss安装包
opengauss-2.1.0-5.oe2203.x86_64.rpm# 依赖包
java-1.8.0-openjdk-1.8.0.352.b08-3.oe2203.x86_64.rpm
java-1.8.0-openjdk-devel-1.8.0.352.b08-3.oe2203.x86_64.rpm
java-1.8.0-openjdk-headless-1.8.0.352.b08-3.oe2203.x86_64.rpm

2.5.3 OpenJDK11-Paket beziehen

# openjdk11安装包
java-11-openjdk-11.0.20.8-0.oe2203.x86_64.rpm
java-11-openjdk-devel-11.0.20.8-0.oe2203.x86_64.rpm
java-11-openjdk-headless-11.0.20.8-0.oe2203.x86_64.rpm# 依赖包
giflib-5.2.1-4.oe2203.x86_64.rpm

2.6 Laden Sie datakit-about.zip auf den Server hoch

# 创建安装包存放目录
[root@localhost ~]# mkdir -p /soft/
# 上传 datakit-about.zip 到 /soft 并解压
[root@localhost ~]# cd /soft
[root@localhost /soft]# unzip datakit-about.zip
# 解压后的目录结构如下
├── datakit
│   └── Datakit-5.1.1.tar.gz
├── opengaussrpm
│   ├── java-1.8.0-openjdk-1.8.0.352.b08-3.oe2203.x86_64.rpm
│   ├── java-1.8.0-openjdk-devel-1.8.0.352.b08-3.oe2203.x86_64.rpm
│   ├── java-1.8.0-openjdk-headless-1.8.0.352.b08-3.oe2203.x86_64.rpm
│   └── opengauss-2.1.0-5.oe2203.x86_64.rpm
└── openjdk11
    ├── giflib-5.2.1-4.oe2203.x86_64.rpm
    ├── java-11-openjdk-11.0.20.8-0.oe2203.x86_64.rpm
    ├── java-11-openjdk-devel-11.0.20.8-0.oe2203.x86_64.rpm
    └── java-11-openjdk-headless-11.0.20.8-0.oe2203.x86_64.rpm
 
3 directories, 9 files

2.7 Hostnamen- und IP-Adressauflösung festlegen

2.7.1 Hostnamen festlegen

[root@localhost ~]# hostnamectl set-hostname trex

2.7.2 IP-Adressauflösung

[root@localhost ~]# echo '192.168.7.100 trex' >> /etc/hosts

2.7.3 Hostnamen aktualisieren

[root@localhost ~]# su [root@trex ~]#

Sie können sehen, dass sich der Hostname vom Standard-Localhost in Trex geändert hat.

2.8 Schalten Sie die Firewall aus

 

# 关闭防火墙
[root@trex ~]# systemctl stop firewalld.service
# 禁止开机自启
[root@trex ~]# systemctl disable firewalld.service

2.9 Schalten Sie Selinux aus 

2.9.1 Sofortige Abschaltung

[root@trex ~]# setenforce 0

Hinweis: Ungültig nach Neustart des Betriebssystems.

2.9.2 Ändern Sie die Konfigurationsdatei, indem Sie /etc/sysconfig/selinux bearbeiten und SELINUX=enforcing in SELINUX=disabled ändern

sed -ri 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

Hinweis: Das Betriebssystem muss neu gestartet werden, damit es dauerhaft wirksam wird.

2.10 Installieren Sie die von der Datakit-Plattform verwendete Datenbank. Wie bereits im Artikel erwähnt, unterstützt die Plattform derzeit nur openGauss.

Installation über Internet

yum install opengauss -y

Offline-Installation

# cd /soft/datakit-about/opengaussrpm/
[root@trex opengaussrpm]# rpm -ivh *.rpm
Verifying...                          ################################# [100%]
Preparing...                          ################################# [100%]
Updating / installing...
   1:java-1.8.0-openjdk-headless-1:1.8################################# [ 25%]
   2:java-1.8.0-openjdk-1:1.8.0.352.b0################################# [ 50%]
   3:java-1.8.0-openjdk-devel-1:1.8.0.################################# [ 75%]
   4:opengauss-2.1.0-5.oe2203         ################################# [100%]
Created symlink /etc/systemd/system/multi-user.target.wants/opengauss.service → /usr/lib/systemd/system/opengauss.service.
Init openGauss database success.
Start openGauss database success.

2.11 Opengauss-Datenbankverwaltung und -konfiguration

2.11.1 Startstatus anzeigen

# 切换到opengauss用户
[root@trex ~]# su - opengauss
# 查看opengauss启动状态
[opengauss@trex ~]$ gs_ctl status
# 打印信息如下
[2023-12-06 11:50:31.604][69114][][gs_ctl]: gs_ctl status,datadir is /var/lib/opengauss/data 
gs_ctl: server is running (PID: 61978)
/usr/local/opengauss/bin/gaussdb "-D" "/var/lib/opengauss/data"

Die Anzeige „Server läuft“ weist darauf hin, dass der Status normal ist.

Hinweis: Allgemeine Befehle für die openGauss-Dienstverwaltung sind wie folgt:

Starten Sie gs_ctl start

Schließen Sie gs_ctl und stoppen Sie

restartgs_ctl Neustart

statusgs_ctl-Status

2.11.2 Legen Sie eine Whitelist für den Datenbankzugriff fest

Dies ist so eingestellt, dass Clients mit einer beliebigen IP-Adresse über TCP/IP auf die openGauss-Datenbank zugreifen können

# 进入openGauss数据目录
[opengauss@trex ~]$ cd $PGDATA
# 在修改前先备份,避免异常情况
[opengauss@trex data]$ cp pg_hba.conf pg_hba.conf.bak
# 追加配置信息
[opengauss@trex data]$ echo 'host    all             all             0.0.0.0/0               md5' >> pg_hba.conf

Ausführliche Erklärung der Parameter:

host: Gibt an, dass diese Regel für TCP/IP-Verbindungen gilt.

all: Gibt an, dass diese Regel für alle Datenbanken und alle Benutzer gilt.

0.0.0.0/0: ist ein IP-Adressbereich im CIDR-Format, der angibt, dass Clients mit jeder IP-Adresse eine Verbindung herstellen dürfen.

md5: Zeigt die Verwendung der MD5-Verschlüsselungsmethode zur Überprüfung des Kennworts an.

2.11.3 Datenbankparameter ändern

# 设置监听所有ip
[opengauss@trex ~]$ sed -i "s/^listen_addresses = .*/listen_addresses = '*'/" postgresql.conf
# 修改加密算法为0
[opengauss@trex ~]$ sed -i "s/^#password_encryption_type = .*/password_encryption_type = 0/" postgresql.conf
# 修改最大连接数为1000
[opengauss@trex ~]$ sed -i "s/^max_connections = .*/max_connections = 1000/" postgresql.conf

Überprüfen Sie, ob die Änderung korrekt ist

[opengauss@trex ~]$ grep -E 'listen_addresses|password_encryption_type|max_connections' postgresql.conf

Detaillierte Erklärung der Parameter:
listen_addresses = '*' # Alle IPs abhören
passwort_encryption_type = 0 # Verschlüsselungsalgorithmus
max_connections = 1000 # Maximale Anzahl von Verbindungen

2.11.4 Starten Sie den openGauss-Dienst neu und überprüfen Sie den Startstatus. Nachdem Sie die Parameter geändert haben, müssen Sie den openGauss-Dienst neu starten, damit er wirksam wird.

[opengauss@trex ~]$ gs_ctl restart > /dev/null 2>&1

查看启动状态
[opengauss@trex ~]$ gs_ctl status

2.11.5 Benutzer erstellen

登录数据库(操作系统命令)
[opengauss@trex ~]$ gsql -d postgres -p 7654 -r

初次登录需要修改密码(sql命令)
openGauss=# ALTER ROLE opengauss PASSWORD 'Trex@123';

创建用户(sql命令)
openGauss=# CREATE USER trex IDENTIFIED BY 'Trex@123';

授权(sql命令)
openGauss=# ALTER USER trex SYSADMIN;

创建数据库(sql命令)
openGauss=# create database trexdb;

退出sql(sql命令)
openGauss=# \q 

2.12 OpenJDK11 installieren und als Root-Benutzer ausführen

Installation über Internet

[root @trex ~]# yum install -y java-11-openjdk

Offline-Installation

[root @trex ~]# cd /soft/datakit-about/openjdk11/ [root @trex openjdk]# rpm -ivh *.rpm

Aufmerksame Leser werden feststellen, dass bei der Installation von opengauss das Abhängigkeitspaket openJDK8 installiert wurde und die Datakit-Plattform von openJDK11 abhängt. Es wird keinen Konflikt geben, oder?

Lassen Sie es uns mit dem Befehl überprüfen

[root @trex openjdk]# rpm -qa |. Das Ergebnis ist wie folgt

Tatsächlich gibt es zwei Versionen von JDK. Werden sie in Konflikt geraten?

Die Antwort lautet: Die beiden Versionen von openJDK können nebeneinander existieren. Es wird später erwähnt und hier nicht wiederholt.

3 Installieren Sie Datakit, stellen Sie es bereit und führen Sie es als Root-Benutzer aus

3.1 Datakit verfügt über zwei Bereitstellungsmethoden: Bereitstellung von JAR-Paketen

Bereitstellung über Docker

Als nächstes installieren Sie es zur Demonstration als JAR-Paket.

3.2 Erstellen Sie ein Datakit-Arbeitsverzeichnis

[root @trex ~]# mkdir -p /ops/{logs,config,ssl,files}

3.3 Verschieben Sie das Datakit-Installationspaket in das Verzeichnis /ops

[root@trex ~]# cd /soft/datakit-about/datakit/ [root@trex datakit]# mv Datakit-5.1.1.tar.gz /ops/

3.4 Entpacken Sie das Installationspaket

[root@trex datakit]# cd /ops [root@trex datakit]# tar -xf Datakit-5.1.1.tar.gz Sie können die folgenden Informationen anzeigen, indem Sie den Befehl ls ausführen

[root@trex ops]# ls application-temp.yml Datakit-5.1.1.tar.gz-Dateien openGauss-datakit-5.1.1.jar visualtool-plugin config doc logs ssl

3.5 Konfigurationsdatei ändern

3.5.1 Verschieben Sie die Konfigurationsdatei in das Verzeichnis /ops/config [root@trex ops]# mv /ops/application-temp.yml /ops/config/

3.5.2 Konfigurationsdatei bearbeiten

[root@trex ops]# vi /ops/config/application-temp.yml

Ändern Sie application-temp.ymldie Datenverbindungsinformationen in der Datei ip、port、database、dbuser、dbpassword.
Ändern Sie es entsprechend Ihrer tatsächlichen Umgebung. Der geänderte Dateiinhalt lautet hier wie folgt

system:
  # File storage path
  defaultStoragePath: /ops/files
  # Whitelist control switch
  whitelist:
    enabled: false
server:
  port: 9494
  ssl:
    key-store: /ops/ssl/keystore.p12
    key-store-password: 123456
    key-store-type: PKCS12
    enabled: true
  servlet:
    context-path: /
logging:
  file:
    path: /ops/logs/
spring:
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource
    driver-class-name: org.opengauss.Driver
    url: jdbc:opengauss://192.168.7.100:7654/trexdb?currentSchema=public&batchMode=off
    username: trex
    password: Trex@123
    druid:
      test-while-idle: true
      test-on-borrow: true
      validation-query: "select 1"
      validation-query-timeout: 10000
      connection-error-retry-attempts: 0
      break-after-acquire-failure: true
      max-wait: 6000
      keep-alive: true
      max-active: 30
      min-evictable-idle-time-millis: 600000
management:
  server:
    port: 9494

 

3.6 Schlüsseldatei erstellen Hier verwenden wir das Keytool-Tool zum Generieren des Schlüssels. Es ist zu beachten, dass der Befehl keytool -genkey zum Erstellen von SSL-Dateien (einschließlich Schlüsselpaaren und Zertifikaten) verwendet wird und mit dem JDK (Java Development Kit) zusammenhängt ). keytool ist ein vom JDK bereitgestelltes Tool zur Verwaltung von Keystores und Zertifikaten für sichere Kommunikation wie Verschlüsselung und Authentifizierung. Wir haben bereits erwähnt, dass die Plattform auf der JDK11-Umgebung basiert, daher wird hier JDK11 zum Erstellen der Schlüsseldatei verwendet.

3.6.1 Wechseln Sie zur openJDK11-Umgebung und überprüfen Sie die JDK-Version

# 查看当前jdk版本[root@trex config]# java -version# 切换版本到jdk11
[root@trex config]# alternatives --config java# 再次查看当前jdk版本
[root@trex config]# java -version# 执行结果如下

3.6.2 Schlüsseldatei erstellen

keytool -genkey -noprompt \
    -dname "CN=opengauss, OU=opengauss, O=opengauss, L=Beijing, S=Beijing, C=CN"\
    -alias opengauss\
    -storetype PKCS12 \
    -keyalg RSA \
    -keysize 2048 \
    -keystore /ops/ssl/keystore.p12 \
    -validity 3650 \
    -storepass 123456

Hinweis: Der Storepass stimmt mit dem Keystore-Passwort in der Konfigurationsdatei application-temp.yml überein. Der Keystore-Pfad stimmt mit dem Keystore-Pfad in der Konfigurationsdatei application-temp.yml überein.

3.7 Startbefehl ausführen

# 进入 /ops 目录
cd /ops
# 启动程序
nohup java -Xms2048m -Xmx4096m -jar openGauss-datakit-5.1.1.jar --spring.profiles.active=temp >datakit.out 2>&1 &

Hinweis: Sie können das laufende Protokoll über tail -20f datakit.out anzeigen

4 Nutzung von Datakit

4.1 Um sich an der Verwaltungsoberfläche anzumelden, öffnen Sie die folgende Adresse im Browser

https://192.168.7.100:9494

Da der Browser über einen Sicherheitsschutz verfügt, klicken Sie hier auf [Erweitert] – wählen Sie Weiter, um die Anmeldeoberfläche aufzurufen.

Das Standardkennwort für das Anmeldekonto der Plattform lautet: admin/admin123. Wenn Sie sich zum ersten Mal anmelden, werden Sie aufgefordert, das Standardkennwort zurückzusetzen.

Betreten Sie die Hauptschnittstelle

Zu diesem Zeitpunkt wurde openGauss Datakit erfolgreich über das JAR-Paket bereitgestellt.

Die Raubkopien von „Qing Yu Nian 2“ wurden auf npmror hochgeladen, was dazu führte, dass npmmirror den Unpkg-Dienst einstellen musste: Es bleibt nicht mehr viel Zeit für Google. Ich schlage vor, dass alle Produkte Open Source sind . time.sleep(6) spielt hier eine Rolle. Linus ist am aktivsten beim „Hundefutter fressen“! Das neue iPad Pro verwendet 12 GB Speicherchips, behauptet jedoch, über 8 GB Speicher zu verfügen. People’s Daily Online bewertet die Aufladung im Matroschka-Stil: Nur durch aktives Lösen des „Sets“ können wir eine Zukunft haben Neues Entwicklungsparadigma für Vue3, ohne die Notwendigkeit von „ref/reactive“ und ohne die Notwendigkeit von „ref.value“. MySQL 8.4 LTS Chinesisches Handbuch veröffentlicht: Hilft Ihnen, den neuen Bereich der Datenbankverwaltung zu meistern Tongyi Qianwen GPT-4-Level-Hauptmodellpreis reduziert um 97 %, 1 Yuan und 2 Millionen Token
{{o.name}}
{{m.name}}

Ich denke du magst

Origin my.oschina.net/gaussdb/blog/11185222
Empfohlen
Rangfolge