kyuubi/docs/deployment/migration-guide.md
hezhao2 4bb67bdf3b
[KYUUBI #5381] Change the default metrics reporter to Prometheus
### _Why are the changes needed?_

Close #5381

change default metrics reporter to prometheus since Kyuubi 1.8

### _How was this patch tested?_
- [ ] Add some test cases that check the changes thoroughly including negative and positive cases if possible

- [ ] Add screenshots for manual tests if appropriate

- [ ] [Run test](https://kyuubi.readthedocs.io/en/master/contributing/code/testing.html#running-tests) locally before make a pull request

### _Was this patch authored or co-authored using generative AI tooling?_

Closes #5344 from zhaohehuhu/Improvement-0928.

Closes #5381

84f4c8208 [hezhao2] reset METRICS_REPORTERS for test case
b9ee5f711 [Cheng Pan] Update kyuubi-server/src/test/scala/org/apache/kyuubi/events/handler/ServerJsonLoggingEventHandlerSuite.scala
86165a6fe [Cheng Pan] Update kyuubi-server/src/test/scala/org/apache/kyuubi/events/handler/ServerJsonLoggingEventHandlerSuite.scala
a3605b626 [hezhao2] set METRICS_PROMETHEUS_PORT to 0 for test cases
f1a4d2861 [hezhao2] restore version number for kyuubi.metrics.reporters in doc
dae40e1a2 [hezhao2] change default metrics reporter to prometheus

Lead-authored-by: hezhao2 <hezhao2@cisco.com>
Co-authored-by: Cheng Pan <pan3793@gmail.com>
Signed-off-by: Cheng Pan <chengpan@apache.org>
2023-10-16 11:46:56 +08:00

3.7 KiB

Kyuubi Migration Guide

Upgrading from Kyuubi 1.7 to 1.8

  • Since Kyuubi 1.8, SQLite is added and becomes the default database type of Kyuubi metastore, as Derby has been deprecated. Both Derby and SQLite are mainly for testing purposes, and they're not supposed to be used in production. To restore previous behavior, set kyuubi.metadata.store.jdbc.database.type=DERBY and kyuubi.metadata.store.jdbc.url=jdbc:derby:memory:kyuubi_state_store_db;create=true.

  • Since Kyuubi 1.8, PROMETHEUS is changed as the default metrics reporter. To restore previous behavior, set kyuubi.metrics.reporters=JSON.

Upgrading from Kyuubi 1.7.1 to 1.7.2

  • Since Kyuubi 1.7.2, for Kyuubi BeeLine, please use --python-mode option to run python code or script.

Upgrading from Kyuubi 1.7.0 to 1.7.1

  • Since Kyuubi 1.7.1, protocolVersion is removed from the request parameters of the REST API Open(create) a session. All removed or unknown parameters will be silently ignored and affects nothing.
  • Since Kyuubi 1.7.1, confOverlay is supported in the request parameters of the REST API Create an operation with EXECUTE_STATEMENT type.

Upgrading from Kyuubi 1.6 to 1.7

  • In Kyuubi 1.7, kyuubi.ha.zookeeper.engine.auth.type does not fallback to kyuubi.ha.zookeeper.auth.type.
    When Kyuubi engine does Kerberos authentication with Zookeeper, user needs to explicitly set kyuubi.ha.zookeeper.engine.auth.type to KERBEROS.
  • Since Kyuubi 1.7, Kyuubi returns engine's information for GetInfo request instead of server. To restore the previous behavior, set kyuubi.server.info.provider to SERVER.
  • Since Kyuubi 1.7, Kyuubi session type SQL is refactored to INTERACTIVE, because Kyuubi supports not only SQL session, but also SCALA and PYTHON sessions. User need to use INTERACTIVE sessionType to look up the session event.
  • Since Kyuubi 1.7, the REST API of Open(create) a session will not contain parameters user password and IpAddr. User and password should be set in Authorization of http request if needed.

Upgrading from Kyuubi 1.6.0 to 1.6.1

  • Since Kyuubi 1.6.1, kyuubi.ha.zookeeper.engine.auth.type does not fallback to kyuubi.ha.zookeeper.auth.type.
    When Kyuubi engine does Kerberos authentication with Zookeeper, user needs to explicitly set kyuubi.ha.zookeeper.engine.auth.type to KERBEROS.

Upgrading from Kyuubi 1.5 to 1.6

  • Kyuubi engine gets Zookeeper principal & keytab from kyuubi.ha.zookeeper.auth.principal & kyuubi.ha.zookeeper.auth.keytab.
    kyuubi.ha.zookeeper.auth.principal & kyuubi.ha.zookeeper.auth.keytab fallback to kyuubi.kinit.principal & kyuubi.kinit.keytab when not set.
    Since Kyuubi 1.6, kyuubi.kinit.principal & kyuubi.kinit.keytab are filtered out from Kyuubi engine's conf for better security.
    When Kyuubi engine does Kerberos authentication with Zookeeper, user needs to explicitly set kyuubi.ha.zookeeper.auth.principal & kyuubi.ha.zookeeper.auth.keytab.