Skip to main content.

Ordonnanceurs < Les incontournables < Autosys

Administration

Installation Windows/MSDE

Pour rappel, MSDE est la version gratuite mais limitée de MS SQL. Le nombre de connexions est retreint et ce type d’installation ne peut être utile que dans le cadre de tests.

Privilèges

Autosys intègre la gestion des droits e-Trust, l’accès au composants et les actions peuvent être affectées à des groupes et à des utilisateurs.

Fuseaux horaires sur Autosys

Autosys utilise 2 sources d’informations pou sa gestion du timezone : la configuration du système et, si le timezone est inconnu, sa base de données dans laquelle un système d’alias permet de lier des zones géographiques (ville, pays...) a une définition Posix.

Rubriques

Installations

Serveur Solaris

Configuration

Ajouter les notifications

En cas de problème sur la base ou sur les serveurs d’évènements on peut exécuter un batch.

Changer les délais avant alarme

Il est possible de modifier les temps afin que des alarmes ne soient par remontées trop tôt ou inversement être averti dés qu’un problème réseau ou autre intervient. Par défaut, on utilise AUTO_ALARM, mais la gestion peut être beaucoup plus fine.

Gestion de calendriers

Autosys n’utilise pas de système de règle lors de l’ordonnancement, les jobs utilisent un calendrier utilisant les règles qu’au moment de la définition.

Calcul d’un calendrier à partir de règles

Instances multiples

Une instance Autosys correspond à une event server (base de données), un event processor (un ou plusieurs demon) et un port TCP particulier pour la communication. Pour réduire les risques de production, il est important de pouvoir séparer sa production en entités moins volumineuses. Le découpage devra donc se faire en groupes distinct et, si possible, sans communication entre les séquences de chacun de ces groupes. Il peut pourtant y avoir la nécessité d’échanger des informations entre les instances, Autosys fournit une méthode mais qui est limité et qui peut s’avérer difficile ou impossible à mettre en place.

Schéma de Base de données

ALAMODE

! Champs ! Type ! Taille !  ! TYPE | VARCHAR2 | 20 | not null  ! INT_VAL | NUMBER | 22 |  ! STR_VAL | VARCHAR2 | 255 |

ALARM

! Champs ! Type ! Taille !  ! EOID | VARCHAR2 | 12 | not null  ! ALARM | NUMBER | 22 |  ! ALARM_TIME | NUMBER | 22 |  ! JOB_NAME | VARCHAR2 | 30 |  ! JOID | NUMBER | 22 |  ! EVT_NUM | NUMBER | 22 |  ! STATE | NUMBER | 22 |  ! THE_USER | VARCHAR2 | 60 |  ! STATE_TIME | NUMBER | 22 |  ! EVENT_COMMENT | VARCHAR2 | 255 |  ! LEN | NUMBER | 22 |  ! RESPONSE | LONG | 0 |

AUDIT_INFO

! Champs ! Type ! Taille !  ! AUDIT_INFO_NUM | NUMBER | 22 | not null  ! ENTITY | VARCHAR2 | 80 | not null  ! TIME | NUMBER | 22 | not null  ! TYPE | VARCHAR2 | 1 | not null

AVG_JOB_RUNS

! Champs ! Type ! Taille !  ! JOID | NUMBER | 22 | not null  ! AVG_RUNTIME | NUMBER | 22 |  ! NUM_RUNS | NUMBER | 22 |

CALENDAR

! Champs ! Type ! Taille !  ! NAME | VARCHAR2 | 30 | not null  ! DAY | DATE | 7 | not null

CHASE

! Champs ! Type ! Taille !  ! NSTART | NUMBER | 22 | not null  ! JOID | NUMBER | 22 | not null  ! JOB_NAME | VARCHAR2 | 30 |  ! JOB_TYPE | CHAR | 1 |  ! STATUS | NUMBER | 22 |  ! RUN_MACHINE | VARCHAR2 | 30 |  ! PID | NUMBER | 22 |  ! JC_PID | NUMBER | 22 |

CONFIG

! Champs ! Type ! Taille !  ! FLD | VARCHAR2 | 30 | not null  ! CODE | CHAR | 1 | not null  ! TEXT | VARCHAR2 | 30 |

CRED

! Champs ! Type ! Taille !  ! CRED_DOMAIN | VARCHAR2 | 8 | not null  ! DOMAIN_NAME | VARCHAR2 | 64 | not null  ! PRINCIPAL | VARCHAR2 | 64 | not null  ! CRED_VALUE | VARCHAR2 | 64 |  ! OWNER | VARCHAR2 | 80 |

EVENT

! Champs ! Type ! Taille !  ! EOID | VARCHAR2 | 12 | not null  ! JOID | NUMBER | 22 |  ! JOB_NAME | VARCHAR2 | 30 |  ! BOX_NAME | VARCHAR2 | 30 |  ! AUTOSERV | VARCHAR2 | 30 |  ! PRIORITY | NUMBER | 22 |  ! EVENT | NUMBER | 22 |  ! STATUS | NUMBER | 22 |  ! ALARM | NUMBER | 22 |  ! EVENT_TIME_GMT | NUMBER | 22 |  ! EXIT_CODE | NUMBER | 22 |  ! MACHINE | VARCHAR2 | 30 |  ! PID | NUMBER | 22 |  ! JC_PID | NUMBER | 22 |  ! RUN_NUM | NUMBER | 22 |  ! NTRY | NUMBER | 22 |  ! TEXT | VARCHAR2 | 255 |  ! QUE_PRIORITY | NUMBER | 22 |  ! STAMP | DATE | 7 |  ! EVT_NUM | NUMBER | 22 |  ! QUE_STATUS | NUMBER | 22 | not null  ! QUE_STATUS_STAMP | DATE | 7 | not null

EXT_JOB

! Champs ! Type ! Taille !  ! EXT_JOB_NAME | VARCHAR2 | 30 | not null  ! EXT_AUTOSERV | VARCHAR2 | 4 | not null  ! STATUS | NUMBER | 22 | not null  ! STATUS_TIME | NUMBER | 22 | not null  ! RUN_NUM | NUMBER | 22 |  ! NTRY | NUMBER | 22 |  ! EXIT_CODE | NUMBER | 22 |

GLOB

! Champs ! Type ! Taille !  ! GLO_NAME | VARCHAR2 | 30 | not null  ! VALUE | VARCHAR2 | 100 |  ! VALUE_SET_TIME | NUMBER | 22 |  ! OWNER | VARCHAR2 | 80 |  ! PERMISSION | VARCHAR2 | 30 |

INTCODES

! Champs ! Type ! Taille !  ! FLD | VARCHAR2 | 30 | not null  ! CODE | NUMBER | 22 | not null  ! TEXT | VARCHAR2 | 30 |

JOB

! Champs ! Type ! Taille !  ! JOID | NUMBER | 22 | not null  ! JOB_NAME | VARCHAR2 | 30 | not null  ! JOB_TYPE | CHAR | 1 |  ! BOX_JOID | NUMBER | 22 |  ! OWNER | VARCHAR2 | 80 |  ! PERMISSION | VARCHAR2 | 30 |  ! MACHINE | VARCHAR2 | 80 |  ! N_RETRYS | NUMBER | 22 |  ! AUTO_HOLD | NUMBER | 22 |  ! COMMAND | VARCHAR2 | 255 |  ! CONDITION | VARCHAR2 | 255 |  ! DATE_CONDITIONS | NUMBER | 22 |  ! DAYS_OF_WEEK | VARCHAR2 | 80 |  ! RUN_CALENDAR | VARCHAR2 | 30 |  ! EXCLUDE_CALENDAR | VARCHAR2 | 30 |  ! START_TIMES | VARCHAR2 | 255 |  ! START_MINS | VARCHAR2 | 255 |  ! RUN_WINDOW | VARCHAR2 | 20 |  ! DESCRIPTION | VARCHAR2 | 255 |  ! TERM_RUN_TIME | NUMBER | 22 |  ! BOX_TERMINATOR | NUMBER | 22 |  ! JOB_TERMINATOR | NUMBER | 22 |  ! STD_IN_FILE | VARCHAR2 | 80 |  ! STD_OUT_FILE | VARCHAR2 | 80 |  ! STD_ERR_FILE | VARCHAR2 | 80 |  ! WATCH_FILE | VARCHAR2 | 80 |  ! WATCH_FILE_MIN_SIZE | NUMBER | 22 |  ! WATCH_INTERVAL | NUMBER | 22 |  ! MIN_RUN_ALARM | NUMBER | 22 |  ! MAX_RUN_ALARM | NUMBER | 22 |  ! ALARM_IF_FAIL | NUMBER | 22 |  ! CHK_FILES | VARCHAR2 | 255 |  ! FREE_PROCS | NUMBER | 22 |  ! PROFILE | VARCHAR2 | 80 |  ! HEARTBEAT_INTERVAL | NUMBER | 22 |  ! JOB_LOAD | NUMBER | 22 |  ! PRIORITY | NUMBER | 22 |  ! AUTO_DELETE | NUMBER | 22 |  ! NUMERO | NUMBER | 22 |  ! MAX_EXIT_SUCCESS | NUMBER | 22 |  ! BOX_SUCCESS | VARCHAR2 | 255 |  ! BOX_FAILURE | VARCHAR2 | 255 |

JOB2

! Champs ! Type ! Taille !  ! JOID | NUMBER | 22 | not null  ! COMMAND2 | VARCHAR2 | 255 |  ! CONDITION2 | VARCHAR2 | 255 |  ! EXTERNAL_APP | VARCHAR2 | 40 |  ! TIMEZONE | VARCHAR2 | 50 |

JOB_COND

! Champs ! Type ! Taille !  ! COND_MODE | NUMBER | 22 | not null  ! JOID | NUMBER | 22 | not null  ! INDX | NUMBER | 22 | not null  ! TYPE | CHAR | 1 |  ! COND_JOB_NAME | VARCHAR2 | 30 |  ! COND_JOB_AUTOSERV | VARCHAR2 | 30 |  ! OPERATOR | VARCHAR2 | 2 |  ! VALUE | NUMBER | 22 |  ! INDX_PTR | NUMBER | 22 |  ! TEST_GLOVALUE | VARCHAR2 | 100 |

JOB_RUNS

! Champs ! Type ! Taille !  ! JOID | NUMBER | 22 | not null  ! RUN_NUM | NUMBER | 22 | not null  ! NTRY | NUMBER | 22 | not null  ! STARTIME | NUMBER | 22 |  ! ENDTIME | NUMBER | 22 |  ! STATUS | NUMBER | 22 |  ! EXIT_CODE | NUMBER | 22 |  ! RUNTIME | NUMBER | 22 |  ! EVT_NUM | NUMBER | 22 |  ! MACHINE | VARCHAR2 | 80 |

JOB_STATUS

! Champs ! Type ! Taille !  ! JOID | NUMBER | 22 | not null  ! STATUS | NUMBER | 22 |  ! STATUS_TIME | NUMBER | 22 |  ! RUN_NUM | NUMBER | 22 |  ! LAST_START | NUMBER | 22 |  ! LAST_END | NUMBER | 22 |  ! NEXT_START | NUMBER | 22 |  ! RUN_WINDOW_END | NUMBER | 22 |  ! NTRY | NUMBER | 22 |  ! APPL_NTRY | NUMBER | 22 |  ! TIME_OK | NUMBER | 22 |  ! EXIT_CODE | NUMBER | 22 |  ! RUN_MACHINE | VARCHAR2 | 80 |  ! QUE_NAME | VARCHAR2 | 62 |  ! RUN_PRIORITY | NUMBER | 22 |  ! NEXT_PRIORITY | NUMBER | 22 |  ! PID | NUMBER | 22 |  ! JC_PID | NUMBER | 22 |  ! LAST_HEARTBEAT | NUMBER | 22 |  ! EVT_NUM | NUMBER | 22 |  ! OVER_NUM | NUMBER | 22 |

KEYMASTER

! Champs ! Type ! Taille !  ! HOSTID | VARCHAR2 | 32 | not null  ! HOSTNAME | VARCHAR2 | 64 | not null  ! PRODUCT | VARCHAR2 | 31 | not null  ! TYPE | CHAR | 1 | not null  ! SERVER | CHAR | 12 | not null  ! DAKEY | VARCHAR2 | 255 | not null

LAST_EOID_COUNTER

! Champs ! Type ! Taille !  ! COUNTER | CHAR | 7 | not null

MACHINE

! Champs ! Type ! Taille !  ! NAME | VARCHAR2 | 80 | not null  ! PARENT_NAME | VARCHAR2 | 80 | not null  ! QUE_NAME | VARCHAR2 | 160 |  ! TYPE | CHAR | 1 |  ! FACTOR | FLOAT | 22 |  ! MAX_LOAD | NUMBER | 22 |

MONBRO

! Champs ! Type ! Taille !  ! ALARM_VERIF | NUMBER | 22 |  ! ALARM | NUMBER | 22 |  ! ALL_EVENTS | NUMBER | 22 |  ! ALL_STATUS | NUMBER | 22 |  ! RUNNING | NUMBER | 22 |  ! SUCCESS | NUMBER | 22 |  ! FAILURE | NUMBER | 22 |  ! TERMINATE | NUMBER | 22 |  ! STARTING | NUMBER | 22 |  ! RESTART | NUMBER | 22 |  ! ON_ICE | NUMBER | 22 |  ! ON_HOLD | NUMBER | 22 |  ! JOB_FILTER | CHAR | 1 |  ! JOB_NAME | VARCHAR2 | 30 |  ! CURRUN | NUMBER | 22 |  ! AFTER_TIME | VARCHAR2 | 20 |  ! AUTOSERV | VARCHAR2 | 30 |  ! NAME | VARCHAR2 | 30 | not null  ! MON_MODE | CHAR | 1 |  ! OUTPUT | CHAR | 1 |  ! SOUND | NUMBER | 22 |

MSG_ACK

! Champs ! Type ! Taille !  ! EOID | VARCHAR2 | 12 | not null  ! WHO | VARCHAR2 | 30 |  ! TIMEIN | NUMBER | 22 |  ! TIMEACK | NUMBER | 22 |  ! COMM | VARCHAR2 | 80 |

NEXT_OID

! Champs ! Type ! Taille !  ! OID | NUMBER | 22 |  ! FIELD | VARCHAR2 | 31 | not null

NEXT_RUN_NUM

! Champs ! Type ! Taille !  ! RUN_NUM | NUMBER | 22 |

OVER_JOB

! Champs ! Type ! Taille !  ! JOID | NUMBER | 22 | not null  ! MACHINE | VARCHAR2 | 80 |  ! N_RETRYS | NUMBER | 22 |  ! AUTO_HOLD | NUMBER | 22 |  ! COMMAND | VARCHAR2 | 255 |  ! CONDITION | VARCHAR2 | 255 |  ! DATE_CONDITIONS | NUMBER | 22 |  ! DAYS_OF_WEEK | VARCHAR2 | 80 |  ! RUN_CALENDAR | VARCHAR2 | 30 |  ! EXCLUDE_CALENDAR | VARCHAR2 | 30 |  ! START_TIMES | VARCHAR2 | 255 |  ! START_MINS | VARCHAR2 | 255 |  ! RUN_WINDOW | VARCHAR2 | 20 |  ! TERM_RUN_TIME | NUMBER | 22 |  ! PROFILE | VARCHAR2 | 80 |  ! STD_IN_FILE | VARCHAR2 | 80 |  ! STD_OUT_FILE | VARCHAR2 | 80 |  ! STD_ERR_FILE | VARCHAR2 | 80 |  ! WATCH_FILE | VARCHAR2 | 80 |  ! WATCH_FILE_MIN_SIZE | NUMBER | 22 |  ! WATCH_INTERVAL | NUMBER | 22 |  ! MIN_RUN_ALARM | NUMBER | 22 |  ! MAX_RUN_ALARM | NUMBER | 22 |  ! OVER_NUM | NUMBER | 22 | not null  ! ENTITY | VARCHAR2 | 80 |  ! RUN_NUM | NUMBER | 22 |  ! SETUP_TIME | NUMBER | 22 |  ! START_TIME | NUMBER | 22 |

REQ_JOB

! Champs ! Type ! Taille !  ! JOB_NAME | VARCHAR2 | 30 | not null  ! REQ_AUTOSERV | VARCHAR2 | 4 | not null  ! REQ_JOB_NAME | VARCHAR2 | 30 | not null  ! PENDING_DELETE | CHAR | 1 |

SEND_BUFFER

! Champs ! Type ! Taille !  ! EOID | VARCHAR2 | 12 | not null  ! SERVERDB | VARCHAR2 | 40 | not null  ! STAMP | DATE | 7 |  ! SEND_STATUS | NUMBER | 22 |

SVARCHIVE_TBL

! Champs ! Type ! Taille !  ! JOID | NUMBER | 22 | not null  ! RUN_NUM | NUMBER | 22 | not null  ! NTRY | NUMBER | 22 | not null  ! AVG_MEM_USAGE | NUMBER | 22 | not null  ! CPU_USAGE | NUMBER | 22 | not null  ! IO_READS | NUMBER | 22 | not null  ! IO_WRITES | NUMBER | 22 | not null  ! END_TIME | NUMBER | 22 | not null

TIMEZONES

! Champs ! Type ! Taille !  ! NAME | VARCHAR2 | 50 | not null  ! TYPE | CHAR | 1 | not null  ! ZONE | VARCHAR2 | 50 | not null

WAIT_QUE

! Champs ! Type ! Taille !  ! JOID | NUMBER | 22 |  ! JOB_LOAD | NUMBER | 22 |  ! QUE_NAME | VARCHAR2 | 62 |  ! MAX_LOAD | NUMBER | 22 |  ! PRIORITY | NUMBER | 22 |

Sécurité

Restreindre la sécurité à certains comptes sur certaines machines

Le principe est de créer une table de permissions et de gérer les permissions dans la procédure stockée.

Supprimer le compte root en global

Supprimer la possibilité d’utiliser un compte root à partir de la base Autosys. A noter que la ligne de DENY_ACCESS dans le fichier /etc/profile marche très bien. # DENY_DENY_ACCESS=root #

Pour une configuration plus poussée, Jonathan McAlroy fournit une gestion des utilisateurs pluspoussée : Restreindre la sécurité à certains comptes sur certaines machines.