Sunday, February 9, 2020

Microsoft Hosted vs. Self-hosted.

microsoft hosted:
-single use vms provided by microsoft.
-provisioned when new azure devops job is submitted.
-all patches and upgrades are taken care of by microsoft.
-pre-defined software packages installed.
-tasks run with the highest level of permissions.
-data doesnot persist between pipeline runs.
-additional packages can be installed.

Available hosted agents: https://github.com/microsoft/azure-pipelines-image-generation/tree/master/images

Run pipeline using hosted agents.
project settings--agent pools--agents tab--single service (Hosted Agent)



Self-hosted agents:
-----------------
-we build and maintain, whether on-premise or azure cloud.
-provides greater contrl over application binaries
-data caches and configuration persist between runs
-can be run on macos,linux,windows and docker
-agent runs either interactively or a a service.
-user is responsible for all management and configuration
-user is responsible for all major version upgrades
-in the microsoft hosted agents, network connectivity and ports are taken care by microsoft.But here, we need set policies and connectivity manually.



agent pools -- agents tab -- vsts-01 (our name)--


and we need to provide "authorize resources" to have pipeline access to agents self hosted.

Agent capabilities:
----------------
-system capabilities(automatic) and user capabilities(manual)
-includes os,apps and env. variables
-capabilities are used as demands in Pipeline jobs.

https://docs.microsoft.com/en-us/azure/devops/pipelines/agents/agents#capabilites



for self hosted, we don't get much info displayed but we can get thier capabilties from REST API.




agent pools--self hosted pool name--our pool name--capabilities (to see them)
we can keep these assertions as demands in pipeline.



No comments:

Post a Comment