08204092be
- Update recipes |
||
---|---|---|
cascade | ||
config_templates | ||
docs | ||
recipes | ||
resources | ||
scripts | ||
.gitattributes | ||
.gitignore | ||
.travis.yml | ||
CHANGELOG.md | ||
CONTRIBUTING.md | ||
Dockerfile | ||
LICENSE | ||
README.md | ||
requirements.txt | ||
shipyard.py |
README.md
Batch Shipyard
Batch Shipyard is a tool to help provision and execute batch-style Docker workloads on Azure Batch compute pools. No experience with the Azure Batch SDK is needed; run your Dockerized tasks with easy-to-understand configuration files!
Major Features
- Automated Docker Host Engine installation tuned for Azure Batch compute nodes
- Automated deployment of required Docker images to compute nodes
- Accelerated Docker image deployment at scale to compute pools consisting of a large number of VMs via private peer-to-peer distribution of Docker images among the compute nodes
- Automated Docker Private Registry instance creation on compute nodes with Docker images backed to Azure Storage if specified
- Automatic shared data volume support for:
- Azure File Docker Volume Driver installation and share setup for SMB/CIFS backed to Azure Storage if specified
- GlusterFS distributed network file system installation and setup if specified
- Seamless integration with Azure Batch job, task and file concepts along with full pass-through of the Azure Batch API to containers executed on compute nodes
- Support for task dependencies allowing complex processing pipelines and graphs with Docker containers
- Transparent support for GPU accelerated Docker applications on Azure N-Series VM instances (Preview)
- Support for multi-instance tasks to accomodate Dockerized MPI and multi-node cluster applications on compute pools with automatic job cleanup
- Transparent assist for running Docker containers utilizing Infiniband/RDMA for MPI on HPC low-latency Azure VM instances (i.e., STANDARD_A8 and STANDARD_A9)
- Automatic set up of SSH tunneling to Docker Hosts on compute nodes if specified
Installation
Simply clone the repository:
git clone https://github.com/Azure/batch-shipyard.git
or download the latest release.
Please see this page for more installation information.
Requirements
The Batch Shipyard tool is written in Python. The client script is compatible
with Python 2.7 or 3.3+. You will also need to install the
Azure Batch and
Azure Storage python packages.
Installation can be performed using the requirements.txt
file via the command pip install --user -r requirements.txt
(or via pip3
for python3).
Batch Shipyard Compute Node OS Support
Batch Shipyard is currently only compatible with Azure Batch supported Marketplace Linux VMs.
Documentation
Please refer to this guide for a complete primer on concepts, usage and a quickstart guide.
Please visit the recipes directory for different sample Docker workloads using Azure Batch and Batch Shipyard after you have completed the primer.
ChangeLog
See the CHANGELOG.md file.
This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.