CentOS 8.2 stellt den automatischen Verwaltungsserver für Rundenck 3.3.7-Jobs bereit

[Inhaltsverzeichnis]

CentOS 8.2 stellt den automatischen Verwaltungsserver für Rundenck 3.3.7-Jobs bereit

Was ist Rundeck?

Rundeck ist eine kostenlose Open-Source-Software zur automatischen Verwaltung von Servern ( Linux , Windows und MacOS ) über geplante Jobs .

Rundeck basiert auf der Idee, alle Server in einem Computernetzwerk von einem Verwaltungsserver aus zu verwalten. Rundeck bietet eine Webschnittstelle zur Ausführung dieser Verwaltungsaufgaben.

Rundeck ist in der Programmiersprache Java geschrieben und wird unter der Apache Software 2.0- Lizenz vertrieben.

Rundeck bietet Enterprise Edition (kommerziell) und Community Edition (kostenlos) an . Im Vergleich zur Rundeck Community Edition bietet Rundeck Enterprise mehr Funktionen, die Sie jedoch bezahlen müssen.

Rundeck-Funktionen:


Die Kernfunktionen von Rundeck sind:

  • Web-API
  • Steckbares Ausführungssystem (Standard ist SSH)
  • Verteilte Befehlsausführung
  • Mehrstufiger Workflow
  • Grafische Webkonsole zum Ausführen von Befehlen und Jobs
  • Rollenbasierte Zugriffssteuerungsstrategie
  • Führen Sie Jobs nach Bedarf oder nach Zeitplan aus
  • Befehlszeilenschnittstellen-Tool
  • Verlauf und Überwachungsprotokoll

Umweltspezifikationen:


  • CPU : 3,4 GHz (2 Kerne)
  • RAM : 2 GB
  • Speicherplatz : 20 GB
  • Betriebssystem : CentOS 8.2
  • Hostname : rundeck.lianglab.cn
  • IP-Adresse : 192.168.6.200/24

Schritt 1: Installieren Sie das Software-Upgrade unter CentOS 8


Verwenden Sie das SSH- Tool, um eine Verbindung mit rundeck.lianglab.cn als Root- Benutzer herzustellen .

Verwenden Sie den Befehl dnf , um alle in CentOS 8 installierten Pakete zu aktualisieren.

[root@mariadb ~]# hostnamectl set-hostname rundeck.lianglab.cn
[root@mariadb ~]# dnf update -y
Dependencies resolved.
Nothing to do.
Complete!

Unser CentOS 8-Server ist bereits auf dem neuesten Stand und hat daher nichts mit dem Linux-Paketmanager zu tun.

Schritt 2: Installieren Sie Java unter CentOS 8


Rundeck ist in der Programmiersprache Java geschrieben und benötigt zur Ausführung JRE (Java Runtime Environment) .

Daher installieren wir OpenJDK unter CentOS 8 in unserem Standard-Yum-Repository, wie unten gezeigt.

[root@mariadb ~]# dnf install -y java-1.8.0-openjdk
...
Installed:
  java-1.8.0-openjdk-1:1.8.0.252.b09-2.el8_1.x86_64
  gtk2-2.24.32-4.el8.x86_64
  alsa-lib-1.1.9-4.el8.x86_64
  copy-jdk-configs-3.7-1.el8.noarch
  fribidi-1.0.4-7.el8_1.x86_64
  gdk-pixbuf2-modules-2.36.12-5.el8.x86_64
  giflib-5.1.4-3.el8.x86_64
  graphite2-1.3.10-10.el8.x86_64
  gtk-update-icon-cache-3.22.30-4.el8.x86_64
  harfbuzz-1.7.5-3.el8.x86_64
  hicolor-icon-theme-0.17-2.el8.noarch
  jasper-libs-2.0.14-4.el8.x86_64
  java-1.8.0-openjdk-headless-1:1.8.0.252.b09-2.el8_1.x86_64
  javapackages-filesystem-5.3.0-1.module_el8.0.0+11+5b8c10bd.noarch
  jbigkit-libs-2.1-14.el8.x86_64
  libX11-1.6.7-1.el8.x86_64
  libX11-common-1.6.7-1.el8.noarch
  libXau-1.0.8-13.el8.x86_64
  libXcomposite-0.4.4-14.el8.x86_64
  libXcursor-1.1.15-3.el8.x86_64
  libXdamage-1.1.4-14.el8.x86_64
  libXext-1.3.3-9.el8.x86_64
  libXfixes-5.0.3-7.el8.x86_64
  libXft-2.3.2-10.el8.x86_64
  libXi-1.7.9-7.el8.x86_64
  libXinerama-1.1.4-1.el8.x86_64
  libXrandr-1.5.1-7.el8.x86_64
  libXrender-0.9.10-7.el8.x86_64
  pixman-0.36.0-1.el8.x86_64
  ttmkfdir-3.0.9-54.el8.x86_64
  tzdata-java-2019c-1.el8.noarch
  xorg-x11-font-utils-1:7.5-40.el8.x86_64
  xorg-x11-fonts-Type1-7.5-19.el8.noarch
  avahi-libs-0.7-19.el8.x86_64
  cups-libs-1:2.2.6-28.el8.x86_64
  dejavu-fonts-common-2.35-6.el8.noarch
  dejavu-sans-fonts-2.35-6.el8.noarch
  fontconfig-2.13.1-3.el8.x86_64
  fontpackages-filesystem-1.44-22.el8.noarch
  gdk-pixbuf2-2.36.12-5.el8.x86_64
  lksctp-tools-1.0.18-3.el8.x86_64

Complete!

Überprüfen Sie die Version des Java- Befehls, um die Installation der Java-Laufzeitumgebung zu überprüfen .

[root@rundeck ~]# java -version
openjdk version "11.0.9" 2020-10-20 LTS
OpenJDK Runtime Environment 18.9 (build 11.0.9+11-LTS)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.9+11-LTS, mixed mode, sharing)

Schritt 3: Installieren Sie das Rundeck Yum-Repository unter CentOS 8


Rundeck- Software wird über das offizielle Yum-Repository vertrieben. Daher müssen wir das Rundeck yum-Repository im CentOS 8-Server hinzufügen.

Rundeck bietet ein RPM-Paket zur Installation des yum-Repositorys unter CentOS 8. Daher verwenden wir den Befehl dnf zur Installation.

[root@rundeck ~]# dnf install -y http://repo.rundeck.org/latest.rpm
Last metadata expiration check: 2:56:08 ago on Sun 27 Dec 2020 07:03:07 PM CST.
latest.rpm                                                                           1.8 kB/s | 3.0 kB     00:01    
Dependencies resolved.
=====================================================================================================================
 Package                        Architecture             Version                Repository                      Size
=====================================================================================================================
Installing:
 rundeck-repo                   noarch                   4-0                    @commandline                   3.0 k

Transaction Summary
=====================================================================================================================
Install  1 Package

Total size: 3.0 k
Installed size: 181  
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                                                             1/1 
  Installing       : rundeck-repo-4-0.noarch                                                                     1/1 
  Verifying        : rundeck-repo-4-0.noarch                                                                     1/1 
Installed products updated.

Installed:
  rundeck-repo-4-0.noarch                                                                                            

Complete!

Erstellen Sie einen Cache für Rundeck Repo.

[root@rundeck ~]# dnf makecache
CentOS-8 - Base - mirrors.tongdun.cn     1.7 MB/s | 3.9 kB     00:00    
CentOS-8 - Extras - mirrors.tongdun.cn   772 kB/s | 1.5 kB     00:00    
CentOS-8 - AppStream - mirrors.tongdun.c 2.5 MB/s | 4.3 kB     00:00    
MariaDB                                  4.4 kB/s | 2.9 kB     00:00    
bintray--apache-couchdb-rpm              4.2 kB/s | 1.3 kB     00:00    
Extra Packages for Enterprise Linux 8 -  3.0 MB/s | 4.7 kB     00:00    
Extra Packages for Enterprise Linux 8 -  1.5 MB/s | 3.0 kB     00:00    
Extra Packages for Enterprise Linux 8 -  1.8 MB/s | 3.5 kB     00:00    
Rundeck - Release                        1.1 kB/s | 1.3 kB     00:01    
Metadata cache created.
[root@rundeck ~]# 

Rundeck yum Repository ist installiert.

CentOS 8.2 stellt den automatischen Verwaltungsserver für Rundenck 3.3.7-Jobs bereit

Sieben

Schritt 4: Installieren Sie RunDeck unter CentOS 8


Jetzt können wir die Rundeck-Software mit dem Befehl dnf installieren.

[root@rundeck ~]# dnf install -y rundeck
Last metadata expiration check: 0:00:53 ago on Sun 27 Dec 2020 10:00:45 PM CST.
Dependencies resolved.
=========================================================================
 Package   Arch     Version              Repository                 Size
=========================================================================
Installing:
 rundeck   noarch   3.3.7.20201208-1     rundeck-release-bintray   172 M

Transaction Summary
=========================================================================
Install  1 Package

Total download size: 172 M
Installed size: 185 M
Downloading Packages:
rundeck-3.3.7.20201208-1.noarch.rpm       10 MB/s | 172 MB     00:16    
-------------------------------------------------------------------------
Total                                     10 MB/s | 172 MB     00:16     
warning: /var/cache/dnf/rundeck-release-bintray-330204ab97cd1651/packages/rundeck-3.3.7.20201208-1.noarch.rpm: Header V3 RSA/SHA1 Signature, key ID e2d1065b: NOKEY
Rundeck - Release                        1.7 kB/s | 3.1 kB     00:01    
Importing GPG key 0xE2D1065B:
 Userid     : "Rundeck Build (automated builds) <[email protected]>"
 Fingerprint: 85E9 DBC7 4FCB 329E DEDA DD2E 9077 0E1B E2D1 065B
 From       : http://rundeck.org/keys/BUILD-GPG-KEY-Rundeck.org.key
Key imported successfully
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Running scriptlet: rundeck-3.3.7.20201208-1.noarch                 1/1 
  Preparing        :                                                 1/1 
  Running scriptlet: rundeck-3.3.7.20201208-1.noarch                 1/1 
  Installing       : rundeck-3.3.7.20201208-1.noarch                 1/1 
  Running scriptlet: rundeck-3.3.7.20201208-1.noarch                 1/1 
  Verifying        : rundeck-3.3.7.20201208-1.noarch                 1/1 
Installed products updated.

Installed:
  rundeck-3.3.7.20201208-1.noarch                                        

Complete!

Starten und richten Sie den selbststartenden rundeckd- Dienst ein

[root@rundeck ~]# systemctl enable --now rundeckd.service
rundeckd.service is not a native service, redirecting to systemd-sysv-install.
Executing: /usr/lib/systemd/systemd-sysv-install enable rundeckd

Sehen Sie den Status der rundeckd Service und Service - Listening - Port Informationen

[root@rundeck ~]# systemctl start  rundeckd.service
[root@rundeck ~]# systemctl status rundeckd.service
● rundeckd.service - SYSV: rundeckd, providing rundeckd
   Loaded: loaded (/etc/rc.d/init.d/rundeckd; generated)
   Active: active (running) since Sun 2020-12-27 22:05:33 CST; 1s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 140032 ExecStart=/etc/rc.d/init.d/rundeckd start (code=exited, status=0/SUCCESS)
 Main PID: 140042 (runuser)
    Tasks: 0 (limit: 49642)
   Memory: 2.0M
   CGroup: /system.slice/rundeckd.service
           ‣ 140042 runuser -s /bin/bash -l rundeck -c java -Drundeck.jaaslogin=true        >

Dec 27 22:05:33 rundeck.lianglab.cn systemd[1]: Starting SYSV: rundeckd, providing rundeckd.>
Dec 27 22:05:33 rundeck.lianglab.cn rundeckd[140032]: Starting rundeckd: [  OK  ]
Dec 27 22:05:33 rundeck.lianglab.cn systemd[1]: Started SYSV: rundeckd, providing rundeckd.
lines 1-14/14 (END)

[root@rundeck ~]# netstat -anptl | grep 4440
tcp        0      0 0.0.0.0:4440            0.0.0.0:*               LISTEN      140074/java       

Rundeck-Service-Port: 4440 ist in der CentOS-Firewall zulässig .

[root@rundeck ~]#  firewall-cmd --permanent --add-port=4440/tcp
success
[root@rundeck ~]#  firewall-cmd --reload
success

Wenn Sie von einem anderen Computer aus auf die Rundeck-Weboberfläche zugreifen, können einige Fehler auftreten. Um dieses Problem zu lösen, müssen wir die Rundeck-Konfigurationsdatei bearbeiten.

[root@rundeck-01 ~]# vi /etc/rundeck/rundeck-config.properties

Suchen und aktualisieren Sie den Parameter grails.serverURL wie unten gezeigt.

修改之前
grails.serverURL=http://localhost:4440

修改之后
grails.serverURL=http://192.168.6.200:4440

CentOS 8.2 stellt den automatischen Verwaltungsserver für Rundenck 3.3.7-Jobs bereit

Starten Sie den rundeckd- Dienst neu, um den Prozess mit der neuen Konfiguration neu zu laden.

[root@rundeck ~]#  systemctl restart rundeckd.service
[root@rundeck ~]#  systemctl status rundeckd.service
● rundeckd.service - SYSV: rundeckd, providing rundeckd
   Loaded: loaded (/etc/rc.d/init.d/rundeckd; generated)
   Active: active (running) since Sun 2020-12-27 22:12:07 CST; 20s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 140813 ExecStop=/etc/rc.d/init.d/rundeckd stop (code=exited, status=0/SUCCESS)
  Process: 140848 ExecStart=/etc/rc.d/init.d/rundeckd start (code=exited, status=0/SUCCESS)
 Main PID: 140858 (runuser)
    Tasks: 0 (limit: 49642)
   Memory: 1.9M
   CGroup: /system.slice/rundeckd.service
           ‣ 140858 runuser -s /bin/bash -l rundeck -c java -Drundeck.jaaslogin=true        >

Dec 27 22:12:07 rundeck.lianglab.cn systemd[1]: Starting SYSV: rundeckd, providing rundeckd.>
Dec 27 22:12:07 rundeck.lianglab.cn rundeckd[140848]: Starting rundeckd: [  OK  ]

Schritt 5: Rundeck konfiguriert das MySQL-Datenbank-Backend


Standardmäßig verwendet Rundeck die H2-Datenbank als Repository. Es wird jedoch nicht empfohlen, die H2- Datenbank in einer Produktionsumgebung zu verwenden . Daher haben wir MySQL als Rundecks Datenbank-Backend konfiguriert .

[1] Stellen Sie eine Verbindung zum MySQL-Datenbankserver her. Wenn Sie keinen laufenden MySQL-Datenbankserver haben, benötigen Sie CentOS 8.2, um den MariaDB 10.5.3-Datenbankdienst bereitzustellen .

[root@rundeck ~]# mysql -u root -plianglab@123
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 12
Server version: 10.5.8-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> 

[2] Erstellen Sie eine Datenbank für den Rundeck-Server.

MariaDB [(none)]> create database rundeck;
Query OK, 1 row affected (0.001 sec)

[3] Erstellen Sie einen Datenbankbenutzer und gewähren Sie die für die Rundeck- Datenbank erforderlichen Berechtigungen.

MariaDB [(none)]> grant ALL on rundeck.* to 'rundeckuser'@'localhost' identified by 'lianglab123';
Query OK, 0 rows affected (0.001 sec)

[4] Laden Sie die Berechtigungstabelle neu.

MariaDB [(none)]> flush privileges;
Query OK, 0 rows affected (0.001 sec)

Beenden Sie die MySQL-Shell.

MariaDB [(none)]> exit
Bye

CentOS 8.2 stellt den automatischen Verwaltungsserver für Rundenck 3.3.7-Jobs bereit

[5] Bearbeiten Sie nun die Rundeck-Konfigurationsdatei.

[root@rundeck-01 ~]# vi /etc/rundeck/rundeck-config.properties

[6] Suchen und aktualisieren Sie die folgenden Parameter in dieser Datei. (Wenn Sie keine Parameter finden können, fügen Sie diese bitte hinzu.)

修改前
# change hostname here
grails.serverURL=http://192.168.6.200:4440
dataSource.dbCreate = update
dataSource.url = jdbc:h2:file:/var/lib/rundeck/data/rundeckdb;MVCC=true

修改后
# change hostname here
grails.serverURL=http://192.168.6.200:4440
dataSource.dbCreate = update
#dataSource.url = jdbc:h2:file:/var/lib/rundeck/data/rundeckdb;MVCC=true
dataSource.url = jdbc:mysql://192.168.6.200/rundeck?autoReconnect=true
dataSource.username=rundeckuser
dataSource.password=lianglab123
dataSource.driverClassName=com.mysql.jdbc.Driver

[7] Starten Sie den rundeckd- Dienst neu, um die Änderungen zu übernehmen.

[root@rundeck ~]# systemctl restart rundeckd.service
[root@rundeck ~]# systemctl status rundeckd.service
● rundeckd.service - SYSV: rundeckd, providing rundeckd
   Loaded: loaded (/etc/rc.d/init.d/rundeckd; generated)
   Active: active (running) since Sun 2020-12-27 22:22:50 CST; 9s ago
     Docs: man:systemd-sysv-generator(8)
  Process: 141411 ExecStop=/etc/rc.d/init.d/rundeckd stop (code=exited, status=0/SUCCESS)
  Process: 141451 ExecStart=/etc/rc.d/init.d/rundeckd start (code=exited, status=0/SUCCESS)
 Main PID: 141461 (runuser)
    Tasks: 0 (limit: 49642)
   Memory: 1.9M
   CGroup: /system.slice/rundeckd.service
           ‣ 141461 runuser -s /bin/bash -l rundeck -c java -Drundeck.jaaslogin=true        >

Dec 27 22:22:50 rundeck.lianglab.cn systemd[1]: Starting SYSV: rundeckd, providing rundeckd.>
Dec 27 22:22:50 rundeck.lianglab.cn rundeckd[141451]: Starting rundeckd: [  OK  ]

[8] Wenn Sie Probleme beim Starten des rundeckd- Dienstes haben, sollten Sie in der Rundeck-Protokolldatei im Verzeichnis / var / log / rundeck / nach Fehlern suchen.

[2020-12-27T22:54:48,841] ERROR pool.ConnectionPool [main] - Unable to create initial connections of pool.
java.sql.SQLException: Unable to load class: com.mysql.jdbc.Driver from ClassLoader:org.springframework.boot.loader.LaunchedURLClassLoader@7a07c5b4;ClassLoader:org.springframework.boot.loader.LaunchedURLClassLoader@7a07c5b4

CentOS 8.2 stellt den automatischen Verwaltungsserver für Rundenck 3.3.7-Jobs bereit

配置rundeck配置文件使其连接数据库
vim /etc/rundeck/rundeck-config.properties

grails.serverURL=http://192.168.6.200:4440
dataSource.dbCreate = update
#dataSource.url = jdbc:h2:file:/var/lib/rundeck/data/rundeckdb;MVCC=true
dataSource.url = jdbc:mysql://192.168.6.200:3306/rundeck?autoReconnect=true&useSSL=false
dataSource.username=rundeckuser
dataSource.password=lianglab123
dataSource.driverClassName=com.mysql.jdbc.Driver

[root@rundeck ~]# systemctl restart rundeckd.service

查看rundeck日志
tailf /var/log/rundeck/service.log
Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
解决:
vim /etc/my.cnf
[mysqld]
wait_timeout=31536000
interactive_timeout=31536000
重启生效,需要同时修改这两个参数

【9】 Protokollansicht

[root@rundeck ~]# ls -alt /var/log/rundeck/
total 3084
-rw-r--r--.  1 rundeck rundeck 1569895 Dec 27 22:23 rundeck.log
-rw-rw-r--.  1 root    root    1573703 Dec 27 22:23 service.log
drwxrwxr-x.  2 rundeck rundeck    4096 Dec 27 22:05 .
-rw-r--r--.  1 rundeck rundeck       0 Dec 27 22:05 rundeck.executions.log
-rw-r--r--.  1 rundeck rundeck       0 Dec 27 22:05 rundeck.options.log
-rw-r--r--.  1 rundeck rundeck       0 Dec 27 22:05 rundeck.audit.log
-rw-r--r--.  1 rundeck rundeck       0 Dec 27 22:05 rundeck.jobs.log
-rw-r--r--.  1 rundeck rundeck       0 Dec 27 22:05 rundeck.cleanup.log
-rw-r--r--.  1 rundeck rundeck       0 Dec 27 22:05 rundeck.webhooks.log
-rw-r--r--.  1 rundeck rundeck       0 Dec 27 22:05 rundeck.api.log
-rw-r--r--.  1 rundeck rundeck       0 Dec 27 22:05 rundeck.storage.log
-rw-r--r--.  1 rundeck rundeck       0 Dec 27 22:05 rundeck.project.log
-rw-r--r--.  1 rundeck rundeck       0 Dec 27 22:05 rundeck.access.log
drwxr-xr-x. 21 root    root       4096 Dec 27 22:02 ..

image-20201227222424525

Schritt 6: Erstellen Sie Ihr erstes Rundeck-Projekt

Durchsuchen Sie die URL http://192.168.6.200:4440 in einem Browser wie [Google Chrome .

CentOS 8.2 stellt den automatischen Verwaltungsserver für Rundenck 3.3.7-Jobs bereit

Verwenden Sie den Standardbenutzernamen : admin und das Kennwort: admin, um sich bei der Rundeck- Weboberfläche anzumelden .

CentOS 8.2 stellt den automatischen Verwaltungsserver für Rundenck 3.3.7-Jobs bereit

Klicken Sie auf die Schaltfläche Neues Projekt +, um ein neues Projekt zu erstellen.

CentOS 8.2 stellt den automatischen Verwaltungsserver für Rundenck 3.3.7-Jobs bereit

Geben Sie die erforderlichen Details zum Projekt ein und klicken Sie auf Erstellen.

CentOS 8.2 stellt den automatischen Verwaltungsserver für Rundenck 3.3.7-Jobs bereit

Unser Projekt wurde erstellt und befindet sich jetzt auf der Seite " Knoten bearbeiten" .

Möglicherweise wurde der Rundeck-Liste ein Knoten "Lokal" hinzugefügt . Dies ist unser Rundeck-Servercomputer, der beim Erstellen dieses Projekts automatisch hinzugefügt wird.

CentOS 8.2 stellt den automatischen Verwaltungsserver für Rundenck 3.3.7-Jobs bereit

Schritt 7: Erstellen Sie einen neuen Job

CentOS 8.2 stellt den automatischen Verwaltungsserver für Rundenck 3.3.7-Jobs bereit

Mein eigener Pfad unter Linux: / opt / shell, erstelle eine neue shell.sh und erteile Ausführungsberechtigungen, Skriptinhalt:

[root@rundeck shell]# vi shell.sh
[root@rundeck shell]# cat  shell.sh
#!/bin/bash
date
uptime

[root@rundeck shell]# chmod 755 shell.sh 

[1] Erstellen Sie unsere Aufgabe

CentOS 8.2 stellt den automatischen Verwaltungsserver für Rundenck 3.3.7-Jobs bereit

[2] Wählen Sie einen lokalen URL-Pfad aus, geben Sie den Dateipfad ein und klicken Sie zum Speichern

CentOS 8.2 stellt den automatischen Verwaltungsserver für Rundenck 3.3.7-Jobs bereit

CentOS 8.2 stellt den automatischen Verwaltungsserver für Rundenck 3.3.7-Jobs bereit

[3] Rundecks Zeitplanung
CentOS 8.2 stellt den automatischen Verwaltungsserver für Rundenck 3.3.7-Jobs bereit

[4] Wir können die Echtzeitschnittstelle zum Ausführen von Aufgaben am Standort ACTIVITY anzeigen:

CentOS 8.2 stellt den automatischen Verwaltungsserver für Rundenck 3.3.7-Jobs bereit

Unser Rundeck-Server wurde erfolgreich installiert und konfiguriert. Informationen zur Verwendung der Rundeck-Weboberfläche finden Sie in der Rundeck-Dokumentation .

Ich denke du magst

Origin blog.51cto.com/56281688/2575403
Empfohlen
Rangfolge