wlandau / crew.aws.batch Goto Github PK
View Code? Open in Web Editor NEWA {crew} launcher plugin for AWS Batch
Home Page: https://wlandau.github.io/crew.aws.batch
License: Other
A {crew} launcher plugin for AWS Batch
Home Page: https://wlandau.github.io/crew.aws.batch
License: Other
When this issue is open, vacation mode is turned on. That means Github interactions are temporarily limited, so users cannot open or comment on issues or discussions until I return and re-enable interactions (see return date below). When this issue is closed, vacation mode is turned off and interactions are re-enabled and possible again.
Vacation mode helps me rest because it prevents tasks from piling up in my absence. Thank you for your patience and understanding.
Already returned.
It would be great to have standalone R function utilities to manage batch jobs. These would run in the user's interactive session outside the targets
pipeline / crew
controller. I am thinking of covering the same functionality as qsub
, qstat
, and qdel
in SGE (sbatch
, squeue
, and scancel
in SLURM), plus log files. Proposal:
crew_aws_batch_submit()
: submit a job that runs some code (R or shell). This could help e.g. submit a targets
pipeline as a Batch job which submits other Batch jobs.crew_aws_batch_status()
: get the status of jobs in a given job queue / job definition.crew_aws_batch_terminate()
: terminate one or more jobs with specific job names/IDs/ARNs.crew_aws_batch_logs()
: log files for one or more jobs, or for an entire job definition. This would really help detect tricky worker-level errors such as running out of memory or hitting a price spike that terminates spot instances.Because of paws-r/paws#721, the log()
method of the monitor currently does not use pagination. When that issue is fixed, I will replace this:
crew.aws.batch/R/crew_aws_batch_monitor.R
Lines 753 to 759 in cf88f67
with this:
pages <- paws.common::paginate(
client$get_log_events(
logGroupName = private$.log_group,
logStreamName = log_stream_name,
startFromHead = start_from_head
)
)
and test it with this:
crew.aws.batch/tests/monitor/test-jobs.R
Lines 87 to 129 in 06f92d5
C.f. wlandau/crew#141. Needs to wait until after crew
> 0.7.0 is on CRAN.
A "monitor" in the crew
ecosystem should just list and terminate jobs, not launch jobs or configure job definitions. I have plans to create a new job definition class for this.
Either a function to create new job definitions or documentation for how to do this. Sketch using the CLI:
aws batch register-job-definition \
--job-definition-name YOUR_JOB_DEFINITION_NAME \
--type container \
--container-properties "image=AWS_ACCOUNT.dkr.ecr.AWS_REGION.amazonaws.com/IMAGE_NAME:IMAGE_TAG, vcpus=4, memory=16000"
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.