Skip to content

Instantly share code, notes, and snippets.

@rayhassan
Last active February 9, 2018 10:37
Show Gist options
  • Save rayhassan/d71342d6c2fc194b35fdc4bd77312325 to your computer and use it in GitHub Desktop.
Save rayhassan/d71342d6c2fc194b35fdc4bd77312325 to your computer and use it in GitHub Desktop.
Nutanix Docker Volume Plugin (DVP) demo run through
demo notes for Docker volume driver
o cluster VIP / Dataservices VIP
o clone Docker host VM from gold image in AHV (set hostname vis hostnamectl set-hostname)
o login and install Docker Engine (https://docs.docker.com/engine/installation/linux/docker-ce/centos/)
o enable/start docker service
o docker run hello world (basic test)
o docker images/ docker ps (-a) / docker version
Note : DVP supported on RHEL/CentOS and Ubuntu distros of Linux
o install Docker volume plugin (DVP) -(https://store.docker.com/plugins/nutanix-dvp-docker-volume-plug-in)
Install a docker version >= 1.13 by following the instructions here
yum install iscsi-initiator-utils
systemd-tmpfiles --create
systemctl start iscsid
systemctl enable iscsid
Ensure iscsid is running using: systemctl status iscsid
docker plugin install ntnx/nutanix_volume_plugin PRISM_IP="10.68.64.55" DATASERVICES_IP="10.68.64.254" PRISM_PASSWORD="Nutanix/1234u" PRISM_USERNAME="admin" DEFAULT_CONTAINER="DEFAULT-CTR" --alias nutanix
o docker plugin ls
ID NAME DESCRIPTION ENABLED
94309f7a2ff0 nutanix:latest Nutanix volume plugin for docker true
o create docker volume
docker volume create -d nutanix pgdata01
pgdata01
show in prism!!
o create docker container to run posgresql db
docker run -d --name pg01 -p 5432:5432 --volume-driver nutanix -v pgdata01:/var/lib/postgresql/data postgres:latest
- > show using docker ps
o connect to container
docker exec -it pg01 /bin/bash
o create a postgres db
psql -U postgres
\l
CREATE DATABASE supergroup with owner postgres;
\l
(should see supergroup db)
\q
exit out of ctr
o stop and kill docker ctr
# docker stop pg01
pg01
[root@supergroupdemo01 ~]# docker rm pg01
pg01
[root@supergroupdemo01 ~]# docker ps -a
o now repeat for new container and show volume reuse:
docker run -d --name pg02 -p 5432:5432 --volume-driver nutanix -v pgdata01:/var/lib/postgresql/data postgres:latest
a55b9b59e2577b0f91b0af70c106e51e7f3db7216080558caf9654b3372e80bc
[root@supergroupdemo01 ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a55b9b59e257 postgres:latest "docker-entrypoint..." 16 seconds ago Up 4 seconds 0.0.0.0:5432->5432/tcp pg02
[root@supergroupdemo01 ~]# docker exec -it pg02 /bin/bash
root@a55b9b59e257:/# psql -U postgres
psql (10.0)
Type "help" for help.
postgres=# \l
List of databases
Name | Owner | Encoding | Collate | Ctype | Access privileges
------------+----------+----------+------------+------------+-----------------------
postgres | postgres | UTF8 | en_US.utf8 | en_US.utf8 |
supergroup | postgres | UTF8 | en_US.utf8 | en_US.utf8 |
template0 | postgres | UTF8 | en_US.utf8 | en_US.utf8 | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | en_US.utf8 | en_US.utf8 | =c/postgres +
| | | | | postgres=CTc/postgres
(4 rows)
postgres=# \q
root@a55b9b59e257:/# exit
exit
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment