Closed redcatbear closed 2 years ago
integration-test-docker-environment test have been run successfully with the provided Exasol 8.0 (7.2) container image. :heavy_check_mark:
For testing the container image, it was necessary to create a partially specialized template (with help from @tkilias and @tomuben ) for integration-test-docker-environment see below:
[Global]
Revision = 15
Checksum = COMMIT
ClusterName = cl4
Platform = Docker
LicenseFile = /exa/etc/license.xml
CoredPort = 325
SSHPort = 22
XMLRPCPort = 443
WebUIBackendPort = 4444
WebUIDomain = exacluster.local
EnableLoadBalancer = False
AuthenticationToken = SkNyZnVYU2tjTGd4WEx5SzpsSE5zbVlQWlFtaWVKSHpqdkhVbEpVa2lta29wUnhwUHdEZlNTR21iVm1LcklSTGZNcFphY0ZKQ0xFRGJpRlJr
# List of networks for this cluster: 'private' is mandatory, 'public' is optional.
Networks = private
# Comma-separated list of nameservers for this cluster.
NameServers = {{ name_servers }}
# Path to c4 unix domain socket, used for deployments of new clusters and nodes.
C4Socket = /var/run/c4_socket
Timezone = Europe/Berlin
LicenseRAWMEMWarnThreshold = 80
# Nr. of hugepages ('0' = disabled, 'host' = manually configured on the host, 'auto' = set automatically based on DB config)
Hugepages = 0
StorageConnectionThreads = 16
StorageMaxConnections = 1024
ConfVersion = 7.2.15
OSVersion = 7.2.15
REVersion = 7.2.1
DBVersion = 7.2.9
ImageVersion = 7.2.15
# Cored only accepts incomming messages from privileged ports (port number less than 1024).
CoredUsePrivilegedPorts = True
# Cored only accepts incomming messages from its own subnet.
CoredAllowOnlySameSubnet = True
# Which subnets Cored will allow messages from. Each subnet must be sepparated by a comma.
# A subnet is either an IPv4 or IPv6 address in CIDR notation.
CoredSubnets =
# SSL options
[SSL]
# The SSL certificate, private key and CA for all EXASOL services
Cert = {{ certificate_dir }}/cert.crt
CertKey = {{ certificate_dir }}/cert.key
CertAuth = {{ certificate_dir }}/rootCA.crt
# Options to verify certificates: none, optional, required
CertVerify = none
# Domain name in the certifcate
CertDomainName =
# Docker related options
[Docker]
# The directory that contains all data related to this docker cluster
# (except for mapped devices)
RootDir = /exa/etc
# The EXASOL docker image used for all containers of this cluster
Image = exasol/docker-db:latest
# The type of storage devices for this cluster: 'block' or 'file'
DeviceType = file
# Comma-separated list of volumes to be mounted in all containers (e. g. '/mnt/my_data:/exa/my_data:rw' )
# These user-defined volumes are mounted additionally to the internal ones (like the node root volume)
AdditionalVolumes =
[Groups]
[[root]]
ID = 0
[[exausers]]
ID = 500
[[exadbadm]]
ID = 1001
[[exastoradm]]
ID = 1002
[[exabfsadm]]
ID = 1003
[[exaadm]]
ID = 1004
[Users]
[[root]]
ID = 0
Group = root
LoginEnabled = True
AdditionalGroups = exausers, exadbadm, exastoradm, exabfsadm, exaadm
[[exadefusr]]
ID = 500
Group = exausers
LoginEnabled = False
AdditionalGroups = exadbadm, exastoradm, exabfsadm, exaadm
[Node : 11]
PrivateNet = {{private_network}}
PublicNet =
Name = n11
# Affinity decides how this node is used in the cluster. i.e, the possibility to become master
Affinity = 11
UUID = 6FA0C6FCF5A645FCB6CB00C383349993AD9BEE78
DockerVolume = n11
# Ports to be exposed (container : host)
ExposedPorts = 8888:8899, 6583:6594
[[Disk : disk1]]
Component = exastorage
Devices = dev.1
Mapping = dev.1:/exa/data/storage
# Global EXAStorage options
[EXAStorage]
# Enable or disable background recovery / data restoration (does not affect on-demand recovery)
BgRecEnabled = True
# Max. throughput for background recovery / data restoration (in MiB/s)
BgRecLimit =
# Space usage threshold (in percent, per node) for sending a warning
SpaceWarnThreshold = 90
# An EXAStorage volume
[EXAVolume : DataVolume1]
# Type of volume: 'data' | 'archive'
Type = data
# Volume size (e. g. '1 TiB')
Size = {{ disk_size }}
# Name of the disk to be used for this volume.
# This disk must exist on all volume nodes.
Disk = disk1
# Comma-separated list of node IDs for this volume (put dedicated redundancy nodes at the end, if any)
Nodes = 11
# OPTIONAL: Nr. of master nodes for this volume. Remaining nodes will be used for redundancy only.
NumMasterNodes = 1
# Desired redundancy for this volume
Redundancy = 1
# User and group IDs that own this volume (e. g. '1000:1005')
Owner = 500 : 500
Permissions = rwx
BlockSize = 4 KiB
StripeSize = 256 KiB
# OPTIONAL: shared volumes can be opened (for writing) by multiple clients simultaneously
Shared = True
# OPTIONAL: I/O priority (0 = highest, 20 = lowest)
Priority = 10
# An EXASOL database
[DB : DB1]
# Unique id of this database.
ID = Rad4R9RrSkmvlqlR9tSTHA
# Version nr. of this database.
Version = 7.2.9
# Memory size over all nodes (e. g. '1 TiB').
MemSize = {{ mem_size }}
Port = 8888
# User and group IDs that own this database (e. g. '1000:1005').
Owner = 500 : 500
# Comma-separated list of node IDs for this DB (put reserve nodes at the end, if any).
Nodes = 11
# Nr. of initially active nodes for this DB. The remaining nodes will be reserve nodes.
NumActiveNodes = 1
# Name of the data volume to be used by this database.
DataVolume = DataVolume1
EnableAuditing = True
BuiltinScriptLanguageName = ScriptLanguages-release-standard-exasol-7.1.0-1.1.0
AutoStart = True
# JDBC driver configuration
[[JDBC]]
# BucketFS that contains the JDBC driver
BucketFS = bfsdefault
# Bucket that contains the JDBC driver
Bucket = default
# Directory within the bucket that contains the drivers
Dir = drivers/jdbc
# Oracle driver configuration
[[Oracle]]
# BucketFS that contains the JDBC drivers
BucketFS = bfsdefault
# Bucket that contains the JDBC drivers
Bucket = default
# Directory within the bucket that contains the drivers
Dir = drivers/oracle
# The default BucketFS (auto-generated)
[BucketFS : bfsdefault]
Owner = 500 : 500
# HTTP port number (0 = disabled)
HttpPort = 6583
# HTTPS port number (0 = disabled)
HttpsPort = 0
SyncKey = ekJ2aGZrOHpoSUFZU09EYVlNVnVBR05Vbll3b3gyUnc=
SyncPeriod = 30000
mode = rsync
bucketvolume = None
# The default bucket (auto-generated)
[[Bucket : default]]
# ReadPasswd is "read" (without quotes)
ReadPasswd = cmVhZAo=
# WritePasswd is "write" (without quotes)
WritePasswd = d3JpdGU=
Public = True
Name = default
AdditionalFiles = EXAClusterOS:/usr/opt/EXASuite-7/ScriptLanguages/*
[[Bucket : myudfs]]
# ReadPasswd is "read" (without quotes)
ReadPasswd = cmVhZAo=
# WritePasswd is "write" (without quotes)
WritePasswd = d3JpdGU=
Public = True
Name = myudfs
[[Bucket : jdbc_adapter]]
# ReadPasswd is "read" (without quotes)
ReadPasswd = cmVhZAo=
# WritePasswd is "write" (without quotes)
WritePasswd = d3JpdGU=
Public = True
Name = jdbc-adapter
# RemoteLogging : cloud_data_remote_volume/logs
[Logging]
LogRotationTypes = local,
RemoteLogRotationVolume = cloud_data_remote_volume
RemoteLogRotationPrefix = logs
We need to ensure that ITDE works with the upcoming Exasol 8.0 release.
The actual upgrade to 8.0 will be done in #190
Acceptance Criteria