Ian Carrick
Ian Carrick

Reputation: 358

Azure Self-Hosted VMss Failing on Zip Operation

Using Azure devOps there is a "build" pipeline that is carrying out a zip operation but failing due to space issue on the Azure VMSS VM (self hosted Linux VM).

Error

adding: Data/address_parser/address_parser_postal_codes.dat (deflated 81%) adding: Data/address_parser/address_parser_vocab.trie (deflated 53%) adding: Data/address_parser/address_parser_crf.dat zip I/O error: No space left on device zip error: Output file write failure (write error on zip file)

The VMSS details are...

Operating system:Linux Size:Standard_B8ms (1 instance)

I have tried...

  1. Setting up and running a Azure devOps 'Maintenance Job' that should delete any files left over on the VM from the previous runs.

  2. In the YAML file of the build pipeline the zip operation is set to replace any existing files with the same name and not create new ones with different name per pipeline run.

  • task: ArchiveFiles@2 condition: ne(variables['Build.Reason'], 'PullRequest')
    displayName: 'Archive files - ABC Function' inputs: rootFolderOrFile: '$(System.DefaultWorkingDirectory)/publish_output_abc_func' includeRootFolder: false archiveType: zip archiveFile: $(Build.ArtifactStagingDirectory)/$(Build.BuildId)_abc_func.zip replaceExistingArchive: true
  1. In the pipeline set the below file clean-up options...

enter image description here

  1. Add second "data disk" to the VMSS - for the devOps Pipeline to use.

enter image description here

The devOps Pipelines logs are reporting this amount of available disc space... "out of 29588.00MB"

2023-11-28T14:05:14.7413921Z ##[debug]Agent running environment resource - Disk: available:16388.00MB out of 29588.00MB, Memory: used 68MB out of 32093MB, CPU: usage 5.73

Eventually this is what I see...

Disk: available:0MB out of 29588.00MB...

Any thoughts?

Upvotes: 0

Views: 150

Answers (1)

Ian Carrick
Ian Carrick

Reputation: 358

So it looks as if its the OS disk on the VMSS VM I needed to increase, via Terraform the code is...

os_disk {
    storage_account_type = "Standard_LRS"
    caching              = "ReadWrite"
    disk_size_gb         = 128
  }

Upvotes: 0

Related Questions