• 1. Concept

    All features and functions has to contribute one of these.

  • 2. Competitive Solution/Alternative solution

  • 3. Otter Feature/Button/Function

  • リソース

  • Desired configuration

  • Intended state

  • declarative configuration management

  • Continuous Configuration Automation” (CCA)
    CCA tools

  • SCCM(System Center Configuration Manager)

  • Configuration Drift

  • Change tracking

  • Change execution

  • Jobs

  • Server Roles

  • Agents

  • environment

  • Configuration varibales

  • Configuration

  • Orchestation

  • Ensure

  • Remediate Drift

  • Detect Drift

  • collect

  • PSExec

  • PSEnsure

  • Execute

  • Server targeting

  • Orchestration Jobs Templates

  • Triggering

  • Rafts

  • Assets

  • Configuration Plan

  • CI/CD for Infrastructure

  • Pipeline Rafts

  • Role dependencies

  • Configuration drift

  • Job schedule

  • Job recurring

  • OtterScript

  • What is “Job”?

    A job is a unit of work processed by a computer. In a client-server system, job management is important because multiple clients request jobs from the server. The server calculates the resources and time required to process each job, and executes it while adjusting the schedule.

  • What is “Job” in Otter?

    Job is a group of processes, changes, command, or whatever you want Otter to run in a scheduled time(s), one time or recurring.

    Otter can execute various jobs, but the main use is Configuration Job and Server Orchestration

  • Why “Job” exists in Otter?

    • Recurring job exists so that customers can save their time from routine tasks.

    • scheduled job exists so that customers can perform a task later without forgetting them or they can save time by batch scheduling many tasks.

  • Upcoming

  • Configuration Job

  • Orchestration Job

  • Job Templates

  • Job Template Variables

  • Simulation Job Runs

  • Recurring job

  • Can I see Upcoming page?
    Does “upcoming” shows error?

  • An error occurred saving the job: Object reference not set to an instance of an object.

  • What is a Server Role?

    “Server roles” is a industry standard term.

  • Server roles are like tags.

    When you assign a tag to a server.

  • What are common Server Roles?

  • What are configuration

    Configurations are any change you made on your computer including zipping files, creating a file, copying files, delete files, starting Windows service, changing registry key, download file from a url, upload file to url, send email, rename files, installing Chrome, etc… **

    But the main use of configuration on Otter is changes related to servers such as

  • Server Roles is a commodity?

  • What are primary uses?

  • Function

    On the home screen of server roles, you can view all server roles, it’s status, number of servers assigned to the role, number of environments associated to the server.

    You can filter servers by environment (integration/Testing/Production) and/or status (Current,Drifted/Error/Distabled/Unknown).

    You can also create a new roles from the screen.

  • Benefit

    You have a top level overview of all server roles, make a quick decisions about which server roles you want to further investigate/check.

    Click on servers roles with “error” status for example to investigate.

  • Value

    Otter has GUI, Chef and Puppet does not have GUI, so you need to write a code with Ruby and Chef code to get server status.

  • Function

    Create a server role, so that you can assign the role to multiple servers.

  • Benefit

    Without server roles, you need to set configuration plan to each servers.

  • Value

  • 1. Overview

  • 2. Configuration

  • 3. Package

  • 4. Check Configuration

  • 5. Remediate Configuration

  • 6. View Configuration

    Same as configuration tab.

  • 7. Details

  • 8. Variables

  • 9. Dependencies

  • 10. Dependent Roles

  • 11. Configuration Plan

  • 1. Click Server Roles

  • 2. Create Server Roles

  • 3. Create Configuration Plan

  • 4. Check Configuration

  • How is Shell related?

    Shellscript (like PowerShell) is a programming language that runs these jobs.

  • What is “Process”?

    The smallest unit of each running program is called a “process”, a group of process is job.

    In this sense, almost everything is a job in computer. So what exactly is “job” in otter?

  • Function

    Upcoming page shows all upcoming tasks.

  • Function

  • Benefit

  • Value

  • Filter by server and environement

  • Function

  • Benefit

  • Value

  • Function

  • Benefit

  • Value

  • Function

  • Benefit

  • Value

  • Function

  • Benefit

  • Value

  • Function

  • Benefit

  • Value

  • Domain controller.
    Database server.
    Backup server.
    File server.
    Print server.
    Infrastructure server.
    Web server.
    E-mail server.

    But more…way more and way more detailed than that.

  • 同じ役目でも、複数のサーバーを作る
    ひとつではまかなえないから。
    実際にはもっと細分化される。
    とくに、DBと、Web,Fileサーバー。

    • Ensures a .NET application configuration file has the specified appSetting key/value pair,
    • Ensures that a server exists within Otter, Restarts a server and waits for it to become available again,
    • Acquires a server from a resource pool defined by a server role,
    • Releases a server from a resource pool if acquired previously in the execution,
    • Uses two shell scripts to Collect, and then Ensure a configuration about a server,
    • Executes a specified PowerShell script,
    • Starts/Stop an existing Windows service,
    • Ensures that a registry value exists or does not exist on a specified key,
    • Starts/Stop an IIS Site,
    • Starts/Stop/Recycle an IIS app pool.
    • Create/Promote/Get/Push/ packages
    • Remediate configuration drift.

    Etc…

    https://s3-us-west-2.amazonaws.com/secure.notion-static.com/4f702f89-d5d0-4e30-af83-8c8daabc982c/Untitled.png

  • doc says…

    Roles are used to define sets of configurations that can be assigned to any number of servers.

    For example, you may have an iis-server role that ensures IIS is configured in a particular way, as well as an hdar-api-host role that ensures a particular web application is configured properly. Both roles can be applied to the same server so that hdar-api-host is configured on an IIS server.

  • I say…

  • Function

    Overview screen includes status, details, dependencies, configuration plan and let you take actions like checking configuration and remediating configuration drift.

  • Benefit

    All actions to a server role and information that you need to decide what actions to take is available or accessible from here.

  • Value

    Compared to the old ways, managers can quickly gather information and take actions because information and actions are not scattered in each server, but all are centralized here.

  • Function

    Configuration tab shows a list of servers * configuration plan and their status and date of the last update.

  • Benefit

    It’s a best way to quickly check health (status) of configuration and fix them.

  • Value

    It saves time because all information is here.

  • Function

  • Benefit

  • Value

  • Function

    Check actual configuration of servers that are assigned to the server role, and then compare that to your configuration plan. Then show the result (OK, drifted, errors).

  • Benefit

    You can make sure that all servers that are assigned with the server roles are configured correctly, and if they are not configured correctly, you can remediate them.

  • Value

    It saves time as you save manual works. The more servers you have, more time you save. It will make your work decluttered.

  • Function

    Change the actual configuration to planned (=desired) configuration.

  • Benefit

  • Value

    Compared to manually fixing configuration, there are less manual process that takes time.

    • Function

    • Benefit

    • Value

    • Function

      It lets you create/edit/view/butch edit variables that are available in the assigned servers.

    • Benefit

      Variables are des

      #ask

      When there are many servers and many employees, you will have tons of variables and it gets hard to track them.

    • Value

    • Function

      List server roles that this server role depends.
      This makes it much easier to share a common configuration and define smaller-but-related roles.

    • Benefit

    • Value

    • Function

      List server roles that depends on this server role.

    • Benefit

    • Value

    • Function

      Set your desired state of configuration. Later you can check actual configuration of actual servers that are assigned to this server roles, and make sure that they are in the defined desired state. If not, Otter can fix it.

    • Benefit

      Compared to pen and paper, or notepad.exe, it removes manual steps.

    • Value

    • Assign servers

    • if actual configuration does not match planned configuration (=desired configuration = configuration plan), manually or automatically fix. If you want to have your otter automatically fix, click “remediate configuration”.

    • Different server roles, different desired configuration.

      Different server requires different Windows Services. For example, Email server requires software (Services) such as STMP/POP services and IMAP4, encryption for the email etc.

      Where as print servers or back-up servers don’t need such services.

    • When you ensure server configuration?

    • How does Otter create, monitor, remediate servers?

      First, you create a server role on Otter. Then you create a configuration plan for the server role you just created. Then, assign servers to the role.

      Now, those servers have server roles, and the server roles have configuration plans.

      Otter checks actual server configurations of those servers and compare that to configuration plans you just created. Then, you can let your Otter remediate (which means fix the actual server configurations to the planned configuration) or do it by yourself.

    • How does Otter create a configuration plan?

      Otter has its script called “OtterScript”. OtterScript is kind of like PowerShell script. It’s Domain-Specific Language.

    • When configuration drift happens.

    • Clone working configuration to new server.

    {"cards":[{"_id":"439b6232290a26779a000285","treeId":"4405f75560a8c9cd36000076","seq":21699457,"position":1.4453125,"parentId":null,"content":"# 1. Concept\n\nAll features and functions has to contribute one of these."},{"_id":"439b659b290a26779a00027e","treeId":"4405f75560a8c9cd36000076","seq":21699390,"position":1,"parentId":"439b6232290a26779a000285","content":"Desired configuration"},{"_id":"439b673c290a26779a00027b","treeId":"4405f75560a8c9cd36000076","seq":21699396,"position":2,"parentId":"439b6232290a26779a000285","content":"Intended state"},{"_id":"439b78dd290a26779a000275","treeId":"4405f75560a8c9cd36000076","seq":21699403,"position":3,"parentId":"439b6232290a26779a000285","content":"declarative configuration management"},{"_id":"439b788a290a26779a000276","treeId":"4405f75560a8c9cd36000076","seq":21699408,"position":4,"parentId":"439b6232290a26779a000285","content":"Continuous Configuration Automation\" (CCA)\n CCA tools "},{"_id":"439b7644290a26779a000277","treeId":"4405f75560a8c9cd36000076","seq":21699414,"position":5,"parentId":"439b6232290a26779a000285","content":" SCCM(System Center Configuration Manager)"},{"_id":"439b4d9a290a26779a00028d","treeId":"4405f75560a8c9cd36000076","seq":21699460,"position":6,"parentId":"439b6232290a26779a000285","content":"Configuration Drift"},{"_id":"439b637a290a26779a000284","treeId":"4405f75560a8c9cd36000076","seq":21699417,"position":1.515625,"parentId":null,"content":"# 2. Competitive Solution/Alternative solution"},{"_id":"439b6d36290a26779a00027a","treeId":"4405f75560a8c9cd36000076","seq":21699381,"position":1,"parentId":"439b637a290a26779a000284","content":"Provisioning"},{"_id":"439b58ea290a26779a000287","treeId":"4405f75560a8c9cd36000076","seq":21699445,"position":1.5,"parentId":"439b637a290a26779a000284","content":"Containers"},{"_id":"439b641c290a26779a000280","treeId":"4405f75560a8c9cd36000076","seq":21699382,"position":2,"parentId":"439b637a290a26779a000284","content":"Puppet"},{"_id":"439b6439290a26779a00027f","treeId":"4405f75560a8c9cd36000076","seq":21699383,"position":3,"parentId":"439b637a290a26779a000284","content":"Chef"},{"_id":"439b640d290a26779a000281","treeId":"4405f75560a8c9cd36000076","seq":21699384,"position":4,"parentId":"439b637a290a26779a000284","content":"PowerShell"},{"_id":"439b63b9290a26779a000283","treeId":"4405f75560a8c9cd36000076","seq":21699385,"position":5,"parentId":"439b637a290a26779a000284","content":"Ansible"},{"_id":"439b40d6290a26779a000292","treeId":"4405f75560a8c9cd36000076","seq":21699470,"position":6,"parentId":"439b637a290a26779a000284","content":"https://polestar.widetec.com/"},{"_id":"4390149f315fc77b50000206","treeId":"4405f75560a8c9cd36000076","seq":21705843,"position":7,"parentId":"439b637a290a26779a000284","content":"https://www.lmis.jp/configuration.html"},{"_id":"439011d5315fc77b50000207","treeId":"4405f75560a8c9cd36000076","seq":21705876,"position":8,"parentId":"439b637a290a26779a000284","content":"Kickstart\t"},{"_id":"4390119d315fc77b50000208","treeId":"4405f75560a8c9cd36000076","seq":21705882,"position":9,"parentId":"439b637a290a26779a000284","content":"Preseed"},{"_id":"4390115e315fc77b50000209","treeId":"4405f75560a8c9cd36000076","seq":21705888,"position":10,"parentId":"439b637a290a26779a000284","content":"FAI\t"},{"_id":"43900bde315fc77b5000020a","treeId":"4405f75560a8c9cd36000076","seq":21705974,"position":11,"parentId":"439b637a290a26779a000284","content":"http://itamae.kitchen/\nhttps://knowledge.sakura.ad.jp/4341/"},{"_id":"438ffe6c315fc77b5000020b","treeId":"4405f75560a8c9cd36000076","seq":21706131,"position":12,"parentId":"439b637a290a26779a000284","content":"https://service.shiftinc.jp/service/consulting/configuration-manage/"},{"_id":"438ffdd9315fc77b5000020c","treeId":"4405f75560a8c9cd36000076","seq":21706146,"position":13,"parentId":"439b637a290a26779a000284","content":"https://www.techmatrix.co.jp/product/accurev/index.html"},{"_id":"438ffd65315fc77b5000020d","treeId":"4405f75560a8c9cd36000076","seq":21706158,"position":14,"parentId":"439b637a290a26779a000284","content":"https://senjufamily.nri.co.jp/solution/Configuration_management.html"},{"_id":"439b5d29290a26779a000286","treeId":"4405f75560a8c9cd36000076","seq":21699418,"position":1.603515625,"parentId":null,"content":"# 3. Otter Feature/Button/Function"},{"_id":"439b66b2290a26779a00027d","treeId":"4405f75560a8c9cd36000076","seq":21699419,"position":1,"parentId":"439b5d29290a26779a000286","content":"Change tracking"},{"_id":"439b66e3290a26779a00027c","treeId":"4405f75560a8c9cd36000076","seq":21699420,"position":2,"parentId":"439b5d29290a26779a000286","content":"Change execution"},{"_id":"43b86393117ab940900000e7","treeId":"4405f75560a8c9cd36000076","seq":21699426,"position":3,"parentId":"439b5d29290a26779a000286","content":"# Jobs"},{"_id":"43b7a0ea117ab940900000ee","treeId":"4405f75560a8c9cd36000076","seq":21686875,"position":0.25,"parentId":"43b86393117ab940900000e7","content":"# Overview of \"Job\""},{"_id":"43b7ebb8117ab940900000e9","treeId":"4405f75560a8c9cd36000076","seq":21686872,"position":1,"parentId":"43b7a0ea117ab940900000ee","content":"# What is \"Job\"? \nA job is a unit of work processed by a computer. In a client-server system, job management is important because multiple clients request jobs from the server. The server calculates the resources and time required to process each job, and executes it while adjusting the schedule."},{"_id":"43b7e210117ab940900000ec","treeId":"4405f75560a8c9cd36000076","seq":21686750,"position":1,"parentId":"43b7ebb8117ab940900000e9","content":"## How is Shell related?\nShellscript (like PowerShell) is a programming language that runs these jobs. "},{"_id":"43b7da4a117ab940900000ed","treeId":"4405f75560a8c9cd36000076","seq":21686768,"position":2,"parentId":"43b7ebb8117ab940900000e9","content":"## What is \"Process\"?\n\nThe smallest unit of each running program is called a \"process\", a group of process is job.\n\nIn this sense, almost everything is a job in computer. So what exactly is \"job\" in otter?"},{"_id":"43b7eb59117ab940900000ea","treeId":"4405f75560a8c9cd36000076","seq":21686873,"position":2,"parentId":"43b7a0ea117ab940900000ee","content":"# What is \"Job\" in Otter?\n\nJob is a group of processes, changes, command, or whatever you want Otter to run in a scheduled time(s), one time or recurring.\n\nOtter can execute various jobs, but the main use is **Configuration Job** and **Server Orchestration** "},{"_id":"43b7ea98117ab940900000eb","treeId":"4405f75560a8c9cd36000076","seq":21686874,"position":3,"parentId":"43b7a0ea117ab940900000ee","content":"# Why \"Job\" exists in Otter?\n\n* Recurring job exists so that customers can save their time from routine tasks.\n\n* scheduled job exists so that customers can perform a task later without forgetting them or they can save time by batch scheduling many tasks."},{"_id":"43b7a00b117ab940900000f0","treeId":"4405f75560a8c9cd36000076","seq":21686876,"position":0.625,"parentId":"43b86393117ab940900000e7","content":"# Features"},{"_id":"43b78f70117ab940900000f9","treeId":"4405f75560a8c9cd36000076","seq":21686902,"position":0.5,"parentId":"43b7a00b117ab940900000f0","content":"## Upcoming"},{"_id":"43b78f37117ab940900000fa","treeId":"4405f75560a8c9cd36000076","seq":21687004,"position":1,"parentId":"43b78f70117ab940900000f9","content":"### Function\nUpcoming page shows all upcoming tasks."},{"_id":"43b79fd0117ab940900000f1","treeId":"4405f75560a8c9cd36000076","seq":21686885,"position":1,"parentId":"43b7a00b117ab940900000f0","content":"## Configuration Job"},{"_id":"5fa0d8d3c1ab3b03758cd1ec","treeId":"4405f75560a8c9cd36000076","seq":21686969,"position":1.5,"parentId":"43b79fd0117ab940900000f1","content":"### Function\n"},{"_id":"5fa0d8d3c1ab3b03758cd1ed","treeId":"4405f75560a8c9cd36000076","seq":21686911,"position":2,"parentId":"43b79fd0117ab940900000f1","content":"### Benefit"},{"_id":"5fa0d8d3c1ab3b03758cd1ee","treeId":"4405f75560a8c9cd36000076","seq":21686912,"position":3,"parentId":"43b79fd0117ab940900000f1","content":"### Value"},{"_id":"43b76fe2117ab9409000047d","treeId":"4405f75560a8c9cd36000076","seq":21686985,"position":4,"parentId":"43b79fd0117ab940900000f1","content":"### Filter by server and environement"},{"_id":"43b79866117ab940900000f3","treeId":"4405f75560a8c9cd36000076","seq":21686886,"position":2,"parentId":"43b7a00b117ab940900000f0","content":"## Orchestration Job"},{"_id":"5fa0d8e0c1ab3b03758cd1f3","treeId":"4405f75560a8c9cd36000076","seq":21686915,"position":1,"parentId":"43b79866117ab940900000f3","content":"### Function"},{"_id":"5fa0d8e0c1ab3b03758cd1f4","treeId":"4405f75560a8c9cd36000076","seq":21686916,"position":2,"parentId":"43b79866117ab940900000f3","content":"### Benefit"},{"_id":"5fa0d8e0c1ab3b03758cd1f5","treeId":"4405f75560a8c9cd36000076","seq":21686917,"position":3,"parentId":"43b79866117ab940900000f3","content":"### Value"},{"_id":"43b7981a117ab940900000f4","treeId":"4405f75560a8c9cd36000076","seq":21686887,"position":3,"parentId":"43b7a00b117ab940900000f0","content":"## Job Templates\n"},{"_id":"5fa0d8e8c1ab3b03758cd1fa","treeId":"4405f75560a8c9cd36000076","seq":21686919,"position":1,"parentId":"43b7981a117ab940900000f4","content":"### Function"},{"_id":"5fa0d8e8c1ab3b03758cd1fb","treeId":"4405f75560a8c9cd36000076","seq":21686920,"position":2,"parentId":"43b7981a117ab940900000f4","content":"### Benefit"},{"_id":"5fa0d8e8c1ab3b03758cd1fc","treeId":"4405f75560a8c9cd36000076","seq":21686921,"position":3,"parentId":"43b7981a117ab940900000f4","content":"### Value"},{"_id":"43b79785117ab940900000f5","treeId":"4405f75560a8c9cd36000076","seq":21686888,"position":4,"parentId":"43b7a00b117ab940900000f0","content":"## Job Template Variables"},{"_id":"5fa0d8efc1ab3b03758cd200","treeId":"4405f75560a8c9cd36000076","seq":21686923,"position":1,"parentId":"43b79785117ab940900000f5","content":"### Function"},{"_id":"5fa0d8efc1ab3b03758cd201","treeId":"4405f75560a8c9cd36000076","seq":21686924,"position":2,"parentId":"43b79785117ab940900000f5","content":"### Benefit"},{"_id":"5fa0d8efc1ab3b03758cd202","treeId":"4405f75560a8c9cd36000076","seq":21686925,"position":3,"parentId":"43b79785117ab940900000f5","content":"### Value"},{"_id":"43b7971c117ab940900000f6","treeId":"4405f75560a8c9cd36000076","seq":21686890,"position":5,"parentId":"43b7a00b117ab940900000f0","content":"## Simulation Job Runs"},{"_id":"5fa0d8f5c1ab3b03758cd208","treeId":"4405f75560a8c9cd36000076","seq":21686928,"position":1,"parentId":"43b7971c117ab940900000f6","content":"### Function"},{"_id":"5fa0d8f5c1ab3b03758cd209","treeId":"4405f75560a8c9cd36000076","seq":21686929,"position":2,"parentId":"43b7971c117ab940900000f6","content":"### Benefit"},{"_id":"5fa0d8f5c1ab3b03758cd20a","treeId":"4405f75560a8c9cd36000076","seq":21686930,"position":3,"parentId":"43b7971c117ab940900000f6","content":"### Value"},{"_id":"43b7927d117ab940900000f7","treeId":"4405f75560a8c9cd36000076","seq":21686897,"position":6,"parentId":"43b7a00b117ab940900000f0","content":"## Recurring job"},{"_id":"5fa0d8fac1ab3b03758cd20d","treeId":"4405f75560a8c9cd36000076","seq":21686931,"position":1,"parentId":"43b7927d117ab940900000f7","content":"### Function"},{"_id":"5fa0d8fac1ab3b03758cd20e","treeId":"4405f75560a8c9cd36000076","seq":21686932,"position":2,"parentId":"43b7927d117ab940900000f7","content":"### Benefit"},{"_id":"5fa0d8fac1ab3b03758cd20f","treeId":"4405f75560a8c9cd36000076","seq":21686933,"position":3,"parentId":"43b7927d117ab940900000f7","content":"### Value"},{"_id":"43b7828b117ab9409000047a","treeId":"4405f75560a8c9cd36000076","seq":21686942,"position":0.8125,"parentId":"43b86393117ab940900000e7","content":"## Questions"},{"_id":"43b7823e117ab9409000047b","treeId":"4405f75560a8c9cd36000076","seq":21686944,"position":1,"parentId":"43b7828b117ab9409000047a","content":"Can I see Upcoming page?\nDoes \"upcoming\" shows error?"},{"_id":"43b749bc117ab9409000047e","treeId":"4405f75560a8c9cd36000076","seq":21687044,"position":2,"parentId":"43b7828b117ab9409000047a","content":"An error occurred saving the job: Object reference not set to an instance of an object.\n\n"},{"_id":"43b7f532117ab940900000e8","treeId":"4405f75560a8c9cd36000076","seq":21687039,"position":1,"parentId":"43b86393117ab940900000e7","content":"## Resources\n[Jobs \\- Otter Documentation](https://docs.inedo.com/docs/otter/core-concepts/jobs)\n[Job Orchestration API Endpoints \\- Otter Documentation](https://docs.inedo.com/docs/otter/reference/api/jobs)\n[Configuration Drift: Why It Happens and How It Complicates Life for Incident Response Engineers \\| VictorOps](https://victorops.com/blog/how-configuration-drift-affects-incident-response-engineers)\n[Configuration Management API Endpoints \\- Otter Documentation](https://docs.inedo.com/docs/otter/reference/api/configuration-management)\n[iis \\- Stop App Pool \\- Otter Documentation](https://docs.inedo.com/docs/otter/reference/operations/iis/stop-app-pool)\n[servers \\- ServersInRoleAndEnvironment \\- Otter Documentation](https://docs.inedo.com/docs/otter/reference/functions/servers/serversinroleandenvironment)\n[Scheduling and Running Jobs on a Server – Astera Support](https://astera.zendesk.com/hc/en-us/articles/115000510903-Scheduling-and-Running-Jobs-on-a-Server)\n[6 Job Scheduling Tactics for Windows Server Sprawl \\| HelpSystems](https://www.helpsystems.com/resources/guides/6-job-scheduling-tactics-windows-server-sprawl)\n[24\\. Schedules — Ansible Tower User Guide v3\\.7\\.3](https://docs.ansible.com/ansible-tower/latest/html/userguide/scheduling.html)\n[Scheduling via Ansible Tower for daily updates \\- Security Automation with Ansible 2 \\[Book\\]](https://www.oreilly.com/library/view/security-automation-with/9781788394512/61852298-29dc-4156-8ae8-d1788dfc55b8.xhtml)\n[15\\. Jobs — Ansible Tower User Guide v3\\.1\\.4](https://docs.ansible.com/ansible-tower/3.1.4/html/userguide/jobs.html)\n[Job Management](https://docs.saltstack.com/en/latest/topics/jobs/)\n[ジョブ \\| IT用語辞典 \\| 大塚商会](https://www.otsuka-shokai.co.jp/words/job.html#:~:text=%E3%82%B8%E3%83%A7%E3%83%96%E3%81%A8%E3%81%AF,%E8%AA%BF%E6%95%B4%E3%81%97%E3%81%AA%E3%81%8C%E3%82%89%E5%AE%9F%E8%A1%8C%E3%81%99%E3%82%8B%E3%80%82)\n[What is orchestration?](https://www.redhat.com/en/topics/automation/what-is-orchestration#:~:text=Orchestration%20is%20the%20automated%20configuration,systems%2C%20applications%2C%20and%20services.&text=IT%20teams%20must%20manage%20many,the%20moving%20parts%20can%20become.)"},{"_id":"43b8655b117ab940900000e6","treeId":"4405f75560a8c9cd36000076","seq":21699438,"position":4,"parentId":"439b5d29290a26779a000286","content":"# Server Roles"},{"_id":"4405a1b739744f41ab000075","treeId":"4405f75560a8c9cd36000076","seq":21686424,"position":1,"parentId":"43b8655b117ab940900000e6","content":"# Overview"},{"_id":"4405f70460a8c9cd36000079","treeId":"4405f75560a8c9cd36000076","seq":21657710,"position":1,"parentId":"4405a1b739744f41ab000075","content":"# What is a Server Role?\n\"Server roles\" is a industry standard term."},{"_id":"44059fe239744f41ab000076","treeId":"4405f75560a8c9cd36000076","seq":21657682,"position":1,"parentId":"4405f70460a8c9cd36000079","content":"One of the decisions during the installation of Windows Server 2008 R2 is the your server’s role and what features it requires. Server roles refer to the roles that your server can play on your network — roles such as a file server, a web server, or a DHCP or DNS server. Features refer to additional capabilities of the Windows operating system itself, such as the .NET Framework or Windows Backup. https://www.dummies.com/programming/networking/network-administration-roles-and-features-in-windows-server/\n\n\n"},{"_id":"43c3078308c8e435ed0000e4","treeId":"4405f75560a8c9cd36000076","seq":21686422,"position":1.25,"parentId":"4405a1b739744f41ab000075","content":"## Server roles are like tags.\nWhen you assign a tag to a server."},{"_id":"440595ae39744f41ab000083","treeId":"4405f75560a8c9cd36000076","seq":21657712,"position":1.5,"parentId":"4405a1b739744f41ab000075","content":"# What are common Server Roles?"},{"_id":"4405945939744f41ab000084","treeId":"4405f75560a8c9cd36000076","seq":21657754,"position":1,"parentId":"440595ae39744f41ab000083","content":"Domain controller.\nDatabase server.\nBackup server.\nFile server.\nPrint server.\nInfrastructure server.\nWeb server.\nE-mail server.\n\nBut more...way more and way more detailed than that."},{"_id":"43f904484ad911e9200000ff","treeId":"4405f75560a8c9cd36000076","seq":21663334,"position":2,"parentId":"440595ae39744f41ab000083","content":"同じ役目でも、複数のサーバーを作る\nひとつではまかなえないから。\n実際にはもっと細分化される。\nとくに、DBと、Web,Fileサーバー。"},{"_id":"43f8d8074ad911e920000100","treeId":"4405f75560a8c9cd36000076","seq":21682217,"position":1.75,"parentId":"4405a1b739744f41ab000075","content":"# What are configuration\n\nConfigurations are **any change you made on your computer** including zipping files, creating a file, copying files, delete files, starting Windows service, changing registry key, download file from a url, upload file to url, send email, rename files, installing Chrome, etc... ****\n\nBut the main use of configuration on Otter is changes related to servers such as"},{"_id":"43c3eea8b8f9d59932000218","treeId":"4405f75560a8c9cd36000076","seq":21682218,"position":1,"parentId":"43f8d8074ad911e920000100","content":"- Ensures a .NET application configuration file has the specified appSetting key/value pair,\n- Ensures that a server exists within Otter, Restarts a server and waits for it to become available again,\n- Acquires a server from a resource pool defined by a server role,\n- Releases a server from a resource pool if acquired previously in the execution,\n- Uses two shell scripts to Collect, and then Ensure a configuration about a server,\n- Executes a specified PowerShell script,\n- Starts/Stop an existing Windows service,\n- Ensures that a registry value exists or does not exist on a specified key,\n- Starts/Stop an IIS Site,\n- Starts/Stop/Recycle an IIS app pool.\n- Create/Promote/Get/Push/ packages\n- Remediate configuration drift.\n\nEtc...\n\n![https://s3-us-west-2.amazonaws.com/secure.notion-static.com/4f702f89-d5d0-4e30-af83-8c8daabc982c/Untitled.png](https://s3-us-west-2.amazonaws.com/secure.notion-static.com/4f702f89-d5d0-4e30-af83-8c8daabc982c/Untitled.png)"},{"_id":"4405f25a60a8c9cd3600007d","treeId":"4405f75560a8c9cd36000076","seq":21657680,"position":2,"parentId":"4405a1b739744f41ab000075","content":"# Server Roles is a commodity?"},{"_id":"4405f44060a8c9cd3600007b","treeId":"4405f75560a8c9cd36000076","seq":21657675,"position":1,"parentId":"4405f25a60a8c9cd3600007d","content":"Windows has it.\n<a href=\"https://docs.microsoft.com/en-us/windows-server/administration/server-core/server-core-roles-and-services\">Roles, Role Services, and Features included in Windows Server - Server Core</a>"},{"_id":"4405f32960a8c9cd3600007c","treeId":"4405f75560a8c9cd36000076","seq":21663345,"position":2,"parentId":"4405f25a60a8c9cd3600007d","content":"Linux has the same feature.\n<a href=\"https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/7/html/linux_domain_identity_authentication_and_policy_guide/server-roles\">6.5. Managing Server Roles Red Hat Enterprise Linux 7 | Red Hat Customer Portal</a>\n\nlinux daemon?"},{"_id":"44059f3739744f41ab000078","treeId":"4405f75560a8c9cd36000076","seq":21657686,"position":3,"parentId":"4405a1b739744f41ab000075","content":"# What are primary uses?"},{"_id":"440599bd39744f41ab000081","treeId":"4405f75560a8c9cd36000076","seq":21657706,"position":1,"parentId":"44059f3739744f41ab000078","content":"# doc says...\n\nRoles are used to define sets of configurations that can be assigned to any number of servers. \n\nFor example, you may have an iis-server role that ensures IIS is configured in a particular way, as well as an hdar-api-host role that ensures a particular web application is configured properly. Both roles can be applied to the same server so that hdar-api-host is configured on an IIS server. "},{"_id":"440599aa39744f41ab000082","treeId":"4405f75560a8c9cd36000076","seq":21657735,"position":2,"parentId":"44059f3739744f41ab000078","content":"# I say..."},{"_id":"5f990c03c1ab3b03758381dc","treeId":"4405f75560a8c9cd36000076","seq":21663350,"position":1,"parentId":"440599aa39744f41ab000082","content":"## Different server roles, different desired configuration.\n\nDifferent server requires different Windows Services. For example, Email server requires software (Services) such as STMP/POP services and IMAP4, encryption for the email etc.\n\nWhere as print servers or back-up servers don't need such services."},{"_id":"4405843039744f41ab00009a","treeId":"4405f75560a8c9cd36000076","seq":21663353,"position":2,"parentId":"440599aa39744f41ab000082","content":"## When you ensure server configuration?"},{"_id":"43f8be1b4ad911e920000105","treeId":"4405f75560a8c9cd36000076","seq":21663365,"position":1,"parentId":"4405843039744f41ab00009a","content":"When configuration drift happens."},{"_id":"43f8b96c4ad911e920000107","treeId":"4405f75560a8c9cd36000076","seq":21663366,"position":2,"parentId":"4405843039744f41ab00009a","content":"Clone working configuration to new server."},{"_id":"44054e2439744f41ab00009c","treeId":"4405f75560a8c9cd36000076","seq":21657854,"position":3,"parentId":"440599aa39744f41ab000082","content":"## How does Otter create, monitor, remediate servers?\n\nFirst, you create a server role on Otter. Then you create a configuration plan for the server role you just created. Then, assign servers to the role.\n\nNow, those servers have server roles, and the server roles have configuration plans.\n\nOtter checks actual server configurations of those servers and compare that to configuration plans you just created. Then, you can let your Otter remediate (which means fix the actual server configurations to the planned configuration) or do it by yourself.\n"},{"_id":"440545ad39744f41ab00009d","treeId":"4405f75560a8c9cd36000076","seq":21657856,"position":4,"parentId":"440599aa39744f41ab000082","content":"## How does Otter create a configuration plan?\n\nOtter has its script called \"OtterScript\". OtterScript is kind of like PowerShell script. It's Domain-Specific Language."},{"_id":"4404667939744f41ab000268","treeId":"4405f75560a8c9cd36000076","seq":21686425,"position":2,"parentId":"43b8655b117ab940900000e6","content":"# 01. Server Roles\n![](https://www.filepicker.io/api/file/SJEI5WXFSFqzPrqX5kAh)"},{"_id":"4404610739744f41ab00026b","treeId":"4405f75560a8c9cd36000076","seq":21658491,"position":1,"parentId":"4404667939744f41ab000268","content":"## Function\nOn the home screen of server roles, you can view all server roles, it's status, number of servers assigned to the role, number of environments associated to the server.\n\nYou can filter servers by environment (integration/Testing/Production) and/or status (Current,Drifted/Error/Distabled/Unknown).\n\nYou can also create a new roles from the screen."},{"_id":"44045ded39744f41ab00026f","treeId":"4405f75560a8c9cd36000076","seq":21658482,"position":1.5,"parentId":"4404667939744f41ab000268","content":"## Benefit\nYou have a top level overview of all server roles, make a quick decisions about which server roles you want to further investigate/check.\n\nClick on servers roles with \"error\" status for example to investigate."},{"_id":"43f8af264ad911e920000108","treeId":"4405f75560a8c9cd36000076","seq":21663375,"position":1.75,"parentId":"4404667939744f41ab000268","content":"## Value\nOtter has GUI, Chef and Puppet does not have GUI, so you need to write a code with Ruby and Chef code to get server status."},{"_id":"44059e1639744f41ab00007b","treeId":"4405f75560a8c9cd36000076","seq":21686428,"position":3,"parentId":"43b8655b117ab940900000e6","content":"# 02. Create Server Role"},{"_id":"44059be239744f41ab00007d","treeId":"4405f75560a8c9cd36000076","seq":21663388,"position":1,"parentId":"44059e1639744f41ab00007b","content":"## Function\nCreate a server role, so that you can assign the role to multiple servers."},{"_id":"44059b9839744f41ab00007e","treeId":"4405f75560a8c9cd36000076","seq":21663385,"position":2,"parentId":"44059e1639744f41ab00007b","content":"## Benefit\nWithout server roles, you need to set configuration plan to each servers."},{"_id":"44059af839744f41ab00007f","treeId":"4405f75560a8c9cd36000076","seq":21658201,"position":3,"parentId":"44059e1639744f41ab00007b","content":"## Value"},{"_id":"44059e5039744f41ab000079","treeId":"4405f75560a8c9cd36000076","seq":21686430,"position":4,"parentId":"43b8655b117ab940900000e6","content":"# 03. Functions to each server roles\n![](https://www.filepicker.io/api/file/WvvCbGamSH24GRNbIv7m)"},{"_id":"4404754e39744f41ab000264","treeId":"4405f75560a8c9cd36000076","seq":21658420,"position":0.125,"parentId":"44059e5039744f41ab000079","content":"# 1. Overview\n"},{"_id":"4404729839744f41ab000265","treeId":"4405f75560a8c9cd36000076","seq":21682240,"position":1,"parentId":"4404754e39744f41ab000264","content":"## Function\nOverview screen includes status, details, dependencies, configuration plan and let you take actions like checking configuration and remediating configuration drift."},{"_id":"4404726639744f41ab000266","treeId":"4405f75560a8c9cd36000076","seq":21682241,"position":2,"parentId":"4404754e39744f41ab000264","content":"## Benefit\nAll actions to a server role and information that you need to decide what actions to take is available or accessible from here."},{"_id":"4404724539744f41ab000267","treeId":"4405f75560a8c9cd36000076","seq":21682242,"position":3,"parentId":"4404754e39744f41ab000264","content":"## Value\n\nCompared to the old ways, managers can quickly gather information and take actions because information and actions are not scattered in each server, but all are centralized here."},{"_id":"4404b7cd39744f41ab0000a9","treeId":"4405f75560a8c9cd36000076","seq":21682114,"position":0.3125,"parentId":"44059e5039744f41ab000079","content":"# 2. Configuration\n![](https://www.filepicker.io/api/file/17gBul2TQWeyMJnt1AuH)"},{"_id":"4404b13d39744f41ab0000b7","treeId":"4405f75560a8c9cd36000076","seq":21682243,"position":1,"parentId":"4404b7cd39744f41ab0000a9","content":"## Function\nConfiguration tab shows a list of servers * configuration plan and their status and date of the last update."},{"_id":"4404b10239744f41ab0000b8","treeId":"4405f75560a8c9cd36000076","seq":21682244,"position":2,"parentId":"4404b7cd39744f41ab0000a9","content":"## Benefit\nIt's a best way to quickly check health (status) of configuration and fix them."},{"_id":"4404b0ca39744f41ab0000b9","treeId":"4405f75560a8c9cd36000076","seq":21682245,"position":3,"parentId":"4404b7cd39744f41ab0000a9","content":"## Value\nIt saves time because all information is here."},{"_id":"5f9921b4c1ab3b037583b53e","treeId":"4405f75560a8c9cd36000076","seq":21682246,"position":0.40625,"parentId":"44059e5039744f41ab000079","content":"# 3. Package"},{"_id":"5f9921b4c1ab3b037583b53f","treeId":"4405f75560a8c9cd36000076","seq":21658222,"position":1,"parentId":"5f9921b4c1ab3b037583b53e","content":"## Function"},{"_id":"5f9921b4c1ab3b037583b540","treeId":"4405f75560a8c9cd36000076","seq":21658223,"position":2,"parentId":"5f9921b4c1ab3b037583b53e","content":"## Benefit"},{"_id":"5f9921b4c1ab3b037583b541","treeId":"4405f75560a8c9cd36000076","seq":21658224,"position":3,"parentId":"5f9921b4c1ab3b037583b53e","content":"## Value"},{"_id":"5f9921d2c1ab3b037583b54a","treeId":"4405f75560a8c9cd36000076","seq":21682247,"position":0.453125,"parentId":"44059e5039744f41ab000079","content":"# 4. Check Configuration"},{"_id":"5f9921d2c1ab3b037583b54b","treeId":"4405f75560a8c9cd36000076","seq":21682248,"position":1,"parentId":"5f9921d2c1ab3b037583b54a","content":"## Function\nCheck actual configuration of servers that are assigned to the server role, and then compare that to your configuration plan. Then show the result (OK, drifted, errors)."},{"_id":"5f9921d2c1ab3b037583b54c","treeId":"4405f75560a8c9cd36000076","seq":21682249,"position":2,"parentId":"5f9921d2c1ab3b037583b54a","content":"## Benefit\nYou can make sure that all servers that are assigned with the server roles are configured correctly, and if they are not configured correctly, you can remediate them."},{"_id":"5f9921d2c1ab3b037583b54d","treeId":"4405f75560a8c9cd36000076","seq":21682250,"position":3,"parentId":"5f9921d2c1ab3b037583b54a","content":"## Value\nIt saves time as you save manual works. The more servers you have, more time you save. It will make your work decluttered. "},{"_id":"5f9921e9c1ab3b037583b55d","treeId":"4405f75560a8c9cd36000076","seq":21658695,"position":0.4765625,"parentId":"44059e5039744f41ab000079","content":"# 5. Remediate Configuration"},{"_id":"5f9921e9c1ab3b037583b55e","treeId":"4405f75560a8c9cd36000076","seq":21682251,"position":1,"parentId":"5f9921e9c1ab3b037583b55d","content":"## Function\nChange the actual configuration to planned (=desired) configuration."},{"_id":"5f9921e9c1ab3b037583b55f","treeId":"4405f75560a8c9cd36000076","seq":21682154,"position":2,"parentId":"5f9921e9c1ab3b037583b55d","content":"## Benefit\n"},{"_id":"5f9921e9c1ab3b037583b560","treeId":"4405f75560a8c9cd36000076","seq":21682252,"position":3,"parentId":"5f9921e9c1ab3b037583b55d","content":"## Value\nCompared to manually fixing configuration, there are less manual process that takes time."},{"_id":"5f99337ec1ab3b037583bb5c","treeId":"4405f75560a8c9cd36000076","seq":21682254,"position":0.48828125,"parentId":"44059e5039744f41ab000079","content":"# 6. View Configuration\n![](https://www.filepicker.io/api/file/wJHr65UbQESEZS8djajf)\n\nSame as configuration tab."},{"_id":"5f9933f6c1ab3b037583bb69","treeId":"4405f75560a8c9cd36000076","seq":21658712,"position":0.494140625,"parentId":"44059e5039744f41ab000079","content":"# 7. Details"},{"_id":"5f9933f6c1ab3b037583bb6a","treeId":"4405f75560a8c9cd36000076","seq":21658707,"position":1,"parentId":"5f9933f6c1ab3b037583bb69","content":"## Function"},{"_id":"5f9933f6c1ab3b037583bb6b","treeId":"4405f75560a8c9cd36000076","seq":21658708,"position":2,"parentId":"5f9933f6c1ab3b037583bb69","content":"## Benefit"},{"_id":"5f9933f6c1ab3b037583bb6c","treeId":"4405f75560a8c9cd36000076","seq":21658709,"position":3,"parentId":"5f9933f6c1ab3b037583bb69","content":"## Value"},{"_id":"5f9921f8c1ab3b037583b565","treeId":"4405f75560a8c9cd36000076","seq":21682255,"position":0.4970703125,"parentId":"44059e5039744f41ab000079","content":"# 8. Variables"},{"_id":"5f9921f8c1ab3b037583b566","treeId":"4405f75560a8c9cd36000076","seq":21682256,"position":1,"parentId":"5f9921f8c1ab3b037583b565","content":"## Function\nIt lets you create/edit/view/butch edit variables that are available in the assigned servers."},{"_id":"5f9921f8c1ab3b037583b567","treeId":"4405f75560a8c9cd36000076","seq":21682257,"position":2,"parentId":"5f9921f8c1ab3b037583b565","content":"## Benefit\nVariables are des\n\n#ask\n\nWhen there are many servers and many employees, you will have tons of variables and it gets hard to track them."},{"_id":"5f9921f8c1ab3b037583b568","treeId":"4405f75560a8c9cd36000076","seq":21658257,"position":3,"parentId":"5f9921f8c1ab3b037583b565","content":"## Value"},{"_id":"43f88e4d4ad911e92000010a","treeId":"4405f75560a8c9cd36000076","seq":21663418,"position":4,"parentId":"5f9921f8c1ab3b037583b565","content":"## Resource\n[Configuration Variables](https://docs.inedo.com/docs/otter/global-components/configuration-variables)"},{"_id":"5f992212c1ab3b037583b56f","treeId":"4405f75560a8c9cd36000076","seq":21682259,"position":0.49853515625,"parentId":"44059e5039744f41ab000079","content":"# 9. Dependencies"},{"_id":"5f992212c1ab3b037583b570","treeId":"4405f75560a8c9cd36000076","seq":21682258,"position":1,"parentId":"5f992212c1ab3b037583b56f","content":"## Function\nList server roles that this server role depends.\nThis makes it much easier to share a common configuration and define smaller-but-related roles."},{"_id":"5f992212c1ab3b037583b571","treeId":"4405f75560a8c9cd36000076","seq":21658264,"position":2,"parentId":"5f992212c1ab3b037583b56f","content":"## Benefit"},{"_id":"5f992212c1ab3b037583b572","treeId":"4405f75560a8c9cd36000076","seq":21658265,"position":3,"parentId":"5f992212c1ab3b037583b56f","content":"## Value"},{"_id":"5f992221c1ab3b037583b577","treeId":"4405f75560a8c9cd36000076","seq":21658722,"position":0.499267578125,"parentId":"44059e5039744f41ab000079","content":"# 10. Dependent Roles"},{"_id":"5f992221c1ab3b037583b578","treeId":"4405f75560a8c9cd36000076","seq":21682268,"position":1,"parentId":"5f992221c1ab3b037583b577","content":"## Function\nList server roles that depends on this server role."},{"_id":"5f992221c1ab3b037583b579","treeId":"4405f75560a8c9cd36000076","seq":21658270,"position":2,"parentId":"5f992221c1ab3b037583b577","content":"## Benefit"},{"_id":"5f992221c1ab3b037583b57a","treeId":"4405f75560a8c9cd36000076","seq":21658271,"position":3,"parentId":"5f992221c1ab3b037583b577","content":"## Value"},{"_id":"5f992229c1ab3b037583b57f","treeId":"4405f75560a8c9cd36000076","seq":21682260,"position":0.5,"parentId":"44059e5039744f41ab000079","content":"# 11. Configuration Plan "},{"_id":"5f992229c1ab3b037583b580","treeId":"4405f75560a8c9cd36000076","seq":21682261,"position":1,"parentId":"5f992229c1ab3b037583b57f","content":"## Function\nSet your desired state of configuration. Later you can check actual configuration of actual servers that are assigned to this server roles, and make sure that they are in the defined desired state. If not, Otter can fix it."},{"_id":"5f992229c1ab3b037583b581","treeId":"4405f75560a8c9cd36000076","seq":21682262,"position":2,"parentId":"5f992229c1ab3b037583b57f","content":"## Benefit\nCompared to pen and paper, or notepad.exe, it removes manual steps."},{"_id":"5f992229c1ab3b037583b582","treeId":"4405f75560a8c9cd36000076","seq":21658277,"position":3,"parentId":"5f992229c1ab3b037583b57f","content":"## Value"},{"_id":"43f996e039744f41ab0003a4","treeId":"4405f75560a8c9cd36000076","seq":21686431,"position":5,"parentId":"43b8655b117ab940900000e6","content":"# 04. Steps to use server roles"},{"_id":"43f9968339744f41ab0003a5","treeId":"4405f75560a8c9cd36000076","seq":21662596,"position":1,"parentId":"43f996e039744f41ab0003a4","content":"# 1. Click Server Roles"},{"_id":"43f9961439744f41ab0003a6","treeId":"4405f75560a8c9cd36000076","seq":21662597,"position":2,"parentId":"43f996e039744f41ab0003a4","content":"# 2. Create Server Roles"},{"_id":"43f9959839744f41ab0003a7","treeId":"4405f75560a8c9cd36000076","seq":21662598,"position":3,"parentId":"43f996e039744f41ab0003a4","content":"# 3. Create Configuration Plan"},{"_id":"43f9941339744f41ab0003a9","treeId":"4405f75560a8c9cd36000076","seq":21662599,"position":1,"parentId":"43f9959839744f41ab0003a7","content":"## Assign servers"},{"_id":"43f993d939744f41ab0003aa","treeId":"4405f75560a8c9cd36000076","seq":21662600,"position":4,"parentId":"43f996e039744f41ab0003a4","content":"# 4. Check Configuration"},{"_id":"43f9938c39744f41ab0003ab","treeId":"4405f75560a8c9cd36000076","seq":21662601,"position":1,"parentId":"43f993d939744f41ab0003aa","content":"## if actual configuration does not match planned configuration (=desired configuration = configuration plan), manually or automatically fix. If you want to have your otter automatically fix, click \"remediate configuration\"."},{"_id":"439b6f15290a26779a000279","treeId":"4405f75560a8c9cd36000076","seq":21699444,"position":5,"parentId":"439b5d29290a26779a000286","content":"Agents"},{"_id":"439b577e290a26779a000288","treeId":"4405f75560a8c9cd36000076","seq":21699447,"position":6,"parentId":"439b5d29290a26779a000286","content":"environment"},{"_id":"439b5628290a26779a000289","treeId":"4405f75560a8c9cd36000076","seq":21699449,"position":7,"parentId":"439b5d29290a26779a000286","content":"Configuration varibales"},{"_id":"439b7db8290a26779a000273","treeId":"4405f75560a8c9cd36000076","seq":21699455,"position":8,"parentId":"439b5d29290a26779a000286","content":"# Configuration"},{"_id":"439b7d69290a26779a000274","treeId":"4405f75560a8c9cd36000076","seq":21699456,"position":9,"parentId":"439b5d29290a26779a000286","content":"# Orchestation"},{"_id":"439b4f46290a26779a00028b","treeId":"4405f75560a8c9cd36000076","seq":21699458,"position":10,"parentId":"439b5d29290a26779a000286","content":"Ensure"},{"_id":"439b3df9290a26779a000294","treeId":"4405f75560a8c9cd36000076","seq":21699474,"position":10.25,"parentId":"439b5d29290a26779a000286","content":"Remediate Drift"},{"_id":"439b3d45290a26779a000297","treeId":"4405f75560a8c9cd36000076","seq":21699475,"position":10.375,"parentId":"439b5d29290a26779a000286","content":"Detect Drift"},{"_id":"439b3cf6290a26779a000298","treeId":"4405f75560a8c9cd36000076","seq":21699476,"position":10.4375,"parentId":"439b5d29290a26779a000286","content":"collect"},{"_id":"439b3bb0290a26779a000299","treeId":"4405f75560a8c9cd36000076","seq":21699477,"position":10.46875,"parentId":"439b5d29290a26779a000286","content":"PSExec"},{"_id":"439b3b8c290a26779a00029a","treeId":"4405f75560a8c9cd36000076","seq":21699478,"position":10.484375,"parentId":"439b5d29290a26779a000286","content":"PSEnsure"},{"_id":"439b3e8f290a26779a000293","treeId":"4405f75560a8c9cd36000076","seq":21699472,"position":10.5,"parentId":"439b5d29290a26779a000286","content":"Execute"},{"_id":"439b3a3b290a26779a00029c","treeId":"4405f75560a8c9cd36000076","seq":21699479,"position":10.75,"parentId":"439b5d29290a26779a000286","content":"Server targeting"},{"_id":"439b3945290a26779a00029d","treeId":"4405f75560a8c9cd36000076","seq":21699480,"position":10.875,"parentId":"439b5d29290a26779a000286","content":"Orchestration Jobs Templates"},{"_id":"439b391b290a26779a00029e","treeId":"4405f75560a8c9cd36000076","seq":21699481,"position":10.9375,"parentId":"439b5d29290a26779a000286","content":"Triggering"},{"_id":"439b38b0290a26779a00029f","treeId":"4405f75560a8c9cd36000076","seq":21699482,"position":10.96875,"parentId":"439b5d29290a26779a000286","content":"Rafts"},{"_id":"439b1ad6290a26779a0002a2","treeId":"4405f75560a8c9cd36000076","seq":21699503,"position":10.97265625,"parentId":"439b5d29290a26779a000286","content":"Assets"},{"_id":"439b1a47290a26779a0002a3","treeId":"4405f75560a8c9cd36000076","seq":21699505,"position":10.974609375,"parentId":"439b5d29290a26779a000286","content":"Configuration Plan"},{"_id":"439b2258290a26779a0002a1","treeId":"4405f75560a8c9cd36000076","seq":21699502,"position":10.9765625,"parentId":"439b5d29290a26779a000286","content":"CI/CD for Infrastructure"},{"_id":"439b233e290a26779a0002a0","treeId":"4405f75560a8c9cd36000076","seq":21699498,"position":10.984375,"parentId":"439b5d29290a26779a000286","content":"Pipeline Rafts "},{"_id":"439b4ec2290a26779a00028c","treeId":"4405f75560a8c9cd36000076","seq":21699459,"position":11,"parentId":"439b5d29290a26779a000286","content":"Role dependencies"},{"_id":"439b4beb290a26779a00028e","treeId":"4405f75560a8c9cd36000076","seq":21699461,"position":12,"parentId":"439b5d29290a26779a000286","content":"Configuration drift"},{"_id":"439b4b74290a26779a00028f","treeId":"4405f75560a8c9cd36000076","seq":21699462,"position":13,"parentId":"439b5d29290a26779a000286","content":"Job schedule"},{"_id":"439b4b45290a26779a000290","treeId":"4405f75560a8c9cd36000076","seq":21699463,"position":14,"parentId":"439b5d29290a26779a000286","content":"Job recurring"},{"_id":"439b44ba290a26779a000291","treeId":"4405f75560a8c9cd36000076","seq":21699464,"position":15,"parentId":"439b5d29290a26779a000286","content":"OtterScript"},{"_id":"43fa4d4239744f41ab00039f","treeId":"4405f75560a8c9cd36000076","seq":21662464,"position":2.75,"parentId":null,"content":"# リソース"},{"_id":"43fa4cfd39744f41ab0003a0","treeId":"4405f75560a8c9cd36000076","seq":21662465,"position":1,"parentId":"43fa4d4239744f41ab00039f","content":"[PowerShell Desired State Configuration(DSC)とは(前編) \\(1/2\\):PowerShell DSCで始めるWindowsインフラストラクチャ自動化の基本 \\- @IT](https://www.atmarkit.co.jp/ait/articles/1405/22/news131.html)"}],"tree":{"_id":"4405f75560a8c9cd36000076","name":"Otter","publicUrl":"server-roles"}}