Container Storage Best Practices In 2017 - Red Hat

3y ago
23 Views
2 Downloads
1.75 MB
40 Pages
Last View : 1m ago
Last Download : 3m ago
Upload by : Matteo Vollmer
Transcription

Container Storage Best Practices in 2017Myth-busting and taking state of the presentKeith ResarRed Hat Solution ArchitectJanuary 24th, 2017

Agenda @KeithResarContainer Storage MythsContainer Storage PrimerReview 6 Storage DriversChooser a Storage Driver

Container Storage History / Mythshttp://en.wikifur.com/wiki/Sloth (species)@KeithResar

Container Storage Level Set

Image : Container :: Class : ObjectFor humans, read this to say:An image is to a container, as a class is to an object. ls -l /image; echo ?0 pgrep image; echo ?1@KeithResar

Container Storage@KeithResarData Volume Storage

Data Volume StorageCan be extended to support many endpoints and protocolsusing installable docker plugins. LocalLVM @KeithResarGlusterFSCephNFSiSCSI

Container Storage@KeithResarData Volume Storage

@KeithResar

@KeithResar

@KeithResar

Copy-on-write Strategy@KeithResar

Container Storage Drivers

Available Storage DriversTechnologyDriverIntroductionFile vs. BlockVFSvfsorigin* FileAUFSaufsoriginFileOverlayFSoverlay/overlay2Aug 2014 (1.11)June 2016 (1.12)FileDevice MapperdevicemapperSept 2013 (0.7)BlockBtrfsbtrfsNov 2013File@KeithResar

vfs Driver (1 of 6)Naive implementation lacking union filesystem and copy-on-write@KeithResar

vfs Driver (1 of 6)Naive implementation lacking union filesystem and copy-on-writeThe GoodReference compatibilitymodelUseful for docker-in-dockerscenarios to avoid nestingstorage drivers@KeithResarThe BadNo shared memory, unionfilesystem, orcopy-on-writeSummaryNot for production useImportant support rolefor storage driverdevelopment

AUFS Driver (2 of 6)The original docker storage ragedriver/aufs-driver/@KeithResar

AUFS Driver (2 of 6)The original docker storage driverThe GoodBattle hardened driverThe BadCarried patch to mainlineLinux kernel limits distroPerformant and stable for supportwide range of use casesFile level implementationSupports shared memory impacts copy-on-write@KeithResarSummaryDefault for non-RH, willmeet majority of needsExpectation that it willbe supplanted by anOverlay implementation

Overlay Driver (3 of 6)Legacy union filesystem driver, superseded by toragedriver/overlayfs-driver/@KeithResar

Overlay Driver (3 of 6)Legacy union filesystem driver, superseded by overlay2The GoodThe BadSummaryComplete unionfilesystem merged intothe mainline kernelArchitecture drove explosiveinode usage, often to thepoint of exhaustionUsed for backwardcompatibility in pre-4.0kernelsShared memorySlow commit performanceBroad distro supportbeyond aufs@KeithResar

Overlay2 Driver (4 of 6)Lessons learned from original overlay, and looking forward to continued maturity@KeithResar

Overlay2 Driver (4 of 6)Lessons learned from original overlay, and looking forward to continued maturityThe GoodThe BadRetains all benefits ofoverlay (shared memory,broad distro support)Relatively young codebase(initial release withDocker 1.12 in June 2016)Resolves inodeexhaustion problemsFile-based so copy-on-writeoperations may beexpensive@KeithResarSummaryWith maturity may bethe best route forwardfor consistent defaultsacross many Linuxdistributions

Devicemapper Driver (5 of 6)Lvm integrated block-based storage driver@KeithResar

Devicemapper Driver (5 of 6)Lvm integrated block-based storage driver, default on RHELThe GoodBlock-based solutionoffers efficientcopy-on-writeQuota supportAvailable direct and loopmodes@KeithResarThe BadSummaryManual setup is intimidatingRed Hat go-tographdriver with maturecodebaseNo shared memory support

Btrfs Driver (6 of 6)Another next generation filesystem, with a continued heavy development requirement@KeithResar

Btrfs Driver (6 of 6)Another next generation filesystem, with a continued heavy development requirementThe GoodNow offers SELinuxsupport and quotaThe BadNo page-cache sharingbetween containersSmall writes can lead toout-of-space conditionsRequires btrfs specific toolsrather than Linux native@KeithResarSummaryBtrfs hasn’t been amainstream choice forLinux distros, drivingless attention and lesstesting

Choosing a Storage Driver

Benchmark ApproachBenchmarking is treacherous and confusing, and often done poorly - which means that youneed to take any benchmark results with a large grain of salt.If you've spent less than a week studying a benchmark result, it's probably wrong.(Running a benchmark is the easy part. Understanding a benchmark can take much ge-benchmark/tree/working@KeithResar

Benchmark 1: Reading Files @KeithResarReading Small FilesReading Large FilesReading File Tree

Naive benchmarking, for discussion purposes only. Don’t trust this!@KeithResar

Naive benchmarking, for discussion purposes only. Don’t trust this!@KeithResar

Naive benchmarking, for discussion purposes only. Don’t trust this!@KeithResar

Naive benchmarking, for discussion purposes only. Don’t trust this!@KeithResar

Benchmark 2: Appending to Files @KeithResarAppending to Small FilesAppending to Large FilesAppending to File Tree

Naive benchmarking, for discussion purposes only. Don’t trust this!@KeithResar

Naive benchmarking, for discussion purposes only. Don’t trust this!@KeithResar

Naive benchmarking, for discussion purposes only. Don’t trust this!@KeithResar

Storage use casesTechnologyAttributesGood Use CaseBad Use CaseAUFSStable, Production Ready,Good Memory UseHigh Write ActivityBtrfsMainline KernelHigh Write ActivityOverlayStable, Good Memory Use,Mainline KernelContainer ChurnDevicemapper (loop)Stable, Mainline KernelProduction, PerformanceDevicemapper(direct-lvm)Stable, Production Ready,Mainline Kernel@KeithResar

ResourcesStorage Drivers in Docker: A Deep rivers-in-docker-a-deep-dive/The Docker community has documented a good bit of this detail in the official storage driver ide/storagedriver/selectadriver/Docker Issues and Tips btrfsComprehensive Overview of Storage Scalability in Docker 0/overview-storage-scalability-docker/@KeithResar

THANK YOUplus.google.com/ tVideos

Container Storage Best Practices in 2017 . Keith Resar Red Hat Solution Architect January 24th, 2017 @KeithResar Agenda Container Storage Myths Container Storage Primer Review 6 Storage Drivers . The Docker community has documented a good bit of this detail in the official storage driver documentation

Related Documents:

container container container container container networking storage registry security logs & metrics container orchestration & cluster management (kubernetes) fedora / centos / red hat enterprise linux container runtime & packaging (docker) atomic host infrastructure automation & cockpit

container container container container container networking storage registry security logs & metrics container orchestration & cluster management (kubernetes) fedora / centos / red hat enterprise linux container runtime & packaging (docker) atomic host infrastructure automation & cockpit

Cost Transparency Storage Storage Average Cost The cost per storage Cost Transparency Storage Storage Average Cost per GB The cost per GB of storage Cost Transparency Storage Storage Devices Count The quantity of storage devices Cost Transparency Storage Storage Tier Designates the level of the storage, such as for a level of service. Apptio .

Red Hat OpenShift Container Storage 4.7 Deploying OpenShift Container Storage using IBM Power Systems 8. Verification steps 1. Verify that OpenShift Container Storage Operator shows a green tick indicating successful installation. 2. Click View Installed Operators in namespace openshift-storage link to verify that OpenShift

2008 komatsu wa430-6 wheel loader 2013 envirotank 73000 litre skid mounted steel fuel tank 2001 jindo 48 ft high cube container 2003 cimc 40 ft container 2005 quingdao 40 ft container 1996 changzou 20 ft container 2002 evergreen 20 ft container jindo 20 ft storage container 2001 alta-fab wellsite 2010sentag 12 ft x 60 ft 3 unit skid mounted .

Switch and Zoning Best Practices 28-30 2. IP SAN Best Practices 30-32 3. RAID Group Best Practices 32-34 4. HBA Tuning 34-38 5. Hot Sparing Best Practices 38-39 6. Optimizing Cache 39 7. Vault Drive Best Practices 40 8. Virtual Provisioning Best Practices 40-43 9. Drive

Oracle Container Runtime for Docker 19.03 1-2 Oracle Container Runtime for Docker 18.09 1-3 Oracle Container Runtime for Docker 18.03 1-3 Oracle Container Runtime for Docker 17.06 1-4 Docker 17.03 1-5 Docker 1.12 1-6 2 Installing Oracle Container Runtime for Docker Setting Up the Unbreakable Enterprise Kernel 2-1

During the American Revolution both the American Continental Army and the British Army had spies to keep track of their enemy. You have been hired by the British to recruit a spy in the colonies. You must choose your spy from one of the colonists you have identified. When making your decisions use the following criteria: 1. The Spy cannot be someone who the Patriots mistrust. The spy should be .