Skip to content

8.0

Compare
Choose a tag to compare
@bersace bersace released this 14 Nov 09:10
· 388 commits to master since this release
2b785ad

!!! warning

temBoard UI 8.0 is compatible with temBoard agent 7.11 to ease migration.
Upgrade UI first and then upgrade agents one at a time.

temBoard agent 8 is **NOT** compatible with temBoard UI 7.11.

This release requires specific upgrade instructions.
See [Server Upgrade](server_upgrade.md) and [Agent Upgrade](agent_upgrade.md) for details.

Breaking changes

  • temBoard UI dropped support for Internet Explorer 8. You may have issues with
    browsers older than 5 years.
  • Dropped support for PostgreSQL 9.5 and 9.4. For both UI and agent.
  • Dropped key-only authentication on agent. Access to UI grants full access on managed agent.
  • New CLI for both UI and agent. temboard and temboard-agent are the single CLI entrypoints.
    • Removed temboard --debug CLI option.
    • Dropped commands temboard-agent-adduser and temboard-agent-password.
    • Commands temboard-migratedb, temboard-agent-register are moved as
      subcommands of temboard and temboard-agent.
  • temBoard UI dropped push-metrics handler from pre-6.0 push metric collect.
  • temBoard UI RPM does not execute auto_configure.sh upon installation.
  • temBoard UI RPM does not create temboard UNIX user. Use auto_configure.sh
    instead.
  • temBoard Agent RPM does not create postgres UNIX user. Use PostgreSQL packages instead.
  • Packages does not provide logrotate configuration anymore. temBoard can still
    log to file.
  • pg_ctl agent parameter must not be quoted now, in temboard-agent.conf.
  • Agent auto_configure.sh now requires a parameter: the UI url.
  • temBoard agent does not provide legacy single-installation systemd unit file
    temboard-agent.service in favor of temboard-agent@.service.
  • temBoard agent debian package does not provide legacy temboard-agent.init
    SysV script. Use sytemd instead.
  • temBoard agent auto_configure.sh now generates a single configuration file
    instead of temboard-agent.conf.d/auto.conf.
  • temBoard agent auto_configure.sh does not configure file logging anymore.
  • Dropped temBoard agent HTTP endpoint /monitoring/probe/*, some
    /dashboard/ probes and more. Use temboard routes and temboard-agent routes to inspect availables HTTP URLs.
  • Docker image for agent now configures agent with auto_configure.sh.
    temBoard agent configuration moved from /etc/temboard-agent to
    /etc/temboard-agent/<cluster_name>.

Deprecation

  • Running temBoard UI with Python 2.7 and Python 3.5 is deprecated. All RPM and
    deb packages ships with Python 3.
  • Debian stretch support is deprecated (EOL June 2022).

New Features

  • PostgreSQL 15 support.
  • Unified authentication. Signing in UI open full DBA access to agents, without
    double login.
  • Register instance without querying UI API using temboard register-instance.
  • Download instance inventory as CSV.
  • Automatically refresh introspection data from agent.
  • New About temBoard page with detailed installation's informations.
  • New About instance page with PostgreSQL, system and agent informations.
  • OpenMetrics endpoint. Accessible using temBoard UI as authenticating proxy to
    agent.
  • RHEL9, Debian Bookworm (testing) packages.
  • Increase agent OOM score with systemd.
  • Restyled documentation with improved search and navigation.

Changes

  • Each temBoard release has it's own docker tag. e.g. dalibo/temboard:8.0,
    dalibo/temboard:8.0rc1, etc. See Docker Hub repositories dalibo/temboard
    and dalibo/temboard-agent.
  • Streamlined docker images, basing on Debian Bullseye, with temBoard installed
    with APT instead of pip.
  • Restart scheduler and worker pool background processes on crash.
  • Improved error logging. Log format is now Postgres-like.

UI changes

  • Sign agent requests with an asymetric cryptographic key. New agent does not
    require double authentification anymore.
  • New command temboard generate-key for generating signing key.
  • New database migration engine. Dropped dependency on Alembic, Mako, etc.
  • Move temboard-migratedb as temboard migratedb subcommand.
  • New command temboard tasks flush to flush old tasks when upgrading.
  • Fast collect of monitoring and statements metrics upon agent registration.
  • Format PostgreSQL start time in dashboard as relative date.
  • temBoard UI waits for locks in monitoring collect. Abort long collect
    task. New parameter [monitoring] collect_max_duration.
  • temBoard UI now has API key authorization, use for /metrics proxy to agent.
  • New temBoard UI parameter [auth] allowed_ip to restrict API Key
    authorization. By default, only 127/8 is allowed.
  • Improved refresh error handling in dashboard, activity and home page. Error
    are now inlined instead of modal.
  • temBoard UI now accept to serve plain HTTP. For development purpose.
  • New commands temboard query-agent, temboard routes, temboard tasks run, temboard tasks schedule and temboard web for debugging.
  • Handle SIGCHLD in temboard UI too. No more zombies.
  • Limit activity view to 300 longest queries.

Agent changes

  • Unified authentification: agent now uses UI as source of identity.
  • Dropped users file and related configuration.
  • New command temboard-agent fetch-key to accept UI signing key.
  • New option: [temboard] ui_url, pointing to UI URL.
  • auto_configure.sh conditionnaly enable statements plugins.
  • Move temboard-agent-register as temboard-agent register subcommand.
  • New command temboard-agent discover to introspect temBoard agent, system
    and PostgreSQL.
  • Refresh discover data on startup and Postgres connection recovery.
  • temBoard agent pools connections to PostgreSQL used by web API, reducing
    connections stress on PostgreSQL.
  • Heavily reduction of connection opened by dashboard.
  • Drop agent configuration postgresql:instance in favor of Postgres
    setting cluster_name.
  • Add new unified sessions and detailed locks endpoint.
  • temBoard agent now depends on cryptography and bottle.
  • New subcommands temboard-agent routes, temboard-agent tasks run and
    temboard-agent web for debugging.
  • Monitoring purge_after default value is now set to 730 (2 years), it was empty
    before (no limit).