stoney maintenance: OpenLDAP directory data organisation
Contents
Abstract
This document describes the OpenLDAP directory data organisation for the stoney maintenance service.
Data Organisation
The following chapters explain the data organisation of the stoney cloud OpenLDAP directory, in this case we looking at the maintenance service.
Maintenance
The following LDIF shows the maintenance entry of the whole OpenLDAP directory tree for the stoney cloud:
dn: ou=maintenance,ou=services,dc=stoney-cloud,dc=org objectclass: top objectclass: organizationalUnit ou: maintenance description: The sub tree for the maintenance (configuration management) service.
Maintenance Configuration
The sub tree for the configuration of the maintenance service:
dn: ou=configuration,ou=maintenance,ou=services,dc=stoney-cloud,dc=org objectclass: top objectclass: organizationalUnit ou: configuration description: The sub tree for the configuration of the maintenance service.
Maintenance Configuration Reseller
The sub tree for the reseller specific maintenance service settings:
dn: ou=reseller,ou=configuration,ou=maintenance,ou=services,dc=stoney-cloud,dc=org objectclass: top objectclass: organizationalUnit ou: reseller description: The sub tree for the reseller specific maintenance service settings.
The sub tree for the specific maintenance service settings for the reseller Reseller Ltd. with the uid 4000000.
dn: uid=4000000,ou=reseller,ou=configuration,ou=maintenance,ou=services,dc=stoney-cloud,dc=org objectclass: top objectclass: sstReseller objectclass: sstServiceConfigurationObjectClass uid: 4000000 o: Reseller Ltd. description: The sub tree for the specific maintenance service settings for the reseller Reseller Ltd. with the uid 4000000. sstIsCompany: TRUE sstIsActive: TRUE sstIsDefault: TRUE sstBelongsToResellerUID: 4000000
The following table describes the different attributes:
Attribute | |
|
|
|
Description |
uid | |
|
|
|
A unique integer value with 7 digits or more. For example: 4000000 .
|
o | |
|
|
|
The company name, for example: Reseller Ltd. .
|
description | |
|
|
|
The description of the leaf. |
sstIsCompany | |
|
|
|
Is the entry a company? Either true (yes) or false (no). |
sstIsActive | |
|
|
|
Is the entry active? Either TRUE (yes) or FALSE (no).
|
sstIsDefault | |
|
|
|
Contains the leaf a default entry? Either TRUE (yes) or FALSE (no). If sstIsDefault is set to TRUE , this entry acts as a fall back configuration. In other words: If a reseller doesn't have his own maintenance service configuration, then this on will be used.
|
sstBelongsToResellerUID | |
|
|
|
Stores the reseller UID the leaf belongs to. A unique value with 7 digits or more. For example: 4000000 .
|
Legend:
- x: Mandatory in all cases.
Maintenance Configuration Reseller Notification Settings
The sub tree stores the notification information for the maintenance service for the reseller Reseller Ltd. with the uid 4000000. This information is used as a fallback. The lookup is as follows:
- Unit:
uid=4000003,ou=units,ou=maintenance,ou=services,dc=stoney-cloud,dc=org
. - Customer:
ou=notifications,uid=4000001,ou=customers,ou=configuration,ou=maintenance,ou=services,dc=stoney-cloud,dc=org
. - Reseller:
ou=notifications,uid=4000000,ou=reseller,ou=configuration,ou=maintenance,ou=services,dc=stoney-cloud,dc=org
. - Default Reseller:
ou=notifications,uid=4000000,ou=reseller,ou=configuration,ou=maintenance,ou=services,dc=stoney-cloud,dc=org
.
The idea is, that even if somebody forgot to define something, no maintenance window will be lost or forgotten.
dn: ou=notifications,uid=4000000,ou=reseller,ou=configuration,ou=maintenance,ou=services,dc=stoney-cloud,dc=org objectclass: top objectclass: organizationalUnit objectclass: sstNotificationObjectClass ou: notifications description: The sub tree stores the notification information for the maintenance service for the reseller Reseller Ltd. with the uid 4000000. sstInformPersonUID: 4000002 sstResponsiblePersonUID: 4000002 sstResponsibleDeputyPersonUID: 4000002 sstNotificationWarning: maintenance
The following table describes the different attributes:
Attribute | |
|
|
|
Description |
ou | |
|
|
|
The name of this leaf. |
description | |
|
|
|
The description of the leaf. |
sstInformPersonUID | |
|
|
|
Stores the persons UID the notification will be sent to. For example: 4000002 . This means the information of the person is stored under the dn: uid=4000002,ou=people,dc=stoney-cloud,dc=org .
|
sstResponsiblePersonUID | |
|
|
|
Stores the persons UID, who is responsible for the maintenance. The notification will be sent to this person. For example: 4000002 . This means the information of the person is stored under the dn: uid=4000002,ou=people,dc=stoney-cloud,dc=org .
|
sstResponsibleDeputyPersonUID | |
|
|
|
Stores the UID of the deputy of the person who is responsible for the maintenance. The notification will be sent to this person. For example: 4000002 . This means the information of the person is stored under the dn: uid=4000002,ou=people,dc=stoney-cloud,dc=org .
|
sstNotificationWarning | |
|
|
|
This multi-valued attribute will be used to turn single notifications on or off. Currently, the only allowed value is maintenance . The value (name) corresponds with the template dn. For example: ou=maintenance,ou=templates,uid=4000000,ou=reseller,ou=configuration,ou=maintenance,ou=services,dc=stoney-cloud,dc=org .
|
Legend:
- x: Mandatory in all cases.
Maintenance Configuration Reseller Notification Templates
This sub tree contains the notification templates for the maintenance service for the reseller Reseller Ltd. with the uid 4000000:
dn: ou=templates,uid=4000000,ou=reseller,ou=configuration,ou=maintenance,ou=services,dc=stoney-cloud,dc=org objectclass: top objectclass: organizationalUnit ou: templates description: This sub tree contains the templates for the maintenance service for the reseller Reseller Ltd. with the uid 4000000.
Maintenance Configuration Customers
The sub tree for the customers specific maintenance service settings:
dn: ou=customers,ou=configuration,ou=maintenance,ou=services,dc=stoney-cloud,dc=org objectclass: top objectclass: organizationalUnit ou: customer description: The sub tree for the customer specific maintenance service settings.
The sub tree for the specific maintenance service settings for the customer Customer Ltd. with the uid 4000001.
dn: uid=4000001,ou=customers,ou=configuration,ou=maintenance,ou=services,dc=stoney-cloud,dc=org objectclass: top objectclass: sstCustomer objectclass: sstServiceConfigurationObjectClass uid: 4000001 o: Customer Ltd. description: The sub tree for the specific maintenance service settings for the customer Customer Ltd. with the uid 4000001. sstIsCompany: TRUE sstIsActive: TRUE sstBelongsToResellerUID: 4000000 sstBelongsToCustomerUID: 4000001
The following table describes the different attributes:
Attribute | |
|
|
|
Description |
uid | |
|
|
|
A unique integer value with 7 digits or more. For example: 4000001 .
|
o | |
|
|
|
The company name, for example: Customer Ltd. .
|
description | |
|
|
|
The description of the leaf. |
sstIsCompany | |
|
|
|
Is the entry a company? Either true (yes) or false (no). |
sstIsActive | |
|
|
|
Is the entry active? Either TRUE (yes) or FALSE (no).
|
sstBelongsToResellerUID | |
|
|
|
Stores the reseller UID the leaf belongs to. A unique value with 7 digits or more. For example: 4000000 .
|
sstBelongsToResellerUID | |
|
|
|
Stores the customer UID the leaf belongs to. A unique value with 7 digits or more. For example: 4000001 .
|
Legend:
- x: Mandatory in all cases.
Maintenance Configuration Customers Notification Settings
The sub tree stores the notification information for the maintenance service for the customer Customer Ltd. with the uid 4000001. This information is used as a fallback. The lookup is as follows:
- Unit:
uid=4000003,ou=units,ou=maintenance,ou=services,dc=stoney-cloud,dc=org
. - Customer:
ou=notifications,uid=4000001,ou=customers,ou=configuration,ou=maintenance,ou=services,dc=stoney-cloud,dc=org
. - Reseller:
ou=notifications,uid=4000000,ou=reseller,ou=configuration,ou=maintenance,ou=services,dc=stoney-cloud,dc=org
. - Default Reseller:
ou=notifications,uid=4000000,ou=reseller,ou=configuration,ou=maintenance,ou=services,dc=stoney-cloud,dc=org
.
The idea is, that even if somebody forgot to define something, no maintenance window will be lost or forgotten.
dn: ou=notifications,uid=4000001,ou=customers,ou=configuration,ou=maintenance,ou=services,dc=stoney-cloud,dc=org objectclass: top objectclass: organizationalUnit objectclass: sstNotificationObjectClass ou: notifications description: The sub tree stores the notification information for the maintenance service for the customer Customer Ltd. with the uid 4000001. sstInformPersonUID: 4000002 sstResponsiblePersonUID: 4000002 sstResponsibleDeputyPersonUID: 4000002 sstNotificationWarning: maintenance
The following table describes the different attributes:
Attribute | |
|
|
|
Description |
ou | |
|
|
|
The name of this leaf. |
description | |
|
|
|
The description of the leaf. |
sstInformPersonUID | |
|
|
|
Stores the persons UID the notification will be sent to. For example: 4000002 . This means the information of the person is stored under the dn: uid=4000002,ou=people,dc=stoney-cloud,dc=org .
|
sstResponsiblePersonUID | |
|
|
|
Stores the persons UID, who is responsible for the maintenance. The notification will be sent to this person. For example: 4000002 . This means the information of the person is stored under the dn: uid=4000002,ou=people,dc=stoney-cloud,dc=org .
|
sstResponsibleDeputyPersonUID | |
|
|
|
Stores the UID of the deputy of the person who is responsible for the maintenance. The notification will be sent to this person. For example: 4000002 . This means the information of the person is stored under the dn: uid=4000002,ou=people,dc=stoney-cloud,dc=org .
|
sstNotificationWarning | |
|
|
|
This multi-valued attribute will be used to turn single notifications on or off. Currently, the only allowed value is maintenance . The value (name) corresponds with the template dn. For example: ou=maintenance,ou=templates,uid=4000001,ou=customers,ou=configuration,ou=maintenance,ou=services,dc=stoney-cloud,dc=org .
|
Legend:
- x: Mandatory in all cases.
Maintenance Configuration Customers Notification Templates
This sub tree contains the notification templates for the maintenance service for the customer Customer Ltd. with the uid 4000001:
dn: ou=templates,uid=4000001,ou=customers,ou=configuration,ou=maintenance,ou=services,dc=stoney-cloud,dc=org objectclass: top objectclass: organizationalUnit ou: templates description: This sub tree contains the templates for the maintenance service for the customer Customer Ltd. with the uid 4000001.
Maintenance Units
The sub tree for the units of the maintenance service:
dn: ou=units,ou=maintenance,ou=services,dc=stoney-cloud,dc=org objectclass: top objectclass: organizationalUnit ou: units description: The sub tree for the units of the maintenance service.
Maintenance Unit Example
Each maintenance unit has its own leaf. A monthly maintenance window is the norm.
Maintenance window every month on the second Tuesday of the month between 09:30 and 10:30, starting on Tuesday, the 14th of April 2015.
The sstBelongsToServiceUID lookup is as follows:
- Virtual Machine:
ou=virtual machines,ou=virtualization,ou=services,dc=stoney-cloud,dc=org
. - Dedicated Server:
ou=Dedicated Server,ou=services,dc=stoney-cloud,dc=org
(not implemented yet). - External Server:
ou=External Server,ou=services,dc=stoney-cloud,dc=org
(not implemented yet).
The idea is, that we presume, that most of the maintenance units are virtual machines running on our local stoney cloud installation.
In the example below, the service UID sstBelongsToServiceUID: 1234567
points to virtual machine with the b543f88f-dffe-426f-86d3-c7ff85c16d2a
and the uid: 1234567
.
objectclass: top objectclass: sstMaintenanceObjectClass objectclass: sstRelationship uid: 4000003 description: The maintenance leaf for the virtual machine with the uid 1234567. sstIsActive: TRUE sstServicePriority: 3 sstCronRepeatType: monthly # repeat type is monthly sstCronInterval: 1 # repeat every month sstCronStartDate: 20150414 # starting on Monday, the 14th of April 2015 sstCronOccurrenceInMonth: 2 # second occurence sstCronDayOfWeek: 1 # Monday sstCronMinute: 30 # 30 Minutes past the hour sstCronHour: 9 # 9 am sstCronDuration: 60 # 60 minutes (one hour) sstInformPersonUID: 4000002 sstResponsiblePersonUID: 4000002 sstResponsibleDeputyPersonUID: 4000002 sstNotificationWarning: maintenance sstBelongsToServiceUID: 1234567 sstBelongsToResellerUID: 4000000 sstBelongsToCustomerUID: 4000001
Other possible maintenance windows range from daily maintenance windows to bi yearly maintenance windows. The following examples just show the relevant attributes.
Maintenance window every day between 09:30 and 10:30, starting on Monday, the 5th of January 2015.
sstCronRepeatType: daily # repeat type is daily sstCronInterval: 1 # repeated every day sstCronStartDate: 20150105 # starting on the fifth of January 2015 sstCronMinute: 30 # 30 Minutes past the hour sstCronHour: 9 # 9 am sstCronDuration: 60 # 60 minutes (one hour)
Maintenance window every second day between 09:30 and 10:30, starting on Monday, the 5th of January 2015.
sstCronRepeatType: daily # repeat type is daily sstCronInterval: 2 # repeat every second day sstCronStartDate: 20150105 # starting on the fifth of January 2015 sstCronMinute: 30 # 30 Minutes past the hour sstCronHour: 9 # 9 am sstCronDuration: 60 # 60 minutes (one hour)
Maintenance window every two weeks on Monday between 09:30 and 10:30, starting on Monday, the 13th of April 2015.
sstCronRepeatType: weekly # repeat type is weekly sstCronInterval: 2 # repeat every second week sstCronStartDate: 20150413 # starting on Monday, the 13th of April 2015 sstCronDayOfWeek: 1 # on Monday sstCronMinute: 30 # 30 Minutes past the hour sstCronHour: 9 # 9 am sstCronDuration: 60 # 60 minutes (one hour)
Maintenance window every six months on the 15. of the month between 09:30 and 10:30, starting on Wednesday, the 15th of April 2015.
sstCronRepeatType: monthly # repeat type is monthly sstCronInterval: 6 # repeat every six months sstCronStartDate: 20150415 # starting on Wednesday, the 15th of April 2015 sstCronDayOfMonth: 15 # on the 15th day of the month sstCronMinute: 30 # 30 Minutes past the hour sstCronHour: 9 # 9 am sstCronDuration: 60 # 60 minutes (one hour)
Maintenance window every six months on the third Monday of the month between 09:30 and 10:30, starting on Monday, the 20th of April 2015.
sstCronRepeatType: monthly # repeat type is monthly sstCronInterval: 6 # repeat every six months sstCronStartDate: 20150420 # starting on Monday, the 20th of April 2015 sstCronOccurrenceInMonth: 3 # third occurence sstCronDayOfWeek: 1 # Monday sstCronMinute: 30 # 30 Minutes past the hour sstCronHour: 9 # 9 am sstCronDuration: 60 # 60 minutes (one hour)
Maintenance window every year on the 15th of March between 09:30 and 10:30, starting on Wednesday, the 11th of March 2015.
sstCronRepeatType: yearly # repeat type is yearly sstCronInterval: 1 # repeat every year sstCronStartDate: 20150311 # starting on Wednesday, the 11th of March 2015 sstCronDayOfMonth: 11 # on the 11th day of the month sstCronMinute: 30 # 30 Minutes past the hour sstCronHour: 9 # 9 am sstCronDuration: 60 # 60 minutes (one hour)
Maintenance window every year on the third Monday of March between 09:30 and 10:30, starting on Monday, the 16th of March 2015.
sstCronRepeatType: yearly # repeat type is yearly sstCronInterval: 1 # repeat every year sstCronStartDate: 20150316 # starting on Monday, the 16th of March 2015 sstCronMonthOfyear: 3 # third month of the year sstCronOccurrenceInMonth: 3 # third occurence sstCronDayOfWeek: 1 # Monday sstCronMinute: 30 # 30 Minutes past the hour sstCronHour: 9 # 9 am sstCronDuration: 60 # 60 minutes (one hour)
Maintenance window every two years on the third Monday of March between 09:30 and 10:30, starting on Monday, the 16th of March 2015.
sstCronRepeatType: yearly # repeat type is yearly sstCronInterval: 2 # repeat every two years sstCronStartDate: 20150316 # starting on Monday, the 16th of March 2015 sstCronMonthOfyear: 3 # third month of the year sstCronOccurrenceInMonth: 3 # third occurence sstCronDayOfMonth: 1 # Monday sstCronMinute: 30 # 30 Minutes past the hour sstCronHour: 9 # 9 am sstCronDuration: 60 # 60 minutes (one hour)
The following table describes the different attributes:
Attribute | |
|
|
|
Description |
uid | |
|
|
|
A unique integer value with 7 digits or more. For example: 4000003 .
|
description | |
|
|
|
The description of the leaf. |
sstIsActive | |
|
|
|
Is the entry active? Either TRUE (yes) or FALSE (no).
|
sstServicePriority | |
|
|
|
The maintenance service level. The possible maintenance service levels:
For more information on these maintenance service levels, visit stepping stone GmbH web page. |
sstCronRepeatType | |
|
|
|
How often is a cron job to be repeated. Valid values are: daily , weekly , monthly , yearly .
|
sstCronInterval | |
|
|
|
The interval of a cron job. This attribute is dependant on the attribute sstCronRepeatType. Valid values are: 1 - 12 . For example: 2 could be every two days, weeks, months or years (depending on the value of the attribute sstCronRepeatType .
|
sstCronStartDate | |
|
|
|
The first time a cron job is executed. This date is stored in the form of [YYYY][MM][DD] (ISO 8601). For example: 2010314 (the 14th of March 2015).
|
sstCronDuration | |
|
|
|
The duration of the maintenance window in minutes. Valid values are: 15 - 1440 (15 minutes to 24 hours). For example: 60 , which means 60 minutes (one hour).
|
sstCronMinute | |
|
|
|
The number of minutes past the hour. Valid values are: 0 - 59 . For example: 30 , which means 60 minutes past the hour.
|
sstCronHour | |
|
|
|
The number of hours. Valid values are: 0 - 23 . For example: 9 , which means 9 am, while 17 means 5 pm.
|
sstCronDayOfWeek | |
|
|
|
Day of week (0 - 6 ), where Sunday is 0 . For example: 1 , which means Monday.
|
sstCronDayOfMonth | |
|
|
|
The day of the month a cron job is to be executed. Valid values are: 1 - 31 . For example: 3 is the third of the month.
|
sstCronMonthOfyear | |
|
|
|
The month of the year a cron job is to be executed. Valid values are: 1 - 12 . For example: 3 would be March.
|
sstCronOccurrenceInMonth | |
|
|
|
The occurence of the day in a month a cron job is to be executed. Valid values are: 1 - 5 . For example: 3 would be the third occurence.
|
sstInformPersonUID | |
|
|
|
Stores the UID of the person to be informed if necessary. This UID can be used to look up the persons mail address, preferred language, name, surname or other information. |
sstResponsiblePersonUID | |
|
|
|
Stores the UID of the person who is responsible for the system or service. This UID can be used to look up the persons mail address, preferred language, name, surname or other information. |
sstResponsibleDeputyPersonUID | |
|
|
|
Stores the UID of the deputy of the person who is responsible for the system or service. This UID can be used to look up the persons mail address, preferred language, name, surname or other information. |
sstNotificationWarning | |
|
|
|
This multi-valued attribute will be used to turn single notifications on or off. Currently, the only allowed value is maintenance . The value (name) corresponds with the template dn.
|
sstBelongsToServiceUID | |
|
|
|
Stores the UID of the service the leaf belongs to. This UID can be used to look up other information. A unique value with 7 digits or more. 4000123 .
|
sstBelongsToResellerUID | |
|
|
|
Stores the reseller UID the leaf belongs to. A unique value with 7 digits or more. For example: 4000000 .
|
sstBelongsToCustomerUID | |
|
|
|
Stores the customer UID the leaf belongs to. A unique value with 7 digits or more. For example: 4000001 .
|
Legend:
- x: Mandatory in all cases.