Page History
...
- the JS7 - System Architecture in use,
- the JS7 - Security Architecture requirements,
- the technical tools for rollout: Rollout Procedures to be applied including
...
- Users might apply different wordings wording such as staging, user acceptance, integration etc.
- Users might use fewer environments (such as test -> prod) or more environments (such as dev -> int -> uat -> prod).
Terminology
- Deployment: The term is used for the step performed with JOC Cockpit to digitally sign and to transfer a scheduling object to a given Controller and Agents, for example a workflow.
- Rollout: This term suggests to transfer a scheduling object within the same or across different JOC Cockpit inventories.
- Security Level: The security architecture suggests three security levels when it comes to deployment of scheduling objects:
- low: a common private key is used for all user accounts when signing objects for deployment,
- medium: individual private keys are used per user account when signing objects for deployment,
- high: an individual private key is used per user account and outside of JOC Cockpit when signing objects for deployment.
...
- Single JOC Cockpit, Single Controller, Shared Agents
- Single JOC Cockpit, Dedicated Controllers, Dedicated Agents
- Dedicated JOC Cockpits, Dedicated Controllers, Dedicated Agents
Strategies imply to consider the JS7 - Security Architecture and Rollout Procedures.
Single JOC Cockpit, Single Controller, Shared Agents
...
- System Architecture
- In this scenario only one JOC Cockpit instance and one Controller is used. Agents are mapped to respective environments.
- Security Architecture
- A single JOC Cockpit is used in a security level low or medium.
- Rollout Procedures
- Rollout is performed within the single JOC Cockpit instance. This approach includes
- to map environments to separate top-level folders in the JS7 - Inventory,
- to copy scheduling objects between inventory folders and to modify Agent assignment Assignments for consideration of environments.
- to deploy modified scheduling objects.
- This approach makes use of Inventory Deployment and denies use of of Inventory Export/Import and use of Inventory Git Integration for rollout.
- Rollout is performed within the single JOC Cockpit instance. This approach includes
Single JOC Cockpit, Dedicated Controllers, Dedicated Agents
...
- System Architecture
- In this scenario a number of Controllers are connected to a single JOC Cockpit instance. Agents are dedicated to respective Controllers.
- Security Architecture
- A single JOC Cockpit is used in a security level low or medium.
- Rollout Procedures
- Rollout is performed within the single JOC Cockpit instance. This approach includes
- to map environments to separate top-level folders in the JS7 - Inventory,
- to copy scheduling objects between inventory folders, but to retain retain Agent assignment Assignments as the same Agent Names can be used with each Controller and environment,
- to deploy scheduling objects individually to the Controller that maps to the respective environment.
- This approach makes use of Inventory Deployment and denies use of of Inventory Export/Import and use of Inventory Git Integration for rollout.
- Rollout is performed within the single JOC Cockpit instance. This approach includes
Dedicated JOC Cockpits, Dedicated Controllers, Dedicated Agents
...
- System Architecture
- In this scenario dedicated JOC Cockpit instances are operated per environment. Each JOC Cockpit instance is assigned a dedicated Controller with dedicated Agents.
- Security Architecture
- Each JOC Cockpit instance can be operated in any security level low, medium. or high.
- Rollout Procedures
- Rollout is performed between JOC Cockpit instances using separate inventories. This approach includes
- to map environments to separate JOC Cockpit instances with respective Controllers and Agents,
- to rollout scheduling objects from one JOC Cockpit instance to the next and to retain Agent assignment Assignments as the same Agent Names be used with each Controller,
- to deploy scheduling objects individually from each JOC Cockpit that maps to the respective environment.
- This approach allows makes use of Inventory Export/Import and use of or Inventory Git Integration for rollout.
- Rollout is performed between JOC Cockpit instances using separate inventories. This approach includes
Rollout Tools
Deployment
Anchor | ||||
---|---|---|---|---|
|
Anchor | ||||
---|---|---|---|---|
|
The JS7 - Deployment makes This approach makes use of build-in operations available within a single JOC Cockpit instance .
...
Complexity is low as deployment is a one-click operation that is used within a single JOC Cockpit instance.
Anchor | ||||
---|---|---|---|---|
|
The JS7 - Inventory Export and Import operations offer a valid strategy to perform rollout operations, for example from dev -> test -> prod environments.
...
Complexity is medium as the technical operation to export/import is simple, however, selection of objects requires some attention.
Anchor | ||||
---|---|---|---|---|
|
The JS7 - Inventory Git Integration offers a number of options for rollout by use of the JS7 - Git Repository Interface.
...
The Git approach will work fine with engineers being ready to acquire skills for Git repository management.
Rollout Considerations
...
Anchor | ||||
---|---|---|---|---|
|
Agents are registered with a specific Controller, they are not shared between Controllers.
- Agents are assigned a Job in a Workflow by use their Agent Name.
- Agent Names frequently are specified from the host name for which the Agent is operated, such as
drx6834
. Such practice should be reconsidered as it forces to modify Agent assignment of a Job when the Workflow is rolled out across environments. - Instead, during registration with a Controller in addition to the Agent Name Agents can be assigned one or more Alias Names.
- It is good practice to use generic Alias Names, such as
accountingAgent
, During rollout the Job's Agent assignment can remain unchanged provided that for each environment we find an Agent with the same Alias Name. - This includes that in a dev environment we might find fewer Agent instances than in a prod environment. Using more Alias Names for the same Agents in the dev environment maps to use of more Agents in the prod environment.
- It is good practice to use generic Alias Names, such as
...
Anchor | ||||
---|---|---|---|---|
|
A number of objects suggest to be rolled out across environments without changes. Most prominently this includes Workflows/Jobs.
...