Docker Community Forums

Share and learn in the Docker community.

IO performance issue while writing to MariaDB Container


(Jampanis) #1

Hello,
I am using Docker CE 17.09 and found IO performance issues when inserting data into MariaDB container. The data is being inserted by a program from different container, I am using docker-compose version 2.1 to setup my docker containers. The volumes are created as shown below in docker-compose.

volumes:
- /dbdta:/var/lib/mysql:z

Note: I also tried to create volume separately and used it as external volume in docker-compose, this improved performance slightly but still very slow compare to non docker environment.

xxxxxxxxxxx# docker info
Containers: 16
Running: 13
Paused: 0
Stopped: 3
Images: 40
Server Version: 17.09.0-ce
Storage Driver: devicemapper
Pool Name: docker-thinpool
Pool Blocksize: 524.3kB
Base Device Size: 10.74GB
Backing Filesystem: xfs
Data file:
Metadata file:
Data Space Used: 14.45GB
Data Space Total: 70.38GB
Data Space Available: 55.92GB
Metadata Space Used: 10.53MB
Metadata Space Total: 738.2MB
Metadata Space Available: 727.7MB
Thin Pool Minimum Free Space: 7.038GB
Udev Sync Supported: true
Deferred Removal Enabled: true
Deferred Deletion Enabled: true
Deferred Deleted Device Count: 0
Library Version: 1.02.140-RHEL7 (2017-05-03)
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
Volume: local
Network: bridge host macvlan null overlay
Log: awslogs fluentd gcplogs gelf journald json-file logentries splunk syslog
Swarm: inactive
Runtimes: runc
Default Runtime: runc
Init Binary: docker-init
containerd version: 06b9cb35161009dcb7123345749fef02f7cea8e0
runc version: 3f2f8b84a77f73d38244dd690525642a72156c64
init version: 949e6fa
Security Options:
seccomp
Profile: default
Kernel Version: 3.10.0-693.el7.x86_64
Operating System: CentOS Linux 7 (Core)
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 15.49GiB
Name: t68554app
ID: GAKW:CI7Q:LMNV:QLC7:7LDN:7OUA:F4UG:TQPU:FEKB:OFAU:T6TZ:WP6D
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Experimental: false
Insecure Registries:
127.0.0.0/8
Live Restore Enabled: false

Any input on this greatly appreciated.


(Junius) #2

The node has 13 containers running? Would be better to run MariaDB container and testing container only, to avoid the impact of other containers.

How does the testing container access MariaDB? Could try to use host network for MariaDB, to reduce the impact of the overlay network.