Slide 1

Slide 1 text

LAOUC Community Tour 2024 2 a 23 de Agosto 2024 The Database Administrator’s Guide to Cloud Native Databases

Slide 2

Slide 2 text

Database Reliability Engineering MAA ⁘ RAC ⁘ RMAN Data Guard ⁘ Sharding ⁘ Partitioning Information Lifecycle Management Exadata & Engineered Systems Database Modernization Upgrades ⁘ Patching ⁘ Migrations Cloud ⁘ Hybrid Automation DevOps ⁘ IaC ⁘ Containers ⁘ Terraform Vagrant ⁘ Ansible Observability AHF ⁘ TFA ⁘ CHA ⁘ CHM

Slide 3

Slide 3 text

www.viscosityna.com @ViscosityNA Oracle on Docker Running Oracle Databases in Linux Containers Free sample chapter: https://oraclesean.com

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

km mi Mexico 3,584 2,227 Guatemala 1,056 656 Costa Rica 854 531 Panama 1,813 1,127 Chile 4,985 3,098 Brazil 2,617 1,626 Uruguay 1,567 974 Argentina 221 137 Paraguay 1,037 644 Home 9,753 6,061 ------ ------ 27,487 17,081 ¡Me gustan los aviones! ¡Me gustas tú! ¡Me gusta viajar! ¡Me gustas tú! ~ Manu Chao

Slide 6

Slide 6 text

@ViscosityNA www.viscosityna.com What are containers?

Slide 7

Slide 7 text

@ViscosityNA www.viscosityna.com Three complete operating systems Three application/executable directories

Slide 8

Slide 8 text

@ViscosityNA www.viscosityna.com Three complete operating systems Three application/executable directories

Slide 9

Slide 9 text

Containers are like lightweight virtual machines, right?

Slide 10

Slide 10 text

No content

Slide 11

Slide 11 text

@ViscosityNA www.viscosityna.com www.viscosityna.com @ViscosityNA 13 Oracle DB on a laptop 2018 MacBook Pro 15", 2.2GHz 6-core Intel Core i7, 16GB, 1TB SSD

Slide 12

Slide 12 text

@ViscosityNA www.viscosityna.com Virtual Machines: Start a complete OS Containers: Support a single application or service

Slide 13

Slide 13 text

@ViscosityNA www.viscosityna.com Virtual Machines: Start a complete OS A 100-page book of puzzles and games. Containers: Support a single application or service

Slide 14

Slide 14 text

@ViscosityNA www.viscosityna.com Virtual Machines: Start a complete OS A 100-page book of puzzles and games. Containers: Support a single application or service A single page of paper with a Tic-Tac-Toe board.

Slide 15

Slide 15 text

No content

Slide 16

Slide 16 text

@ViscosityNA www.viscosityna.com Games have a playing surface and structured rules.

Slide 17

Slide 17 text

@ViscosityNA www.viscosityna.com Services support games and players.

Slide 18

Slide 18 text

@ViscosityNA www.viscosityna.com Images include the rules and game board for a service.

Slide 19

Slide 19 text

@ViscosityNA www.viscosityna.com Images are the minimum necessary collection of files and metadata needed to run a service.

Slide 20

Slide 20 text

@ViscosityNA www.viscosityna.com Executing an image starts a container.

Slide 21

Slide 21 text

@ViscosityNA www.viscosityna.com A container is: a host process and a Union File System.

Slide 22

Slide 22 text

No content

Slide 23

Slide 23 text

@ViscosityNA www.viscosityna.com A Union File System has three layers: A union or overlay layer. An upper layer. A lower layer.

Slide 24

Slide 24 text

@ViscosityNA www.viscosityna.com A Union File System has three layers: A union or overlay layer: The game. An upper layer. The moves. A lower layer. The playing surface and rules.

Slide 25

Slide 25 text

No content

Slide 26

Slide 26 text

@ViscosityNA www.viscosityna.com The union (overlay) layer is not "real".

Slide 27

Slide 27 text

@ViscosityNA www.viscosityna.com The union (overlay) layer is not "real". It’s a perceived (calculated) view of the superimposed layers below.

Slide 28

Slide 28 text

@ViscosityNA www.viscosityna.com The union (overlay) layer is not "real". It’s a perceived (calculated) view of the moves and game board.

Slide 29

Slide 29 text

@ViscosityNA www.viscosityna.com Containers are magic!

Slide 30

Slide 30 text

@ViscosityNA www.viscosityna.com Three complete operating systems Three application/executable directories

Slide 31

Slide 31 text

@ViscosityNA www.viscosityna.com How much space is used by three containers? 500MB + 500MB + 500MB 500MB 1, 500MB 500MB 500MB +

Slide 32

Slide 32 text

@ViscosityNA www.viscosityna.com Multiple identical containers share a single image.

Slide 33

Slide 33 text

@ViscosityNA www.viscosityna.com Multiple similar containers share common image layers.

Slide 34

Slide 34 text

@ViscosityNA www.viscosityna.com Containers save their state (the moves) in the upper layer of their Union Filesystem. Containers are stateful.

Slide 35

Slide 35 text

@ViscosityNA www.viscosityna.com Container Properties

Slide 36

Slide 36 text

@ViscosityNA www.viscosityna.com Containers are ephemeral.

Slide 37

Slide 37 text

@ViscosityNA www.viscosityna.com Deleting a container deletes its layer.

Slide 38

Slide 38 text

@ViscosityNA www.viscosityna.com Ephemeral has no time limit.

Slide 39

Slide 39 text

@ViscosityNA www.viscosityna.com Ephemeral has no time limit. On a large enough scale, everything is ephemeral.

Slide 40

Slide 40 text

@ViscosityNA www.viscosityna.com Images are immutable and never change.

Slide 41

Slide 41 text

@ViscosityNA www.viscosityna.com Stalemate!

Slide 42

Slide 42 text

@ViscosityNA www.viscosityna.com

Slide 43

Slide 43 text

@ViscosityNA www.viscosityna.com

Slide 44

Slide 44 text

@ViscosityNA www.viscosityna.com Volumes

Slide 45

Slide 45 text

@ViscosityNA www.viscosityna.com Volumes "externalize" container directories.

Slide 46

Slide 46 text

@ViscosityNA www.viscosityna.com Database containers DB Software Configuration Data Container Local disk Container layer

Slide 47

Slide 47 text

@ViscosityNA www.viscosityna.com Rule #1 for database images: If a database exists, start it. If not, create a new database.

Slide 48

Slide 48 text

@ViscosityNA www.viscosityna.com Starting a database container docker run -d \ --name ${CONTAINER_NAME} \ -v /data/${CONTAINER_NAME}: \

Slide 49

Slide 49 text

@ViscosityNA www.viscosityna.com Rule #1 for database images: If a database exists, start it. If not, create a new database.

Slide 50

Slide 50 text

@ViscosityNA www.viscosityna.com Database containers DB Software Configuration Data Container Local disk Container layer

Slide 51

Slide 51 text

@ViscosityNA www.viscosityna.com Database containers DB Software Configuration Data Container Local disk Container layer

Slide 52

Slide 52 text

@ViscosityNA www.viscosityna.com Cloning a database cp -rpT /data/${CONTAINER_NAME}/ \ /data/clone

Slide 53

Slide 53 text

@ViscosityNA www.viscosityna.com Cloning a database cp -rpT /data/clone/ \ /data/${CONTAINER_NAME}

Slide 54

Slide 54 text

@ViscosityNA www.viscosityna.com Cloning a database cp -rpT /data/clone/ \ /data/${CONTAINER_NAME} cp -rpT /NFS/gold_data/clone/ \ /data/${CONTAINER_NAME}

Slide 55

Slide 55 text

@ViscosityNA www.viscosityna.com Building Images

Slide 56

Slide 56 text

@ViscosityNA www.viscosityna.com A Containerfile is a recipe for creating an image.

Slide 57

Slide 57 text

@ViscosityNA www.viscosityna.com Oracle Enterprise Linux 8 Oracle 19.20 patch Oracle 19.21 patch Oracle 19.3 Prerrequisitos

Slide 58

Slide 58 text

@ViscosityNA www.viscosityna.com Upgrading a database in a container Oracle 19.20 Configuration Data Container Local disk Container layer

Slide 59

Slide 59 text

@ViscosityNA www.viscosityna.com Upgrading a database in a container Oracle 19.20 Configuration Data Container Local disk Container layer

Slide 60

Slide 60 text

@ViscosityNA www.viscosityna.com Upgrading a database in a container Configuration Data Container Local disk Container layer Oracle 19.21

Slide 61

Slide 61 text

www.viscosityna.com @ViscosityNA Questions and Contact Me [email protected] https://linktr.ee/oraclesean

Slide 62

Slide 62 text

No content