Installation eines Omada-Controllers
This commit is contained in:
3
hosts
3
hosts
@@ -133,6 +133,9 @@ ns1.universe.local
|
|||||||
unbound01.universe.local
|
unbound01.universe.local
|
||||||
unbound02.universe.local
|
unbound02.universe.local
|
||||||
|
|
||||||
|
[omada_controller]
|
||||||
|
omada.universe.local
|
||||||
|
|
||||||
[photo_editing]
|
[photo_editing]
|
||||||
endor.universe.local
|
endor.universe.local
|
||||||
endorvm.universe.local
|
endorvm.universe.local
|
||||||
|
|||||||
@@ -152,6 +152,12 @@
|
|||||||
roles:
|
roles:
|
||||||
- jitsimeet
|
- jitsimeet
|
||||||
|
|
||||||
|
- hosts: omada_controller
|
||||||
|
tags: server,omada_controller
|
||||||
|
become: true
|
||||||
|
roles:
|
||||||
|
- omada-controller
|
||||||
|
|
||||||
- hosts: backup
|
- hosts: backup
|
||||||
tags: server,backup
|
tags: server,backup
|
||||||
become: true
|
become: true
|
||||||
|
|||||||
58
roles/omada-controller/README.md
Normal file
58
roles/omada-controller/README.md
Normal file
@@ -0,0 +1,58 @@
|
|||||||
|
# Ansible Role: omada-controller
|
||||||
|
|
||||||
|
Diese Rolle installiert den TP-Link Omada SDN Controller auf Debian-basierten Systemen (Debian, Ubuntu).
|
||||||
|
|
||||||
|
Sie kümmert sich um die Installation der notwendigen Abhängigkeiten (Java, jsvc, curl) und lädt das offizielle `.deb`-Paket von der TP-Link-Website herunter und installiert es. Der Controller-Dienst (`tpeap`) wird anschließend gestartet und für den Systemstart aktiviert.
|
||||||
|
|
||||||
|
## Anforderungen
|
||||||
|
|
||||||
|
Diese Rolle wurde für die folgenden Betriebssysteme entwickelt und getestet:
|
||||||
|
- Debian 10 (Buster)
|
||||||
|
- Debian 11 (Bullseye)
|
||||||
|
- Ubuntu 20.04 (Focal)
|
||||||
|
- Ubuntu 22.04 (Jammy)
|
||||||
|
|
||||||
|
Es sind keine weiteren externen Abhängigkeiten oder spezielle Python-Bibliotheken erforderlich.
|
||||||
|
|
||||||
|
## Rollenvariablen
|
||||||
|
|
||||||
|
Die folgenden Variablen können angepasst werden, um das Verhalten der Rolle zu steuern. Die Standardwerte sind in `defaults/main.yml` definiert.
|
||||||
|
|
||||||
|
| Variable | Standardwert | Beschreibung |
|
||||||
|
|---|---|---|
|
||||||
|
| `omada_controller_deb_url` | `https://static.tp-link.com/.../Omada_SDN_Controller_v5.9.31_Linux_x64.deb` | Die direkte Download-URL für das `.deb`-Installationspaket des Omada Controllers. Die neueste Version finden Sie auf der TP-Link Download-Seite. |
|
||||||
|
| `omada_controller_java_package` | `openjdk-8-jre-headless` | Das zu installierende Java-Paket. Version 8 ist eine sichere Wahl, neuere Controller-Versionen unterstützen eventuell auch Java 11 oder 17. |
|
||||||
|
|
||||||
|
## Abhängigkeiten
|
||||||
|
|
||||||
|
Diese Rolle hat keine Abhängigkeiten von anderen Ansible-Rollen.
|
||||||
|
|
||||||
|
## Beispiel-Playbook
|
||||||
|
|
||||||
|
So können Sie die Rolle in Ihr Playbook integrieren:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
- hosts: omada_controller_server
|
||||||
|
become: true
|
||||||
|
roles:
|
||||||
|
- omada-controller
|
||||||
|
```
|
||||||
|
|
||||||
|
Um eine spezifische Version des Controllers zu installieren, können Sie die URL im Playbook oder in Ihren `group_vars` überschreiben:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
- hosts: omada_controller_server
|
||||||
|
become: true
|
||||||
|
vars:
|
||||||
|
omada_controller_deb_url: "https://static.tp-link.com/path/to/specific/version.deb"
|
||||||
|
roles:
|
||||||
|
- omada-controller
|
||||||
|
```
|
||||||
|
|
||||||
|
## Lizenz
|
||||||
|
|
||||||
|
MIT
|
||||||
|
|
||||||
|
## Autor
|
||||||
|
|
||||||
|
Hier können Sie Ihre Informationen eintragen.
|
||||||
11
roles/omada-controller/defaults/main.yml
Normal file
11
roles/omada-controller/defaults/main.yml
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
#SPDX-License-Identifier: MIT-0
|
||||||
|
---
|
||||||
|
# defaults file for roles/omada-controller
|
||||||
|
# roles/omada-controller/defaults/main.yml
|
||||||
|
# URL für die .deb-Datei des Omada SDN Controllers.
|
||||||
|
# Sie können die neueste Version auf der TP-Link-Website finden:
|
||||||
|
# https://www.tp-link.com/de/support/download/omada-software-controller/
|
||||||
|
omada_controller_deb_url: "https://static.tp-link.com/upload/software/2023/202303/20230321/Omada_SDN_Controller_v5.9.31_Linux_x64.deb"
|
||||||
|
|
||||||
|
# Java-Version, die als Abhängigkeit installiert werden soll. Java 8 ist die sicherste Wahl.
|
||||||
|
omada_controller_java_package: "openjdk-8-jre-headless"
|
||||||
8
roles/omada-controller/handlers/main.yml
Normal file
8
roles/omada-controller/handlers/main.yml
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
#SPDX-License-Identifier: MIT-0
|
||||||
|
---
|
||||||
|
# handlers file for roles/omada-controller
|
||||||
|
# roles/omada-controller/handlers/main.yml
|
||||||
|
- name: Restart Omada Controller
|
||||||
|
service:
|
||||||
|
name: tpeap
|
||||||
|
state: restarted
|
||||||
25
roles/omada-controller/meta/main.yml
Normal file
25
roles/omada-controller/meta/main.yml
Normal file
@@ -0,0 +1,25 @@
|
|||||||
|
#SPDX-License-Identifier: MIT-0
|
||||||
|
# roles/omada-controller/meta/main.yml
|
||||||
|
galaxy_info:
|
||||||
|
author: your name
|
||||||
|
description: Installs the TP-Link Omada SDN Controller on Debian-based systems.
|
||||||
|
company: your company (optional)
|
||||||
|
license: license (GPL-2.0-or-later, MIT, etc.)
|
||||||
|
min_ansible_version: 2.9
|
||||||
|
platforms:
|
||||||
|
- name: Debian
|
||||||
|
versions:
|
||||||
|
- buster
|
||||||
|
- bullseye
|
||||||
|
- name: Ubuntu
|
||||||
|
versions:
|
||||||
|
- bionic
|
||||||
|
- focal
|
||||||
|
- jammy
|
||||||
|
galaxy_tags:
|
||||||
|
- networking
|
||||||
|
- omada
|
||||||
|
- tplink
|
||||||
|
- controller
|
||||||
|
|
||||||
|
dependencies: []
|
||||||
44
roles/omada-controller/tasks/main.yml
Normal file
44
roles/omada-controller/tasks/main.yml
Normal file
@@ -0,0 +1,44 @@
|
|||||||
|
#SPDX-License-Identifier: MIT-0
|
||||||
|
---
|
||||||
|
# tasks file for roles/omada-controller
|
||||||
|
# roles/omada-controller/tasks/main.yml
|
||||||
|
- name: Check if Omada Controller package 'tpeap' is already installed
|
||||||
|
dpkg_query:
|
||||||
|
name: tpeap
|
||||||
|
showformat: '${Status}'
|
||||||
|
register: omada_pkg_status
|
||||||
|
failed_when: false
|
||||||
|
changed_when: false
|
||||||
|
|
||||||
|
- name: Install Omada Controller
|
||||||
|
when: "'install ok installed' not in omada_pkg_status.stdout"
|
||||||
|
block:
|
||||||
|
- name: Install dependencies for Omada Controller
|
||||||
|
# Der Controller benötigt Java, jsvc (Java Service Wrapper) und curl.
|
||||||
|
# MongoDB wird vom Controller-Paket selbst mitgebracht und muss nicht separat installiert werden.
|
||||||
|
apt:
|
||||||
|
name:
|
||||||
|
- "{{ omada_controller_java_package }}"
|
||||||
|
- jsvc
|
||||||
|
- curl
|
||||||
|
state: present
|
||||||
|
update_cache: yes
|
||||||
|
register: apt_install
|
||||||
|
retries: 3
|
||||||
|
until: apt_install is success
|
||||||
|
|
||||||
|
# Das .deb-Paket wird direkt von der URL installiert.
|
||||||
|
- name: Install Omada Controller from URL
|
||||||
|
apt:
|
||||||
|
deb: "{{ omada_controller_deb_url }}"
|
||||||
|
state: present
|
||||||
|
register: omada_install
|
||||||
|
retries: 3
|
||||||
|
until: omada_install is success
|
||||||
|
notify: Restart Omada Controller
|
||||||
|
|
||||||
|
- name: Ensure Omada Controller service (tpeap) is running and enabled on boot
|
||||||
|
service:
|
||||||
|
name: tpeap
|
||||||
|
state: started
|
||||||
|
enabled: yes
|
||||||
3
roles/omada-controller/tests/inventory
Normal file
3
roles/omada-controller/tests/inventory
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
#SPDX-License-Identifier: MIT-0
|
||||||
|
localhost
|
||||||
|
|
||||||
3
roles/omada-controller/vars/main.yml
Normal file
3
roles/omada-controller/vars/main.yml
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
#SPDX-License-Identifier: MIT-0
|
||||||
|
---
|
||||||
|
# vars file for roles/omada-controller
|
||||||
Reference in New Issue
Block a user