Provision Docker Storage on a Dedicated Block Device: Difference between revisions
Jump to navigation
Jump to search
(Created page with "=Internal= * #Ny62gV") |
No edit summary |
||
(43 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
=Internal= | =Internal= | ||
* #Ny62gV | * [[OpenShift_3.5_Installation#Ny62gV|OpenShift 3.5 Installation]] | ||
=Overview= | |||
=Procedure= | |||
Provision an unformatted block device. For this example, it will be referred to as /dev/sdb. | |||
Create one partition that spans the entire device. Either [[fdisk]] or [[sfdisk]] can be used. This is how the partition [[Fdisk#Create_a_Partition_that_Spans_the_Entire_Device|is created with fdisk]]. | |||
The procedure will create a /dev/sdb1 partition. | |||
[[Wipefs#Erase_all_Signatures|Erase all signatures]] from the partition: | |||
<pre> | |||
wipefs -a /dev/sdb1 | |||
</pre> | |||
[[pvcreate#Initialize_Partition_for_use_by_LVM|Initialize the partition for use by LVM]] by creating a physical volume: | |||
<pre> | |||
pvcreate /dev/sdb1 | |||
</pre> | |||
[[Vgcreate#Create_a_Volume_Group|Create the volume group]], conventionally named "docker_vg", using the partition prepared by the previous steps /dev/sdb1: | |||
<pre> | |||
vgcreate docker_vg /dev/sdb1 | |||
</pre> | |||
[[lvcreate#Create_a_Thin_Pool_Logical_Volume|Crate the LVM thin pool]]: | |||
<pre> | |||
lvcreate -y --type thin-pool --zero n -c 512K --poolmetadatasize 1041s -L 500M -n docker-pool docker_vg | |||
</pre> | |||
[[lvchange#Enable_Logical_Volume_Auto-Extension|Enable auto-extension]] (optional): | |||
Store: | |||
<pre> | |||
activation { | |||
thin_pool_autoextend_threshold=60 | |||
thin_pool_autoextend_percent=20 | |||
} | |||
</pre> | |||
in /etc/lvm/profile/docker_vg--docker-pool-extend.profile and then: | |||
<pre> | |||
lvchange --metadataprofile docker_vg--docker-pool-extend docker_vg/docker-pool | |||
</pre> | |||
Verify that the LV is correctly created: | |||
<pre> | |||
#lvs | |||
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert | |||
docker-pool docker_vg twi-a-t--- 500.00m 0.00 0.88 | |||
root main_vg -wi-ao---- 7.00g | |||
</pre> | |||
Write /etc/sysconfig/docker-storage: | |||
<pre> | |||
DOCKER_STORAGE_OPTIONS="--storage-driver devicemapper --storage-opt dm.fs=xfs --storage-opt dm.thinpooldev=/dev/mapper/docker_vg-docker--pool --storage-opt dm.use_deferred_removal=true" | |||
</pre> |
Latest revision as of 18:40, 23 May 2017
Internal
Overview
Procedure
Provision an unformatted block device. For this example, it will be referred to as /dev/sdb.
Create one partition that spans the entire device. Either fdisk or sfdisk can be used. This is how the partition is created with fdisk.
The procedure will create a /dev/sdb1 partition.
Erase all signatures from the partition:
wipefs -a /dev/sdb1
Initialize the partition for use by LVM by creating a physical volume:
pvcreate /dev/sdb1
Create the volume group, conventionally named "docker_vg", using the partition prepared by the previous steps /dev/sdb1:
vgcreate docker_vg /dev/sdb1
lvcreate -y --type thin-pool --zero n -c 512K --poolmetadatasize 1041s -L 500M -n docker-pool docker_vg
Enable auto-extension (optional):
Store:
activation { thin_pool_autoextend_threshold=60 thin_pool_autoextend_percent=20 }
in /etc/lvm/profile/docker_vg--docker-pool-extend.profile and then:
lvchange --metadataprofile docker_vg--docker-pool-extend docker_vg/docker-pool
Verify that the LV is correctly created:
#lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert docker-pool docker_vg twi-a-t--- 500.00m 0.00 0.88 root main_vg -wi-ao---- 7.00g
Write /etc/sysconfig/docker-storage:
DOCKER_STORAGE_OPTIONS="--storage-driver devicemapper --storage-opt dm.fs=xfs --storage-opt dm.thinpooldev=/dev/mapper/docker_vg-docker--pool --storage-opt dm.use_deferred_removal=true"