Родитель
17e26f091b
Коммит
296c39b39b
|
@ -2,6 +2,13 @@
|
||||||
|
|
||||||
## [Unreleased]
|
## [Unreleased]
|
||||||
|
|
||||||
|
### Added
|
||||||
|
- Sample Windows container recipes
|
||||||
|
|
||||||
|
### Fixed
|
||||||
|
- Some commands were incorrectly failing due to nodeid conflicts with
|
||||||
|
supplied parameters
|
||||||
|
|
||||||
## [3.6.1] - 2018-12-03
|
## [3.6.1] - 2018-12-03
|
||||||
### Added
|
### Added
|
||||||
- `force_enable_task_dependencies` property in jobs configuration to turn
|
- `force_enable_task_dependencies` property in jobs configuration to turn
|
||||||
|
|
|
@ -100,3 +100,9 @@ potentially lead to a greater occurrence of `unusable` nodes.
|
||||||
#### Does Batch Shipyard support Windows Server Containers?
|
#### Does Batch Shipyard support Windows Server Containers?
|
||||||
* Yes, but with some feature, configuration, and CLI limitations. Please see
|
* Yes, but with some feature, configuration, and CLI limitations. Please see
|
||||||
the [current limitations](99-current-limitations.md) doc for more information.
|
the [current limitations](99-current-limitations.md) doc for more information.
|
||||||
|
* If you receive OS compatibility mismatches when running your Windows
|
||||||
|
containers, please ensure you have the correct `--isolation` parameter set,
|
||||||
|
if required. You can view the Windows container compatibility matrix
|
||||||
|
[here](https://docs.microsoft.com/virtualization/windowscontainers/deploy-containers/version-compatibility).
|
||||||
|
To learn more about Hyper-V isolation, please see
|
||||||
|
[this article](https://docs.microsoft.com/virtualization/windowscontainers/manage-containers/hyperv-container).
|
||||||
|
|
|
@ -0,0 +1,31 @@
|
||||||
|
# DiskSpd-Windows
|
||||||
|
This recipe shows how to run the [DiskSpd](https://github.com/Microsoft/diskspd)
|
||||||
|
tool on a single node running Windows Server Containers.
|
||||||
|
|
||||||
|
## Configuration
|
||||||
|
Please see refer to this [set of sample configuration files](./config) for
|
||||||
|
this recipe.
|
||||||
|
|
||||||
|
### Pool Configuration
|
||||||
|
Pool properties such as `publisher`, `offer`, `sku`, `vm_size` and
|
||||||
|
`vm_count` should be set to your desired values.
|
||||||
|
|
||||||
|
### Global Configuration
|
||||||
|
The global configuration should set the following properties:
|
||||||
|
* `docker_images` array must have a reference to a valid Windows Docker image.
|
||||||
|
[stefanscherer/diskspd:nano](https://hub.docker.com/r/stefanscherer/diskspd/) can
|
||||||
|
be used for this recipe.
|
||||||
|
|
||||||
|
### Jobs Configuration
|
||||||
|
The jobs configuration should set the following properties within the `tasks`
|
||||||
|
array which should have a task definition containing:
|
||||||
|
* `docker_image` should be the name of the Docker image for this container invocation,
|
||||||
|
e.g., `stefanscherer/diskspd:nano`
|
||||||
|
* `additional_docker_run_options` property is needed to set the
|
||||||
|
[isolation mode](https://docs.microsoft.com/virtualization/windowscontainers/manage-containers/hyperv-container)
|
||||||
|
for container execution as `--isolation=hyperv`. This is required as this
|
||||||
|
container is built using the base OS image that is different from the Host
|
||||||
|
OS. You can view the Windows container compatibility matrix
|
||||||
|
[here](https://docs.microsoft.com/virtualization/windowscontainers/deploy-containers/version-compatibility).
|
||||||
|
* `command` should contain the command to pass to the Docker run invocation. For
|
||||||
|
this example, we use: `-c8192k -d1 testfile.dat`
|
|
@ -0,0 +1,5 @@
|
||||||
|
batch_shipyard:
|
||||||
|
storage_account_settings: mystorageaccount
|
||||||
|
global_resources:
|
||||||
|
docker_images:
|
||||||
|
- stefanscherer/diskspd:nano
|
|
@ -0,0 +1,9 @@
|
||||||
|
credentials:
|
||||||
|
batch:
|
||||||
|
account_key: <batch account key>
|
||||||
|
account_service_url: <batch account service url>
|
||||||
|
storage:
|
||||||
|
mystorageaccount:
|
||||||
|
account: <storage account name>
|
||||||
|
account_key: <storage account key>
|
||||||
|
endpoint: core.windows.net
|
|
@ -0,0 +1,7 @@
|
||||||
|
job_specifications:
|
||||||
|
- id: diskspd
|
||||||
|
tasks:
|
||||||
|
- docker_image: stefanscherer/diskspd:nano
|
||||||
|
additional_docker_run_options:
|
||||||
|
- --isolation=hyperv # need to execute with Hyper-V isolation due to container/OS version mismatch
|
||||||
|
command: -c8192k -d1 testfile.dat
|
|
@ -0,0 +1,13 @@
|
||||||
|
pool_specification:
|
||||||
|
id: windows
|
||||||
|
vm_configuration:
|
||||||
|
platform_image:
|
||||||
|
publisher: MicrosoftWindowsServer
|
||||||
|
offer: WindowsServer
|
||||||
|
sku: 2019-Datacenter-with-Containers-smalldisk
|
||||||
|
vm_count:
|
||||||
|
dedicated: 1
|
||||||
|
low_priority: 0
|
||||||
|
vm_size: STANDARD_D4_V3
|
||||||
|
rdp:
|
||||||
|
username: shipyard
|
|
@ -0,0 +1,29 @@
|
||||||
|
# DotNet-Windows
|
||||||
|
This recipe shows how to run a sample DotNet application on
|
||||||
|
a single node running Windows Server Containers.
|
||||||
|
|
||||||
|
## Configuration
|
||||||
|
Please see refer to this [set of sample configuration files](./config) for
|
||||||
|
this recipe.
|
||||||
|
|
||||||
|
### Pool Configuration
|
||||||
|
Pool properties such as `publisher`, `offer`, `sku`, `vm_size` and
|
||||||
|
`vm_count` should be set to your desired values.
|
||||||
|
|
||||||
|
### Global Configuration
|
||||||
|
The global configuration should set the following properties:
|
||||||
|
* `docker_images` array must have a reference to a valid Windows Docker image.
|
||||||
|
[microsoft/dotnet-samples:dotnetapp-nanoserver-1809](https://hub.docker.com/r/microsoft/dotnet-samples/)
|
||||||
|
can be used for this recipe.
|
||||||
|
|
||||||
|
### Jobs Configuration
|
||||||
|
The jobs configuration should set the following properties within the `tasks`
|
||||||
|
array which should have a task definition containing:
|
||||||
|
* `docker_image` should be the name of the Docker image for this container invocation,
|
||||||
|
e.g., `microsoft/dotnet-samples:dotnetapp-nanoserver-1809`
|
||||||
|
* `additional_docker_run_options` property is needed to override the working directory
|
||||||
|
set by Batch to use the working directory as specified by the image with
|
||||||
|
`--workdir C:\\app`. Note that not all images will require this option as it is
|
||||||
|
dependent upon if the application requires starting in a certain working directory.
|
||||||
|
* `command` should contain the command to pass to the Docker run invocation. This
|
||||||
|
particular Docker image does not need a command, but will echo anything passed in.
|
|
@ -0,0 +1,5 @@
|
||||||
|
batch_shipyard:
|
||||||
|
storage_account_settings: mystorageaccount
|
||||||
|
global_resources:
|
||||||
|
docker_images:
|
||||||
|
- microsoft/dotnet-samples:dotnetapp-nanoserver-1809
|
|
@ -0,0 +1,9 @@
|
||||||
|
credentials:
|
||||||
|
batch:
|
||||||
|
account_key: <batch account key>
|
||||||
|
account_service_url: <batch account service url>
|
||||||
|
storage:
|
||||||
|
mystorageaccount:
|
||||||
|
account: <storage account name>
|
||||||
|
account_key: <storage account key>
|
||||||
|
endpoint: core.windows.net
|
|
@ -0,0 +1,7 @@
|
||||||
|
job_specifications:
|
||||||
|
- id: dotnet-app
|
||||||
|
tasks:
|
||||||
|
- docker_image: microsoft/dotnet-samples:dotnetapp-nanoserver-1809
|
||||||
|
additional_docker_run_options:
|
||||||
|
- --workdir C:\\app # this is needed as Batch sets the working directory to the Batch task
|
||||||
|
command: "Hello from Batch Shipyard!"
|
|
@ -0,0 +1,13 @@
|
||||||
|
pool_specification:
|
||||||
|
id: windows
|
||||||
|
vm_configuration:
|
||||||
|
platform_image:
|
||||||
|
publisher: MicrosoftWindowsServer
|
||||||
|
offer: WindowsServer
|
||||||
|
sku: 2019-Datacenter-with-Containers-smalldisk
|
||||||
|
vm_count:
|
||||||
|
dedicated: 1
|
||||||
|
low_priority: 0
|
||||||
|
vm_size: STANDARD_D4_V3
|
||||||
|
rdp:
|
||||||
|
username: shipyard
|
|
@ -24,6 +24,7 @@ Use the following links to quickly navigate to recipe collections:
|
||||||
5. [Molecular Dynamics (MD)](#md)
|
5. [Molecular Dynamics (MD)](#md)
|
||||||
6. [RemoteFS](#remotefs)
|
6. [RemoteFS](#remotefs)
|
||||||
7. [Video Processing](#video)
|
7. [Video Processing](#video)
|
||||||
|
8. [Windows](#windows)
|
||||||
|
|
||||||
## <a name="benchmarks"></a>Benchmarks
|
## <a name="benchmarks"></a>Benchmarks
|
||||||
#### [HPCG-Infiniband-IntelMPI](./HPCG-Infiniband-IntelMPI)
|
#### [HPCG-Infiniband-IntelMPI](./HPCG-Infiniband-IntelMPI)
|
||||||
|
@ -194,5 +195,15 @@ single VM NFS server.
|
||||||
|
|
||||||
## <a name="video"></a>Video Processing
|
## <a name="video"></a>Video Processing
|
||||||
#### [FFmpeg-GPU](./FFmpeg-GPU)
|
#### [FFmpeg-GPU](./FFmpeg-GPU)
|
||||||
This recipe contains information on how to use containerize
|
This recipe contains information on how to containerize
|
||||||
[FFmpeg](https://ffmpeg.org/) on GPUs for use with the N-series Azure VMs.
|
[FFmpeg](https://ffmpeg.org/) on GPUs for use with the N-series Azure VMs.
|
||||||
|
|
||||||
|
## <a name="windows"></a>Windows
|
||||||
|
#### [DiskSpd-Windows](./DiskSpd-Windows)
|
||||||
|
This recipe contains information on how to run a containerized version of
|
||||||
|
the [DiskSpd](https://github.com/Microsoft/diskspd) tool with Windows
|
||||||
|
Server Containers on Azure VMs.
|
||||||
|
|
||||||
|
#### [DotNet-Windows](./DotNet-Windows)
|
||||||
|
This recipe contains information on how to run a sample DotNet application
|
||||||
|
with Windows Server Containers on Azure VMs.
|
||||||
|
|
Загрузка…
Ссылка в новой задаче