Add configuration group management for DB2
Implements blueprint: db2-config-group Change-Id: I1778634467aedf90c57162614cbf3df9813ab3c7
This commit is contained in:
parent
426a16f05f
commit
328457b5fb
275
specs/newton/db2-config-groups.rst
Normal file
275
specs/newton/db2-config-groups.rst
Normal file
@ -0,0 +1,275 @@
|
||||
..
|
||||
This work is licensed under a Creative Commons Attribution 3.0 Unported
|
||||
License.
|
||||
|
||||
http://creativecommons.org/licenses/by/3.0/legalcode
|
||||
|
||||
Sections of this template were taken directly from the Nova spec
|
||||
template at:
|
||||
https://github.com/openstack/nova-specs/blob/master/specs/juno-template.rst
|
||||
|
||||
..
|
||||
This template should be in ReSTructured text. The filename in the git
|
||||
repository should match the launchpad URL, for example a URL of
|
||||
https://blueprints.launchpad.net/trove/+spec/awesome-thing should be named
|
||||
awesome-thing.rst.
|
||||
|
||||
Please do not delete any of the sections in this template. If you
|
||||
have nothing to say for a whole section, just write: None
|
||||
|
||||
Note: This comment may be removed if desired, however the license notice
|
||||
above should remain.
|
||||
|
||||
|
||||
=======================================
|
||||
Configuration Group Management for DB2
|
||||
=======================================
|
||||
|
||||
This spec talks about how to enable configuration group management
|
||||
for DB2.
|
||||
|
||||
Launchpad Blueprint:
|
||||
https://blueprints.launchpad.net/trove/+spec/db2-config-group
|
||||
|
||||
|
||||
Problem Description
|
||||
===================
|
||||
|
||||
Trove supports configuration group management but this feature has not been
|
||||
implemented for DB2.
|
||||
|
||||
|
||||
Proposed Change
|
||||
===============
|
||||
|
||||
DB2 supports both database manager configuration parameters and database
|
||||
configuration parameters. The database manager configuration parameters
|
||||
apply to an instance whereas the database configuration parameter applies
|
||||
to each database. In this spec, we talk about implementing configuration
|
||||
management for the DB2 database manager.
|
||||
|
||||
The database manager configuration parameters are stored in the db2systm file
|
||||
under the sqllib directory. To update the configuration parameters, DB2
|
||||
recommends using the UPDATE DBM CONFIGURATION and RESET DBM CONFIGURATION
|
||||
commands instead of directly updating the config file. To see a complete list
|
||||
of configuration parameters, check the Appendix section.
|
||||
|
||||
Configuration
|
||||
-------------
|
||||
|
||||
None
|
||||
|
||||
Database
|
||||
--------
|
||||
|
||||
None
|
||||
|
||||
Public API
|
||||
----------
|
||||
|
||||
None
|
||||
|
||||
Public API Security
|
||||
-------------------
|
||||
|
||||
None
|
||||
|
||||
Python API
|
||||
----------
|
||||
|
||||
None
|
||||
|
||||
CLI (python-troveclient)
|
||||
------------------------
|
||||
|
||||
None
|
||||
|
||||
Internal API
|
||||
------------
|
||||
|
||||
None
|
||||
|
||||
Guest Agent
|
||||
-----------
|
||||
|
||||
Implement update_overrides and apply_overrides in the manager and service
|
||||
modules.
|
||||
|
||||
The following files will be updated::
|
||||
|
||||
/opt/stack/trove/trove/guestagent/datastore/experimental/db2/manager.py
|
||||
/opt/stack/trove/trove/guestagent/datastore/experimental/db2/service.py
|
||||
/opt/stack/trove/trove/guestagent/datastore/experimental/db2/system.py
|
||||
|
||||
The following file will be added::
|
||||
|
||||
/opt/stack/trove/trove/templates/db2/validation-rules.json
|
||||
|
||||
This will fit into the existing configuration manager framework. The existing
|
||||
'PropertiesCodec' implementation will be reused to handle text-file operations.
|
||||
Configuration overrides will be implemented using the 'ImportStrategy' of the
|
||||
guestagent configuration manager.
|
||||
|
||||
Alternatives
|
||||
------------
|
||||
|
||||
None
|
||||
|
||||
|
||||
Dashboard Impact (UX)
|
||||
=====================
|
||||
|
||||
None
|
||||
|
||||
|
||||
Implementation
|
||||
==============
|
||||
|
||||
Assignee(s)
|
||||
-----------
|
||||
|
||||
mariamj@us.ibm.com
|
||||
|
||||
Milestones
|
||||
----------
|
||||
|
||||
Newton
|
||||
|
||||
Work Items
|
||||
----------
|
||||
|
||||
Implement configuration-related manager API calls
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
def update_overrides(self, context, overrides, remove=False)
|
||||
def apply_overrides(self, context, overrides)
|
||||
|
||||
Write unit tests/integration tests were applicable
|
||||
|
||||
|
||||
Upgrade Implications
|
||||
====================
|
||||
|
||||
None
|
||||
|
||||
|
||||
Dependencies
|
||||
============
|
||||
|
||||
None
|
||||
|
||||
|
||||
Testing
|
||||
=======
|
||||
|
||||
- Unit and integration tests will be added to test the new functionality
|
||||
|
||||
|
||||
Documentation Impact
|
||||
====================
|
||||
|
||||
The documentation will be updated to reflect the new features supported by
|
||||
Trove for DB2.
|
||||
|
||||
|
||||
References
|
||||
==========
|
||||
|
||||
.. [1] https://www.ibm.com/support/knowledgecenter/SSEPGG_10.5.0/com.ibm.db2.luw.admin.config.doc/doc/c0060794.html
|
||||
|
||||
Appendix
|
||||
========
|
||||
|
||||
The database manager configuration parameters have been listed below. For a
|
||||
detailed description of each parameter, please refer[1]. The parameters listed
|
||||
below are the ones that are relevant for the DB2 Express-C version. The link
|
||||
referenced in [1] gives a complete list of parameters for the DB2 enterprise
|
||||
edition::
|
||||
|
||||
AGENTPRI
|
||||
AGENT_STACK_SZ
|
||||
ALTERNATE_AUTH_ENC
|
||||
ASLHEAPSZ
|
||||
AUDIT_BUF_SZ
|
||||
CATALOG_NOAUTH
|
||||
CLNT_KRB_PLUGIN
|
||||
CLNT_PW_PLUGIN
|
||||
COMM_EXIT_LIST
|
||||
CUR_EFF_ARCH_LVL
|
||||
CUR_EFF_CODE_LVL
|
||||
DFT_ACCOUNT_STR
|
||||
DFT_MON_BUFPOOL
|
||||
DFT_MON_LOCK
|
||||
DFT_MON_SORT
|
||||
DFT_MON_STMT
|
||||
DFT_MON_TABLE
|
||||
DFT_MON_TIMESTAMP
|
||||
DFT_MON_UOW
|
||||
DIAGLEVEL
|
||||
DIAGSIZE
|
||||
DIR_CACHE
|
||||
DISCOVER
|
||||
DISCOVER_INST
|
||||
FCM_NUM_BUFFERS
|
||||
FCM_NUM_CHANNELS
|
||||
FEDERATED
|
||||
FED_NOAUTH
|
||||
FENCED_POOL
|
||||
GROUP_PLUGIN
|
||||
HEALTH_MON
|
||||
INDEXREC
|
||||
INTRA_PARALLEL
|
||||
JAVA_HEAP_SZ
|
||||
KEEPFENCED
|
||||
KEYSTORE_TYPE
|
||||
LOCAL_GSSPLUGIN
|
||||
MAX_CONNECTIONS
|
||||
MAX_COORDAGENTS
|
||||
MAX_QUERYDEGREE
|
||||
MON_HEAP_SZ
|
||||
NOTIFYLEVEL
|
||||
NUMDB
|
||||
NUM_INITAGENTS
|
||||
NUM_INITFENCED
|
||||
NUM_POOLAGENTS
|
||||
RESYNC_INTERVAL
|
||||
RQRIOBLK
|
||||
SHEAPTHRES
|
||||
SPM_LOG_FILE_SZ
|
||||
SPM_MAX_RESYNC
|
||||
SRVCON_AUTH
|
||||
SRVCON_GSSPLUGIN_LIST
|
||||
SRVCON_PW_PLUGIN
|
||||
SRV_PLUGIN_MODE
|
||||
SSL_CIPHERSPECS
|
||||
SSL_CLNT_KEYDB
|
||||
SSL_CLNT_STASH
|
||||
SSL_SVCENAME
|
||||
SSL_SVR_KEYDB
|
||||
SSL_SVR_LABEL
|
||||
SSL_SVR_STASH
|
||||
SSL_VERSIONS
|
||||
START_STOP_TIME
|
||||
SYSADM_GROUP
|
||||
SYSCTRL_GROUP
|
||||
SYSMAINT_GROUP
|
||||
SYSMON_GROUP
|
||||
TM_DATABASE
|
||||
TP_MON_NAME
|
||||
TRUST_ALLCLNTS
|
||||
TRUST_CLNTAUTH
|
||||
UTIL_IMPACT_LIM
|
||||
WLM_DISPATCHER
|
||||
WLM_DISP_CONCUR
|
||||
WLM_DISP_CPU_SHARES
|
||||
WLM_DISP_MIN_UTIL
|
||||
|
||||
Guest agent controlled parameters::
|
||||
|
||||
ALT_DIAGPATH
|
||||
AUTHENTICATION
|
||||
DFTDBPATH
|
||||
DIAGPATH
|
||||
JDK_PATH
|
||||
KEYSTORE_LOCATION
|
Loading…
Reference in New Issue
Block a user