CI-Modellierung mit YAML im OTOBO-Ticketsystem
CI-Modellierung mit YAML im OTOBO-Ticketsystem
Abschnitt betitelt „CI-Modellierung mit YAML im OTOBO-Ticketsystem“Dieses Kapitel zeigt, wie Sie Ihre Configuration Items (CIs) im OTOBO-Ticketsystem per YAML definieren und erweitern – von der Seiten- und Layout-Struktur bis zu dynamischen Feldern und Feldtypen.
1. Aufbau von CI-Definitionen
Abschnitt betitelt „1. Aufbau von CI-Definitionen“Jede CI-Definition in OTOBO besteht aus mehreren Hauptbestandteilen:
- Class: Name: <CI-Klasse> Categories: - All - <Weitere Kategorien> NumberModule: AutoIncrement PermissionGroup: itsm-configitem VersionStringModule: Incremental Definition: | Pages: - Name: Summary Layout: Columns: 3 ColumnWidth: 1fr 1fr 1fr Interfaces: - Agent - Customer Content: - Section: General Fields::General Information RowStart: 1 ColumnStart: 1 - Section: ITSM Model::Model RowStart: 1 ColumnStart: 2 - Section: CMDB Description::Description RowStart: 2 ColumnStart: 1 ColumnSpan: 2 DynamicFields: { … }1.1 Pages
Abschnitt betitelt „1.1 Pages“- Name: Bezeichnung des Tabs im Agent-Zoom.
- Interfaces: Steuerung, wer den Tab sieht (Agent, Customer, …).
- Content: Liste von Sektionen, mit Position (RowStart, ColumnStart, ggf. Span).
1.2 Layout
Abschnitt betitelt „1.2 Layout“- Columns: Anzahl der Spalten im Tab.
- ColumnWidth: Proportionale Breitenangaben (z. B.
1fr 2fr 1fr).
1.3 Rollen (Roles)
Abschnitt betitelt „1.3 Rollen (Roles)“Rollen definieren wiederverwendbare Sektionen und Feldlisten:
- Definition: | Sections: General Information: Content: - Header: Allgemeine Informationen - DF: System-Name - DF: System-Version Relations: Type: ConfigItemLinks Header: Beziehungen RoleName: CMDB General Fields- RoleName: Eindeutiger Name der Rolle.
- Sections: Enthält eine oder mehrere Sektionen mit Feldreferenzen (
DF:).
2. Dynamische Felder (DynamicFields) und Feldtypen
Abschnitt betitelt „2. Dynamische Felder (DynamicFields) und Feldtypen“Mit DynamicFields erweitern Sie Ihre CI-Klassen um individuelle Attribute. Jedes Feld erhält Name, Typ und Konfiguration:
DynamicFields: DynamicFieldName: FieldType: Text Label: My Label Name: System-Name ObjectType: ITSMConfigItem Config: DefaultValue: 'demo' MultiValue: '0' PossibleNone: '1' Tooltip: ''
System-LifecycleStatus: FieldType: Dropdown Label: Lifecycle status of system Name: System-LifecycleStatus ObjectType: ITSMConfigItem Config: DefaultValue: '' MultiValue: '0' PossibleNone: '1' PossibleValues: demo: demo productive: productive Tooltip: ''2.1 Wichtige Feldtypen
Abschnitt betitelt „2.1 Wichtige Feldtypen“| FieldType | Beschreibung |
|---|---|
| Text | Einfaches Einzeilig-Feld |
| TextArea | Mehrzeiliges Freitextfeld |
| Date | Datumsfeld (mit Einschränkungen via YearsInPast/...) |
| Dropdown | Auswahlfeld (Single/Multi via MultiValue) |
| Agent | LDAP-User/Agent Lookup |
| ConfigItem | Verknüpfung zu anderem CI (Relationstyp definierbar) |
| ScriptTemplateToolkit | Berechnetes Feld via Template (z. B. Summen) |
2.2 Konfigurationsoptionen
Abschnitt betitelt „2.2 Konfigurationsoptionen“- DefaultValue: Vorgabewert bei Neuanlage.
- MultiValue:
'0'(einzelne Auswahl) oder'1'(mehrfach). - PossibleNone:
'1', um leere Auswahl zu erlauben. - PossibleValues: Key-Value-Paare für Dropdown-Felder.
- EditFieldMode: z. B.
Dropdown,AutoComplete. - ReferenceFilterList, ReferencedObjectType: Für Lookup-Felder.
3. Beispiel
Abschnitt betitelt „3. Beispiel“- Class: Name: CIName Categories: - All - IT NumberModule: AutoIncrement PermissionGroup: itsm-configitem VersionStringModule: Incremental Definition: | Pages: - Name: Intro Layout: Columns: 2 ColumnWidth: 1fr 1fr Interfaces: - Agent Content: - Section: CMDB General Fields::Information RowStart: 1 ColumnStart: 1 - Section: CMDB General Fields::Risks RowStart: 2 ColumnStart: 1 - Name: Details Layout: Columns: 1 ColumnWidth: 1fr Interfaces: - Agent Content: - Section: CMDB General Fields::Software RowStart: 1 ColumnStart: 1 DynamicFields: System-Name: { … } System-Version: { … } System-LifecycleStatus: { … }4. Tipps und Best Practices
Abschnitt betitelt „4. Tipps und Best Practices“- Modularität: Nutzen Sie Rollen für wiederkehrende Sektionen.
- Übersichtlichkeit: Gruppieren Sie verwandte Felder in eigene Pages.
- Dokumentation: Kommentieren Sie Ihre YAML-Dateien und pflegen Sie Versionstrigger.
- Testing: Validieren Sie neue Felder zuerst in einer Testinstanz.
Mit diesem Aufbau können Sie die OTOBO-CMDB flexibel an Ihre Organisationsanforderungen anpassen und stets transparent halten.