The Persisent Application Client Container (PACC) with GPU support (GPU based PACC Container). MapR PACC supports containerization of existing and new applications by providing containers with persistent data access from anywhere. This enables building ML/AI applications by providing access to data outside of thecontainer. Applications running in containers are then no longer transient and are able to run anywhere MapR is running including on-premises, in the cloud or even at the edge.
Containers have no scalable, out-of-box way to let applications persist state. All data written by containerized applications is typically lost when there is an application or hardware failure. Most options seeking to address this problem have proven to be inadequate for a variety of reasons. Storing data on local nodes, for example, forces IT departments to track down the data and move files when containers are redeployed. In addition, commercially available NAS/SAN-based solutions are not cost-effective and introduce unnecessary overhead.
With the introduction of MapR Persistent Application Client Containers (PACCs), containerized applications can easily leverage all the MapR platform services (Distributed File and Object Storage, NoSQL JSON Database, Event Store for Apache Kafka) as a persistent data store.
Applications store state in the MapR Converged Data Platform, ensuring resilience and availability across application and infrastructure failures. In this use case:
Here, containerized applications persist data to a secure, shared location (the MapR Converged Data Platform), where other applications can access and make use of it. For instance, containerized operational applications can write data to MapR, where analytical applications leveraging Apache Drill, Spark, etc. can then make use of it.
Microservice applications leverage the complete suite of reliable, scalable data services that only the MapR Converged Data Platform can provide. By leveraging client pathways to MapR Event Store and MapR Database, for example, microservices can immediately gain advantages including statefulness and efficient inter-microservice communication, as well as the simplified deployment model that containers provide.
To start the PACC container with GPU support: docker pull maprtech/pacc-gpu:cuda10-6.1.0_6.0.0_ubuntu16
This docker image is a base image with the GPU support and support for communicating with the MapR Data Platform.
In order to really make the most of this container, you should build your solution on top of this container. In your own Dockerfile you can build on top of this container with the following line
FROM maprtech/pacc-gpu:cuda10-6.1.0_6.0.0_ubuntu16
Here is the sample command to run the container:
nvidia-docker run -it
-e NVIDIA_VISIBLE_DEVICES=all
--cap-add SYS_ADMIN
--cap-add SYS_RESOURCE
--device /dev/fuse
-e MAPR_CLUSTER=my-test-cluster
-e MAPR_MOUNT_PATH=/mapr
-e MAPR_CONTAINER_USER=user1
-e MAPR_CONTAINER_UID=500
-e MAPR_CONTAINER_GROUP=group1
-e MAPR_CONTAINER_GID=500
-e MAPR_CLDB_HOSTS=1.1.1.1
-e MAPR_TICKETFILE_LOCATION=/tmp/maprticket_500
-v /tmp/user1_ticket_500:/tmp/maprticket_500:ro
<pacc-gpu docker image>
For further reference on the PACC, please see PACC Documentation.
If you do not already have MapR in your environment, you can get started here by [downloading the MapR Community Edition] (https://mapr.com/download/)