mirror of
https://github.com/kemko/nomad.git
synced 2026-01-05 18:05:42 +03:00
This changeset provides two basic e2e tests for CSI plugins targeting common AWS use cases. The EBS test launches the EBS plugin (controller + nodes) and registers an EBS volume as a Nomad CSI volume. We deploy a job that writes to the volume, stop that job, and reuse the volume for another job which should be able to read the data written by the first job. The EFS test launches the EFS plugin (nodes-only) and registers an EFS volume as a Nomad CSI volume. We deploy a job that writes to the volume, stop that job, and reuse the volume for another job which should be able to read the data written by the first job. The writer jobs mount the CSI volume at a location within the alloc dir.
44 lines
988 B
HCL
44 lines
988 B
HCL
# jobspec for running CSI plugin for AWS EBS, derived from
|
|
# the kubernetes manifests found at
|
|
# https://github.com/kubernetes-sigs/aws-ebs-csi-driver/tree/master/deploy/kubernetes
|
|
|
|
job "plugin-aws-ebs-nodes" {
|
|
datacenters = ["dc1"]
|
|
|
|
# you can run node plugins as service jobs as well, but this ensures
|
|
# that all nodes in the DC have a copy.
|
|
type = "system"
|
|
|
|
group "nodes" {
|
|
task "plugin" {
|
|
driver = "docker"
|
|
|
|
config {
|
|
image = "amazon/aws-ebs-csi-driver:latest"
|
|
|
|
args = [
|
|
"node",
|
|
"--endpoint=unix://csi/csi.sock",
|
|
"--logtostderr",
|
|
"--v=5",
|
|
]
|
|
|
|
privileged = true
|
|
}
|
|
|
|
csi_plugin {
|
|
id = "aws-ebs0"
|
|
type = "node"
|
|
mount_dir = "/csi"
|
|
}
|
|
|
|
# note: there's no upstream guidance on resource usage so
|
|
# this is a best guess until we profile it in heavy use
|
|
resources {
|
|
cpu = 500
|
|
memory = 256
|
|
}
|
|
}
|
|
}
|
|
}
|