Uploading Large Executable on Azure Batch Service App Management Portal

Azure batch App service includes a management Portal where developer can manage jobs, upload application & cloud assembly, view logs and download outputs without having to write their own client code.At this moment it is not possible to load a large zip file with the executables (2+GB in size) through the management portal, it only gives this error.

Over 2GB seems like a very large application image, some programs could become very large, but it is rare to see programs above 200-300 MB. This was probably the reason why this 2GB limit in batch management portal makes sense. But in some cases some people might need to upload some application package which exceeds this size limit. Naturally it is not the executables themselves that are so large. For example to run image processing algorithm on volumetric (3D) brain images might require to use some template files that makes this application package big.

Even if Batch service App management portal doesn’t allow users to upload application images which exceeds this limit, we could still be able to do it by using AzCoy ( http://azure.microsoft.com/en-us/documentation/articles/storage-use-azcopy/) or similar Azure storage application to upload those. To be able to do it, we need to understand how Azure Batch Service App uses Azure Storage.

A storage account is automatically created when Azure batch App Service is created. This is created in the same region where Batch app service is created and the storage name starts with ‘batchapps’. The exact naming convention of the storage account is “batchapps” + (random padding up to 24 chars).The storage account for a particular service can be found via Batch Apps management portal: Select service, “View details” -> “Sync access Keys”.

Once you get Azure storage account from Batch portal, you could proceed to Management Portal to get storage access key which will be required to upload these executables. For detailed instructions, please visit ‘View, copy, and regenerate storage access keys’ section of this article ( http://azure.microsoft.com/en-us/documentation/articles/storage-create-storage-account/ ).

The storage account where this executable ends up is created in your subscription so you can actually locate this and upload your zip to a container called “clouddrives” (for cloud assemblies) and “greenbutton-cloud-assemblies” (for application image. Create it if it doesn’t exist. The naming convention of the storage account but is a not-so-attractive-looking generated string and should stand out! The blob should be named ApplicationName.zip where ApplicationName is that defined in your Cloud Assembly.

Following the above mentioned naming convention, now you can use AzCopy or any other tools of your choice to upload those to storage so that Azure Batch App service finds those apps correctly.

To learn more about Azure Batch, please visit http://azure.microsoft.com/en-us/documentation/services/batch/.

You could find Azure storage related information here (http://azure.microsoft.com/en-us/documentation/services/storage/ ).