pulsar-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From mme...@apache.org
Subject [pulsar] branch asf-site updated: Updated site at revision 7351b24
Date Sun, 04 Nov 2018 09:13:28 GMT
This is an automated email from the ASF dual-hosted git repository.

mmerli pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/pulsar.git


The following commit(s) were added to refs/heads/asf-site by this push:
     new 3b2e255  Updated site at revision 7351b24
3b2e255 is described below

commit 3b2e2559775bc5fb99dc803914c386316d3edc8e
Author: jenkins <builds@apache.org>
AuthorDate: Sun Nov 4 09:13:16 2018 +0000

    Updated site at revision 7351b24
---
 content/css/main.css                               |  2 +-
 content/css/prism.css                              | 25 ++++++++------
 .../docs/en/2.1.0-incubating/adaptors-kafka.html   |  8 +++--
 .../en/2.1.0-incubating/adaptors-kafka/index.html  |  8 +++--
 .../docs/en/2.1.0-incubating/adaptors-spark.html   |  8 +++--
 .../en/2.1.0-incubating/adaptors-spark/index.html  |  8 +++--
 .../docs/en/2.1.0-incubating/adaptors-storm.html   |  8 +++--
 .../en/2.1.0-incubating/adaptors-storm/index.html  |  8 +++--
 .../en/2.1.0-incubating/admin-api-brokers.html     |  8 +++--
 .../2.1.0-incubating/admin-api-brokers/index.html  |  8 +++--
 .../en/2.1.0-incubating/admin-api-clusters.html    |  8 +++--
 .../2.1.0-incubating/admin-api-clusters/index.html |  8 +++--
 .../en/2.1.0-incubating/admin-api-namespaces.html  |  8 +++--
 .../admin-api-namespaces/index.html                |  8 +++--
 .../admin-api-non-persistent-topics.html           |  8 +++--
 .../admin-api-non-persistent-topics/index.html     |  8 +++--
 .../en/2.1.0-incubating/admin-api-overview.html    |  8 +++--
 .../2.1.0-incubating/admin-api-overview/index.html |  8 +++--
 .../admin-api-partitioned-topics.html              |  8 +++--
 .../admin-api-partitioned-topics/index.html        |  8 +++--
 .../en/2.1.0-incubating/admin-api-permissions.html |  8 +++--
 .../admin-api-permissions/index.html               |  8 +++--
 .../admin-api-persistent-topics.html               |  8 +++--
 .../admin-api-persistent-topics/index.html         |  8 +++--
 .../en/2.1.0-incubating/admin-api-schemas.html     |  8 +++--
 .../2.1.0-incubating/admin-api-schemas/index.html  |  8 +++--
 .../en/2.1.0-incubating/admin-api-tenants.html     |  8 +++--
 .../2.1.0-incubating/admin-api-tenants/index.html  |  8 +++--
 .../2.1.0-incubating/administration-dashboard.html |  8 +++--
 .../administration-dashboard/index.html            |  8 +++--
 .../en/2.1.0-incubating/administration-geo.html    |  8 +++--
 .../2.1.0-incubating/administration-geo/index.html |  8 +++--
 .../administration-load-distribution.html          |  8 +++--
 .../administration-load-distribution/index.html    |  8 +++--
 .../en/2.1.0-incubating/administration-proxy.html  |  8 +++--
 .../administration-proxy/index.html                |  8 +++--
 .../en/2.1.0-incubating/administration-stats.html  |  8 +++--
 .../administration-stats/index.html                |  8 +++--
 .../en/2.1.0-incubating/administration-zk-bk.html  |  8 +++--
 .../administration-zk-bk/index.html                |  8 +++--
 .../en/2.1.0-incubating/client-libraries-cpp.html  |  8 +++--
 .../client-libraries-cpp/index.html                |  8 +++--
 .../en/2.1.0-incubating/client-libraries-go.html   |  8 +++--
 .../client-libraries-go/index.html                 |  8 +++--
 .../en/2.1.0-incubating/client-libraries-java.html |  8 +++--
 .../client-libraries-java/index.html               |  8 +++--
 .../2.1.0-incubating/client-libraries-python.html  |  8 +++--
 .../client-libraries-python/index.html             |  8 +++--
 .../client-libraries-websocket.html                |  8 +++--
 .../client-libraries-websocket/index.html          |  8 +++--
 .../docs/en/2.1.0-incubating/client-libraries.html |  8 +++--
 .../2.1.0-incubating/client-libraries/index.html   |  8 +++--
 .../concepts-architecture-overview.html            |  8 +++--
 .../concepts-architecture-overview/index.html      |  8 +++--
 .../en/2.1.0-incubating/concepts-architecture.html |  2 +-
 .../concepts-architecture/index.html               |  2 +-
 .../2.1.0-incubating/concepts-authentication.html  |  8 +++--
 .../concepts-authentication/index.html             |  8 +++--
 .../docs/en/2.1.0-incubating/concepts-clients.html |  8 +++--
 .../2.1.0-incubating/concepts-clients/index.html   |  8 +++--
 .../en/2.1.0-incubating/concepts-messaging.html    |  8 +++--
 .../2.1.0-incubating/concepts-messaging/index.html |  8 +++--
 .../2.1.0-incubating/concepts-multi-tenancy.html   |  8 +++--
 .../concepts-multi-tenancy/index.html              |  8 +++--
 .../en/2.1.0-incubating/concepts-overview.html     |  8 +++--
 .../2.1.0-incubating/concepts-overview/index.html  |  8 +++--
 .../en/2.1.0-incubating/concepts-replication.html  |  8 +++--
 .../concepts-replication/index.html                |  8 +++--
 .../2.1.0-incubating/concepts-schema-registry.html |  8 +++--
 .../concepts-schema-registry/index.html            |  8 +++--
 .../2.1.0-incubating/concepts-tiered-storage.html  |  8 +++--
 .../concepts-tiered-storage/index.html             |  8 +++--
 .../concepts-topic-compaction.html                 |  8 +++--
 .../concepts-topic-compaction/index.html           |  8 +++--
 .../en/2.1.0-incubating/cookbooks-compaction.html  |  8 +++--
 .../cookbooks-compaction/index.html                |  8 +++--
 .../2.1.0-incubating/cookbooks-deduplication.html  |  8 +++--
 .../cookbooks-deduplication/index.html             |  8 +++--
 .../en/2.1.0-incubating/cookbooks-encryption.html  |  8 +++--
 .../cookbooks-encryption/index.html                |  8 +++--
 .../2.1.0-incubating/cookbooks-message-queue.html  |  8 +++--
 .../cookbooks-message-queue/index.html             |  8 +++--
 .../2.1.0-incubating/cookbooks-non-persistent.html |  8 +++--
 .../cookbooks-non-persistent/index.html            |  8 +++--
 .../en/2.1.0-incubating/cookbooks-partitioned.html |  8 +++--
 .../cookbooks-partitioned/index.html               |  8 +++--
 .../cookbooks-retention-expiry.html                |  8 +++--
 .../cookbooks-retention-expiry/index.html          |  8 +++--
 .../2.1.0-incubating/cookbooks-tiered-storage.html |  8 +++--
 .../cookbooks-tiered-storage/index.html            |  8 +++--
 content/docs/en/2.1.0-incubating/deploy-aws.html   | 12 +++++--
 .../docs/en/2.1.0-incubating/deploy-aws/index.html | 12 +++++--
 .../deploy-bare-metal-multi-cluster.html           | 12 +++++--
 .../deploy-bare-metal-multi-cluster/index.html     | 12 +++++--
 .../en/2.1.0-incubating/deploy-bare-metal.html     | 12 +++++--
 .../2.1.0-incubating/deploy-bare-metal/index.html  | 12 +++++--
 content/docs/en/2.1.0-incubating/deploy-dcos.html  | 12 +++++--
 .../en/2.1.0-incubating/deploy-dcos/index.html     | 12 +++++--
 .../en/2.1.0-incubating/deploy-kubernetes.html     | 12 +++++--
 .../2.1.0-incubating/deploy-kubernetes/index.html  | 12 +++++--
 .../en/2.1.0-incubating/deploy-monitoring.html     |  8 +++--
 .../2.1.0-incubating/deploy-monitoring/index.html  |  8 +++--
 .../2.1.0-incubating/develop-binary-protocol.html  |  8 +++--
 .../develop-binary-protocol/index.html             |  8 +++--
 content/docs/en/2.1.0-incubating/develop-cpp.html  |  8 +++--
 .../en/2.1.0-incubating/develop-cpp/index.html     |  8 +++--
 .../en/2.1.0-incubating/develop-load-manager.html  |  8 +++--
 .../develop-load-manager/index.html                |  8 +++--
 .../docs/en/2.1.0-incubating/develop-schema.html   |  8 +++--
 .../en/2.1.0-incubating/develop-schema/index.html  |  8 +++--
 .../docs/en/2.1.0-incubating/develop-tools.html    |  8 +++--
 .../en/2.1.0-incubating/develop-tools/index.html   |  8 +++--
 .../docs/en/2.1.0-incubating/functions-api.html    |  8 +++--
 .../en/2.1.0-incubating/functions-api/index.html   |  8 +++--
 .../en/2.1.0-incubating/functions-deploying.html   |  8 +++--
 .../functions-deploying/index.html                 |  8 +++--
 .../en/2.1.0-incubating/functions-guarantees.html  |  8 +++--
 .../functions-guarantees/index.html                |  8 +++--
 .../en/2.1.0-incubating/functions-metrics.html     |  8 +++--
 .../2.1.0-incubating/functions-metrics/index.html  |  8 +++--
 .../en/2.1.0-incubating/functions-overview.html    |  8 +++--
 .../2.1.0-incubating/functions-overview/index.html |  8 +++--
 .../en/2.1.0-incubating/functions-quickstart.html  |  8 +++--
 .../functions-quickstart/index.html                |  8 +++--
 .../docs/en/2.1.0-incubating/functions-state.html  |  8 +++--
 .../en/2.1.0-incubating/functions-state/index.html |  8 +++--
 content/docs/en/2.1.0-incubating/io-aerospike.html |  8 +++--
 .../en/2.1.0-incubating/io-aerospike/index.html    |  8 +++--
 content/docs/en/2.1.0-incubating/io-cassandra.html |  8 +++--
 .../en/2.1.0-incubating/io-cassandra/index.html    |  8 +++--
 .../docs/en/2.1.0-incubating/io-connectors.html    |  8 +++--
 .../en/2.1.0-incubating/io-connectors/index.html   |  8 +++--
 content/docs/en/2.1.0-incubating/io-develop.html   |  8 +++--
 .../docs/en/2.1.0-incubating/io-develop/index.html |  8 +++--
 content/docs/en/2.1.0-incubating/io-kafka.html     |  8 +++--
 .../docs/en/2.1.0-incubating/io-kafka/index.html   |  8 +++--
 content/docs/en/2.1.0-incubating/io-kinesis.html   |  8 +++--
 .../docs/en/2.1.0-incubating/io-kinesis/index.html |  8 +++--
 content/docs/en/2.1.0-incubating/io-managing.html  |  8 +++--
 .../en/2.1.0-incubating/io-managing/index.html     |  8 +++--
 content/docs/en/2.1.0-incubating/io-overview.html  |  8 +++--
 .../en/2.1.0-incubating/io-overview/index.html     |  8 +++--
 .../docs/en/2.1.0-incubating/io-quickstart.html    |  8 +++--
 .../en/2.1.0-incubating/io-quickstart/index.html   |  8 +++--
 content/docs/en/2.1.0-incubating/io-rabbitmq.html  |  8 +++--
 .../en/2.1.0-incubating/io-rabbitmq/index.html     |  8 +++--
 content/docs/en/2.1.0-incubating/io-twitter.html   |  8 +++--
 .../docs/en/2.1.0-incubating/io-twitter/index.html |  8 +++--
 content/docs/en/2.1.0-incubating/pulsar-2.0.html   |  8 +++--
 .../docs/en/2.1.0-incubating/pulsar-2.0/index.html |  8 +++--
 content/docs/en/2.1.0-incubating/pulsar-admin.html |  8 +++--
 .../en/2.1.0-incubating/pulsar-admin/index.html    |  8 +++--
 .../en/2.1.0-incubating/reference-cli-tools.html   |  8 +++--
 .../reference-cli-tools/index.html                 |  8 +++--
 .../2.1.0-incubating/reference-configuration.html  |  4 +--
 .../reference-configuration/index.html             |  4 +--
 .../en/2.1.0-incubating/reference-terminology.html |  8 +++--
 .../reference-terminology/index.html               |  8 +++--
 .../docs/en/2.1.0-incubating/security-athenz.html  |  8 +++--
 .../en/2.1.0-incubating/security-athenz/index.html |  8 +++--
 .../2.1.0-incubating/security-authorization.html   |  8 +++--
 .../security-authorization/index.html              |  8 +++--
 .../en/2.1.0-incubating/security-encryption.html   |  8 +++--
 .../security-encryption/index.html                 |  8 +++--
 .../en/2.1.0-incubating/security-extending.html    |  8 +++--
 .../2.1.0-incubating/security-extending/index.html |  8 +++--
 .../en/2.1.0-incubating/security-overview.html     |  8 +++--
 .../2.1.0-incubating/security-overview/index.html  |  8 +++--
 .../security-tls-authentication.html               |  8 +++--
 .../security-tls-authentication/index.html         |  8 +++--
 .../2.1.0-incubating/security-tls-transport.html   |  8 +++--
 .../security-tls-transport/index.html              |  8 +++--
 .../en/2.1.0-incubating/standalone-docker.html     |  8 +++--
 .../2.1.0-incubating/standalone-docker/index.html  |  8 +++--
 content/docs/en/2.1.0-incubating/standalone.html   |  8 +++--
 .../docs/en/2.1.0-incubating/standalone/index.html |  8 +++--
 .../docs/en/2.1.1-incubating/adaptors-kafka.html   |  8 +++--
 .../en/2.1.1-incubating/adaptors-kafka/index.html  |  8 +++--
 .../docs/en/2.1.1-incubating/adaptors-spark.html   |  8 +++--
 .../en/2.1.1-incubating/adaptors-spark/index.html  |  8 +++--
 .../docs/en/2.1.1-incubating/adaptors-storm.html   |  8 +++--
 .../en/2.1.1-incubating/adaptors-storm/index.html  |  8 +++--
 .../en/2.1.1-incubating/admin-api-brokers.html     |  8 +++--
 .../2.1.1-incubating/admin-api-brokers/index.html  |  8 +++--
 .../en/2.1.1-incubating/admin-api-clusters.html    |  8 +++--
 .../2.1.1-incubating/admin-api-clusters/index.html |  8 +++--
 .../en/2.1.1-incubating/admin-api-namespaces.html  |  8 +++--
 .../admin-api-namespaces/index.html                |  8 +++--
 .../admin-api-non-persistent-topics.html           |  8 +++--
 .../admin-api-non-persistent-topics/index.html     |  8 +++--
 .../en/2.1.1-incubating/admin-api-overview.html    |  8 +++--
 .../2.1.1-incubating/admin-api-overview/index.html |  8 +++--
 .../admin-api-partitioned-topics.html              |  8 +++--
 .../admin-api-partitioned-topics/index.html        |  8 +++--
 .../en/2.1.1-incubating/admin-api-permissions.html |  8 +++--
 .../admin-api-permissions/index.html               |  8 +++--
 .../admin-api-persistent-topics.html               |  8 +++--
 .../admin-api-persistent-topics/index.html         |  8 +++--
 .../en/2.1.1-incubating/admin-api-schemas.html     |  8 +++--
 .../2.1.1-incubating/admin-api-schemas/index.html  |  8 +++--
 .../en/2.1.1-incubating/admin-api-tenants.html     |  8 +++--
 .../2.1.1-incubating/admin-api-tenants/index.html  |  8 +++--
 .../2.1.1-incubating/administration-dashboard.html |  8 +++--
 .../administration-dashboard/index.html            |  8 +++--
 .../en/2.1.1-incubating/administration-geo.html    |  8 +++--
 .../2.1.1-incubating/administration-geo/index.html |  8 +++--
 .../administration-load-distribution.html          |  8 +++--
 .../administration-load-distribution/index.html    |  8 +++--
 .../en/2.1.1-incubating/administration-proxy.html  |  8 +++--
 .../administration-proxy/index.html                |  8 +++--
 .../en/2.1.1-incubating/administration-stats.html  |  8 +++--
 .../administration-stats/index.html                |  8 +++--
 .../en/2.1.1-incubating/administration-zk-bk.html  |  8 +++--
 .../administration-zk-bk/index.html                |  8 +++--
 .../en/2.1.1-incubating/client-libraries-cpp.html  |  8 +++--
 .../client-libraries-cpp/index.html                |  8 +++--
 .../en/2.1.1-incubating/client-libraries-go.html   |  8 +++--
 .../client-libraries-go/index.html                 |  8 +++--
 .../en/2.1.1-incubating/client-libraries-java.html |  8 +++--
 .../client-libraries-java/index.html               |  8 +++--
 .../2.1.1-incubating/client-libraries-python.html  |  8 +++--
 .../client-libraries-python/index.html             |  8 +++--
 .../client-libraries-websocket.html                |  8 +++--
 .../client-libraries-websocket/index.html          |  8 +++--
 .../docs/en/2.1.1-incubating/client-libraries.html |  8 +++--
 .../2.1.1-incubating/client-libraries/index.html   |  8 +++--
 .../concepts-architecture-overview.html            |  8 +++--
 .../concepts-architecture-overview/index.html      |  8 +++--
 .../en/2.1.1-incubating/concepts-architecture.html |  2 +-
 .../concepts-architecture/index.html               |  2 +-
 .../2.1.1-incubating/concepts-authentication.html  |  8 +++--
 .../concepts-authentication/index.html             |  8 +++--
 .../docs/en/2.1.1-incubating/concepts-clients.html |  8 +++--
 .../2.1.1-incubating/concepts-clients/index.html   |  8 +++--
 .../en/2.1.1-incubating/concepts-messaging.html    |  8 +++--
 .../2.1.1-incubating/concepts-messaging/index.html |  8 +++--
 .../2.1.1-incubating/concepts-multi-tenancy.html   |  8 +++--
 .../concepts-multi-tenancy/index.html              |  8 +++--
 .../en/2.1.1-incubating/concepts-overview.html     |  8 +++--
 .../2.1.1-incubating/concepts-overview/index.html  |  8 +++--
 .../en/2.1.1-incubating/concepts-replication.html  |  8 +++--
 .../concepts-replication/index.html                |  8 +++--
 .../2.1.1-incubating/concepts-schema-registry.html |  8 +++--
 .../concepts-schema-registry/index.html            |  8 +++--
 .../2.1.1-incubating/concepts-tiered-storage.html  |  8 +++--
 .../concepts-tiered-storage/index.html             |  8 +++--
 .../concepts-topic-compaction.html                 |  8 +++--
 .../concepts-topic-compaction/index.html           |  8 +++--
 .../en/2.1.1-incubating/cookbooks-compaction.html  |  8 +++--
 .../cookbooks-compaction/index.html                |  8 +++--
 .../2.1.1-incubating/cookbooks-deduplication.html  |  8 +++--
 .../cookbooks-deduplication/index.html             |  8 +++--
 .../en/2.1.1-incubating/cookbooks-encryption.html  |  8 +++--
 .../cookbooks-encryption/index.html                |  8 +++--
 .../2.1.1-incubating/cookbooks-message-queue.html  |  8 +++--
 .../cookbooks-message-queue/index.html             |  8 +++--
 .../2.1.1-incubating/cookbooks-non-persistent.html |  8 +++--
 .../cookbooks-non-persistent/index.html            |  8 +++--
 .../en/2.1.1-incubating/cookbooks-partitioned.html |  8 +++--
 .../cookbooks-partitioned/index.html               |  8 +++--
 .../cookbooks-retention-expiry.html                |  8 +++--
 .../cookbooks-retention-expiry/index.html          |  8 +++--
 .../2.1.1-incubating/cookbooks-tiered-storage.html |  8 +++--
 .../cookbooks-tiered-storage/index.html            |  8 +++--
 content/docs/en/2.1.1-incubating/deploy-aws.html   | 12 +++++--
 .../docs/en/2.1.1-incubating/deploy-aws/index.html | 12 +++++--
 .../deploy-bare-metal-multi-cluster.html           | 12 +++++--
 .../deploy-bare-metal-multi-cluster/index.html     | 12 +++++--
 .../en/2.1.1-incubating/deploy-bare-metal.html     | 12 +++++--
 .../2.1.1-incubating/deploy-bare-metal/index.html  | 12 +++++--
 content/docs/en/2.1.1-incubating/deploy-dcos.html  | 12 +++++--
 .../en/2.1.1-incubating/deploy-dcos/index.html     | 12 +++++--
 .../en/2.1.1-incubating/deploy-kubernetes.html     | 12 +++++--
 .../2.1.1-incubating/deploy-kubernetes/index.html  | 12 +++++--
 .../en/2.1.1-incubating/deploy-monitoring.html     |  8 +++--
 .../2.1.1-incubating/deploy-monitoring/index.html  |  8 +++--
 .../2.1.1-incubating/develop-binary-protocol.html  |  8 +++--
 .../develop-binary-protocol/index.html             |  8 +++--
 content/docs/en/2.1.1-incubating/develop-cpp.html  |  8 +++--
 .../en/2.1.1-incubating/develop-cpp/index.html     |  8 +++--
 .../en/2.1.1-incubating/develop-load-manager.html  |  8 +++--
 .../develop-load-manager/index.html                |  8 +++--
 .../docs/en/2.1.1-incubating/develop-schema.html   |  8 +++--
 .../en/2.1.1-incubating/develop-schema/index.html  |  8 +++--
 .../docs/en/2.1.1-incubating/develop-tools.html    |  8 +++--
 .../en/2.1.1-incubating/develop-tools/index.html   |  8 +++--
 .../docs/en/2.1.1-incubating/functions-api.html    |  8 +++--
 .../en/2.1.1-incubating/functions-api/index.html   |  8 +++--
 .../en/2.1.1-incubating/functions-deploying.html   |  8 +++--
 .../functions-deploying/index.html                 |  8 +++--
 .../en/2.1.1-incubating/functions-guarantees.html  |  8 +++--
 .../functions-guarantees/index.html                |  8 +++--
 .../en/2.1.1-incubating/functions-metrics.html     |  8 +++--
 .../2.1.1-incubating/functions-metrics/index.html  |  8 +++--
 .../en/2.1.1-incubating/functions-overview.html    |  8 +++--
 .../2.1.1-incubating/functions-overview/index.html |  8 +++--
 .../en/2.1.1-incubating/functions-quickstart.html  |  8 +++--
 .../functions-quickstart/index.html                |  8 +++--
 .../docs/en/2.1.1-incubating/functions-state.html  |  8 +++--
 .../en/2.1.1-incubating/functions-state/index.html |  8 +++--
 content/docs/en/2.1.1-incubating/io-aerospike.html |  8 +++--
 .../en/2.1.1-incubating/io-aerospike/index.html    |  8 +++--
 content/docs/en/2.1.1-incubating/io-cassandra.html |  8 +++--
 .../en/2.1.1-incubating/io-cassandra/index.html    |  8 +++--
 .../docs/en/2.1.1-incubating/io-connectors.html    |  8 +++--
 .../en/2.1.1-incubating/io-connectors/index.html   |  8 +++--
 content/docs/en/2.1.1-incubating/io-develop.html   |  8 +++--
 .../docs/en/2.1.1-incubating/io-develop/index.html |  8 +++--
 content/docs/en/2.1.1-incubating/io-kafka.html     |  8 +++--
 .../docs/en/2.1.1-incubating/io-kafka/index.html   |  8 +++--
 content/docs/en/2.1.1-incubating/io-kinesis.html   |  8 +++--
 .../docs/en/2.1.1-incubating/io-kinesis/index.html |  8 +++--
 content/docs/en/2.1.1-incubating/io-managing.html  |  8 +++--
 .../en/2.1.1-incubating/io-managing/index.html     |  8 +++--
 content/docs/en/2.1.1-incubating/io-overview.html  |  8 +++--
 .../en/2.1.1-incubating/io-overview/index.html     |  8 +++--
 .../docs/en/2.1.1-incubating/io-quickstart.html    |  8 +++--
 .../en/2.1.1-incubating/io-quickstart/index.html   |  8 +++--
 content/docs/en/2.1.1-incubating/io-rabbitmq.html  |  8 +++--
 .../en/2.1.1-incubating/io-rabbitmq/index.html     |  8 +++--
 content/docs/en/2.1.1-incubating/io-twitter.html   |  8 +++--
 .../docs/en/2.1.1-incubating/io-twitter/index.html |  8 +++--
 content/docs/en/2.1.1-incubating/pulsar-2.0.html   |  8 +++--
 .../docs/en/2.1.1-incubating/pulsar-2.0/index.html |  8 +++--
 content/docs/en/2.1.1-incubating/pulsar-admin.html |  8 +++--
 .../en/2.1.1-incubating/pulsar-admin/index.html    |  8 +++--
 .../en/2.1.1-incubating/reference-cli-tools.html   |  8 +++--
 .../reference-cli-tools/index.html                 |  8 +++--
 .../2.1.1-incubating/reference-configuration.html  |  4 +--
 .../reference-configuration/index.html             |  4 +--
 .../en/2.1.1-incubating/reference-terminology.html |  8 +++--
 .../reference-terminology/index.html               |  8 +++--
 .../docs/en/2.1.1-incubating/security-athenz.html  |  8 +++--
 .../en/2.1.1-incubating/security-athenz/index.html |  8 +++--
 .../2.1.1-incubating/security-authorization.html   |  8 +++--
 .../security-authorization/index.html              |  8 +++--
 .../en/2.1.1-incubating/security-encryption.html   |  8 +++--
 .../security-encryption/index.html                 |  8 +++--
 .../en/2.1.1-incubating/security-extending.html    |  8 +++--
 .../2.1.1-incubating/security-extending/index.html |  8 +++--
 .../en/2.1.1-incubating/security-overview.html     |  8 +++--
 .../2.1.1-incubating/security-overview/index.html  |  8 +++--
 .../security-tls-authentication.html               |  8 +++--
 .../security-tls-authentication/index.html         |  8 +++--
 .../2.1.1-incubating/security-tls-transport.html   |  8 +++--
 .../security-tls-transport/index.html              |  8 +++--
 .../en/2.1.1-incubating/standalone-docker.html     |  8 +++--
 .../2.1.1-incubating/standalone-docker/index.html  |  8 +++--
 content/docs/en/2.1.1-incubating/standalone.html   |  8 +++--
 .../docs/en/2.1.1-incubating/standalone/index.html |  8 +++--
 content/docs/en/adaptors-kafka.html                |  8 +++--
 content/docs/en/adaptors-kafka/index.html          |  8 +++--
 content/docs/en/adaptors-spark.html                |  8 +++--
 content/docs/en/adaptors-spark/index.html          |  8 +++--
 content/docs/en/adaptors-storm.html                |  8 +++--
 content/docs/en/adaptors-storm/index.html          |  8 +++--
 content/docs/en/admin-api-brokers.html             |  8 +++--
 content/docs/en/admin-api-brokers/index.html       |  8 +++--
 content/docs/en/admin-api-clusters.html            |  8 +++--
 content/docs/en/admin-api-clusters/index.html      |  8 +++--
 content/docs/en/admin-api-namespaces.html          |  8 +++--
 content/docs/en/admin-api-namespaces/index.html    |  8 +++--
 .../docs/en/admin-api-non-persistent-topics.html   |  8 +++--
 .../en/admin-api-non-persistent-topics/index.html  |  8 +++--
 content/docs/en/admin-api-overview.html            |  8 +++--
 content/docs/en/admin-api-overview/index.html      |  8 +++--
 content/docs/en/admin-api-partitioned-topics.html  |  8 +++--
 .../en/admin-api-partitioned-topics/index.html     |  8 +++--
 content/docs/en/admin-api-permissions.html         |  8 +++--
 content/docs/en/admin-api-permissions/index.html   |  8 +++--
 content/docs/en/admin-api-persistent-topics.html   |  8 +++--
 .../docs/en/admin-api-persistent-topics/index.html |  8 +++--
 content/docs/en/admin-api-schemas.html             |  8 +++--
 content/docs/en/admin-api-schemas/index.html       |  8 +++--
 content/docs/en/admin-api-tenants.html             |  8 +++--
 content/docs/en/admin-api-tenants/index.html       |  8 +++--
 content/docs/en/administration-dashboard.html      |  8 +++--
 .../docs/en/administration-dashboard/index.html    |  8 +++--
 content/docs/en/administration-geo.html            |  8 +++--
 content/docs/en/administration-geo/index.html      |  8 +++--
 .../docs/en/administration-load-distribution.html  |  8 +++--
 .../en/administration-load-distribution/index.html |  8 +++--
 content/docs/en/administration-proxy.html          |  8 +++--
 content/docs/en/administration-proxy/index.html    |  8 +++--
 content/docs/en/administration-stats.html          |  8 +++--
 content/docs/en/administration-stats/index.html    |  8 +++--
 content/docs/en/administration-zk-bk.html          |  8 +++--
 content/docs/en/administration-zk-bk/index.html    |  8 +++--
 content/docs/en/client-libraries-cpp.html          |  8 +++--
 content/docs/en/client-libraries-cpp/index.html    |  8 +++--
 content/docs/en/client-libraries-go.html           |  8 +++--
 content/docs/en/client-libraries-go/index.html     |  8 +++--
 content/docs/en/client-libraries-java.html         |  8 +++--
 content/docs/en/client-libraries-java/index.html   |  8 +++--
 content/docs/en/client-libraries-python.html       |  8 +++--
 content/docs/en/client-libraries-python/index.html |  8 +++--
 content/docs/en/client-libraries-websocket.html    |  8 +++--
 .../docs/en/client-libraries-websocket/index.html  |  8 +++--
 content/docs/en/client-libraries.html              |  8 +++--
 content/docs/en/client-libraries/index.html        |  8 +++--
 .../docs/en/concepts-architecture-overview.html    |  8 +++--
 .../en/concepts-architecture-overview/index.html   |  8 +++--
 content/docs/en/concepts-architecture.html         |  2 +-
 content/docs/en/concepts-architecture/index.html   |  2 +-
 content/docs/en/concepts-authentication.html       |  8 +++--
 content/docs/en/concepts-authentication/index.html |  8 +++--
 content/docs/en/concepts-clients.html              |  8 +++--
 content/docs/en/concepts-clients/index.html        |  8 +++--
 content/docs/en/concepts-messaging.html            |  8 +++--
 content/docs/en/concepts-messaging/index.html      |  8 +++--
 content/docs/en/concepts-multi-tenancy.html        |  8 +++--
 content/docs/en/concepts-multi-tenancy/index.html  |  8 +++--
 content/docs/en/concepts-overview.html             |  8 +++--
 content/docs/en/concepts-overview/index.html       |  8 +++--
 content/docs/en/concepts-replication.html          |  8 +++--
 content/docs/en/concepts-replication/index.html    |  8 +++--
 content/docs/en/concepts-schema-registry.html      |  8 +++--
 .../docs/en/concepts-schema-registry/index.html    |  8 +++--
 content/docs/en/concepts-tiered-storage.html       |  8 +++--
 content/docs/en/concepts-tiered-storage/index.html |  8 +++--
 content/docs/en/concepts-topic-compaction.html     |  8 +++--
 .../docs/en/concepts-topic-compaction/index.html   |  8 +++--
 content/docs/en/cookbooks-compaction.html          |  8 +++--
 content/docs/en/cookbooks-compaction/index.html    |  8 +++--
 content/docs/en/cookbooks-deduplication.html       |  8 +++--
 content/docs/en/cookbooks-deduplication/index.html |  8 +++--
 content/docs/en/cookbooks-encryption.html          |  8 +++--
 content/docs/en/cookbooks-encryption/index.html    |  8 +++--
 content/docs/en/cookbooks-message-queue.html       |  8 +++--
 content/docs/en/cookbooks-message-queue/index.html |  8 +++--
 content/docs/en/cookbooks-non-persistent.html      |  8 +++--
 .../docs/en/cookbooks-non-persistent/index.html    |  8 +++--
 content/docs/en/cookbooks-partitioned.html         |  8 +++--
 content/docs/en/cookbooks-partitioned/index.html   |  8 +++--
 content/docs/en/cookbooks-retention-expiry.html    |  8 +++--
 .../docs/en/cookbooks-retention-expiry/index.html  |  8 +++--
 content/docs/en/cookbooks-tiered-storage.html      |  8 +++--
 .../docs/en/cookbooks-tiered-storage/index.html    |  8 +++--
 content/docs/en/deploy-aws.html                    | 12 +++++--
 content/docs/en/deploy-aws/index.html              | 12 +++++--
 .../docs/en/deploy-bare-metal-multi-cluster.html   | 12 +++++--
 .../en/deploy-bare-metal-multi-cluster/index.html  | 12 +++++--
 content/docs/en/deploy-bare-metal.html             | 12 +++++--
 content/docs/en/deploy-bare-metal/index.html       | 12 +++++--
 content/docs/en/deploy-dcos.html                   | 12 +++++--
 content/docs/en/deploy-dcos/index.html             | 12 +++++--
 content/docs/en/deploy-kubernetes.html             | 12 +++++--
 content/docs/en/deploy-kubernetes/index.html       | 12 +++++--
 content/docs/en/deploy-monitoring.html             |  8 +++--
 content/docs/en/deploy-monitoring/index.html       |  8 +++--
 content/docs/en/develop-binary-protocol.html       |  8 +++--
 content/docs/en/develop-binary-protocol/index.html |  8 +++--
 content/docs/en/develop-cpp.html                   |  8 +++--
 content/docs/en/develop-cpp/index.html             |  8 +++--
 content/docs/en/develop-load-manager.html          |  8 +++--
 content/docs/en/develop-load-manager/index.html    |  8 +++--
 content/docs/en/develop-schema.html                |  8 +++--
 content/docs/en/develop-schema/index.html          |  8 +++--
 content/docs/en/develop-tools.html                 |  8 +++--
 content/docs/en/develop-tools/index.html           |  8 +++--
 content/docs/en/functions-api.html                 |  8 +++--
 content/docs/en/functions-api/index.html           |  8 +++--
 content/docs/en/functions-deploying.html           |  8 +++--
 content/docs/en/functions-deploying/index.html     |  8 +++--
 content/docs/en/functions-guarantees.html          |  8 +++--
 content/docs/en/functions-guarantees/index.html    |  8 +++--
 content/docs/en/functions-metrics.html             |  8 +++--
 content/docs/en/functions-metrics/index.html       |  8 +++--
 content/docs/en/functions-overview.html            |  8 +++--
 content/docs/en/functions-overview/index.html      |  8 +++--
 content/docs/en/functions-quickstart.html          |  8 +++--
 content/docs/en/functions-quickstart/index.html    |  8 +++--
 content/docs/en/functions-state.html               |  8 +++--
 content/docs/en/functions-state/index.html         |  8 +++--
 content/docs/en/io-aerospike.html                  |  8 +++--
 content/docs/en/io-aerospike/index.html            |  8 +++--
 content/docs/en/io-cassandra.html                  |  8 +++--
 content/docs/en/io-cassandra/index.html            |  8 +++--
 content/docs/en/io-connectors.html                 |  8 +++--
 content/docs/en/io-connectors/index.html           |  8 +++--
 content/docs/en/io-develop.html                    |  8 +++--
 content/docs/en/io-develop/index.html              |  8 +++--
 content/docs/en/io-kafka.html                      |  8 +++--
 content/docs/en/io-kafka/index.html                |  8 +++--
 content/docs/en/io-kinesis.html                    |  8 +++--
 content/docs/en/io-kinesis/index.html              |  8 +++--
 content/docs/en/io-managing.html                   |  8 +++--
 content/docs/en/io-managing/index.html             |  8 +++--
 content/docs/en/io-overview.html                   |  8 +++--
 content/docs/en/io-overview/index.html             |  8 +++--
 content/docs/en/io-quickstart.html                 |  8 +++--
 content/docs/en/io-quickstart/index.html           |  8 +++--
 content/docs/en/io-rabbitmq.html                   |  8 +++--
 content/docs/en/io-rabbitmq/index.html             |  8 +++--
 content/docs/en/io-twitter.html                    |  8 +++--
 content/docs/en/io-twitter/index.html              |  8 +++--
 content/docs/en/next/adaptors-kafka.html           |  8 +++--
 content/docs/en/next/adaptors-kafka/index.html     |  8 +++--
 content/docs/en/next/adaptors-spark.html           |  8 +++--
 content/docs/en/next/adaptors-spark/index.html     |  8 +++--
 content/docs/en/next/adaptors-storm.html           |  8 +++--
 content/docs/en/next/adaptors-storm/index.html     |  8 +++--
 content/docs/en/next/admin-api-brokers.html        |  8 +++--
 content/docs/en/next/admin-api-brokers/index.html  |  8 +++--
 content/docs/en/next/admin-api-clusters.html       |  8 +++--
 content/docs/en/next/admin-api-clusters/index.html |  8 +++--
 content/docs/en/next/admin-api-namespaces.html     |  8 +++--
 .../docs/en/next/admin-api-namespaces/index.html   |  8 +++--
 .../en/next/admin-api-non-persistent-topics.html   |  8 +++--
 .../admin-api-non-persistent-topics/index.html     |  8 +++--
 content/docs/en/next/admin-api-overview.html       |  8 +++--
 content/docs/en/next/admin-api-overview/index.html |  8 +++--
 .../docs/en/next/admin-api-partitioned-topics.html |  8 +++--
 .../next/admin-api-partitioned-topics/index.html   |  8 +++--
 content/docs/en/next/admin-api-permissions.html    |  8 +++--
 .../docs/en/next/admin-api-permissions/index.html  |  8 +++--
 .../docs/en/next/admin-api-persistent-topics.html  |  8 +++--
 .../en/next/admin-api-persistent-topics/index.html |  8 +++--
 content/docs/en/next/admin-api-schemas.html        |  8 +++--
 content/docs/en/next/admin-api-schemas/index.html  |  8 +++--
 content/docs/en/next/admin-api-tenants.html        |  8 +++--
 content/docs/en/next/admin-api-tenants/index.html  |  8 +++--
 content/docs/en/next/administration-dashboard.html |  8 +++--
 .../en/next/administration-dashboard/index.html    |  8 +++--
 content/docs/en/next/administration-geo.html       |  8 +++--
 content/docs/en/next/administration-geo/index.html |  8 +++--
 .../en/next/administration-load-distribution.html  |  8 +++--
 .../administration-load-distribution/index.html    |  8 +++--
 content/docs/en/next/administration-proxy.html     |  8 +++--
 .../docs/en/next/administration-proxy/index.html   |  8 +++--
 content/docs/en/next/administration-stats.html     |  8 +++--
 .../docs/en/next/administration-stats/index.html   |  8 +++--
 content/docs/en/next/administration-zk-bk.html     |  8 +++--
 .../docs/en/next/administration-zk-bk/index.html   |  8 +++--
 content/docs/en/next/client-libraries-cpp.html     |  8 +++--
 .../docs/en/next/client-libraries-cpp/index.html   |  8 +++--
 content/docs/en/next/client-libraries-go.html      | 10 +++---
 .../docs/en/next/client-libraries-go/index.html    | 10 +++---
 content/docs/en/next/client-libraries-java.html    |  8 +++--
 .../docs/en/next/client-libraries-java/index.html  |  8 +++--
 content/docs/en/next/client-libraries-python.html  |  8 +++--
 .../en/next/client-libraries-python/index.html     |  8 +++--
 .../docs/en/next/client-libraries-websocket.html   |  8 +++--
 .../en/next/client-libraries-websocket/index.html  |  8 +++--
 content/docs/en/next/client-libraries.html         |  8 +++--
 content/docs/en/next/client-libraries/index.html   |  8 +++--
 .../en/next/concepts-architecture-overview.html    |  8 +++--
 .../next/concepts-architecture-overview/index.html |  8 +++--
 content/docs/en/next/concepts-architecture.html    |  2 +-
 .../docs/en/next/concepts-architecture/index.html  |  2 +-
 content/docs/en/next/concepts-authentication.html  |  8 +++--
 .../en/next/concepts-authentication/index.html     |  8 +++--
 content/docs/en/next/concepts-clients.html         |  8 +++--
 content/docs/en/next/concepts-clients/index.html   |  8 +++--
 content/docs/en/next/concepts-messaging.html       |  8 +++--
 content/docs/en/next/concepts-messaging/index.html |  8 +++--
 content/docs/en/next/concepts-multi-tenancy.html   |  8 +++--
 .../docs/en/next/concepts-multi-tenancy/index.html |  8 +++--
 content/docs/en/next/concepts-overview.html        |  8 +++--
 content/docs/en/next/concepts-overview/index.html  |  8 +++--
 content/docs/en/next/concepts-replication.html     |  8 +++--
 .../docs/en/next/concepts-replication/index.html   |  8 +++--
 content/docs/en/next/concepts-schema-registry.html |  8 +++--
 .../en/next/concepts-schema-registry/index.html    |  8 +++--
 content/docs/en/next/concepts-tiered-storage.html  |  8 +++--
 .../en/next/concepts-tiered-storage/index.html     |  8 +++--
 .../docs/en/next/concepts-topic-compaction.html    |  8 +++--
 .../en/next/concepts-topic-compaction/index.html   |  8 +++--
 content/docs/en/next/cookbooks-compaction.html     |  8 +++--
 .../docs/en/next/cookbooks-compaction/index.html   |  8 +++--
 content/docs/en/next/cookbooks-deduplication.html  |  8 +++--
 .../en/next/cookbooks-deduplication/index.html     |  8 +++--
 content/docs/en/next/cookbooks-encryption.html     |  8 +++--
 .../docs/en/next/cookbooks-encryption/index.html   |  8 +++--
 content/docs/en/next/cookbooks-message-queue.html  |  8 +++--
 .../en/next/cookbooks-message-queue/index.html     |  8 +++--
 content/docs/en/next/cookbooks-non-persistent.html |  8 +++--
 .../en/next/cookbooks-non-persistent/index.html    |  8 +++--
 content/docs/en/next/cookbooks-partitioned.html    |  8 +++--
 .../docs/en/next/cookbooks-partitioned/index.html  |  8 +++--
 .../docs/en/next/cookbooks-retention-expiry.html   |  8 +++--
 .../en/next/cookbooks-retention-expiry/index.html  |  8 +++--
 content/docs/en/next/cookbooks-tiered-storage.html |  8 +++--
 .../en/next/cookbooks-tiered-storage/index.html    |  8 +++--
 content/docs/en/next/deploy-aws.html               | 12 +++++--
 content/docs/en/next/deploy-aws/index.html         | 12 +++++--
 .../en/next/deploy-bare-metal-multi-cluster.html   | 12 +++++--
 .../deploy-bare-metal-multi-cluster/index.html     | 12 +++++--
 content/docs/en/next/deploy-bare-metal.html        | 12 +++++--
 content/docs/en/next/deploy-bare-metal/index.html  | 12 +++++--
 content/docs/en/next/deploy-dcos.html              | 12 +++++--
 content/docs/en/next/deploy-dcos/index.html        | 12 +++++--
 content/docs/en/next/deploy-kubernetes.html        | 12 +++++--
 content/docs/en/next/deploy-kubernetes/index.html  | 12 +++++--
 content/docs/en/next/deploy-monitoring.html        |  8 +++--
 content/docs/en/next/deploy-monitoring/index.html  |  8 +++--
 content/docs/en/next/develop-binary-protocol.html  |  8 +++--
 .../en/next/develop-binary-protocol/index.html     |  8 +++--
 content/docs/en/next/develop-cpp.html              |  8 +++--
 content/docs/en/next/develop-cpp/index.html        |  8 +++--
 content/docs/en/next/develop-load-manager.html     |  8 +++--
 .../docs/en/next/develop-load-manager/index.html   |  8 +++--
 content/docs/en/next/develop-schema.html           |  8 +++--
 content/docs/en/next/develop-schema/index.html     |  8 +++--
 content/docs/en/next/develop-tools.html            |  8 +++--
 content/docs/en/next/develop-tools/index.html      |  8 +++--
 content/docs/en/next/functions-api.html            |  8 +++--
 content/docs/en/next/functions-api/index.html      |  8 +++--
 content/docs/en/next/functions-deploying.html      |  8 +++--
 .../docs/en/next/functions-deploying/index.html    |  8 +++--
 content/docs/en/next/functions-guarantees.html     |  8 +++--
 .../docs/en/next/functions-guarantees/index.html   |  8 +++--
 content/docs/en/next/functions-metrics.html        |  8 +++--
 content/docs/en/next/functions-metrics/index.html  |  8 +++--
 content/docs/en/next/functions-overview.html       |  8 +++--
 content/docs/en/next/functions-overview/index.html |  8 +++--
 content/docs/en/next/functions-quickstart.html     |  8 +++--
 .../docs/en/next/functions-quickstart/index.html   |  8 +++--
 content/docs/en/next/functions-state.html          |  8 +++--
 content/docs/en/next/functions-state/index.html    |  8 +++--
 content/docs/en/next/io-aerospike.html             |  8 +++--
 content/docs/en/next/io-aerospike/index.html       |  8 +++--
 content/docs/en/next/io-cassandra.html             |  8 +++--
 content/docs/en/next/io-cassandra/index.html       |  8 +++--
 content/docs/en/next/io-connectors.html            |  8 +++--
 content/docs/en/next/io-connectors/index.html      |  8 +++--
 content/docs/en/next/io-develop.html               |  8 +++--
 content/docs/en/next/io-develop/index.html         |  8 +++--
 content/docs/en/next/io-kafka.html                 |  8 +++--
 content/docs/en/next/io-kafka/index.html           |  8 +++--
 content/docs/en/next/io-kinesis.html               |  8 +++--
 content/docs/en/next/io-kinesis/index.html         |  8 +++--
 content/docs/en/next/io-managing.html              |  8 +++--
 content/docs/en/next/io-managing/index.html        |  8 +++--
 content/docs/en/next/io-overview.html              |  8 +++--
 content/docs/en/next/io-overview/index.html        |  8 +++--
 content/docs/en/next/io-quickstart.html            |  8 +++--
 content/docs/en/next/io-quickstart/index.html      |  8 +++--
 content/docs/en/next/io-rabbitmq.html              |  8 +++--
 content/docs/en/next/io-rabbitmq/index.html        |  8 +++--
 content/docs/en/next/io-twitter.html               |  8 +++--
 content/docs/en/next/io-twitter/index.html         |  8 +++--
 content/docs/en/next/pulsar-2.0.html               |  8 +++--
 content/docs/en/next/pulsar-2.0/index.html         |  8 +++--
 content/docs/en/next/pulsar-admin.html             |  8 +++--
 content/docs/en/next/pulsar-admin/index.html       |  8 +++--
 content/docs/en/next/reference-cli-tools.html      |  8 +++--
 .../docs/en/next/reference-cli-tools/index.html    |  8 +++--
 content/docs/en/next/reference-configuration.html  |  4 +--
 .../en/next/reference-configuration/index.html     |  4 +--
 content/docs/en/next/reference-terminology.html    |  8 +++--
 .../docs/en/next/reference-terminology/index.html  |  8 +++--
 content/docs/en/next/security-athenz.html          |  8 +++--
 content/docs/en/next/security-athenz/index.html    |  8 +++--
 content/docs/en/next/security-authorization.html   |  8 +++--
 .../docs/en/next/security-authorization/index.html |  8 +++--
 content/docs/en/next/security-encryption.html      |  8 +++--
 .../docs/en/next/security-encryption/index.html    |  8 +++--
 content/docs/en/next/security-extending.html       |  8 +++--
 content/docs/en/next/security-extending/index.html |  8 +++--
 content/docs/en/next/security-overview.html        |  8 +++--
 content/docs/en/next/security-overview/index.html  |  8 +++--
 .../docs/en/next/security-tls-authentication.html  |  8 +++--
 .../en/next/security-tls-authentication/index.html |  8 +++--
 content/docs/en/next/security-tls-transport.html   |  8 +++--
 .../docs/en/next/security-tls-transport/index.html |  8 +++--
 .../en/next/sql-deployment-configurations.html     |  8 +++--
 .../next/sql-deployment-configurations/index.html  |  8 +++--
 content/docs/en/next/sql-getting-started.html      |  8 +++--
 .../docs/en/next/sql-getting-started/index.html    |  8 +++--
 content/docs/en/next/sql-overview.html             |  8 +++--
 content/docs/en/next/sql-overview/index.html       |  8 +++--
 content/docs/en/next/standalone-docker.html        |  8 +++--
 content/docs/en/next/standalone-docker/index.html  |  8 +++--
 content/docs/en/next/standalone.html               |  8 +++--
 content/docs/en/next/standalone/index.html         |  8 +++--
 content/docs/en/pulsar-2.0.html                    |  8 +++--
 content/docs/en/pulsar-2.0/index.html              |  8 +++--
 content/docs/en/pulsar-admin.html                  |  8 +++--
 content/docs/en/pulsar-admin/index.html            |  8 +++--
 content/docs/en/reference-cli-tools.html           |  8 +++--
 content/docs/en/reference-cli-tools/index.html     |  8 +++--
 content/docs/en/reference-configuration.html       |  4 +--
 content/docs/en/reference-configuration/index.html |  4 +--
 content/docs/en/reference-terminology.html         |  8 +++--
 content/docs/en/reference-terminology/index.html   |  8 +++--
 content/docs/en/security-athenz.html               |  8 +++--
 content/docs/en/security-athenz/index.html         |  8 +++--
 content/docs/en/security-authorization.html        |  8 +++--
 content/docs/en/security-authorization/index.html  |  8 +++--
 content/docs/en/security-encryption.html           |  8 +++--
 content/docs/en/security-encryption/index.html     |  8 +++--
 content/docs/en/security-extending.html            |  8 +++--
 content/docs/en/security-extending/index.html      |  8 +++--
 content/docs/en/security-overview.html             |  8 +++--
 content/docs/en/security-overview/index.html       |  8 +++--
 content/docs/en/security-tls-authentication.html   |  8 +++--
 .../docs/en/security-tls-authentication/index.html |  8 +++--
 content/docs/en/security-tls-transport.html        |  8 +++--
 content/docs/en/security-tls-transport/index.html  |  8 +++--
 content/docs/en/sql-deployment-configurations.html |  8 +++--
 .../en/sql-deployment-configurations/index.html    |  8 +++--
 content/docs/en/sql-getting-started.html           |  8 +++--
 content/docs/en/sql-getting-started/index.html     |  8 +++--
 content/docs/en/sql-overview.html                  |  8 +++--
 content/docs/en/sql-overview/index.html            |  8 +++--
 content/docs/en/standalone-docker.html             |  8 +++--
 content/docs/en/standalone-docker/index.html       |  8 +++--
 content/docs/en/standalone.html                    |  8 +++--
 content/docs/en/standalone/index.html              |  8 +++--
 .../docs/fr/2.1.0-incubating/adaptors-kafka.html   |  8 +++--
 .../fr/2.1.0-incubating/adaptors-kafka/index.html  |  8 +++--
 .../docs/fr/2.1.0-incubating/adaptors-spark.html   |  8 +++--
 .../fr/2.1.0-incubating/adaptors-spark/index.html  |  8 +++--
 .../docs/fr/2.1.0-incubating/adaptors-storm.html   |  8 +++--
 .../fr/2.1.0-incubating/adaptors-storm/index.html  |  8 +++--
 .../fr/2.1.0-incubating/admin-api-brokers.html     |  8 +++--
 .../2.1.0-incubating/admin-api-brokers/index.html  |  8 +++--
 .../fr/2.1.0-incubating/admin-api-clusters.html    |  8 +++--
 .../2.1.0-incubating/admin-api-clusters/index.html |  8 +++--
 .../fr/2.1.0-incubating/admin-api-namespaces.html  |  8 +++--
 .../admin-api-namespaces/index.html                |  8 +++--
 .../admin-api-non-persistent-topics.html           |  8 +++--
 .../admin-api-non-persistent-topics/index.html     |  8 +++--
 .../fr/2.1.0-incubating/admin-api-overview.html    |  8 +++--
 .../2.1.0-incubating/admin-api-overview/index.html |  8 +++--
 .../admin-api-partitioned-topics.html              |  8 +++--
 .../admin-api-partitioned-topics/index.html        |  8 +++--
 .../fr/2.1.0-incubating/admin-api-permissions.html |  8 +++--
 .../admin-api-permissions/index.html               |  8 +++--
 .../admin-api-persistent-topics.html               |  8 +++--
 .../admin-api-persistent-topics/index.html         |  8 +++--
 .../fr/2.1.0-incubating/admin-api-schemas.html     |  8 +++--
 .../2.1.0-incubating/admin-api-schemas/index.html  |  8 +++--
 .../fr/2.1.0-incubating/admin-api-tenants.html     |  8 +++--
 .../2.1.0-incubating/admin-api-tenants/index.html  |  8 +++--
 .../2.1.0-incubating/administration-dashboard.html |  8 +++--
 .../administration-dashboard/index.html            |  8 +++--
 .../fr/2.1.0-incubating/administration-geo.html    |  8 +++--
 .../2.1.0-incubating/administration-geo/index.html |  8 +++--
 .../administration-load-distribution.html          |  8 +++--
 .../administration-load-distribution/index.html    |  8 +++--
 .../fr/2.1.0-incubating/administration-proxy.html  |  8 +++--
 .../administration-proxy/index.html                |  8 +++--
 .../fr/2.1.0-incubating/administration-stats.html  |  8 +++--
 .../administration-stats/index.html                |  8 +++--
 .../fr/2.1.0-incubating/administration-zk-bk.html  |  8 +++--
 .../administration-zk-bk/index.html                |  8 +++--
 .../fr/2.1.0-incubating/client-libraries-cpp.html  |  8 +++--
 .../client-libraries-cpp/index.html                |  8 +++--
 .../fr/2.1.0-incubating/client-libraries-go.html   |  8 +++--
 .../client-libraries-go/index.html                 |  8 +++--
 .../fr/2.1.0-incubating/client-libraries-java.html |  8 +++--
 .../client-libraries-java/index.html               |  8 +++--
 .../2.1.0-incubating/client-libraries-python.html  |  8 +++--
 .../client-libraries-python/index.html             |  8 +++--
 .../client-libraries-websocket.html                |  8 +++--
 .../client-libraries-websocket/index.html          |  8 +++--
 .../docs/fr/2.1.0-incubating/client-libraries.html |  8 +++--
 .../2.1.0-incubating/client-libraries/index.html   |  8 +++--
 .../concepts-architecture-overview.html            |  8 +++--
 .../concepts-architecture-overview/index.html      |  8 +++--
 .../fr/2.1.0-incubating/concepts-architecture.html |  8 +++--
 .../concepts-architecture/index.html               |  8 +++--
 .../2.1.0-incubating/concepts-authentication.html  |  8 +++--
 .../concepts-authentication/index.html             |  8 +++--
 .../docs/fr/2.1.0-incubating/concepts-clients.html |  8 +++--
 .../2.1.0-incubating/concepts-clients/index.html   |  8 +++--
 .../fr/2.1.0-incubating/concepts-messaging.html    |  8 +++--
 .../2.1.0-incubating/concepts-messaging/index.html |  8 +++--
 .../2.1.0-incubating/concepts-multi-tenancy.html   |  8 +++--
 .../concepts-multi-tenancy/index.html              |  8 +++--
 .../fr/2.1.0-incubating/concepts-overview.html     |  8 +++--
 .../2.1.0-incubating/concepts-overview/index.html  |  8 +++--
 .../fr/2.1.0-incubating/concepts-replication.html  |  8 +++--
 .../concepts-replication/index.html                |  8 +++--
 .../2.1.0-incubating/concepts-schema-registry.html |  8 +++--
 .../concepts-schema-registry/index.html            |  8 +++--
 .../2.1.0-incubating/concepts-tiered-storage.html  |  8 +++--
 .../concepts-tiered-storage/index.html             |  8 +++--
 .../concepts-topic-compaction.html                 |  8 +++--
 .../concepts-topic-compaction/index.html           |  8 +++--
 .../fr/2.1.0-incubating/cookbooks-compaction.html  |  8 +++--
 .../cookbooks-compaction/index.html                |  8 +++--
 .../2.1.0-incubating/cookbooks-deduplication.html  |  8 +++--
 .../cookbooks-deduplication/index.html             |  8 +++--
 .../fr/2.1.0-incubating/cookbooks-encryption.html  |  8 +++--
 .../cookbooks-encryption/index.html                |  8 +++--
 .../2.1.0-incubating/cookbooks-message-queue.html  |  8 +++--
 .../cookbooks-message-queue/index.html             |  8 +++--
 .../2.1.0-incubating/cookbooks-non-persistent.html |  8 +++--
 .../cookbooks-non-persistent/index.html            |  8 +++--
 .../fr/2.1.0-incubating/cookbooks-partitioned.html |  8 +++--
 .../cookbooks-partitioned/index.html               |  8 +++--
 .../cookbooks-retention-expiry.html                |  8 +++--
 .../cookbooks-retention-expiry/index.html          |  8 +++--
 .../2.1.0-incubating/cookbooks-tiered-storage.html |  8 +++--
 .../cookbooks-tiered-storage/index.html            |  8 +++--
 content/docs/fr/2.1.0-incubating/deploy-aws.html   | 12 +++++--
 .../docs/fr/2.1.0-incubating/deploy-aws/index.html | 12 +++++--
 .../deploy-bare-metal-multi-cluster.html           | 12 +++++--
 .../deploy-bare-metal-multi-cluster/index.html     | 12 +++++--
 .../fr/2.1.0-incubating/deploy-bare-metal.html     | 12 +++++--
 .../2.1.0-incubating/deploy-bare-metal/index.html  | 12 +++++--
 content/docs/fr/2.1.0-incubating/deploy-dcos.html  | 12 +++++--
 .../fr/2.1.0-incubating/deploy-dcos/index.html     | 12 +++++--
 .../fr/2.1.0-incubating/deploy-kubernetes.html     | 12 +++++--
 .../2.1.0-incubating/deploy-kubernetes/index.html  | 12 +++++--
 .../fr/2.1.0-incubating/deploy-monitoring.html     |  8 +++--
 .../2.1.0-incubating/deploy-monitoring/index.html  |  8 +++--
 .../2.1.0-incubating/develop-binary-protocol.html  |  8 +++--
 .../develop-binary-protocol/index.html             |  8 +++--
 content/docs/fr/2.1.0-incubating/develop-cpp.html  |  8 +++--
 .../fr/2.1.0-incubating/develop-cpp/index.html     |  8 +++--
 .../fr/2.1.0-incubating/develop-load-manager.html  |  8 +++--
 .../develop-load-manager/index.html                |  8 +++--
 .../docs/fr/2.1.0-incubating/develop-schema.html   |  8 +++--
 .../fr/2.1.0-incubating/develop-schema/index.html  |  8 +++--
 .../docs/fr/2.1.0-incubating/develop-tools.html    |  8 +++--
 .../fr/2.1.0-incubating/develop-tools/index.html   |  8 +++--
 .../docs/fr/2.1.0-incubating/functions-api.html    |  8 +++--
 .../fr/2.1.0-incubating/functions-api/index.html   |  8 +++--
 .../fr/2.1.0-incubating/functions-deploying.html   |  8 +++--
 .../functions-deploying/index.html                 |  8 +++--
 .../fr/2.1.0-incubating/functions-guarantees.html  |  8 +++--
 .../functions-guarantees/index.html                |  8 +++--
 .../fr/2.1.0-incubating/functions-metrics.html     |  8 +++--
 .../2.1.0-incubating/functions-metrics/index.html  |  8 +++--
 .../fr/2.1.0-incubating/functions-overview.html    |  8 +++--
 .../2.1.0-incubating/functions-overview/index.html |  8 +++--
 .../fr/2.1.0-incubating/functions-quickstart.html  |  8 +++--
 .../functions-quickstart/index.html                |  8 +++--
 .../docs/fr/2.1.0-incubating/functions-state.html  |  8 +++--
 .../fr/2.1.0-incubating/functions-state/index.html |  8 +++--
 content/docs/fr/2.1.0-incubating/io-aerospike.html |  8 +++--
 .../fr/2.1.0-incubating/io-aerospike/index.html    |  8 +++--
 content/docs/fr/2.1.0-incubating/io-cassandra.html |  8 +++--
 .../fr/2.1.0-incubating/io-cassandra/index.html    |  8 +++--
 .../docs/fr/2.1.0-incubating/io-connectors.html    |  8 +++--
 .../fr/2.1.0-incubating/io-connectors/index.html   |  8 +++--
 content/docs/fr/2.1.0-incubating/io-develop.html   |  8 +++--
 .../docs/fr/2.1.0-incubating/io-develop/index.html |  8 +++--
 content/docs/fr/2.1.0-incubating/io-kafka.html     |  8 +++--
 .../docs/fr/2.1.0-incubating/io-kafka/index.html   |  8 +++--
 content/docs/fr/2.1.0-incubating/io-kinesis.html   |  8 +++--
 .../docs/fr/2.1.0-incubating/io-kinesis/index.html |  8 +++--
 content/docs/fr/2.1.0-incubating/io-managing.html  |  8 +++--
 .../fr/2.1.0-incubating/io-managing/index.html     |  8 +++--
 content/docs/fr/2.1.0-incubating/io-overview.html  |  8 +++--
 .../fr/2.1.0-incubating/io-overview/index.html     |  8 +++--
 .../docs/fr/2.1.0-incubating/io-quickstart.html    |  8 +++--
 .../fr/2.1.0-incubating/io-quickstart/index.html   |  8 +++--
 content/docs/fr/2.1.0-incubating/io-rabbitmq.html  |  8 +++--
 .../fr/2.1.0-incubating/io-rabbitmq/index.html     |  8 +++--
 content/docs/fr/2.1.0-incubating/io-twitter.html   |  8 +++--
 .../docs/fr/2.1.0-incubating/io-twitter/index.html |  8 +++--
 content/docs/fr/2.1.0-incubating/pulsar-2.0.html   |  8 +++--
 .../docs/fr/2.1.0-incubating/pulsar-2.0/index.html |  8 +++--
 content/docs/fr/2.1.0-incubating/pulsar-admin.html |  8 +++--
 .../fr/2.1.0-incubating/pulsar-admin/index.html    |  8 +++--
 .../fr/2.1.0-incubating/reference-cli-tools.html   |  8 +++--
 .../reference-cli-tools/index.html                 |  8 +++--
 .../2.1.0-incubating/reference-configuration.html  |  4 +--
 .../reference-configuration/index.html             |  4 +--
 .../fr/2.1.0-incubating/reference-terminology.html |  8 +++--
 .../reference-terminology/index.html               |  8 +++--
 .../docs/fr/2.1.0-incubating/security-athenz.html  |  8 +++--
 .../fr/2.1.0-incubating/security-athenz/index.html |  8 +++--
 .../2.1.0-incubating/security-authorization.html   |  8 +++--
 .../security-authorization/index.html              |  8 +++--
 .../fr/2.1.0-incubating/security-encryption.html   |  8 +++--
 .../security-encryption/index.html                 |  8 +++--
 .../fr/2.1.0-incubating/security-extending.html    |  8 +++--
 .../2.1.0-incubating/security-extending/index.html |  8 +++--
 .../fr/2.1.0-incubating/security-overview.html     |  8 +++--
 .../2.1.0-incubating/security-overview/index.html  |  8 +++--
 .../security-tls-authentication.html               |  8 +++--
 .../security-tls-authentication/index.html         |  8 +++--
 .../2.1.0-incubating/security-tls-transport.html   |  8 +++--
 .../security-tls-transport/index.html              |  8 +++--
 .../fr/2.1.0-incubating/standalone-docker.html     |  8 +++--
 .../2.1.0-incubating/standalone-docker/index.html  |  8 +++--
 content/docs/fr/2.1.0-incubating/standalone.html   |  8 +++--
 .../docs/fr/2.1.0-incubating/standalone/index.html |  8 +++--
 .../docs/fr/2.1.1-incubating/adaptors-kafka.html   |  8 +++--
 .../fr/2.1.1-incubating/adaptors-kafka/index.html  |  8 +++--
 .../docs/fr/2.1.1-incubating/adaptors-spark.html   |  8 +++--
 .../fr/2.1.1-incubating/adaptors-spark/index.html  |  8 +++--
 .../docs/fr/2.1.1-incubating/adaptors-storm.html   |  8 +++--
 .../fr/2.1.1-incubating/adaptors-storm/index.html  |  8 +++--
 .../fr/2.1.1-incubating/admin-api-brokers.html     |  8 +++--
 .../2.1.1-incubating/admin-api-brokers/index.html  |  8 +++--
 .../fr/2.1.1-incubating/admin-api-clusters.html    |  8 +++--
 .../2.1.1-incubating/admin-api-clusters/index.html |  8 +++--
 .../fr/2.1.1-incubating/admin-api-namespaces.html  |  8 +++--
 .../admin-api-namespaces/index.html                |  8 +++--
 .../admin-api-non-persistent-topics.html           |  8 +++--
 .../admin-api-non-persistent-topics/index.html     |  8 +++--
 .../fr/2.1.1-incubating/admin-api-overview.html    |  8 +++--
 .../2.1.1-incubating/admin-api-overview/index.html |  8 +++--
 .../admin-api-partitioned-topics.html              |  8 +++--
 .../admin-api-partitioned-topics/index.html        |  8 +++--
 .../fr/2.1.1-incubating/admin-api-permissions.html |  8 +++--
 .../admin-api-permissions/index.html               |  8 +++--
 .../admin-api-persistent-topics.html               |  8 +++--
 .../admin-api-persistent-topics/index.html         |  8 +++--
 .../fr/2.1.1-incubating/admin-api-schemas.html     |  8 +++--
 .../2.1.1-incubating/admin-api-schemas/index.html  |  8 +++--
 .../fr/2.1.1-incubating/admin-api-tenants.html     |  8 +++--
 .../2.1.1-incubating/admin-api-tenants/index.html  |  8 +++--
 .../2.1.1-incubating/administration-dashboard.html |  8 +++--
 .../administration-dashboard/index.html            |  8 +++--
 .../fr/2.1.1-incubating/administration-geo.html    |  8 +++--
 .../2.1.1-incubating/administration-geo/index.html |  8 +++--
 .../administration-load-distribution.html          |  8 +++--
 .../administration-load-distribution/index.html    |  8 +++--
 .../fr/2.1.1-incubating/administration-proxy.html  |  8 +++--
 .../administration-proxy/index.html                |  8 +++--
 .../fr/2.1.1-incubating/administration-stats.html  |  8 +++--
 .../administration-stats/index.html                |  8 +++--
 .../fr/2.1.1-incubating/administration-zk-bk.html  |  8 +++--
 .../administration-zk-bk/index.html                |  8 +++--
 .../fr/2.1.1-incubating/client-libraries-cpp.html  |  8 +++--
 .../client-libraries-cpp/index.html                |  8 +++--
 .../fr/2.1.1-incubating/client-libraries-go.html   |  8 +++--
 .../client-libraries-go/index.html                 |  8 +++--
 .../fr/2.1.1-incubating/client-libraries-java.html |  8 +++--
 .../client-libraries-java/index.html               |  8 +++--
 .../2.1.1-incubating/client-libraries-python.html  |  8 +++--
 .../client-libraries-python/index.html             |  8 +++--
 .../client-libraries-websocket.html                |  8 +++--
 .../client-libraries-websocket/index.html          |  8 +++--
 .../docs/fr/2.1.1-incubating/client-libraries.html |  8 +++--
 .../2.1.1-incubating/client-libraries/index.html   |  8 +++--
 .../concepts-architecture-overview.html            |  8 +++--
 .../concepts-architecture-overview/index.html      |  8 +++--
 .../fr/2.1.1-incubating/concepts-architecture.html |  8 +++--
 .../concepts-architecture/index.html               |  8 +++--
 .../2.1.1-incubating/concepts-authentication.html  |  8 +++--
 .../concepts-authentication/index.html             |  8 +++--
 .../docs/fr/2.1.1-incubating/concepts-clients.html |  8 +++--
 .../2.1.1-incubating/concepts-clients/index.html   |  8 +++--
 .../fr/2.1.1-incubating/concepts-messaging.html    |  8 +++--
 .../2.1.1-incubating/concepts-messaging/index.html |  8 +++--
 .../2.1.1-incubating/concepts-multi-tenancy.html   |  8 +++--
 .../concepts-multi-tenancy/index.html              |  8 +++--
 .../fr/2.1.1-incubating/concepts-overview.html     |  8 +++--
 .../2.1.1-incubating/concepts-overview/index.html  |  8 +++--
 .../fr/2.1.1-incubating/concepts-replication.html  |  8 +++--
 .../concepts-replication/index.html                |  8 +++--
 .../2.1.1-incubating/concepts-schema-registry.html |  8 +++--
 .../concepts-schema-registry/index.html            |  8 +++--
 .../2.1.1-incubating/concepts-tiered-storage.html  |  8 +++--
 .../concepts-tiered-storage/index.html             |  8 +++--
 .../concepts-topic-compaction.html                 |  8 +++--
 .../concepts-topic-compaction/index.html           |  8 +++--
 .../fr/2.1.1-incubating/cookbooks-compaction.html  |  8 +++--
 .../cookbooks-compaction/index.html                |  8 +++--
 .../2.1.1-incubating/cookbooks-deduplication.html  |  8 +++--
 .../cookbooks-deduplication/index.html             |  8 +++--
 .../fr/2.1.1-incubating/cookbooks-encryption.html  |  8 +++--
 .../cookbooks-encryption/index.html                |  8 +++--
 .../2.1.1-incubating/cookbooks-message-queue.html  |  8 +++--
 .../cookbooks-message-queue/index.html             |  8 +++--
 .../2.1.1-incubating/cookbooks-non-persistent.html |  8 +++--
 .../cookbooks-non-persistent/index.html            |  8 +++--
 .../fr/2.1.1-incubating/cookbooks-partitioned.html |  8 +++--
 .../cookbooks-partitioned/index.html               |  8 +++--
 .../cookbooks-retention-expiry.html                |  8 +++--
 .../cookbooks-retention-expiry/index.html          |  8 +++--
 .../2.1.1-incubating/cookbooks-tiered-storage.html |  8 +++--
 .../cookbooks-tiered-storage/index.html            |  8 +++--
 content/docs/fr/2.1.1-incubating/deploy-aws.html   | 12 +++++--
 .../docs/fr/2.1.1-incubating/deploy-aws/index.html | 12 +++++--
 .../deploy-bare-metal-multi-cluster.html           | 12 +++++--
 .../deploy-bare-metal-multi-cluster/index.html     | 12 +++++--
 .../fr/2.1.1-incubating/deploy-bare-metal.html     | 12 +++++--
 .../2.1.1-incubating/deploy-bare-metal/index.html  | 12 +++++--
 content/docs/fr/2.1.1-incubating/deploy-dcos.html  | 12 +++++--
 .../fr/2.1.1-incubating/deploy-dcos/index.html     | 12 +++++--
 .../fr/2.1.1-incubating/deploy-kubernetes.html     | 12 +++++--
 .../2.1.1-incubating/deploy-kubernetes/index.html  | 12 +++++--
 .../fr/2.1.1-incubating/deploy-monitoring.html     |  8 +++--
 .../2.1.1-incubating/deploy-monitoring/index.html  |  8 +++--
 .../2.1.1-incubating/develop-binary-protocol.html  |  8 +++--
 .../develop-binary-protocol/index.html             |  8 +++--
 content/docs/fr/2.1.1-incubating/develop-cpp.html  |  8 +++--
 .../fr/2.1.1-incubating/develop-cpp/index.html     |  8 +++--
 .../fr/2.1.1-incubating/develop-load-manager.html  |  8 +++--
 .../develop-load-manager/index.html                |  8 +++--
 .../docs/fr/2.1.1-incubating/develop-schema.html   |  8 +++--
 .../fr/2.1.1-incubating/develop-schema/index.html  |  8 +++--
 .../docs/fr/2.1.1-incubating/develop-tools.html    |  8 +++--
 .../fr/2.1.1-incubating/develop-tools/index.html   |  8 +++--
 .../docs/fr/2.1.1-incubating/functions-api.html    |  8 +++--
 .../fr/2.1.1-incubating/functions-api/index.html   |  8 +++--
 .../fr/2.1.1-incubating/functions-deploying.html   |  8 +++--
 .../functions-deploying/index.html                 |  8 +++--
 .../fr/2.1.1-incubating/functions-guarantees.html  |  8 +++--
 .../functions-guarantees/index.html                |  8 +++--
 .../fr/2.1.1-incubating/functions-metrics.html     |  8 +++--
 .../2.1.1-incubating/functions-metrics/index.html  |  8 +++--
 .../fr/2.1.1-incubating/functions-overview.html    |  8 +++--
 .../2.1.1-incubating/functions-overview/index.html |  8 +++--
 .../fr/2.1.1-incubating/functions-quickstart.html  |  8 +++--
 .../functions-quickstart/index.html                |  8 +++--
 .../docs/fr/2.1.1-incubating/functions-state.html  |  8 +++--
 .../fr/2.1.1-incubating/functions-state/index.html |  8 +++--
 content/docs/fr/2.1.1-incubating/io-aerospike.html |  8 +++--
 .../fr/2.1.1-incubating/io-aerospike/index.html    |  8 +++--
 content/docs/fr/2.1.1-incubating/io-cassandra.html |  8 +++--
 .../fr/2.1.1-incubating/io-cassandra/index.html    |  8 +++--
 .../docs/fr/2.1.1-incubating/io-connectors.html    |  8 +++--
 .../fr/2.1.1-incubating/io-connectors/index.html   |  8 +++--
 content/docs/fr/2.1.1-incubating/io-develop.html   |  8 +++--
 .../docs/fr/2.1.1-incubating/io-develop/index.html |  8 +++--
 content/docs/fr/2.1.1-incubating/io-kafka.html     |  8 +++--
 .../docs/fr/2.1.1-incubating/io-kafka/index.html   |  8 +++--
 content/docs/fr/2.1.1-incubating/io-kinesis.html   |  8 +++--
 .../docs/fr/2.1.1-incubating/io-kinesis/index.html |  8 +++--
 content/docs/fr/2.1.1-incubating/io-managing.html  |  8 +++--
 .../fr/2.1.1-incubating/io-managing/index.html     |  8 +++--
 content/docs/fr/2.1.1-incubating/io-overview.html  |  8 +++--
 .../fr/2.1.1-incubating/io-overview/index.html     |  8 +++--
 .../docs/fr/2.1.1-incubating/io-quickstart.html    |  8 +++--
 .../fr/2.1.1-incubating/io-quickstart/index.html   |  8 +++--
 content/docs/fr/2.1.1-incubating/io-rabbitmq.html  |  8 +++--
 .../fr/2.1.1-incubating/io-rabbitmq/index.html     |  8 +++--
 content/docs/fr/2.1.1-incubating/io-twitter.html   |  8 +++--
 .../docs/fr/2.1.1-incubating/io-twitter/index.html |  8 +++--
 content/docs/fr/2.1.1-incubating/pulsar-2.0.html   |  8 +++--
 .../docs/fr/2.1.1-incubating/pulsar-2.0/index.html |  8 +++--
 content/docs/fr/2.1.1-incubating/pulsar-admin.html |  8 +++--
 .../fr/2.1.1-incubating/pulsar-admin/index.html    |  8 +++--
 .../fr/2.1.1-incubating/reference-cli-tools.html   |  8 +++--
 .../reference-cli-tools/index.html                 |  8 +++--
 .../2.1.1-incubating/reference-configuration.html  |  4 +--
 .../reference-configuration/index.html             |  4 +--
 .../fr/2.1.1-incubating/reference-terminology.html |  8 +++--
 .../reference-terminology/index.html               |  8 +++--
 .../docs/fr/2.1.1-incubating/security-athenz.html  |  8 +++--
 .../fr/2.1.1-incubating/security-athenz/index.html |  8 +++--
 .../2.1.1-incubating/security-authorization.html   |  8 +++--
 .../security-authorization/index.html              |  8 +++--
 .../fr/2.1.1-incubating/security-encryption.html   |  8 +++--
 .../security-encryption/index.html                 |  8 +++--
 .../fr/2.1.1-incubating/security-extending.html    |  8 +++--
 .../2.1.1-incubating/security-extending/index.html |  8 +++--
 .../fr/2.1.1-incubating/security-overview.html     |  8 +++--
 .../2.1.1-incubating/security-overview/index.html  |  8 +++--
 .../security-tls-authentication.html               |  8 +++--
 .../security-tls-authentication/index.html         |  8 +++--
 .../2.1.1-incubating/security-tls-transport.html   |  8 +++--
 .../security-tls-transport/index.html              |  8 +++--
 .../fr/2.1.1-incubating/standalone-docker.html     |  8 +++--
 .../2.1.1-incubating/standalone-docker/index.html  |  8 +++--
 content/docs/fr/2.1.1-incubating/standalone.html   |  8 +++--
 .../docs/fr/2.1.1-incubating/standalone/index.html |  8 +++--
 content/docs/fr/adaptors-kafka.html                |  8 +++--
 content/docs/fr/adaptors-kafka/index.html          |  8 +++--
 content/docs/fr/adaptors-spark.html                |  8 +++--
 content/docs/fr/adaptors-spark/index.html          |  8 +++--
 content/docs/fr/adaptors-storm.html                |  8 +++--
 content/docs/fr/adaptors-storm/index.html          |  8 +++--
 content/docs/fr/admin-api-brokers.html             |  8 +++--
 content/docs/fr/admin-api-brokers/index.html       |  8 +++--
 content/docs/fr/admin-api-clusters.html            |  8 +++--
 content/docs/fr/admin-api-clusters/index.html      |  8 +++--
 content/docs/fr/admin-api-namespaces.html          |  8 +++--
 content/docs/fr/admin-api-namespaces/index.html    |  8 +++--
 .../docs/fr/admin-api-non-persistent-topics.html   |  8 +++--
 .../fr/admin-api-non-persistent-topics/index.html  |  8 +++--
 content/docs/fr/admin-api-overview.html            |  8 +++--
 content/docs/fr/admin-api-overview/index.html      |  8 +++--
 content/docs/fr/admin-api-partitioned-topics.html  |  8 +++--
 .../fr/admin-api-partitioned-topics/index.html     |  8 +++--
 content/docs/fr/admin-api-permissions.html         |  8 +++--
 content/docs/fr/admin-api-permissions/index.html   |  8 +++--
 content/docs/fr/admin-api-persistent-topics.html   |  8 +++--
 .../docs/fr/admin-api-persistent-topics/index.html |  8 +++--
 content/docs/fr/admin-api-schemas.html             |  8 +++--
 content/docs/fr/admin-api-schemas/index.html       |  8 +++--
 content/docs/fr/admin-api-tenants.html             |  8 +++--
 content/docs/fr/admin-api-tenants/index.html       |  8 +++--
 content/docs/fr/administration-dashboard.html      |  8 +++--
 .../docs/fr/administration-dashboard/index.html    |  8 +++--
 content/docs/fr/administration-geo.html            |  8 +++--
 content/docs/fr/administration-geo/index.html      |  8 +++--
 .../docs/fr/administration-load-distribution.html  |  8 +++--
 .../fr/administration-load-distribution/index.html |  8 +++--
 content/docs/fr/administration-proxy.html          |  8 +++--
 content/docs/fr/administration-proxy/index.html    |  8 +++--
 content/docs/fr/administration-stats.html          |  8 +++--
 content/docs/fr/administration-stats/index.html    |  8 +++--
 content/docs/fr/administration-zk-bk.html          |  8 +++--
 content/docs/fr/administration-zk-bk/index.html    |  8 +++--
 content/docs/fr/client-libraries-cpp.html          |  8 +++--
 content/docs/fr/client-libraries-cpp/index.html    |  8 +++--
 content/docs/fr/client-libraries-go.html           |  8 +++--
 content/docs/fr/client-libraries-go/index.html     |  8 +++--
 content/docs/fr/client-libraries-java.html         |  8 +++--
 content/docs/fr/client-libraries-java/index.html   |  8 +++--
 content/docs/fr/client-libraries-python.html       |  8 +++--
 content/docs/fr/client-libraries-python/index.html |  8 +++--
 content/docs/fr/client-libraries-websocket.html    |  8 +++--
 .../docs/fr/client-libraries-websocket/index.html  |  8 +++--
 content/docs/fr/client-libraries.html              |  8 +++--
 content/docs/fr/client-libraries/index.html        |  8 +++--
 .../docs/fr/concepts-architecture-overview.html    |  8 +++--
 .../fr/concepts-architecture-overview/index.html   |  8 +++--
 content/docs/fr/concepts-architecture.html         |  8 +++--
 content/docs/fr/concepts-architecture/index.html   |  8 +++--
 content/docs/fr/concepts-authentication.html       |  8 +++--
 content/docs/fr/concepts-authentication/index.html |  8 +++--
 content/docs/fr/concepts-clients.html              |  8 +++--
 content/docs/fr/concepts-clients/index.html        |  8 +++--
 content/docs/fr/concepts-messaging.html            |  8 +++--
 content/docs/fr/concepts-messaging/index.html      |  8 +++--
 content/docs/fr/concepts-multi-tenancy.html        |  8 +++--
 content/docs/fr/concepts-multi-tenancy/index.html  |  8 +++--
 content/docs/fr/concepts-overview.html             |  8 +++--
 content/docs/fr/concepts-overview/index.html       |  8 +++--
 content/docs/fr/concepts-replication.html          |  8 +++--
 content/docs/fr/concepts-replication/index.html    |  8 +++--
 content/docs/fr/concepts-schema-registry.html      |  8 +++--
 .../docs/fr/concepts-schema-registry/index.html    |  8 +++--
 content/docs/fr/concepts-tiered-storage.html       |  8 +++--
 content/docs/fr/concepts-tiered-storage/index.html |  8 +++--
 content/docs/fr/concepts-topic-compaction.html     |  8 +++--
 .../docs/fr/concepts-topic-compaction/index.html   |  8 +++--
 content/docs/fr/cookbooks-compaction.html          |  8 +++--
 content/docs/fr/cookbooks-compaction/index.html    |  8 +++--
 content/docs/fr/cookbooks-deduplication.html       |  8 +++--
 content/docs/fr/cookbooks-deduplication/index.html |  8 +++--
 content/docs/fr/cookbooks-encryption.html          |  8 +++--
 content/docs/fr/cookbooks-encryption/index.html    |  8 +++--
 content/docs/fr/cookbooks-message-queue.html       |  8 +++--
 content/docs/fr/cookbooks-message-queue/index.html |  8 +++--
 content/docs/fr/cookbooks-non-persistent.html      |  8 +++--
 .../docs/fr/cookbooks-non-persistent/index.html    |  8 +++--
 content/docs/fr/cookbooks-partitioned.html         |  8 +++--
 content/docs/fr/cookbooks-partitioned/index.html   |  8 +++--
 content/docs/fr/cookbooks-retention-expiry.html    |  8 +++--
 .../docs/fr/cookbooks-retention-expiry/index.html  |  8 +++--
 content/docs/fr/cookbooks-tiered-storage.html      |  8 +++--
 .../docs/fr/cookbooks-tiered-storage/index.html    |  8 +++--
 content/docs/fr/deploy-aws.html                    | 12 +++++--
 content/docs/fr/deploy-aws/index.html              | 12 +++++--
 .../docs/fr/deploy-bare-metal-multi-cluster.html   | 12 +++++--
 .../fr/deploy-bare-metal-multi-cluster/index.html  | 12 +++++--
 content/docs/fr/deploy-bare-metal.html             | 12 +++++--
 content/docs/fr/deploy-bare-metal/index.html       | 12 +++++--
 content/docs/fr/deploy-dcos.html                   | 12 +++++--
 content/docs/fr/deploy-dcos/index.html             | 12 +++++--
 content/docs/fr/deploy-kubernetes.html             | 12 +++++--
 content/docs/fr/deploy-kubernetes/index.html       | 12 +++++--
 content/docs/fr/deploy-monitoring.html             |  8 +++--
 content/docs/fr/deploy-monitoring/index.html       |  8 +++--
 content/docs/fr/develop-binary-protocol.html       |  8 +++--
 content/docs/fr/develop-binary-protocol/index.html |  8 +++--
 content/docs/fr/develop-cpp.html                   |  8 +++--
 content/docs/fr/develop-cpp/index.html             |  8 +++--
 content/docs/fr/develop-load-manager.html          |  8 +++--
 content/docs/fr/develop-load-manager/index.html    |  8 +++--
 content/docs/fr/develop-schema.html                |  8 +++--
 content/docs/fr/develop-schema/index.html          |  8 +++--
 content/docs/fr/develop-tools.html                 |  8 +++--
 content/docs/fr/develop-tools/index.html           |  8 +++--
 content/docs/fr/functions-api.html                 |  8 +++--
 content/docs/fr/functions-api/index.html           |  8 +++--
 content/docs/fr/functions-deploying.html           |  8 +++--
 content/docs/fr/functions-deploying/index.html     |  8 +++--
 content/docs/fr/functions-guarantees.html          |  8 +++--
 content/docs/fr/functions-guarantees/index.html    |  8 +++--
 content/docs/fr/functions-metrics.html             |  8 +++--
 content/docs/fr/functions-metrics/index.html       |  8 +++--
 content/docs/fr/functions-overview.html            |  8 +++--
 content/docs/fr/functions-overview/index.html      |  8 +++--
 content/docs/fr/functions-quickstart.html          |  8 +++--
 content/docs/fr/functions-quickstart/index.html    |  8 +++--
 content/docs/fr/functions-state.html               |  8 +++--
 content/docs/fr/functions-state/index.html         |  8 +++--
 content/docs/fr/io-aerospike.html                  |  8 +++--
 content/docs/fr/io-aerospike/index.html            |  8 +++--
 content/docs/fr/io-cassandra.html                  |  8 +++--
 content/docs/fr/io-cassandra/index.html            |  8 +++--
 content/docs/fr/io-connectors.html                 |  8 +++--
 content/docs/fr/io-connectors/index.html           |  8 +++--
 content/docs/fr/io-develop.html                    |  8 +++--
 content/docs/fr/io-develop/index.html              |  8 +++--
 content/docs/fr/io-kafka.html                      |  8 +++--
 content/docs/fr/io-kafka/index.html                |  8 +++--
 content/docs/fr/io-kinesis.html                    |  8 +++--
 content/docs/fr/io-kinesis/index.html              |  8 +++--
 content/docs/fr/io-managing.html                   |  8 +++--
 content/docs/fr/io-managing/index.html             |  8 +++--
 content/docs/fr/io-overview.html                   |  8 +++--
 content/docs/fr/io-overview/index.html             |  8 +++--
 content/docs/fr/io-quickstart.html                 |  8 +++--
 content/docs/fr/io-quickstart/index.html           |  8 +++--
 content/docs/fr/io-rabbitmq.html                   |  8 +++--
 content/docs/fr/io-rabbitmq/index.html             |  8 +++--
 content/docs/fr/io-twitter.html                    |  8 +++--
 content/docs/fr/io-twitter/index.html              |  8 +++--
 content/docs/fr/next/adaptors-kafka.html           |  8 +++--
 content/docs/fr/next/adaptors-kafka/index.html     |  8 +++--
 content/docs/fr/next/adaptors-spark.html           |  8 +++--
 content/docs/fr/next/adaptors-spark/index.html     |  8 +++--
 content/docs/fr/next/adaptors-storm.html           |  8 +++--
 content/docs/fr/next/adaptors-storm/index.html     |  8 +++--
 content/docs/fr/next/admin-api-brokers.html        |  8 +++--
 content/docs/fr/next/admin-api-brokers/index.html  |  8 +++--
 content/docs/fr/next/admin-api-clusters.html       |  8 +++--
 content/docs/fr/next/admin-api-clusters/index.html |  8 +++--
 content/docs/fr/next/admin-api-namespaces.html     |  8 +++--
 .../docs/fr/next/admin-api-namespaces/index.html   |  8 +++--
 .../fr/next/admin-api-non-persistent-topics.html   |  8 +++--
 .../admin-api-non-persistent-topics/index.html     |  8 +++--
 content/docs/fr/next/admin-api-overview.html       |  8 +++--
 content/docs/fr/next/admin-api-overview/index.html |  8 +++--
 .../docs/fr/next/admin-api-partitioned-topics.html |  8 +++--
 .../next/admin-api-partitioned-topics/index.html   |  8 +++--
 content/docs/fr/next/admin-api-permissions.html    |  8 +++--
 .../docs/fr/next/admin-api-permissions/index.html  |  8 +++--
 .../docs/fr/next/admin-api-persistent-topics.html  |  8 +++--
 .../fr/next/admin-api-persistent-topics/index.html |  8 +++--
 content/docs/fr/next/admin-api-schemas.html        |  8 +++--
 content/docs/fr/next/admin-api-schemas/index.html  |  8 +++--
 content/docs/fr/next/admin-api-tenants.html        |  8 +++--
 content/docs/fr/next/admin-api-tenants/index.html  |  8 +++--
 content/docs/fr/next/administration-dashboard.html |  8 +++--
 .../fr/next/administration-dashboard/index.html    |  8 +++--
 content/docs/fr/next/administration-geo.html       |  8 +++--
 content/docs/fr/next/administration-geo/index.html |  8 +++--
 .../fr/next/administration-load-distribution.html  |  8 +++--
 .../administration-load-distribution/index.html    |  8 +++--
 content/docs/fr/next/administration-proxy.html     |  8 +++--
 .../docs/fr/next/administration-proxy/index.html   |  8 +++--
 content/docs/fr/next/administration-stats.html     |  8 +++--
 .../docs/fr/next/administration-stats/index.html   |  8 +++--
 content/docs/fr/next/administration-zk-bk.html     |  8 +++--
 .../docs/fr/next/administration-zk-bk/index.html   |  8 +++--
 content/docs/fr/next/client-libraries-cpp.html     |  8 +++--
 .../docs/fr/next/client-libraries-cpp/index.html   |  8 +++--
 content/docs/fr/next/client-libraries-go.html      | 10 +++---
 .../docs/fr/next/client-libraries-go/index.html    | 10 +++---
 content/docs/fr/next/client-libraries-java.html    |  8 +++--
 .../docs/fr/next/client-libraries-java/index.html  |  8 +++--
 content/docs/fr/next/client-libraries-python.html  |  8 +++--
 .../fr/next/client-libraries-python/index.html     |  8 +++--
 .../docs/fr/next/client-libraries-websocket.html   |  8 +++--
 .../fr/next/client-libraries-websocket/index.html  |  8 +++--
 content/docs/fr/next/client-libraries.html         |  8 +++--
 content/docs/fr/next/client-libraries/index.html   |  8 +++--
 .../fr/next/concepts-architecture-overview.html    |  8 +++--
 .../next/concepts-architecture-overview/index.html |  8 +++--
 content/docs/fr/next/concepts-architecture.html    |  8 +++--
 .../docs/fr/next/concepts-architecture/index.html  |  8 +++--
 content/docs/fr/next/concepts-authentication.html  |  8 +++--
 .../fr/next/concepts-authentication/index.html     |  8 +++--
 content/docs/fr/next/concepts-clients.html         |  8 +++--
 content/docs/fr/next/concepts-clients/index.html   |  8 +++--
 content/docs/fr/next/concepts-messaging.html       |  8 +++--
 content/docs/fr/next/concepts-messaging/index.html |  8 +++--
 content/docs/fr/next/concepts-multi-tenancy.html   |  8 +++--
 .../docs/fr/next/concepts-multi-tenancy/index.html |  8 +++--
 content/docs/fr/next/concepts-overview.html        |  8 +++--
 content/docs/fr/next/concepts-overview/index.html  |  8 +++--
 content/docs/fr/next/concepts-replication.html     |  8 +++--
 .../docs/fr/next/concepts-replication/index.html   |  8 +++--
 content/docs/fr/next/concepts-schema-registry.html |  8 +++--
 .../fr/next/concepts-schema-registry/index.html    |  8 +++--
 content/docs/fr/next/concepts-tiered-storage.html  |  8 +++--
 .../fr/next/concepts-tiered-storage/index.html     |  8 +++--
 .../docs/fr/next/concepts-topic-compaction.html    |  8 +++--
 .../fr/next/concepts-topic-compaction/index.html   |  8 +++--
 content/docs/fr/next/cookbooks-compaction.html     |  8 +++--
 .../docs/fr/next/cookbooks-compaction/index.html   |  8 +++--
 content/docs/fr/next/cookbooks-deduplication.html  |  8 +++--
 .../fr/next/cookbooks-deduplication/index.html     |  8 +++--
 content/docs/fr/next/cookbooks-encryption.html     |  8 +++--
 .../docs/fr/next/cookbooks-encryption/index.html   |  8 +++--
 content/docs/fr/next/cookbooks-message-queue.html  |  8 +++--
 .../fr/next/cookbooks-message-queue/index.html     |  8 +++--
 content/docs/fr/next/cookbooks-non-persistent.html |  8 +++--
 .../fr/next/cookbooks-non-persistent/index.html    |  8 +++--
 content/docs/fr/next/cookbooks-partitioned.html    |  8 +++--
 .../docs/fr/next/cookbooks-partitioned/index.html  |  8 +++--
 .../docs/fr/next/cookbooks-retention-expiry.html   |  8 +++--
 .../fr/next/cookbooks-retention-expiry/index.html  |  8 +++--
 content/docs/fr/next/cookbooks-tiered-storage.html |  8 +++--
 .../fr/next/cookbooks-tiered-storage/index.html    |  8 +++--
 content/docs/fr/next/deploy-aws.html               | 12 +++++--
 content/docs/fr/next/deploy-aws/index.html         | 12 +++++--
 .../fr/next/deploy-bare-metal-multi-cluster.html   | 12 +++++--
 .../deploy-bare-metal-multi-cluster/index.html     | 12 +++++--
 content/docs/fr/next/deploy-bare-metal.html        | 12 +++++--
 content/docs/fr/next/deploy-bare-metal/index.html  | 12 +++++--
 content/docs/fr/next/deploy-dcos.html              | 12 +++++--
 content/docs/fr/next/deploy-dcos/index.html        | 12 +++++--
 content/docs/fr/next/deploy-kubernetes.html        | 12 +++++--
 content/docs/fr/next/deploy-kubernetes/index.html  | 12 +++++--
 content/docs/fr/next/deploy-monitoring.html        |  8 +++--
 content/docs/fr/next/deploy-monitoring/index.html  |  8 +++--
 content/docs/fr/next/develop-binary-protocol.html  |  8 +++--
 .../fr/next/develop-binary-protocol/index.html     |  8 +++--
 content/docs/fr/next/develop-cpp.html              |  8 +++--
 content/docs/fr/next/develop-cpp/index.html        |  8 +++--
 content/docs/fr/next/develop-load-manager.html     |  8 +++--
 .../docs/fr/next/develop-load-manager/index.html   |  8 +++--
 content/docs/fr/next/develop-schema.html           |  8 +++--
 content/docs/fr/next/develop-schema/index.html     |  8 +++--
 content/docs/fr/next/develop-tools.html            |  8 +++--
 content/docs/fr/next/develop-tools/index.html      |  8 +++--
 content/docs/fr/next/functions-api.html            |  8 +++--
 content/docs/fr/next/functions-api/index.html      |  8 +++--
 content/docs/fr/next/functions-deploying.html      |  8 +++--
 .../docs/fr/next/functions-deploying/index.html    |  8 +++--
 content/docs/fr/next/functions-guarantees.html     |  8 +++--
 .../docs/fr/next/functions-guarantees/index.html   |  8 +++--
 content/docs/fr/next/functions-metrics.html        |  8 +++--
 content/docs/fr/next/functions-metrics/index.html  |  8 +++--
 content/docs/fr/next/functions-overview.html       |  8 +++--
 content/docs/fr/next/functions-overview/index.html |  8 +++--
 content/docs/fr/next/functions-quickstart.html     |  8 +++--
 .../docs/fr/next/functions-quickstart/index.html   |  8 +++--
 content/docs/fr/next/functions-state.html          |  8 +++--
 content/docs/fr/next/functions-state/index.html    |  8 +++--
 content/docs/fr/next/io-aerospike.html             |  8 +++--
 content/docs/fr/next/io-aerospike/index.html       |  8 +++--
 content/docs/fr/next/io-cassandra.html             |  8 +++--
 content/docs/fr/next/io-cassandra/index.html       |  8 +++--
 content/docs/fr/next/io-connectors.html            |  8 +++--
 content/docs/fr/next/io-connectors/index.html      |  8 +++--
 content/docs/fr/next/io-develop.html               |  8 +++--
 content/docs/fr/next/io-develop/index.html         |  8 +++--
 content/docs/fr/next/io-kafka.html                 |  8 +++--
 content/docs/fr/next/io-kafka/index.html           |  8 +++--
 content/docs/fr/next/io-kinesis.html               |  8 +++--
 content/docs/fr/next/io-kinesis/index.html         |  8 +++--
 content/docs/fr/next/io-managing.html              |  8 +++--
 content/docs/fr/next/io-managing/index.html        |  8 +++--
 content/docs/fr/next/io-overview.html              |  8 +++--
 content/docs/fr/next/io-overview/index.html        |  8 +++--
 content/docs/fr/next/io-quickstart.html            |  8 +++--
 content/docs/fr/next/io-quickstart/index.html      |  8 +++--
 content/docs/fr/next/io-rabbitmq.html              |  8 +++--
 content/docs/fr/next/io-rabbitmq/index.html        |  8 +++--
 content/docs/fr/next/io-twitter.html               |  8 +++--
 content/docs/fr/next/io-twitter/index.html         |  8 +++--
 content/docs/fr/next/pulsar-2.0.html               |  8 +++--
 content/docs/fr/next/pulsar-2.0/index.html         |  8 +++--
 content/docs/fr/next/pulsar-admin.html             |  8 +++--
 content/docs/fr/next/pulsar-admin/index.html       |  8 +++--
 content/docs/fr/next/reference-cli-tools.html      |  8 +++--
 .../docs/fr/next/reference-cli-tools/index.html    |  8 +++--
 content/docs/fr/next/reference-configuration.html  |  4 +--
 .../fr/next/reference-configuration/index.html     |  4 +--
 content/docs/fr/next/reference-terminology.html    |  8 +++--
 .../docs/fr/next/reference-terminology/index.html  |  8 +++--
 content/docs/fr/next/security-athenz.html          |  8 +++--
 content/docs/fr/next/security-athenz/index.html    |  8 +++--
 content/docs/fr/next/security-authorization.html   |  8 +++--
 .../docs/fr/next/security-authorization/index.html |  8 +++--
 content/docs/fr/next/security-encryption.html      |  8 +++--
 .../docs/fr/next/security-encryption/index.html    |  8 +++--
 content/docs/fr/next/security-extending.html       |  8 +++--
 content/docs/fr/next/security-extending/index.html |  8 +++--
 content/docs/fr/next/security-overview.html        |  8 +++--
 content/docs/fr/next/security-overview/index.html  |  8 +++--
 .../docs/fr/next/security-tls-authentication.html  |  8 +++--
 .../fr/next/security-tls-authentication/index.html |  8 +++--
 content/docs/fr/next/security-tls-transport.html   |  8 +++--
 .../docs/fr/next/security-tls-transport/index.html |  8 +++--
 .../fr/next/sql-deployment-configurations.html     |  8 +++--
 .../next/sql-deployment-configurations/index.html  |  8 +++--
 content/docs/fr/next/sql-getting-started.html      |  8 +++--
 .../docs/fr/next/sql-getting-started/index.html    |  8 +++--
 content/docs/fr/next/sql-overview.html             |  8 +++--
 content/docs/fr/next/sql-overview/index.html       |  8 +++--
 content/docs/fr/next/standalone-docker.html        |  8 +++--
 content/docs/fr/next/standalone-docker/index.html  |  8 +++--
 content/docs/fr/next/standalone.html               |  8 +++--
 content/docs/fr/next/standalone/index.html         |  8 +++--
 content/docs/fr/pulsar-2.0.html                    |  8 +++--
 content/docs/fr/pulsar-2.0/index.html              |  8 +++--
 content/docs/fr/pulsar-admin.html                  |  8 +++--
 content/docs/fr/pulsar-admin/index.html            |  8 +++--
 content/docs/fr/reference-cli-tools.html           |  8 +++--
 content/docs/fr/reference-cli-tools/index.html     |  8 +++--
 content/docs/fr/reference-configuration.html       |  4 +--
 content/docs/fr/reference-configuration/index.html |  4 +--
 content/docs/fr/reference-terminology.html         |  8 +++--
 content/docs/fr/reference-terminology/index.html   |  8 +++--
 content/docs/fr/security-athenz.html               |  8 +++--
 content/docs/fr/security-athenz/index.html         |  8 +++--
 content/docs/fr/security-authorization.html        |  8 +++--
 content/docs/fr/security-authorization/index.html  |  8 +++--
 content/docs/fr/security-encryption.html           |  8 +++--
 content/docs/fr/security-encryption/index.html     |  8 +++--
 content/docs/fr/security-extending.html            |  8 +++--
 content/docs/fr/security-extending/index.html      |  8 +++--
 content/docs/fr/security-overview.html             |  8 +++--
 content/docs/fr/security-overview/index.html       |  8 +++--
 content/docs/fr/security-tls-authentication.html   |  8 +++--
 .../docs/fr/security-tls-authentication/index.html |  8 +++--
 content/docs/fr/security-tls-transport.html        |  8 +++--
 content/docs/fr/security-tls-transport/index.html  |  8 +++--
 content/docs/fr/sql-deployment-configurations.html |  8 +++--
 .../fr/sql-deployment-configurations/index.html    |  8 +++--
 content/docs/fr/sql-getting-started.html           |  8 +++--
 content/docs/fr/sql-getting-started/index.html     |  8 +++--
 content/docs/fr/sql-overview.html                  |  8 +++--
 content/docs/fr/sql-overview/index.html            |  8 +++--
 content/docs/fr/standalone-docker.html             |  8 +++--
 content/docs/fr/standalone-docker/index.html       |  8 +++--
 content/docs/fr/standalone.html                    |  8 +++--
 content/docs/fr/standalone/index.html              |  8 +++--
 .../docs/ja/2.1.0-incubating/adaptors-kafka.html   |  8 +++--
 .../ja/2.1.0-incubating/adaptors-kafka/index.html  |  8 +++--
 .../docs/ja/2.1.0-incubating/adaptors-spark.html   |  8 +++--
 .../ja/2.1.0-incubating/adaptors-spark/index.html  |  8 +++--
 .../docs/ja/2.1.0-incubating/adaptors-storm.html   |  8 +++--
 .../ja/2.1.0-incubating/adaptors-storm/index.html  |  8 +++--
 .../ja/2.1.0-incubating/admin-api-brokers.html     |  8 +++--
 .../2.1.0-incubating/admin-api-brokers/index.html  |  8 +++--
 .../ja/2.1.0-incubating/admin-api-clusters.html    |  8 +++--
 .../2.1.0-incubating/admin-api-clusters/index.html |  8 +++--
 .../ja/2.1.0-incubating/admin-api-namespaces.html  |  8 +++--
 .../admin-api-namespaces/index.html                |  8 +++--
 .../admin-api-non-persistent-topics.html           |  8 +++--
 .../admin-api-non-persistent-topics/index.html     |  8 +++--
 .../ja/2.1.0-incubating/admin-api-overview.html    |  8 +++--
 .../2.1.0-incubating/admin-api-overview/index.html |  8 +++--
 .../admin-api-partitioned-topics.html              |  8 +++--
 .../admin-api-partitioned-topics/index.html        |  8 +++--
 .../ja/2.1.0-incubating/admin-api-permissions.html |  8 +++--
 .../admin-api-permissions/index.html               |  8 +++--
 .../admin-api-persistent-topics.html               |  8 +++--
 .../admin-api-persistent-topics/index.html         |  8 +++--
 .../ja/2.1.0-incubating/admin-api-schemas.html     |  8 +++--
 .../2.1.0-incubating/admin-api-schemas/index.html  |  8 +++--
 .../ja/2.1.0-incubating/admin-api-tenants.html     |  8 +++--
 .../2.1.0-incubating/admin-api-tenants/index.html  |  8 +++--
 .../2.1.0-incubating/administration-dashboard.html |  8 +++--
 .../administration-dashboard/index.html            |  8 +++--
 .../ja/2.1.0-incubating/administration-geo.html    |  8 +++--
 .../2.1.0-incubating/administration-geo/index.html |  8 +++--
 .../administration-load-distribution.html          |  8 +++--
 .../administration-load-distribution/index.html    |  8 +++--
 .../ja/2.1.0-incubating/administration-proxy.html  |  8 +++--
 .../administration-proxy/index.html                |  8 +++--
 .../ja/2.1.0-incubating/administration-stats.html  |  8 +++--
 .../administration-stats/index.html                |  8 +++--
 .../ja/2.1.0-incubating/administration-zk-bk.html  |  8 +++--
 .../administration-zk-bk/index.html                |  8 +++--
 .../ja/2.1.0-incubating/client-libraries-cpp.html  |  8 +++--
 .../client-libraries-cpp/index.html                |  8 +++--
 .../ja/2.1.0-incubating/client-libraries-go.html   |  8 +++--
 .../client-libraries-go/index.html                 |  8 +++--
 .../ja/2.1.0-incubating/client-libraries-java.html |  8 +++--
 .../client-libraries-java/index.html               |  8 +++--
 .../2.1.0-incubating/client-libraries-python.html  |  8 +++--
 .../client-libraries-python/index.html             |  8 +++--
 .../client-libraries-websocket.html                |  8 +++--
 .../client-libraries-websocket/index.html          |  8 +++--
 .../docs/ja/2.1.0-incubating/client-libraries.html |  8 +++--
 .../2.1.0-incubating/client-libraries/index.html   |  8 +++--
 .../concepts-architecture-overview.html            |  8 +++--
 .../concepts-architecture-overview/index.html      |  8 +++--
 .../ja/2.1.0-incubating/concepts-architecture.html |  8 +++--
 .../concepts-architecture/index.html               |  8 +++--
 .../2.1.0-incubating/concepts-authentication.html  |  8 +++--
 .../concepts-authentication/index.html             |  8 +++--
 .../docs/ja/2.1.0-incubating/concepts-clients.html |  8 +++--
 .../2.1.0-incubating/concepts-clients/index.html   |  8 +++--
 .../ja/2.1.0-incubating/concepts-messaging.html    |  8 +++--
 .../2.1.0-incubating/concepts-messaging/index.html |  8 +++--
 .../2.1.0-incubating/concepts-multi-tenancy.html   |  8 +++--
 .../concepts-multi-tenancy/index.html              |  8 +++--
 .../ja/2.1.0-incubating/concepts-overview.html     |  8 +++--
 .../2.1.0-incubating/concepts-overview/index.html  |  8 +++--
 .../ja/2.1.0-incubating/concepts-replication.html  |  8 +++--
 .../concepts-replication/index.html                |  8 +++--
 .../2.1.0-incubating/concepts-schema-registry.html |  8 +++--
 .../concepts-schema-registry/index.html            |  8 +++--
 .../2.1.0-incubating/concepts-tiered-storage.html  |  8 +++--
 .../concepts-tiered-storage/index.html             |  8 +++--
 .../concepts-topic-compaction.html                 |  8 +++--
 .../concepts-topic-compaction/index.html           |  8 +++--
 .../ja/2.1.0-incubating/cookbooks-compaction.html  |  8 +++--
 .../cookbooks-compaction/index.html                |  8 +++--
 .../2.1.0-incubating/cookbooks-deduplication.html  |  8 +++--
 .../cookbooks-deduplication/index.html             |  8 +++--
 .../ja/2.1.0-incubating/cookbooks-encryption.html  |  8 +++--
 .../cookbooks-encryption/index.html                |  8 +++--
 .../2.1.0-incubating/cookbooks-message-queue.html  |  8 +++--
 .../cookbooks-message-queue/index.html             |  8 +++--
 .../2.1.0-incubating/cookbooks-non-persistent.html |  8 +++--
 .../cookbooks-non-persistent/index.html            |  8 +++--
 .../ja/2.1.0-incubating/cookbooks-partitioned.html |  8 +++--
 .../cookbooks-partitioned/index.html               |  8 +++--
 .../cookbooks-retention-expiry.html                |  8 +++--
 .../cookbooks-retention-expiry/index.html          |  8 +++--
 .../2.1.0-incubating/cookbooks-tiered-storage.html |  8 +++--
 .../cookbooks-tiered-storage/index.html            |  8 +++--
 content/docs/ja/2.1.0-incubating/deploy-aws.html   | 12 +++++--
 .../docs/ja/2.1.0-incubating/deploy-aws/index.html | 12 +++++--
 .../deploy-bare-metal-multi-cluster.html           | 12 +++++--
 .../deploy-bare-metal-multi-cluster/index.html     | 12 +++++--
 .../ja/2.1.0-incubating/deploy-bare-metal.html     | 12 +++++--
 .../2.1.0-incubating/deploy-bare-metal/index.html  | 12 +++++--
 content/docs/ja/2.1.0-incubating/deploy-dcos.html  | 12 +++++--
 .../ja/2.1.0-incubating/deploy-dcos/index.html     | 12 +++++--
 .../ja/2.1.0-incubating/deploy-kubernetes.html     | 12 +++++--
 .../2.1.0-incubating/deploy-kubernetes/index.html  | 12 +++++--
 .../ja/2.1.0-incubating/deploy-monitoring.html     |  8 +++--
 .../2.1.0-incubating/deploy-monitoring/index.html  |  8 +++--
 .../2.1.0-incubating/develop-binary-protocol.html  |  8 +++--
 .../develop-binary-protocol/index.html             |  8 +++--
 content/docs/ja/2.1.0-incubating/develop-cpp.html  |  8 +++--
 .../ja/2.1.0-incubating/develop-cpp/index.html     |  8 +++--
 .../ja/2.1.0-incubating/develop-load-manager.html  |  8 +++--
 .../develop-load-manager/index.html                |  8 +++--
 .../docs/ja/2.1.0-incubating/develop-schema.html   |  8 +++--
 .../ja/2.1.0-incubating/develop-schema/index.html  |  8 +++--
 .../docs/ja/2.1.0-incubating/develop-tools.html    |  8 +++--
 .../ja/2.1.0-incubating/develop-tools/index.html   |  8 +++--
 .../docs/ja/2.1.0-incubating/functions-api.html    |  8 +++--
 .../ja/2.1.0-incubating/functions-api/index.html   |  8 +++--
 .../ja/2.1.0-incubating/functions-deploying.html   |  8 +++--
 .../functions-deploying/index.html                 |  8 +++--
 .../ja/2.1.0-incubating/functions-guarantees.html  |  8 +++--
 .../functions-guarantees/index.html                |  8 +++--
 .../ja/2.1.0-incubating/functions-metrics.html     |  8 +++--
 .../2.1.0-incubating/functions-metrics/index.html  |  8 +++--
 .../ja/2.1.0-incubating/functions-overview.html    |  8 +++--
 .../2.1.0-incubating/functions-overview/index.html |  8 +++--
 .../ja/2.1.0-incubating/functions-quickstart.html  |  8 +++--
 .../functions-quickstart/index.html                |  8 +++--
 .../docs/ja/2.1.0-incubating/functions-state.html  |  8 +++--
 .../ja/2.1.0-incubating/functions-state/index.html |  8 +++--
 content/docs/ja/2.1.0-incubating/io-aerospike.html |  8 +++--
 .../ja/2.1.0-incubating/io-aerospike/index.html    |  8 +++--
 content/docs/ja/2.1.0-incubating/io-cassandra.html |  8 +++--
 .../ja/2.1.0-incubating/io-cassandra/index.html    |  8 +++--
 .../docs/ja/2.1.0-incubating/io-connectors.html    |  8 +++--
 .../ja/2.1.0-incubating/io-connectors/index.html   |  8 +++--
 content/docs/ja/2.1.0-incubating/io-develop.html   |  8 +++--
 .../docs/ja/2.1.0-incubating/io-develop/index.html |  8 +++--
 content/docs/ja/2.1.0-incubating/io-kafka.html     |  8 +++--
 .../docs/ja/2.1.0-incubating/io-kafka/index.html   |  8 +++--
 content/docs/ja/2.1.0-incubating/io-kinesis.html   |  8 +++--
 .../docs/ja/2.1.0-incubating/io-kinesis/index.html |  8 +++--
 content/docs/ja/2.1.0-incubating/io-managing.html  |  8 +++--
 .../ja/2.1.0-incubating/io-managing/index.html     |  8 +++--
 content/docs/ja/2.1.0-incubating/io-overview.html  |  8 +++--
 .../ja/2.1.0-incubating/io-overview/index.html     |  8 +++--
 .../docs/ja/2.1.0-incubating/io-quickstart.html    |  8 +++--
 .../ja/2.1.0-incubating/io-quickstart/index.html   |  8 +++--
 content/docs/ja/2.1.0-incubating/io-rabbitmq.html  |  8 +++--
 .../ja/2.1.0-incubating/io-rabbitmq/index.html     |  8 +++--
 content/docs/ja/2.1.0-incubating/io-twitter.html   |  8 +++--
 .../docs/ja/2.1.0-incubating/io-twitter/index.html |  8 +++--
 content/docs/ja/2.1.0-incubating/pulsar-2.0.html   |  8 +++--
 .../docs/ja/2.1.0-incubating/pulsar-2.0/index.html |  8 +++--
 content/docs/ja/2.1.0-incubating/pulsar-admin.html |  8 +++--
 .../ja/2.1.0-incubating/pulsar-admin/index.html    |  8 +++--
 .../ja/2.1.0-incubating/reference-cli-tools.html   |  8 +++--
 .../reference-cli-tools/index.html                 |  8 +++--
 .../2.1.0-incubating/reference-configuration.html  |  4 +--
 .../reference-configuration/index.html             |  4 +--
 .../ja/2.1.0-incubating/reference-terminology.html |  8 +++--
 .../reference-terminology/index.html               |  8 +++--
 .../docs/ja/2.1.0-incubating/security-athenz.html  |  8 +++--
 .../ja/2.1.0-incubating/security-athenz/index.html |  8 +++--
 .../2.1.0-incubating/security-authorization.html   |  8 +++--
 .../security-authorization/index.html              |  8 +++--
 .../ja/2.1.0-incubating/security-encryption.html   |  8 +++--
 .../security-encryption/index.html                 |  8 +++--
 .../ja/2.1.0-incubating/security-extending.html    |  8 +++--
 .../2.1.0-incubating/security-extending/index.html |  8 +++--
 .../ja/2.1.0-incubating/security-overview.html     |  8 +++--
 .../2.1.0-incubating/security-overview/index.html  |  8 +++--
 .../security-tls-authentication.html               |  8 +++--
 .../security-tls-authentication/index.html         |  8 +++--
 .../2.1.0-incubating/security-tls-transport.html   |  8 +++--
 .../security-tls-transport/index.html              |  8 +++--
 .../ja/2.1.0-incubating/standalone-docker.html     |  8 +++--
 .../2.1.0-incubating/standalone-docker/index.html  |  8 +++--
 content/docs/ja/2.1.0-incubating/standalone.html   |  8 +++--
 .../docs/ja/2.1.0-incubating/standalone/index.html |  8 +++--
 .../docs/ja/2.1.1-incubating/adaptors-kafka.html   |  8 +++--
 .../ja/2.1.1-incubating/adaptors-kafka/index.html  |  8 +++--
 .../docs/ja/2.1.1-incubating/adaptors-spark.html   |  8 +++--
 .../ja/2.1.1-incubating/adaptors-spark/index.html  |  8 +++--
 .../docs/ja/2.1.1-incubating/adaptors-storm.html   |  8 +++--
 .../ja/2.1.1-incubating/adaptors-storm/index.html  |  8 +++--
 .../ja/2.1.1-incubating/admin-api-brokers.html     |  8 +++--
 .../2.1.1-incubating/admin-api-brokers/index.html  |  8 +++--
 .../ja/2.1.1-incubating/admin-api-clusters.html    |  8 +++--
 .../2.1.1-incubating/admin-api-clusters/index.html |  8 +++--
 .../ja/2.1.1-incubating/admin-api-namespaces.html  |  8 +++--
 .../admin-api-namespaces/index.html                |  8 +++--
 .../admin-api-non-persistent-topics.html           |  8 +++--
 .../admin-api-non-persistent-topics/index.html     |  8 +++--
 .../ja/2.1.1-incubating/admin-api-overview.html    |  8 +++--
 .../2.1.1-incubating/admin-api-overview/index.html |  8 +++--
 .../admin-api-partitioned-topics.html              |  8 +++--
 .../admin-api-partitioned-topics/index.html        |  8 +++--
 .../ja/2.1.1-incubating/admin-api-permissions.html |  8 +++--
 .../admin-api-permissions/index.html               |  8 +++--
 .../admin-api-persistent-topics.html               |  8 +++--
 .../admin-api-persistent-topics/index.html         |  8 +++--
 .../ja/2.1.1-incubating/admin-api-schemas.html     |  8 +++--
 .../2.1.1-incubating/admin-api-schemas/index.html  |  8 +++--
 .../ja/2.1.1-incubating/admin-api-tenants.html     |  8 +++--
 .../2.1.1-incubating/admin-api-tenants/index.html  |  8 +++--
 .../2.1.1-incubating/administration-dashboard.html |  8 +++--
 .../administration-dashboard/index.html            |  8 +++--
 .../ja/2.1.1-incubating/administration-geo.html    |  8 +++--
 .../2.1.1-incubating/administration-geo/index.html |  8 +++--
 .../administration-load-distribution.html          |  8 +++--
 .../administration-load-distribution/index.html    |  8 +++--
 .../ja/2.1.1-incubating/administration-proxy.html  |  8 +++--
 .../administration-proxy/index.html                |  8 +++--
 .../ja/2.1.1-incubating/administration-stats.html  |  8 +++--
 .../administration-stats/index.html                |  8 +++--
 .../ja/2.1.1-incubating/administration-zk-bk.html  |  8 +++--
 .../administration-zk-bk/index.html                |  8 +++--
 .../ja/2.1.1-incubating/client-libraries-cpp.html  |  8 +++--
 .../client-libraries-cpp/index.html                |  8 +++--
 .../ja/2.1.1-incubating/client-libraries-go.html   |  8 +++--
 .../client-libraries-go/index.html                 |  8 +++--
 .../ja/2.1.1-incubating/client-libraries-java.html |  8 +++--
 .../client-libraries-java/index.html               |  8 +++--
 .../2.1.1-incubating/client-libraries-python.html  |  8 +++--
 .../client-libraries-python/index.html             |  8 +++--
 .../client-libraries-websocket.html                |  8 +++--
 .../client-libraries-websocket/index.html          |  8 +++--
 .../docs/ja/2.1.1-incubating/client-libraries.html |  8 +++--
 .../2.1.1-incubating/client-libraries/index.html   |  8 +++--
 .../concepts-architecture-overview.html            |  8 +++--
 .../concepts-architecture-overview/index.html      |  8 +++--
 .../ja/2.1.1-incubating/concepts-architecture.html |  8 +++--
 .../concepts-architecture/index.html               |  8 +++--
 .../2.1.1-incubating/concepts-authentication.html  |  8 +++--
 .../concepts-authentication/index.html             |  8 +++--
 .../docs/ja/2.1.1-incubating/concepts-clients.html |  8 +++--
 .../2.1.1-incubating/concepts-clients/index.html   |  8 +++--
 .../ja/2.1.1-incubating/concepts-messaging.html    |  8 +++--
 .../2.1.1-incubating/concepts-messaging/index.html |  8 +++--
 .../2.1.1-incubating/concepts-multi-tenancy.html   |  8 +++--
 .../concepts-multi-tenancy/index.html              |  8 +++--
 .../ja/2.1.1-incubating/concepts-overview.html     |  8 +++--
 .../2.1.1-incubating/concepts-overview/index.html  |  8 +++--
 .../ja/2.1.1-incubating/concepts-replication.html  |  8 +++--
 .../concepts-replication/index.html                |  8 +++--
 .../2.1.1-incubating/concepts-schema-registry.html |  8 +++--
 .../concepts-schema-registry/index.html            |  8 +++--
 .../2.1.1-incubating/concepts-tiered-storage.html  |  8 +++--
 .../concepts-tiered-storage/index.html             |  8 +++--
 .../concepts-topic-compaction.html                 |  8 +++--
 .../concepts-topic-compaction/index.html           |  8 +++--
 .../ja/2.1.1-incubating/cookbooks-compaction.html  |  8 +++--
 .../cookbooks-compaction/index.html                |  8 +++--
 .../2.1.1-incubating/cookbooks-deduplication.html  |  8 +++--
 .../cookbooks-deduplication/index.html             |  8 +++--
 .../ja/2.1.1-incubating/cookbooks-encryption.html  |  8 +++--
 .../cookbooks-encryption/index.html                |  8 +++--
 .../2.1.1-incubating/cookbooks-message-queue.html  |  8 +++--
 .../cookbooks-message-queue/index.html             |  8 +++--
 .../2.1.1-incubating/cookbooks-non-persistent.html |  8 +++--
 .../cookbooks-non-persistent/index.html            |  8 +++--
 .../ja/2.1.1-incubating/cookbooks-partitioned.html |  8 +++--
 .../cookbooks-partitioned/index.html               |  8 +++--
 .../cookbooks-retention-expiry.html                |  8 +++--
 .../cookbooks-retention-expiry/index.html          |  8 +++--
 .../2.1.1-incubating/cookbooks-tiered-storage.html |  8 +++--
 .../cookbooks-tiered-storage/index.html            |  8 +++--
 content/docs/ja/2.1.1-incubating/deploy-aws.html   | 12 +++++--
 .../docs/ja/2.1.1-incubating/deploy-aws/index.html | 12 +++++--
 .../deploy-bare-metal-multi-cluster.html           | 12 +++++--
 .../deploy-bare-metal-multi-cluster/index.html     | 12 +++++--
 .../ja/2.1.1-incubating/deploy-bare-metal.html     | 12 +++++--
 .../2.1.1-incubating/deploy-bare-metal/index.html  | 12 +++++--
 content/docs/ja/2.1.1-incubating/deploy-dcos.html  | 12 +++++--
 .../ja/2.1.1-incubating/deploy-dcos/index.html     | 12 +++++--
 .../ja/2.1.1-incubating/deploy-kubernetes.html     | 12 +++++--
 .../2.1.1-incubating/deploy-kubernetes/index.html  | 12 +++++--
 .../ja/2.1.1-incubating/deploy-monitoring.html     |  8 +++--
 .../2.1.1-incubating/deploy-monitoring/index.html  |  8 +++--
 .../2.1.1-incubating/develop-binary-protocol.html  |  8 +++--
 .../develop-binary-protocol/index.html             |  8 +++--
 content/docs/ja/2.1.1-incubating/develop-cpp.html  |  8 +++--
 .../ja/2.1.1-incubating/develop-cpp/index.html     |  8 +++--
 .../ja/2.1.1-incubating/develop-load-manager.html  |  8 +++--
 .../develop-load-manager/index.html                |  8 +++--
 .../docs/ja/2.1.1-incubating/develop-schema.html   |  8 +++--
 .../ja/2.1.1-incubating/develop-schema/index.html  |  8 +++--
 .../docs/ja/2.1.1-incubating/develop-tools.html    |  8 +++--
 .../ja/2.1.1-incubating/develop-tools/index.html   |  8 +++--
 .../docs/ja/2.1.1-incubating/functions-api.html    |  8 +++--
 .../ja/2.1.1-incubating/functions-api/index.html   |  8 +++--
 .../ja/2.1.1-incubating/functions-deploying.html   |  8 +++--
 .../functions-deploying/index.html                 |  8 +++--
 .../ja/2.1.1-incubating/functions-guarantees.html  |  8 +++--
 .../functions-guarantees/index.html                |  8 +++--
 .../ja/2.1.1-incubating/functions-metrics.html     |  8 +++--
 .../2.1.1-incubating/functions-metrics/index.html  |  8 +++--
 .../ja/2.1.1-incubating/functions-overview.html    |  8 +++--
 .../2.1.1-incubating/functions-overview/index.html |  8 +++--
 .../ja/2.1.1-incubating/functions-quickstart.html  |  8 +++--
 .../functions-quickstart/index.html                |  8 +++--
 .../docs/ja/2.1.1-incubating/functions-state.html  |  8 +++--
 .../ja/2.1.1-incubating/functions-state/index.html |  8 +++--
 content/docs/ja/2.1.1-incubating/io-aerospike.html |  8 +++--
 .../ja/2.1.1-incubating/io-aerospike/index.html    |  8 +++--
 content/docs/ja/2.1.1-incubating/io-cassandra.html |  8 +++--
 .../ja/2.1.1-incubating/io-cassandra/index.html    |  8 +++--
 .../docs/ja/2.1.1-incubating/io-connectors.html    |  8 +++--
 .../ja/2.1.1-incubating/io-connectors/index.html   |  8 +++--
 content/docs/ja/2.1.1-incubating/io-develop.html   |  8 +++--
 .../docs/ja/2.1.1-incubating/io-develop/index.html |  8 +++--
 content/docs/ja/2.1.1-incubating/io-kafka.html     |  8 +++--
 .../docs/ja/2.1.1-incubating/io-kafka/index.html   |  8 +++--
 content/docs/ja/2.1.1-incubating/io-kinesis.html   |  8 +++--
 .../docs/ja/2.1.1-incubating/io-kinesis/index.html |  8 +++--
 content/docs/ja/2.1.1-incubating/io-managing.html  |  8 +++--
 .../ja/2.1.1-incubating/io-managing/index.html     |  8 +++--
 content/docs/ja/2.1.1-incubating/io-overview.html  |  8 +++--
 .../ja/2.1.1-incubating/io-overview/index.html     |  8 +++--
 .../docs/ja/2.1.1-incubating/io-quickstart.html    |  8 +++--
 .../ja/2.1.1-incubating/io-quickstart/index.html   |  8 +++--
 content/docs/ja/2.1.1-incubating/io-rabbitmq.html  |  8 +++--
 .../ja/2.1.1-incubating/io-rabbitmq/index.html     |  8 +++--
 content/docs/ja/2.1.1-incubating/io-twitter.html   |  8 +++--
 .../docs/ja/2.1.1-incubating/io-twitter/index.html |  8 +++--
 content/docs/ja/2.1.1-incubating/pulsar-2.0.html   |  8 +++--
 .../docs/ja/2.1.1-incubating/pulsar-2.0/index.html |  8 +++--
 content/docs/ja/2.1.1-incubating/pulsar-admin.html |  8 +++--
 .../ja/2.1.1-incubating/pulsar-admin/index.html    |  8 +++--
 .../ja/2.1.1-incubating/reference-cli-tools.html   |  8 +++--
 .../reference-cli-tools/index.html                 |  8 +++--
 .../2.1.1-incubating/reference-configuration.html  |  4 +--
 .../reference-configuration/index.html             |  4 +--
 .../ja/2.1.1-incubating/reference-terminology.html |  8 +++--
 .../reference-terminology/index.html               |  8 +++--
 .../docs/ja/2.1.1-incubating/security-athenz.html  |  8 +++--
 .../ja/2.1.1-incubating/security-athenz/index.html |  8 +++--
 .../2.1.1-incubating/security-authorization.html   |  8 +++--
 .../security-authorization/index.html              |  8 +++--
 .../ja/2.1.1-incubating/security-encryption.html   |  8 +++--
 .../security-encryption/index.html                 |  8 +++--
 .../ja/2.1.1-incubating/security-extending.html    |  8 +++--
 .../2.1.1-incubating/security-extending/index.html |  8 +++--
 .../ja/2.1.1-incubating/security-overview.html     |  8 +++--
 .../2.1.1-incubating/security-overview/index.html  |  8 +++--
 .../security-tls-authentication.html               |  8 +++--
 .../security-tls-authentication/index.html         |  8 +++--
 .../2.1.1-incubating/security-tls-transport.html   |  8 +++--
 .../security-tls-transport/index.html              |  8 +++--
 .../ja/2.1.1-incubating/standalone-docker.html     |  8 +++--
 .../2.1.1-incubating/standalone-docker/index.html  |  8 +++--
 content/docs/ja/2.1.1-incubating/standalone.html   |  8 +++--
 .../docs/ja/2.1.1-incubating/standalone/index.html |  8 +++--
 content/docs/ja/adaptors-kafka.html                |  8 +++--
 content/docs/ja/adaptors-kafka/index.html          |  8 +++--
 content/docs/ja/adaptors-spark.html                |  8 +++--
 content/docs/ja/adaptors-spark/index.html          |  8 +++--
 content/docs/ja/adaptors-storm.html                |  8 +++--
 content/docs/ja/adaptors-storm/index.html          |  8 +++--
 content/docs/ja/admin-api-brokers.html             |  8 +++--
 content/docs/ja/admin-api-brokers/index.html       |  8 +++--
 content/docs/ja/admin-api-clusters.html            |  8 +++--
 content/docs/ja/admin-api-clusters/index.html      |  8 +++--
 content/docs/ja/admin-api-namespaces.html          |  8 +++--
 content/docs/ja/admin-api-namespaces/index.html    |  8 +++--
 .../docs/ja/admin-api-non-persistent-topics.html   |  8 +++--
 .../ja/admin-api-non-persistent-topics/index.html  |  8 +++--
 content/docs/ja/admin-api-overview.html            |  8 +++--
 content/docs/ja/admin-api-overview/index.html      |  8 +++--
 content/docs/ja/admin-api-partitioned-topics.html  |  8 +++--
 .../ja/admin-api-partitioned-topics/index.html     |  8 +++--
 content/docs/ja/admin-api-permissions.html         |  8 +++--
 content/docs/ja/admin-api-permissions/index.html   |  8 +++--
 content/docs/ja/admin-api-persistent-topics.html   |  8 +++--
 .../docs/ja/admin-api-persistent-topics/index.html |  8 +++--
 content/docs/ja/admin-api-schemas.html             |  8 +++--
 content/docs/ja/admin-api-schemas/index.html       |  8 +++--
 content/docs/ja/admin-api-tenants.html             |  8 +++--
 content/docs/ja/admin-api-tenants/index.html       |  8 +++--
 content/docs/ja/administration-dashboard.html      |  8 +++--
 .../docs/ja/administration-dashboard/index.html    |  8 +++--
 content/docs/ja/administration-geo.html            |  8 +++--
 content/docs/ja/administration-geo/index.html      |  8 +++--
 .../docs/ja/administration-load-distribution.html  |  8 +++--
 .../ja/administration-load-distribution/index.html |  8 +++--
 content/docs/ja/administration-proxy.html          |  8 +++--
 content/docs/ja/administration-proxy/index.html    |  8 +++--
 content/docs/ja/administration-stats.html          |  8 +++--
 content/docs/ja/administration-stats/index.html    |  8 +++--
 content/docs/ja/administration-zk-bk.html          |  8 +++--
 content/docs/ja/administration-zk-bk/index.html    |  8 +++--
 content/docs/ja/client-libraries-cpp.html          |  8 +++--
 content/docs/ja/client-libraries-cpp/index.html    |  8 +++--
 content/docs/ja/client-libraries-go.html           |  8 +++--
 content/docs/ja/client-libraries-go/index.html     |  8 +++--
 content/docs/ja/client-libraries-java.html         |  8 +++--
 content/docs/ja/client-libraries-java/index.html   |  8 +++--
 content/docs/ja/client-libraries-python.html       |  8 +++--
 content/docs/ja/client-libraries-python/index.html |  8 +++--
 content/docs/ja/client-libraries-websocket.html    |  8 +++--
 .../docs/ja/client-libraries-websocket/index.html  |  8 +++--
 content/docs/ja/client-libraries.html              |  8 +++--
 content/docs/ja/client-libraries/index.html        |  8 +++--
 .../docs/ja/concepts-architecture-overview.html    |  8 +++--
 .../ja/concepts-architecture-overview/index.html   |  8 +++--
 content/docs/ja/concepts-architecture.html         |  8 +++--
 content/docs/ja/concepts-architecture/index.html   |  8 +++--
 content/docs/ja/concepts-authentication.html       |  8 +++--
 content/docs/ja/concepts-authentication/index.html |  8 +++--
 content/docs/ja/concepts-clients.html              |  8 +++--
 content/docs/ja/concepts-clients/index.html        |  8 +++--
 content/docs/ja/concepts-messaging.html            |  8 +++--
 content/docs/ja/concepts-messaging/index.html      |  8 +++--
 content/docs/ja/concepts-multi-tenancy.html        |  8 +++--
 content/docs/ja/concepts-multi-tenancy/index.html  |  8 +++--
 content/docs/ja/concepts-overview.html             |  8 +++--
 content/docs/ja/concepts-overview/index.html       |  8 +++--
 content/docs/ja/concepts-replication.html          |  8 +++--
 content/docs/ja/concepts-replication/index.html    |  8 +++--
 content/docs/ja/concepts-schema-registry.html      |  8 +++--
 .../docs/ja/concepts-schema-registry/index.html    |  8 +++--
 content/docs/ja/concepts-tiered-storage.html       |  8 +++--
 content/docs/ja/concepts-tiered-storage/index.html |  8 +++--
 content/docs/ja/concepts-topic-compaction.html     |  8 +++--
 .../docs/ja/concepts-topic-compaction/index.html   |  8 +++--
 content/docs/ja/cookbooks-compaction.html          |  8 +++--
 content/docs/ja/cookbooks-compaction/index.html    |  8 +++--
 content/docs/ja/cookbooks-deduplication.html       |  8 +++--
 content/docs/ja/cookbooks-deduplication/index.html |  8 +++--
 content/docs/ja/cookbooks-encryption.html          |  8 +++--
 content/docs/ja/cookbooks-encryption/index.html    |  8 +++--
 content/docs/ja/cookbooks-message-queue.html       |  8 +++--
 content/docs/ja/cookbooks-message-queue/index.html |  8 +++--
 content/docs/ja/cookbooks-non-persistent.html      |  8 +++--
 .../docs/ja/cookbooks-non-persistent/index.html    |  8 +++--
 content/docs/ja/cookbooks-partitioned.html         |  8 +++--
 content/docs/ja/cookbooks-partitioned/index.html   |  8 +++--
 content/docs/ja/cookbooks-retention-expiry.html    |  8 +++--
 .../docs/ja/cookbooks-retention-expiry/index.html  |  8 +++--
 content/docs/ja/cookbooks-tiered-storage.html      |  8 +++--
 .../docs/ja/cookbooks-tiered-storage/index.html    |  8 +++--
 content/docs/ja/deploy-aws.html                    | 12 +++++--
 content/docs/ja/deploy-aws/index.html              | 12 +++++--
 .../docs/ja/deploy-bare-metal-multi-cluster.html   | 12 +++++--
 .../ja/deploy-bare-metal-multi-cluster/index.html  | 12 +++++--
 content/docs/ja/deploy-bare-metal.html             | 12 +++++--
 content/docs/ja/deploy-bare-metal/index.html       | 12 +++++--
 content/docs/ja/deploy-dcos.html                   | 12 +++++--
 content/docs/ja/deploy-dcos/index.html             | 12 +++++--
 content/docs/ja/deploy-kubernetes.html             | 12 +++++--
 content/docs/ja/deploy-kubernetes/index.html       | 12 +++++--
 content/docs/ja/deploy-monitoring.html             |  8 +++--
 content/docs/ja/deploy-monitoring/index.html       |  8 +++--
 content/docs/ja/develop-binary-protocol.html       |  8 +++--
 content/docs/ja/develop-binary-protocol/index.html |  8 +++--
 content/docs/ja/develop-cpp.html                   |  8 +++--
 content/docs/ja/develop-cpp/index.html             |  8 +++--
 content/docs/ja/develop-load-manager.html          |  8 +++--
 content/docs/ja/develop-load-manager/index.html    |  8 +++--
 content/docs/ja/develop-schema.html                |  8 +++--
 content/docs/ja/develop-schema/index.html          |  8 +++--
 content/docs/ja/develop-tools.html                 |  8 +++--
 content/docs/ja/develop-tools/index.html           |  8 +++--
 content/docs/ja/functions-api.html                 |  8 +++--
 content/docs/ja/functions-api/index.html           |  8 +++--
 content/docs/ja/functions-deploying.html           |  8 +++--
 content/docs/ja/functions-deploying/index.html     |  8 +++--
 content/docs/ja/functions-guarantees.html          |  8 +++--
 content/docs/ja/functions-guarantees/index.html    |  8 +++--
 content/docs/ja/functions-metrics.html             |  8 +++--
 content/docs/ja/functions-metrics/index.html       |  8 +++--
 content/docs/ja/functions-overview.html            |  8 +++--
 content/docs/ja/functions-overview/index.html      |  8 +++--
 content/docs/ja/functions-quickstart.html          |  8 +++--
 content/docs/ja/functions-quickstart/index.html    |  8 +++--
 content/docs/ja/functions-state.html               |  8 +++--
 content/docs/ja/functions-state/index.html         |  8 +++--
 content/docs/ja/io-aerospike.html                  |  8 +++--
 content/docs/ja/io-aerospike/index.html            |  8 +++--
 content/docs/ja/io-cassandra.html                  |  8 +++--
 content/docs/ja/io-cassandra/index.html            |  8 +++--
 content/docs/ja/io-connectors.html                 |  8 +++--
 content/docs/ja/io-connectors/index.html           |  8 +++--
 content/docs/ja/io-develop.html                    |  8 +++--
 content/docs/ja/io-develop/index.html              |  8 +++--
 content/docs/ja/io-kafka.html                      |  8 +++--
 content/docs/ja/io-kafka/index.html                |  8 +++--
 content/docs/ja/io-kinesis.html                    |  8 +++--
 content/docs/ja/io-kinesis/index.html              |  8 +++--
 content/docs/ja/io-managing.html                   |  8 +++--
 content/docs/ja/io-managing/index.html             |  8 +++--
 content/docs/ja/io-overview.html                   |  8 +++--
 content/docs/ja/io-overview/index.html             |  8 +++--
 content/docs/ja/io-quickstart.html                 |  8 +++--
 content/docs/ja/io-quickstart/index.html           |  8 +++--
 content/docs/ja/io-rabbitmq.html                   |  8 +++--
 content/docs/ja/io-rabbitmq/index.html             |  8 +++--
 content/docs/ja/io-twitter.html                    |  8 +++--
 content/docs/ja/io-twitter/index.html              |  8 +++--
 content/docs/ja/next/adaptors-kafka.html           |  8 +++--
 content/docs/ja/next/adaptors-kafka/index.html     |  8 +++--
 content/docs/ja/next/adaptors-spark.html           |  8 +++--
 content/docs/ja/next/adaptors-spark/index.html     |  8 +++--
 content/docs/ja/next/adaptors-storm.html           |  8 +++--
 content/docs/ja/next/adaptors-storm/index.html     |  8 +++--
 content/docs/ja/next/admin-api-brokers.html        |  8 +++--
 content/docs/ja/next/admin-api-brokers/index.html  |  8 +++--
 content/docs/ja/next/admin-api-clusters.html       |  8 +++--
 content/docs/ja/next/admin-api-clusters/index.html |  8 +++--
 content/docs/ja/next/admin-api-namespaces.html     |  8 +++--
 .../docs/ja/next/admin-api-namespaces/index.html   |  8 +++--
 .../ja/next/admin-api-non-persistent-topics.html   |  8 +++--
 .../admin-api-non-persistent-topics/index.html     |  8 +++--
 content/docs/ja/next/admin-api-overview.html       |  8 +++--
 content/docs/ja/next/admin-api-overview/index.html |  8 +++--
 .../docs/ja/next/admin-api-partitioned-topics.html |  8 +++--
 .../next/admin-api-partitioned-topics/index.html   |  8 +++--
 content/docs/ja/next/admin-api-permissions.html    |  8 +++--
 .../docs/ja/next/admin-api-permissions/index.html  |  8 +++--
 .../docs/ja/next/admin-api-persistent-topics.html  |  8 +++--
 .../ja/next/admin-api-persistent-topics/index.html |  8 +++--
 content/docs/ja/next/admin-api-schemas.html        |  8 +++--
 content/docs/ja/next/admin-api-schemas/index.html  |  8 +++--
 content/docs/ja/next/admin-api-tenants.html        |  8 +++--
 content/docs/ja/next/admin-api-tenants/index.html  |  8 +++--
 content/docs/ja/next/administration-dashboard.html |  8 +++--
 .../ja/next/administration-dashboard/index.html    |  8 +++--
 content/docs/ja/next/administration-geo.html       |  8 +++--
 content/docs/ja/next/administration-geo/index.html |  8 +++--
 .../ja/next/administration-load-distribution.html  |  8 +++--
 .../administration-load-distribution/index.html    |  8 +++--
 content/docs/ja/next/administration-proxy.html     |  8 +++--
 .../docs/ja/next/administration-proxy/index.html   |  8 +++--
 content/docs/ja/next/administration-stats.html     |  8 +++--
 .../docs/ja/next/administration-stats/index.html   |  8 +++--
 content/docs/ja/next/administration-zk-bk.html     |  8 +++--
 .../docs/ja/next/administration-zk-bk/index.html   |  8 +++--
 content/docs/ja/next/client-libraries-cpp.html     |  8 +++--
 .../docs/ja/next/client-libraries-cpp/index.html   |  8 +++--
 content/docs/ja/next/client-libraries-go.html      | 10 +++---
 .../docs/ja/next/client-libraries-go/index.html    | 10 +++---
 content/docs/ja/next/client-libraries-java.html    |  8 +++--
 .../docs/ja/next/client-libraries-java/index.html  |  8 +++--
 content/docs/ja/next/client-libraries-python.html  |  8 +++--
 .../ja/next/client-libraries-python/index.html     |  8 +++--
 .../docs/ja/next/client-libraries-websocket.html   |  8 +++--
 .../ja/next/client-libraries-websocket/index.html  |  8 +++--
 content/docs/ja/next/client-libraries.html         |  8 +++--
 content/docs/ja/next/client-libraries/index.html   |  8 +++--
 .../ja/next/concepts-architecture-overview.html    |  8 +++--
 .../next/concepts-architecture-overview/index.html |  8 +++--
 content/docs/ja/next/concepts-architecture.html    |  8 +++--
 .../docs/ja/next/concepts-architecture/index.html  |  8 +++--
 content/docs/ja/next/concepts-authentication.html  |  8 +++--
 .../ja/next/concepts-authentication/index.html     |  8 +++--
 content/docs/ja/next/concepts-clients.html         |  8 +++--
 content/docs/ja/next/concepts-clients/index.html   |  8 +++--
 content/docs/ja/next/concepts-messaging.html       |  8 +++--
 content/docs/ja/next/concepts-messaging/index.html |  8 +++--
 content/docs/ja/next/concepts-multi-tenancy.html   |  8 +++--
 .../docs/ja/next/concepts-multi-tenancy/index.html |  8 +++--
 content/docs/ja/next/concepts-overview.html        |  8 +++--
 content/docs/ja/next/concepts-overview/index.html  |  8 +++--
 content/docs/ja/next/concepts-replication.html     |  8 +++--
 .../docs/ja/next/concepts-replication/index.html   |  8 +++--
 content/docs/ja/next/concepts-schema-registry.html |  8 +++--
 .../ja/next/concepts-schema-registry/index.html    |  8 +++--
 content/docs/ja/next/concepts-tiered-storage.html  |  8 +++--
 .../ja/next/concepts-tiered-storage/index.html     |  8 +++--
 .../docs/ja/next/concepts-topic-compaction.html    |  8 +++--
 .../ja/next/concepts-topic-compaction/index.html   |  8 +++--
 content/docs/ja/next/cookbooks-compaction.html     |  8 +++--
 .../docs/ja/next/cookbooks-compaction/index.html   |  8 +++--
 content/docs/ja/next/cookbooks-deduplication.html  |  8 +++--
 .../ja/next/cookbooks-deduplication/index.html     |  8 +++--
 content/docs/ja/next/cookbooks-encryption.html     |  8 +++--
 .../docs/ja/next/cookbooks-encryption/index.html   |  8 +++--
 content/docs/ja/next/cookbooks-message-queue.html  |  8 +++--
 .../ja/next/cookbooks-message-queue/index.html     |  8 +++--
 content/docs/ja/next/cookbooks-non-persistent.html |  8 +++--
 .../ja/next/cookbooks-non-persistent/index.html    |  8 +++--
 content/docs/ja/next/cookbooks-partitioned.html    |  8 +++--
 .../docs/ja/next/cookbooks-partitioned/index.html  |  8 +++--
 .../docs/ja/next/cookbooks-retention-expiry.html   |  8 +++--
 .../ja/next/cookbooks-retention-expiry/index.html  |  8 +++--
 content/docs/ja/next/cookbooks-tiered-storage.html |  8 +++--
 .../ja/next/cookbooks-tiered-storage/index.html    |  8 +++--
 content/docs/ja/next/deploy-aws.html               | 12 +++++--
 content/docs/ja/next/deploy-aws/index.html         | 12 +++++--
 .../ja/next/deploy-bare-metal-multi-cluster.html   | 12 +++++--
 .../deploy-bare-metal-multi-cluster/index.html     | 12 +++++--
 content/docs/ja/next/deploy-bare-metal.html        | 12 +++++--
 content/docs/ja/next/deploy-bare-metal/index.html  | 12 +++++--
 content/docs/ja/next/deploy-dcos.html              | 12 +++++--
 content/docs/ja/next/deploy-dcos/index.html        | 12 +++++--
 content/docs/ja/next/deploy-kubernetes.html        | 12 +++++--
 content/docs/ja/next/deploy-kubernetes/index.html  | 12 +++++--
 content/docs/ja/next/deploy-monitoring.html        |  8 +++--
 content/docs/ja/next/deploy-monitoring/index.html  |  8 +++--
 content/docs/ja/next/develop-binary-protocol.html  |  8 +++--
 .../ja/next/develop-binary-protocol/index.html     |  8 +++--
 content/docs/ja/next/develop-cpp.html              |  8 +++--
 content/docs/ja/next/develop-cpp/index.html        |  8 +++--
 content/docs/ja/next/develop-load-manager.html     |  8 +++--
 .../docs/ja/next/develop-load-manager/index.html   |  8 +++--
 content/docs/ja/next/develop-schema.html           |  8 +++--
 content/docs/ja/next/develop-schema/index.html     |  8 +++--
 content/docs/ja/next/develop-tools.html            |  8 +++--
 content/docs/ja/next/develop-tools/index.html      |  8 +++--
 content/docs/ja/next/functions-api.html            |  8 +++--
 content/docs/ja/next/functions-api/index.html      |  8 +++--
 content/docs/ja/next/functions-deploying.html      |  8 +++--
 .../docs/ja/next/functions-deploying/index.html    |  8 +++--
 content/docs/ja/next/functions-guarantees.html     |  8 +++--
 .../docs/ja/next/functions-guarantees/index.html   |  8 +++--
 content/docs/ja/next/functions-metrics.html        |  8 +++--
 content/docs/ja/next/functions-metrics/index.html  |  8 +++--
 content/docs/ja/next/functions-overview.html       |  8 +++--
 content/docs/ja/next/functions-overview/index.html |  8 +++--
 content/docs/ja/next/functions-quickstart.html     |  8 +++--
 .../docs/ja/next/functions-quickstart/index.html   |  8 +++--
 content/docs/ja/next/functions-state.html          |  8 +++--
 content/docs/ja/next/functions-state/index.html    |  8 +++--
 content/docs/ja/next/io-aerospike.html             |  8 +++--
 content/docs/ja/next/io-aerospike/index.html       |  8 +++--
 content/docs/ja/next/io-cassandra.html             |  8 +++--
 content/docs/ja/next/io-cassandra/index.html       |  8 +++--
 content/docs/ja/next/io-connectors.html            |  8 +++--
 content/docs/ja/next/io-connectors/index.html      |  8 +++--
 content/docs/ja/next/io-develop.html               |  8 +++--
 content/docs/ja/next/io-develop/index.html         |  8 +++--
 content/docs/ja/next/io-kafka.html                 |  8 +++--
 content/docs/ja/next/io-kafka/index.html           |  8 +++--
 content/docs/ja/next/io-kinesis.html               |  8 +++--
 content/docs/ja/next/io-kinesis/index.html         |  8 +++--
 content/docs/ja/next/io-managing.html              |  8 +++--
 content/docs/ja/next/io-managing/index.html        |  8 +++--
 content/docs/ja/next/io-overview.html              |  8 +++--
 content/docs/ja/next/io-overview/index.html        |  8 +++--
 content/docs/ja/next/io-quickstart.html            |  8 +++--
 content/docs/ja/next/io-quickstart/index.html      |  8 +++--
 content/docs/ja/next/io-rabbitmq.html              |  8 +++--
 content/docs/ja/next/io-rabbitmq/index.html        |  8 +++--
 content/docs/ja/next/io-twitter.html               |  8 +++--
 content/docs/ja/next/io-twitter/index.html         |  8 +++--
 content/docs/ja/next/pulsar-2.0.html               |  8 +++--
 content/docs/ja/next/pulsar-2.0/index.html         |  8 +++--
 content/docs/ja/next/pulsar-admin.html             |  8 +++--
 content/docs/ja/next/pulsar-admin/index.html       |  8 +++--
 content/docs/ja/next/reference-cli-tools.html      |  8 +++--
 .../docs/ja/next/reference-cli-tools/index.html    |  8 +++--
 content/docs/ja/next/reference-configuration.html  |  4 +--
 .../ja/next/reference-configuration/index.html     |  4 +--
 content/docs/ja/next/reference-terminology.html    |  8 +++--
 .../docs/ja/next/reference-terminology/index.html  |  8 +++--
 content/docs/ja/next/security-athenz.html          |  8 +++--
 content/docs/ja/next/security-athenz/index.html    |  8 +++--
 content/docs/ja/next/security-authorization.html   |  8 +++--
 .../docs/ja/next/security-authorization/index.html |  8 +++--
 content/docs/ja/next/security-encryption.html      |  8 +++--
 .../docs/ja/next/security-encryption/index.html    |  8 +++--
 content/docs/ja/next/security-extending.html       |  8 +++--
 content/docs/ja/next/security-extending/index.html |  8 +++--
 content/docs/ja/next/security-overview.html        |  8 +++--
 content/docs/ja/next/security-overview/index.html  |  8 +++--
 .../docs/ja/next/security-tls-authentication.html  |  8 +++--
 .../ja/next/security-tls-authentication/index.html |  8 +++--
 content/docs/ja/next/security-tls-transport.html   |  8 +++--
 .../docs/ja/next/security-tls-transport/index.html |  8 +++--
 .../ja/next/sql-deployment-configurations.html     |  8 +++--
 .../next/sql-deployment-configurations/index.html  |  8 +++--
 content/docs/ja/next/sql-getting-started.html      |  8 +++--
 .../docs/ja/next/sql-getting-started/index.html    |  8 +++--
 content/docs/ja/next/sql-overview.html             |  8 +++--
 content/docs/ja/next/sql-overview/index.html       |  8 +++--
 content/docs/ja/next/standalone-docker.html        |  8 +++--
 content/docs/ja/next/standalone-docker/index.html  |  8 +++--
 content/docs/ja/next/standalone.html               |  8 +++--
 content/docs/ja/next/standalone/index.html         |  8 +++--
 content/docs/ja/pulsar-2.0.html                    |  8 +++--
 content/docs/ja/pulsar-2.0/index.html              |  8 +++--
 content/docs/ja/pulsar-admin.html                  |  8 +++--
 content/docs/ja/pulsar-admin/index.html            |  8 +++--
 content/docs/ja/reference-cli-tools.html           |  8 +++--
 content/docs/ja/reference-cli-tools/index.html     |  8 +++--
 content/docs/ja/reference-configuration.html       |  4 +--
 content/docs/ja/reference-configuration/index.html |  4 +--
 content/docs/ja/reference-terminology.html         |  8 +++--
 content/docs/ja/reference-terminology/index.html   |  8 +++--
 content/docs/ja/security-athenz.html               |  8 +++--
 content/docs/ja/security-athenz/index.html         |  8 +++--
 content/docs/ja/security-authorization.html        |  8 +++--
 content/docs/ja/security-authorization/index.html  |  8 +++--
 content/docs/ja/security-encryption.html           |  8 +++--
 content/docs/ja/security-encryption/index.html     |  8 +++--
 content/docs/ja/security-extending.html            |  8 +++--
 content/docs/ja/security-extending/index.html      |  8 +++--
 content/docs/ja/security-overview.html             |  8 +++--
 content/docs/ja/security-overview/index.html       |  8 +++--
 content/docs/ja/security-tls-authentication.html   |  8 +++--
 .../docs/ja/security-tls-authentication/index.html |  8 +++--
 content/docs/ja/security-tls-transport.html        |  8 +++--
 content/docs/ja/security-tls-transport/index.html  |  8 +++--
 content/docs/ja/sql-deployment-configurations.html |  8 +++--
 .../ja/sql-deployment-configurations/index.html    |  8 +++--
 content/docs/ja/sql-getting-started.html           |  8 +++--
 content/docs/ja/sql-getting-started/index.html     |  8 +++--
 content/docs/ja/sql-overview.html                  |  8 +++--
 content/docs/ja/sql-overview/index.html            |  8 +++--
 content/docs/ja/standalone-docker.html             |  8 +++--
 content/docs/ja/standalone-docker/index.html       |  8 +++--
 content/docs/ja/standalone.html                    |  8 +++--
 content/docs/ja/standalone/index.html              |  8 +++--
 .../docs/latest/adaptors/PulsarSpark/index.html    |  8 ++---
 .../docs/latest/adaptors/PulsarStorm/index.html    |  6 ++--
 content/docs/latest/admin-api/overview/index.html  | 10 +++---
 content/docs/latest/clients/Cpp/index.html         |  8 ++---
 content/docs/latest/clients/Java/index.html        | 14 ++++----
 content/docs/latest/clients/Python/index.html      | 10 +++---
 content/docs/latest/clients/WebSocket/index.html   |  8 ++---
 content/docs/latest/clients/go/index.html          |  6 ++--
 .../docs/latest/cookbooks/Encryption/index.html    |  6 ++--
 .../latest/cookbooks/PartitionedTopics/index.html  | 14 ++++----
 .../latest/cookbooks/RetentionExpiry/index.html    | 14 ++++----
 .../docs/latest/cookbooks/compaction/index.html    |  6 ++--
 .../cookbooks/message-deduplication/index.html     | 10 +++---
 .../docs/latest/cookbooks/message-queue/index.html | 14 ++++----
 .../latest/cookbooks/tiered-storage/index.html     |  4 +--
 .../docs/latest/deployment/Kubernetes/index.html   |  4 +--
 .../docs/latest/deployment/aws-cluster/index.html  |  4 +--
 content/docs/latest/deployment/cluster/index.html  |  4 +--
 content/docs/latest/deployment/instance/index.html |  4 +--
 .../ConceptsAndArchitecture/index.html             |  4 +--
 .../latest/getting-started/LocalCluster/index.html |  4 +--
 .../latest/getting-started/Pulsar-2.0/index.html   |  2 +-
 .../docs/latest/getting-started/docker/index.html  |  4 +--
 .../docs/latest/project/BinaryProtocol/index.html  |  4 +--
 content/docs/latest/project/CompileCpp/index.html  |  8 ++---
 .../docs/latest/project/SimulationTools/index.html |  2 +-
 .../docs/latest/project/schema-storage/index.html  |  4 +--
 content/docs/latest/reference/CliTools/index.html  | 18 +++++-----
 .../docs/latest/security/authorization/index.html  | 10 +++---
 content/docs/latest/security/encryption/index.html |  6 ++--
 .../zh-CN/2.1.0-incubating/adaptors-kafka.html     |  8 +++--
 .../2.1.0-incubating/adaptors-kafka/index.html     |  8 +++--
 .../zh-CN/2.1.0-incubating/adaptors-spark.html     |  8 +++--
 .../2.1.0-incubating/adaptors-spark/index.html     |  8 +++--
 .../zh-CN/2.1.0-incubating/adaptors-storm.html     |  8 +++--
 .../2.1.0-incubating/adaptors-storm/index.html     |  8 +++--
 .../zh-CN/2.1.0-incubating/admin-api-brokers.html  |  8 +++--
 .../2.1.0-incubating/admin-api-brokers/index.html  |  8 +++--
 .../zh-CN/2.1.0-incubating/admin-api-clusters.html |  8 +++--
 .../2.1.0-incubating/admin-api-clusters/index.html |  8 +++--
 .../2.1.0-incubating/admin-api-namespaces.html     |  8 +++--
 .../admin-api-namespaces/index.html                |  8 +++--
 .../admin-api-non-persistent-topics.html           |  8 +++--
 .../admin-api-non-persistent-topics/index.html     |  8 +++--
 .../zh-CN/2.1.0-incubating/admin-api-overview.html |  8 +++--
 .../2.1.0-incubating/admin-api-overview/index.html |  8 +++--
 .../admin-api-partitioned-topics.html              |  8 +++--
 .../admin-api-partitioned-topics/index.html        |  8 +++--
 .../2.1.0-incubating/admin-api-permissions.html    |  8 +++--
 .../admin-api-permissions/index.html               |  8 +++--
 .../admin-api-persistent-topics.html               |  8 +++--
 .../admin-api-persistent-topics/index.html         |  8 +++--
 .../zh-CN/2.1.0-incubating/admin-api-schemas.html  |  8 +++--
 .../2.1.0-incubating/admin-api-schemas/index.html  |  8 +++--
 .../zh-CN/2.1.0-incubating/admin-api-tenants.html  |  8 +++--
 .../2.1.0-incubating/admin-api-tenants/index.html  |  8 +++--
 .../2.1.0-incubating/administration-dashboard.html |  8 +++--
 .../administration-dashboard/index.html            |  8 +++--
 .../zh-CN/2.1.0-incubating/administration-geo.html |  8 +++--
 .../2.1.0-incubating/administration-geo/index.html |  8 +++--
 .../administration-load-distribution.html          |  8 +++--
 .../administration-load-distribution/index.html    |  8 +++--
 .../2.1.0-incubating/administration-proxy.html     |  8 +++--
 .../administration-proxy/index.html                |  8 +++--
 .../2.1.0-incubating/administration-stats.html     |  8 +++--
 .../administration-stats/index.html                |  8 +++--
 .../2.1.0-incubating/administration-zk-bk.html     |  8 +++--
 .../administration-zk-bk/index.html                |  8 +++--
 .../2.1.0-incubating/client-libraries-cpp.html     |  8 +++--
 .../client-libraries-cpp/index.html                |  8 +++--
 .../2.1.0-incubating/client-libraries-go.html      |  8 +++--
 .../client-libraries-go/index.html                 |  8 +++--
 .../2.1.0-incubating/client-libraries-java.html    |  8 +++--
 .../client-libraries-java/index.html               |  8 +++--
 .../2.1.0-incubating/client-libraries-python.html  |  8 +++--
 .../client-libraries-python/index.html             |  8 +++--
 .../client-libraries-websocket.html                |  8 +++--
 .../client-libraries-websocket/index.html          |  8 +++--
 .../zh-CN/2.1.0-incubating/client-libraries.html   |  8 +++--
 .../2.1.0-incubating/client-libraries/index.html   |  8 +++--
 .../concepts-architecture-overview.html            |  8 +++--
 .../concepts-architecture-overview/index.html      |  8 +++--
 .../2.1.0-incubating/concepts-architecture.html    |  8 +++--
 .../concepts-architecture/index.html               |  8 +++--
 .../2.1.0-incubating/concepts-authentication.html  |  8 +++--
 .../concepts-authentication/index.html             |  8 +++--
 .../zh-CN/2.1.0-incubating/concepts-clients.html   |  8 +++--
 .../2.1.0-incubating/concepts-clients/index.html   |  8 +++--
 .../zh-CN/2.1.0-incubating/concepts-messaging.html |  8 +++--
 .../2.1.0-incubating/concepts-messaging/index.html |  8 +++--
 .../2.1.0-incubating/concepts-multi-tenancy.html   |  8 +++--
 .../concepts-multi-tenancy/index.html              |  8 +++--
 .../zh-CN/2.1.0-incubating/concepts-overview.html  |  8 +++--
 .../2.1.0-incubating/concepts-overview/index.html  |  8 +++--
 .../2.1.0-incubating/concepts-replication.html     |  8 +++--
 .../concepts-replication/index.html                |  8 +++--
 .../2.1.0-incubating/concepts-schema-registry.html |  8 +++--
 .../concepts-schema-registry/index.html            |  8 +++--
 .../2.1.0-incubating/concepts-tiered-storage.html  |  8 +++--
 .../concepts-tiered-storage/index.html             |  8 +++--
 .../concepts-topic-compaction.html                 |  8 +++--
 .../concepts-topic-compaction/index.html           |  8 +++--
 .../2.1.0-incubating/cookbooks-compaction.html     |  8 +++--
 .../cookbooks-compaction/index.html                |  8 +++--
 .../2.1.0-incubating/cookbooks-deduplication.html  |  8 +++--
 .../cookbooks-deduplication/index.html             |  8 +++--
 .../2.1.0-incubating/cookbooks-encryption.html     |  8 +++--
 .../cookbooks-encryption/index.html                |  8 +++--
 .../2.1.0-incubating/cookbooks-message-queue.html  |  8 +++--
 .../cookbooks-message-queue/index.html             |  8 +++--
 .../2.1.0-incubating/cookbooks-non-persistent.html |  8 +++--
 .../cookbooks-non-persistent/index.html            |  8 +++--
 .../2.1.0-incubating/cookbooks-partitioned.html    |  8 +++--
 .../cookbooks-partitioned/index.html               |  8 +++--
 .../cookbooks-retention-expiry.html                |  8 +++--
 .../cookbooks-retention-expiry/index.html          |  8 +++--
 .../2.1.0-incubating/cookbooks-tiered-storage.html |  8 +++--
 .../cookbooks-tiered-storage/index.html            |  8 +++--
 .../docs/zh-CN/2.1.0-incubating/deploy-aws.html    | 12 +++++--
 .../zh-CN/2.1.0-incubating/deploy-aws/index.html   | 12 +++++--
 .../deploy-bare-metal-multi-cluster.html           | 12 +++++--
 .../deploy-bare-metal-multi-cluster/index.html     | 12 +++++--
 .../zh-CN/2.1.0-incubating/deploy-bare-metal.html  | 12 +++++--
 .../2.1.0-incubating/deploy-bare-metal/index.html  | 12 +++++--
 .../docs/zh-CN/2.1.0-incubating/deploy-dcos.html   | 12 +++++--
 .../zh-CN/2.1.0-incubating/deploy-dcos/index.html  | 12 +++++--
 .../zh-CN/2.1.0-incubating/deploy-kubernetes.html  | 12 +++++--
 .../2.1.0-incubating/deploy-kubernetes/index.html  | 12 +++++--
 .../zh-CN/2.1.0-incubating/deploy-monitoring.html  |  8 +++--
 .../2.1.0-incubating/deploy-monitoring/index.html  |  8 +++--
 .../2.1.0-incubating/develop-binary-protocol.html  |  8 +++--
 .../develop-binary-protocol/index.html             |  8 +++--
 .../docs/zh-CN/2.1.0-incubating/develop-cpp.html   |  8 +++--
 .../zh-CN/2.1.0-incubating/develop-cpp/index.html  |  8 +++--
 .../2.1.0-incubating/develop-load-manager.html     |  8 +++--
 .../develop-load-manager/index.html                |  8 +++--
 .../zh-CN/2.1.0-incubating/develop-schema.html     |  8 +++--
 .../2.1.0-incubating/develop-schema/index.html     |  8 +++--
 .../docs/zh-CN/2.1.0-incubating/develop-tools.html |  8 +++--
 .../2.1.0-incubating/develop-tools/index.html      |  8 +++--
 .../docs/zh-CN/2.1.0-incubating/functions-api.html |  8 +++--
 .../2.1.0-incubating/functions-api/index.html      |  8 +++--
 .../2.1.0-incubating/functions-deploying.html      |  8 +++--
 .../functions-deploying/index.html                 |  8 +++--
 .../2.1.0-incubating/functions-guarantees.html     |  8 +++--
 .../functions-guarantees/index.html                |  8 +++--
 .../zh-CN/2.1.0-incubating/functions-metrics.html  |  8 +++--
 .../2.1.0-incubating/functions-metrics/index.html  |  8 +++--
 .../zh-CN/2.1.0-incubating/functions-overview.html |  8 +++--
 .../2.1.0-incubating/functions-overview/index.html |  8 +++--
 .../2.1.0-incubating/functions-quickstart.html     |  8 +++--
 .../functions-quickstart/index.html                |  8 +++--
 .../zh-CN/2.1.0-incubating/functions-state.html    |  8 +++--
 .../2.1.0-incubating/functions-state/index.html    |  8 +++--
 .../docs/zh-CN/2.1.0-incubating/io-aerospike.html  |  8 +++--
 .../zh-CN/2.1.0-incubating/io-aerospike/index.html |  8 +++--
 .../docs/zh-CN/2.1.0-incubating/io-cassandra.html  |  8 +++--
 .../zh-CN/2.1.0-incubating/io-cassandra/index.html |  8 +++--
 .../docs/zh-CN/2.1.0-incubating/io-connectors.html |  8 +++--
 .../2.1.0-incubating/io-connectors/index.html      |  8 +++--
 .../docs/zh-CN/2.1.0-incubating/io-develop.html    |  8 +++--
 .../zh-CN/2.1.0-incubating/io-develop/index.html   |  8 +++--
 content/docs/zh-CN/2.1.0-incubating/io-kafka.html  |  8 +++--
 .../zh-CN/2.1.0-incubating/io-kafka/index.html     |  8 +++--
 .../docs/zh-CN/2.1.0-incubating/io-kinesis.html    |  8 +++--
 .../zh-CN/2.1.0-incubating/io-kinesis/index.html   |  8 +++--
 .../docs/zh-CN/2.1.0-incubating/io-managing.html   |  8 +++--
 .../zh-CN/2.1.0-incubating/io-managing/index.html  |  8 +++--
 .../docs/zh-CN/2.1.0-incubating/io-overview.html   |  8 +++--
 .../zh-CN/2.1.0-incubating/io-overview/index.html  |  8 +++--
 .../docs/zh-CN/2.1.0-incubating/io-quickstart.html |  8 +++--
 .../2.1.0-incubating/io-quickstart/index.html      |  8 +++--
 .../docs/zh-CN/2.1.0-incubating/io-rabbitmq.html   |  8 +++--
 .../zh-CN/2.1.0-incubating/io-rabbitmq/index.html  |  8 +++--
 .../docs/zh-CN/2.1.0-incubating/io-twitter.html    |  8 +++--
 .../zh-CN/2.1.0-incubating/io-twitter/index.html   |  8 +++--
 .../docs/zh-CN/2.1.0-incubating/pulsar-2.0.html    |  8 +++--
 .../zh-CN/2.1.0-incubating/pulsar-2.0/index.html   |  8 +++--
 .../docs/zh-CN/2.1.0-incubating/pulsar-admin.html  |  8 +++--
 .../zh-CN/2.1.0-incubating/pulsar-admin/index.html |  8 +++--
 .../2.1.0-incubating/reference-cli-tools.html      |  8 +++--
 .../reference-cli-tools/index.html                 |  8 +++--
 .../2.1.0-incubating/reference-configuration.html  |  4 +--
 .../reference-configuration/index.html             |  4 +--
 .../2.1.0-incubating/reference-terminology.html    |  8 +++--
 .../reference-terminology/index.html               |  8 +++--
 .../zh-CN/2.1.0-incubating/security-athenz.html    |  8 +++--
 .../2.1.0-incubating/security-athenz/index.html    |  8 +++--
 .../2.1.0-incubating/security-authorization.html   |  8 +++--
 .../security-authorization/index.html              |  8 +++--
 .../2.1.0-incubating/security-encryption.html      |  8 +++--
 .../security-encryption/index.html                 |  8 +++--
 .../zh-CN/2.1.0-incubating/security-extending.html |  8 +++--
 .../2.1.0-incubating/security-extending/index.html |  8 +++--
 .../zh-CN/2.1.0-incubating/security-overview.html  |  8 +++--
 .../2.1.0-incubating/security-overview/index.html  |  8 +++--
 .../security-tls-authentication.html               |  8 +++--
 .../security-tls-authentication/index.html         |  8 +++--
 .../2.1.0-incubating/security-tls-transport.html   |  8 +++--
 .../security-tls-transport/index.html              |  8 +++--
 .../zh-CN/2.1.0-incubating/standalone-docker.html  |  8 +++--
 .../2.1.0-incubating/standalone-docker/index.html  |  8 +++--
 .../docs/zh-CN/2.1.0-incubating/standalone.html    |  8 +++--
 .../zh-CN/2.1.0-incubating/standalone/index.html   |  8 +++--
 .../zh-CN/2.1.1-incubating/adaptors-kafka.html     |  8 +++--
 .../2.1.1-incubating/adaptors-kafka/index.html     |  8 +++--
 .../zh-CN/2.1.1-incubating/adaptors-spark.html     |  8 +++--
 .../2.1.1-incubating/adaptors-spark/index.html     |  8 +++--
 .../zh-CN/2.1.1-incubating/adaptors-storm.html     |  8 +++--
 .../2.1.1-incubating/adaptors-storm/index.html     |  8 +++--
 .../zh-CN/2.1.1-incubating/admin-api-brokers.html  |  8 +++--
 .../2.1.1-incubating/admin-api-brokers/index.html  |  8 +++--
 .../zh-CN/2.1.1-incubating/admin-api-clusters.html |  8 +++--
 .../2.1.1-incubating/admin-api-clusters/index.html |  8 +++--
 .../2.1.1-incubating/admin-api-namespaces.html     |  8 +++--
 .../admin-api-namespaces/index.html                |  8 +++--
 .../admin-api-non-persistent-topics.html           |  8 +++--
 .../admin-api-non-persistent-topics/index.html     |  8 +++--
 .../zh-CN/2.1.1-incubating/admin-api-overview.html |  8 +++--
 .../2.1.1-incubating/admin-api-overview/index.html |  8 +++--
 .../admin-api-partitioned-topics.html              |  8 +++--
 .../admin-api-partitioned-topics/index.html        |  8 +++--
 .../2.1.1-incubating/admin-api-permissions.html    |  8 +++--
 .../admin-api-permissions/index.html               |  8 +++--
 .../admin-api-persistent-topics.html               |  8 +++--
 .../admin-api-persistent-topics/index.html         |  8 +++--
 .../zh-CN/2.1.1-incubating/admin-api-schemas.html  |  8 +++--
 .../2.1.1-incubating/admin-api-schemas/index.html  |  8 +++--
 .../zh-CN/2.1.1-incubating/admin-api-tenants.html  |  8 +++--
 .../2.1.1-incubating/admin-api-tenants/index.html  |  8 +++--
 .../2.1.1-incubating/administration-dashboard.html |  8 +++--
 .../administration-dashboard/index.html            |  8 +++--
 .../zh-CN/2.1.1-incubating/administration-geo.html |  8 +++--
 .../2.1.1-incubating/administration-geo/index.html |  8 +++--
 .../administration-load-distribution.html          |  8 +++--
 .../administration-load-distribution/index.html    |  8 +++--
 .../2.1.1-incubating/administration-proxy.html     |  8 +++--
 .../administration-proxy/index.html                |  8 +++--
 .../2.1.1-incubating/administration-stats.html     |  8 +++--
 .../administration-stats/index.html                |  8 +++--
 .../2.1.1-incubating/administration-zk-bk.html     |  8 +++--
 .../administration-zk-bk/index.html                |  8 +++--
 .../2.1.1-incubating/client-libraries-cpp.html     |  8 +++--
 .../client-libraries-cpp/index.html                |  8 +++--
 .../2.1.1-incubating/client-libraries-go.html      |  8 +++--
 .../client-libraries-go/index.html                 |  8 +++--
 .../2.1.1-incubating/client-libraries-java.html    |  8 +++--
 .../client-libraries-java/index.html               |  8 +++--
 .../2.1.1-incubating/client-libraries-python.html  |  8 +++--
 .../client-libraries-python/index.html             |  8 +++--
 .../client-libraries-websocket.html                |  8 +++--
 .../client-libraries-websocket/index.html          |  8 +++--
 .../zh-CN/2.1.1-incubating/client-libraries.html   |  8 +++--
 .../2.1.1-incubating/client-libraries/index.html   |  8 +++--
 .../concepts-architecture-overview.html            |  8 +++--
 .../concepts-architecture-overview/index.html      |  8 +++--
 .../2.1.1-incubating/concepts-architecture.html    |  8 +++--
 .../concepts-architecture/index.html               |  8 +++--
 .../2.1.1-incubating/concepts-authentication.html  |  8 +++--
 .../concepts-authentication/index.html             |  8 +++--
 .../zh-CN/2.1.1-incubating/concepts-clients.html   |  8 +++--
 .../2.1.1-incubating/concepts-clients/index.html   |  8 +++--
 .../zh-CN/2.1.1-incubating/concepts-messaging.html |  8 +++--
 .../2.1.1-incubating/concepts-messaging/index.html |  8 +++--
 .../2.1.1-incubating/concepts-multi-tenancy.html   |  8 +++--
 .../concepts-multi-tenancy/index.html              |  8 +++--
 .../zh-CN/2.1.1-incubating/concepts-overview.html  |  8 +++--
 .../2.1.1-incubating/concepts-overview/index.html  |  8 +++--
 .../2.1.1-incubating/concepts-replication.html     |  8 +++--
 .../concepts-replication/index.html                |  8 +++--
 .../2.1.1-incubating/concepts-schema-registry.html |  8 +++--
 .../concepts-schema-registry/index.html            |  8 +++--
 .../2.1.1-incubating/concepts-tiered-storage.html  |  8 +++--
 .../concepts-tiered-storage/index.html             |  8 +++--
 .../concepts-topic-compaction.html                 |  8 +++--
 .../concepts-topic-compaction/index.html           |  8 +++--
 .../2.1.1-incubating/cookbooks-compaction.html     |  8 +++--
 .../cookbooks-compaction/index.html                |  8 +++--
 .../2.1.1-incubating/cookbooks-deduplication.html  |  8 +++--
 .../cookbooks-deduplication/index.html             |  8 +++--
 .../2.1.1-incubating/cookbooks-encryption.html     |  8 +++--
 .../cookbooks-encryption/index.html                |  8 +++--
 .../2.1.1-incubating/cookbooks-message-queue.html  |  8 +++--
 .../cookbooks-message-queue/index.html             |  8 +++--
 .../2.1.1-incubating/cookbooks-non-persistent.html |  8 +++--
 .../cookbooks-non-persistent/index.html            |  8 +++--
 .../2.1.1-incubating/cookbooks-partitioned.html    |  8 +++--
 .../cookbooks-partitioned/index.html               |  8 +++--
 .../cookbooks-retention-expiry.html                |  8 +++--
 .../cookbooks-retention-expiry/index.html          |  8 +++--
 .../2.1.1-incubating/cookbooks-tiered-storage.html |  8 +++--
 .../cookbooks-tiered-storage/index.html            |  8 +++--
 .../docs/zh-CN/2.1.1-incubating/deploy-aws.html    | 12 +++++--
 .../zh-CN/2.1.1-incubating/deploy-aws/index.html   | 12 +++++--
 .../deploy-bare-metal-multi-cluster.html           | 12 +++++--
 .../deploy-bare-metal-multi-cluster/index.html     | 12 +++++--
 .../zh-CN/2.1.1-incubating/deploy-bare-metal.html  | 12 +++++--
 .../2.1.1-incubating/deploy-bare-metal/index.html  | 12 +++++--
 .../docs/zh-CN/2.1.1-incubating/deploy-dcos.html   | 12 +++++--
 .../zh-CN/2.1.1-incubating/deploy-dcos/index.html  | 12 +++++--
 .../zh-CN/2.1.1-incubating/deploy-kubernetes.html  | 12 +++++--
 .../2.1.1-incubating/deploy-kubernetes/index.html  | 12 +++++--
 .../zh-CN/2.1.1-incubating/deploy-monitoring.html  |  8 +++--
 .../2.1.1-incubating/deploy-monitoring/index.html  |  8 +++--
 .../2.1.1-incubating/develop-binary-protocol.html  |  8 +++--
 .../develop-binary-protocol/index.html             |  8 +++--
 .../docs/zh-CN/2.1.1-incubating/develop-cpp.html   |  8 +++--
 .../zh-CN/2.1.1-incubating/develop-cpp/index.html  |  8 +++--
 .../2.1.1-incubating/develop-load-manager.html     |  8 +++--
 .../develop-load-manager/index.html                |  8 +++--
 .../zh-CN/2.1.1-incubating/develop-schema.html     |  8 +++--
 .../2.1.1-incubating/develop-schema/index.html     |  8 +++--
 .../docs/zh-CN/2.1.1-incubating/develop-tools.html |  8 +++--
 .../2.1.1-incubating/develop-tools/index.html      |  8 +++--
 .../docs/zh-CN/2.1.1-incubating/functions-api.html |  8 +++--
 .../2.1.1-incubating/functions-api/index.html      |  8 +++--
 .../2.1.1-incubating/functions-deploying.html      |  8 +++--
 .../functions-deploying/index.html                 |  8 +++--
 .../2.1.1-incubating/functions-guarantees.html     |  8 +++--
 .../functions-guarantees/index.html                |  8 +++--
 .../zh-CN/2.1.1-incubating/functions-metrics.html  |  8 +++--
 .../2.1.1-incubating/functions-metrics/index.html  |  8 +++--
 .../zh-CN/2.1.1-incubating/functions-overview.html |  8 +++--
 .../2.1.1-incubating/functions-overview/index.html |  8 +++--
 .../2.1.1-incubating/functions-quickstart.html     |  8 +++--
 .../functions-quickstart/index.html                |  8 +++--
 .../zh-CN/2.1.1-incubating/functions-state.html    |  8 +++--
 .../2.1.1-incubating/functions-state/index.html    |  8 +++--
 .../docs/zh-CN/2.1.1-incubating/io-aerospike.html  |  8 +++--
 .../zh-CN/2.1.1-incubating/io-aerospike/index.html |  8 +++--
 .../docs/zh-CN/2.1.1-incubating/io-cassandra.html  |  8 +++--
 .../zh-CN/2.1.1-incubating/io-cassandra/index.html |  8 +++--
 .../docs/zh-CN/2.1.1-incubating/io-connectors.html |  8 +++--
 .../2.1.1-incubating/io-connectors/index.html      |  8 +++--
 .../docs/zh-CN/2.1.1-incubating/io-develop.html    |  8 +++--
 .../zh-CN/2.1.1-incubating/io-develop/index.html   |  8 +++--
 content/docs/zh-CN/2.1.1-incubating/io-kafka.html  |  8 +++--
 .../zh-CN/2.1.1-incubating/io-kafka/index.html     |  8 +++--
 .../docs/zh-CN/2.1.1-incubating/io-kinesis.html    |  8 +++--
 .../zh-CN/2.1.1-incubating/io-kinesis/index.html   |  8 +++--
 .../docs/zh-CN/2.1.1-incubating/io-managing.html   |  8 +++--
 .../zh-CN/2.1.1-incubating/io-managing/index.html  |  8 +++--
 .../docs/zh-CN/2.1.1-incubating/io-overview.html   |  8 +++--
 .../zh-CN/2.1.1-incubating/io-overview/index.html  |  8 +++--
 .../docs/zh-CN/2.1.1-incubating/io-quickstart.html |  8 +++--
 .../2.1.1-incubating/io-quickstart/index.html      |  8 +++--
 .../docs/zh-CN/2.1.1-incubating/io-rabbitmq.html   |  8 +++--
 .../zh-CN/2.1.1-incubating/io-rabbitmq/index.html  |  8 +++--
 .../docs/zh-CN/2.1.1-incubating/io-twitter.html    |  8 +++--
 .../zh-CN/2.1.1-incubating/io-twitter/index.html   |  8 +++--
 .../docs/zh-CN/2.1.1-incubating/pulsar-2.0.html    |  8 +++--
 .../zh-CN/2.1.1-incubating/pulsar-2.0/index.html   |  8 +++--
 .../docs/zh-CN/2.1.1-incubating/pulsar-admin.html  |  8 +++--
 .../zh-CN/2.1.1-incubating/pulsar-admin/index.html |  8 +++--
 .../2.1.1-incubating/reference-cli-tools.html      |  8 +++--
 .../reference-cli-tools/index.html                 |  8 +++--
 .../2.1.1-incubating/reference-configuration.html  |  4 +--
 .../reference-configuration/index.html             |  4 +--
 .../2.1.1-incubating/reference-terminology.html    |  8 +++--
 .../reference-terminology/index.html               |  8 +++--
 .../zh-CN/2.1.1-incubating/security-athenz.html    |  8 +++--
 .../2.1.1-incubating/security-athenz/index.html    |  8 +++--
 .../2.1.1-incubating/security-authorization.html   |  8 +++--
 .../security-authorization/index.html              |  8 +++--
 .../2.1.1-incubating/security-encryption.html      |  8 +++--
 .../security-encryption/index.html                 |  8 +++--
 .../zh-CN/2.1.1-incubating/security-extending.html |  8 +++--
 .../2.1.1-incubating/security-extending/index.html |  8 +++--
 .../zh-CN/2.1.1-incubating/security-overview.html  |  8 +++--
 .../2.1.1-incubating/security-overview/index.html  |  8 +++--
 .../security-tls-authentication.html               |  8 +++--
 .../security-tls-authentication/index.html         |  8 +++--
 .../2.1.1-incubating/security-tls-transport.html   |  8 +++--
 .../security-tls-transport/index.html              |  8 +++--
 .../zh-CN/2.1.1-incubating/standalone-docker.html  |  8 +++--
 .../2.1.1-incubating/standalone-docker/index.html  |  8 +++--
 .../docs/zh-CN/2.1.1-incubating/standalone.html    |  8 +++--
 .../zh-CN/2.1.1-incubating/standalone/index.html   |  8 +++--
 content/docs/zh-CN/adaptors-kafka.html             |  8 +++--
 content/docs/zh-CN/adaptors-kafka/index.html       |  8 +++--
 content/docs/zh-CN/adaptors-spark.html             |  8 +++--
 content/docs/zh-CN/adaptors-spark/index.html       |  8 +++--
 content/docs/zh-CN/adaptors-storm.html             |  8 +++--
 content/docs/zh-CN/adaptors-storm/index.html       |  8 +++--
 content/docs/zh-CN/admin-api-brokers.html          |  8 +++--
 content/docs/zh-CN/admin-api-brokers/index.html    |  8 +++--
 content/docs/zh-CN/admin-api-clusters.html         |  8 +++--
 content/docs/zh-CN/admin-api-clusters/index.html   |  8 +++--
 content/docs/zh-CN/admin-api-namespaces.html       |  8 +++--
 content/docs/zh-CN/admin-api-namespaces/index.html |  8 +++--
 .../zh-CN/admin-api-non-persistent-topics.html     |  8 +++--
 .../admin-api-non-persistent-topics/index.html     |  8 +++--
 content/docs/zh-CN/admin-api-overview.html         |  8 +++--
 content/docs/zh-CN/admin-api-overview/index.html   |  8 +++--
 .../docs/zh-CN/admin-api-partitioned-topics.html   |  8 +++--
 .../zh-CN/admin-api-partitioned-topics/index.html  |  8 +++--
 content/docs/zh-CN/admin-api-permissions.html      |  8 +++--
 .../docs/zh-CN/admin-api-permissions/index.html    |  8 +++--
 .../docs/zh-CN/admin-api-persistent-topics.html    |  8 +++--
 .../zh-CN/admin-api-persistent-topics/index.html   |  8 +++--
 content/docs/zh-CN/admin-api-schemas.html          |  8 +++--
 content/docs/zh-CN/admin-api-schemas/index.html    |  8 +++--
 content/docs/zh-CN/admin-api-tenants.html          |  8 +++--
 content/docs/zh-CN/admin-api-tenants/index.html    |  8 +++--
 content/docs/zh-CN/administration-dashboard.html   |  8 +++--
 .../docs/zh-CN/administration-dashboard/index.html |  8 +++--
 content/docs/zh-CN/administration-geo.html         |  8 +++--
 content/docs/zh-CN/administration-geo/index.html   |  8 +++--
 .../zh-CN/administration-load-distribution.html    |  8 +++--
 .../administration-load-distribution/index.html    |  8 +++--
 content/docs/zh-CN/administration-proxy.html       |  8 +++--
 content/docs/zh-CN/administration-proxy/index.html |  8 +++--
 content/docs/zh-CN/administration-stats.html       |  8 +++--
 content/docs/zh-CN/administration-stats/index.html |  8 +++--
 content/docs/zh-CN/administration-zk-bk.html       |  8 +++--
 content/docs/zh-CN/administration-zk-bk/index.html |  8 +++--
 content/docs/zh-CN/client-libraries-cpp.html       |  8 +++--
 content/docs/zh-CN/client-libraries-cpp/index.html |  8 +++--
 content/docs/zh-CN/client-libraries-go.html        |  8 +++--
 content/docs/zh-CN/client-libraries-go/index.html  |  8 +++--
 content/docs/zh-CN/client-libraries-java.html      |  8 +++--
 .../docs/zh-CN/client-libraries-java/index.html    |  8 +++--
 content/docs/zh-CN/client-libraries-python.html    |  8 +++--
 .../docs/zh-CN/client-libraries-python/index.html  |  8 +++--
 content/docs/zh-CN/client-libraries-websocket.html |  8 +++--
 .../zh-CN/client-libraries-websocket/index.html    |  8 +++--
 content/docs/zh-CN/client-libraries.html           |  8 +++--
 content/docs/zh-CN/client-libraries/index.html     |  8 +++--
 .../docs/zh-CN/concepts-architecture-overview.html |  8 +++--
 .../concepts-architecture-overview/index.html      |  8 +++--
 content/docs/zh-CN/concepts-architecture.html      |  8 +++--
 .../docs/zh-CN/concepts-architecture/index.html    |  8 +++--
 content/docs/zh-CN/concepts-authentication.html    |  8 +++--
 .../docs/zh-CN/concepts-authentication/index.html  |  8 +++--
 content/docs/zh-CN/concepts-clients.html           |  8 +++--
 content/docs/zh-CN/concepts-clients/index.html     |  8 +++--
 content/docs/zh-CN/concepts-messaging.html         |  8 +++--
 content/docs/zh-CN/concepts-messaging/index.html   |  8 +++--
 content/docs/zh-CN/concepts-multi-tenancy.html     |  8 +++--
 .../docs/zh-CN/concepts-multi-tenancy/index.html   |  8 +++--
 content/docs/zh-CN/concepts-overview.html          |  8 +++--
 content/docs/zh-CN/concepts-overview/index.html    |  8 +++--
 content/docs/zh-CN/concepts-replication.html       |  8 +++--
 content/docs/zh-CN/concepts-replication/index.html |  8 +++--
 content/docs/zh-CN/concepts-schema-registry.html   |  8 +++--
 .../docs/zh-CN/concepts-schema-registry/index.html |  8 +++--
 content/docs/zh-CN/concepts-tiered-storage.html    |  8 +++--
 .../docs/zh-CN/concepts-tiered-storage/index.html  |  8 +++--
 content/docs/zh-CN/concepts-topic-compaction.html  |  8 +++--
 .../zh-CN/concepts-topic-compaction/index.html     |  8 +++--
 content/docs/zh-CN/cookbooks-compaction.html       |  8 +++--
 content/docs/zh-CN/cookbooks-compaction/index.html |  8 +++--
 content/docs/zh-CN/cookbooks-deduplication.html    |  8 +++--
 .../docs/zh-CN/cookbooks-deduplication/index.html  |  8 +++--
 content/docs/zh-CN/cookbooks-encryption.html       |  8 +++--
 content/docs/zh-CN/cookbooks-encryption/index.html |  8 +++--
 content/docs/zh-CN/cookbooks-message-queue.html    |  8 +++--
 .../docs/zh-CN/cookbooks-message-queue/index.html  |  8 +++--
 content/docs/zh-CN/cookbooks-non-persistent.html   |  8 +++--
 .../docs/zh-CN/cookbooks-non-persistent/index.html |  8 +++--
 content/docs/zh-CN/cookbooks-partitioned.html      |  8 +++--
 .../docs/zh-CN/cookbooks-partitioned/index.html    |  8 +++--
 content/docs/zh-CN/cookbooks-retention-expiry.html |  8 +++--
 .../zh-CN/cookbooks-retention-expiry/index.html    |  8 +++--
 content/docs/zh-CN/cookbooks-tiered-storage.html   |  8 +++--
 .../docs/zh-CN/cookbooks-tiered-storage/index.html |  8 +++--
 content/docs/zh-CN/deploy-aws.html                 | 12 +++++--
 content/docs/zh-CN/deploy-aws/index.html           | 12 +++++--
 .../zh-CN/deploy-bare-metal-multi-cluster.html     | 12 +++++--
 .../deploy-bare-metal-multi-cluster/index.html     | 12 +++++--
 content/docs/zh-CN/deploy-bare-metal.html          | 12 +++++--
 content/docs/zh-CN/deploy-bare-metal/index.html    | 12 +++++--
 content/docs/zh-CN/deploy-dcos.html                | 12 +++++--
 content/docs/zh-CN/deploy-dcos/index.html          | 12 +++++--
 content/docs/zh-CN/deploy-kubernetes.html          | 12 +++++--
 content/docs/zh-CN/deploy-kubernetes/index.html    | 12 +++++--
 content/docs/zh-CN/deploy-monitoring.html          |  8 +++--
 content/docs/zh-CN/deploy-monitoring/index.html    |  8 +++--
 content/docs/zh-CN/develop-binary-protocol.html    |  8 +++--
 .../docs/zh-CN/develop-binary-protocol/index.html  |  8 +++--
 content/docs/zh-CN/develop-cpp.html                |  8 +++--
 content/docs/zh-CN/develop-cpp/index.html          |  8 +++--
 content/docs/zh-CN/develop-load-manager.html       |  8 +++--
 content/docs/zh-CN/develop-load-manager/index.html |  8 +++--
 content/docs/zh-CN/develop-schema.html             |  8 +++--
 content/docs/zh-CN/develop-schema/index.html       |  8 +++--
 content/docs/zh-CN/develop-tools.html              |  8 +++--
 content/docs/zh-CN/develop-tools/index.html        |  8 +++--
 content/docs/zh-CN/functions-api.html              |  8 +++--
 content/docs/zh-CN/functions-api/index.html        |  8 +++--
 content/docs/zh-CN/functions-deploying.html        |  8 +++--
 content/docs/zh-CN/functions-deploying/index.html  |  8 +++--
 content/docs/zh-CN/functions-guarantees.html       |  8 +++--
 content/docs/zh-CN/functions-guarantees/index.html |  8 +++--
 content/docs/zh-CN/functions-metrics.html          |  8 +++--
 content/docs/zh-CN/functions-metrics/index.html    |  8 +++--
 content/docs/zh-CN/functions-overview.html         |  8 +++--
 content/docs/zh-CN/functions-overview/index.html   |  8 +++--
 content/docs/zh-CN/functions-quickstart.html       |  8 +++--
 content/docs/zh-CN/functions-quickstart/index.html |  8 +++--
 content/docs/zh-CN/functions-state.html            |  8 +++--
 content/docs/zh-CN/functions-state/index.html      |  8 +++--
 content/docs/zh-CN/io-aerospike.html               |  8 +++--
 content/docs/zh-CN/io-aerospike/index.html         |  8 +++--
 content/docs/zh-CN/io-cassandra.html               |  8 +++--
 content/docs/zh-CN/io-cassandra/index.html         |  8 +++--
 content/docs/zh-CN/io-connectors.html              |  8 +++--
 content/docs/zh-CN/io-connectors/index.html        |  8 +++--
 content/docs/zh-CN/io-develop.html                 |  8 +++--
 content/docs/zh-CN/io-develop/index.html           |  8 +++--
 content/docs/zh-CN/io-kafka.html                   |  8 +++--
 content/docs/zh-CN/io-kafka/index.html             |  8 +++--
 content/docs/zh-CN/io-kinesis.html                 |  8 +++--
 content/docs/zh-CN/io-kinesis/index.html           |  8 +++--
 content/docs/zh-CN/io-managing.html                |  8 +++--
 content/docs/zh-CN/io-managing/index.html          |  8 +++--
 content/docs/zh-CN/io-overview.html                |  8 +++--
 content/docs/zh-CN/io-overview/index.html          |  8 +++--
 content/docs/zh-CN/io-quickstart.html              |  8 +++--
 content/docs/zh-CN/io-quickstart/index.html        |  8 +++--
 content/docs/zh-CN/io-rabbitmq.html                |  8 +++--
 content/docs/zh-CN/io-rabbitmq/index.html          |  8 +++--
 content/docs/zh-CN/io-twitter.html                 |  8 +++--
 content/docs/zh-CN/io-twitter/index.html           |  8 +++--
 content/docs/zh-CN/next/adaptors-kafka.html        |  8 +++--
 content/docs/zh-CN/next/adaptors-kafka/index.html  |  8 +++--
 content/docs/zh-CN/next/adaptors-spark.html        |  8 +++--
 content/docs/zh-CN/next/adaptors-spark/index.html  |  8 +++--
 content/docs/zh-CN/next/adaptors-storm.html        |  8 +++--
 content/docs/zh-CN/next/adaptors-storm/index.html  |  8 +++--
 content/docs/zh-CN/next/admin-api-brokers.html     |  8 +++--
 .../docs/zh-CN/next/admin-api-brokers/index.html   |  8 +++--
 content/docs/zh-CN/next/admin-api-clusters.html    |  8 +++--
 .../docs/zh-CN/next/admin-api-clusters/index.html  |  8 +++--
 content/docs/zh-CN/next/admin-api-namespaces.html  |  8 +++--
 .../zh-CN/next/admin-api-namespaces/index.html     |  8 +++--
 .../next/admin-api-non-persistent-topics.html      |  8 +++--
 .../admin-api-non-persistent-topics/index.html     |  8 +++--
 content/docs/zh-CN/next/admin-api-overview.html    |  8 +++--
 .../docs/zh-CN/next/admin-api-overview/index.html  |  8 +++--
 .../zh-CN/next/admin-api-partitioned-topics.html   |  8 +++--
 .../next/admin-api-partitioned-topics/index.html   |  8 +++--
 content/docs/zh-CN/next/admin-api-permissions.html |  8 +++--
 .../zh-CN/next/admin-api-permissions/index.html    |  8 +++--
 .../zh-CN/next/admin-api-persistent-topics.html    |  8 +++--
 .../next/admin-api-persistent-topics/index.html    |  8 +++--
 content/docs/zh-CN/next/admin-api-schemas.html     |  8 +++--
 .../docs/zh-CN/next/admin-api-schemas/index.html   |  8 +++--
 content/docs/zh-CN/next/admin-api-tenants.html     |  8 +++--
 .../docs/zh-CN/next/admin-api-tenants/index.html   |  8 +++--
 .../docs/zh-CN/next/administration-dashboard.html  |  8 +++--
 .../zh-CN/next/administration-dashboard/index.html |  8 +++--
 content/docs/zh-CN/next/administration-geo.html    |  8 +++--
 .../docs/zh-CN/next/administration-geo/index.html  |  8 +++--
 .../next/administration-load-distribution.html     |  8 +++--
 .../administration-load-distribution/index.html    |  8 +++--
 content/docs/zh-CN/next/administration-proxy.html  |  8 +++--
 .../zh-CN/next/administration-proxy/index.html     |  8 +++--
 content/docs/zh-CN/next/administration-stats.html  |  8 +++--
 .../zh-CN/next/administration-stats/index.html     |  8 +++--
 content/docs/zh-CN/next/administration-zk-bk.html  |  8 +++--
 .../zh-CN/next/administration-zk-bk/index.html     |  8 +++--
 content/docs/zh-CN/next/client-libraries-cpp.html  |  8 +++--
 .../zh-CN/next/client-libraries-cpp/index.html     |  8 +++--
 content/docs/zh-CN/next/client-libraries-go.html   | 10 +++---
 .../docs/zh-CN/next/client-libraries-go/index.html | 10 +++---
 content/docs/zh-CN/next/client-libraries-java.html |  8 +++--
 .../zh-CN/next/client-libraries-java/index.html    |  8 +++--
 .../docs/zh-CN/next/client-libraries-python.html   |  8 +++--
 .../zh-CN/next/client-libraries-python/index.html  |  8 +++--
 .../zh-CN/next/client-libraries-websocket.html     |  8 +++--
 .../next/client-libraries-websocket/index.html     |  8 +++--
 content/docs/zh-CN/next/client-libraries.html      |  8 +++--
 .../docs/zh-CN/next/client-libraries/index.html    |  8 +++--
 .../zh-CN/next/concepts-architecture-overview.html |  8 +++--
 .../next/concepts-architecture-overview/index.html |  8 +++--
 content/docs/zh-CN/next/concepts-architecture.html |  8 +++--
 .../zh-CN/next/concepts-architecture/index.html    |  8 +++--
 .../docs/zh-CN/next/concepts-authentication.html   |  8 +++--
 .../zh-CN/next/concepts-authentication/index.html  |  8 +++--
 content/docs/zh-CN/next/concepts-clients.html      |  8 +++--
 .../docs/zh-CN/next/concepts-clients/index.html    |  8 +++--
 content/docs/zh-CN/next/concepts-messaging.html    |  8 +++--
 .../docs/zh-CN/next/concepts-messaging/index.html  |  8 +++--
 .../docs/zh-CN/next/concepts-multi-tenancy.html    |  8 +++--
 .../zh-CN/next/concepts-multi-tenancy/index.html   |  8 +++--
 content/docs/zh-CN/next/concepts-overview.html     |  8 +++--
 .../docs/zh-CN/next/concepts-overview/index.html   |  8 +++--
 content/docs/zh-CN/next/concepts-replication.html  |  8 +++--
 .../zh-CN/next/concepts-replication/index.html     |  8 +++--
 .../docs/zh-CN/next/concepts-schema-registry.html  |  8 +++--
 .../zh-CN/next/concepts-schema-registry/index.html |  8 +++--
 .../docs/zh-CN/next/concepts-tiered-storage.html   |  8 +++--
 .../zh-CN/next/concepts-tiered-storage/index.html  |  8 +++--
 .../docs/zh-CN/next/concepts-topic-compaction.html |  8 +++--
 .../next/concepts-topic-compaction/index.html      |  8 +++--
 content/docs/zh-CN/next/cookbooks-compaction.html  |  8 +++--
 .../zh-CN/next/cookbooks-compaction/index.html     |  8 +++--
 .../docs/zh-CN/next/cookbooks-deduplication.html   |  8 +++--
 .../zh-CN/next/cookbooks-deduplication/index.html  |  8 +++--
 content/docs/zh-CN/next/cookbooks-encryption.html  |  8 +++--
 .../zh-CN/next/cookbooks-encryption/index.html     |  8 +++--
 .../docs/zh-CN/next/cookbooks-message-queue.html   |  8 +++--
 .../zh-CN/next/cookbooks-message-queue/index.html  |  8 +++--
 .../docs/zh-CN/next/cookbooks-non-persistent.html  |  8 +++--
 .../zh-CN/next/cookbooks-non-persistent/index.html |  8 +++--
 content/docs/zh-CN/next/cookbooks-partitioned.html |  8 +++--
 .../zh-CN/next/cookbooks-partitioned/index.html    |  8 +++--
 .../zh-CN/next/cookbooks-retention-expiry.html     |  8 +++--
 .../next/cookbooks-retention-expiry/index.html     |  8 +++--
 .../docs/zh-CN/next/cookbooks-tiered-storage.html  |  8 +++--
 .../zh-CN/next/cookbooks-tiered-storage/index.html |  8 +++--
 content/docs/zh-CN/next/deploy-aws.html            | 12 +++++--
 content/docs/zh-CN/next/deploy-aws/index.html      | 12 +++++--
 .../next/deploy-bare-metal-multi-cluster.html      | 12 +++++--
 .../deploy-bare-metal-multi-cluster/index.html     | 12 +++++--
 content/docs/zh-CN/next/deploy-bare-metal.html     | 12 +++++--
 .../docs/zh-CN/next/deploy-bare-metal/index.html   | 12 +++++--
 content/docs/zh-CN/next/deploy-dcos.html           | 12 +++++--
 content/docs/zh-CN/next/deploy-dcos/index.html     | 12 +++++--
 content/docs/zh-CN/next/deploy-kubernetes.html     | 12 +++++--
 .../docs/zh-CN/next/deploy-kubernetes/index.html   | 12 +++++--
 content/docs/zh-CN/next/deploy-monitoring.html     |  8 +++--
 .../docs/zh-CN/next/deploy-monitoring/index.html   |  8 +++--
 .../docs/zh-CN/next/develop-binary-protocol.html   |  8 +++--
 .../zh-CN/next/develop-binary-protocol/index.html  |  8 +++--
 content/docs/zh-CN/next/develop-cpp.html           |  8 +++--
 content/docs/zh-CN/next/develop-cpp/index.html     |  8 +++--
 content/docs/zh-CN/next/develop-load-manager.html  |  8 +++--
 .../zh-CN/next/develop-load-manager/index.html     |  8 +++--
 content/docs/zh-CN/next/develop-schema.html        |  8 +++--
 content/docs/zh-CN/next/develop-schema/index.html  |  8 +++--
 content/docs/zh-CN/next/develop-tools.html         |  8 +++--
 content/docs/zh-CN/next/develop-tools/index.html   |  8 +++--
 content/docs/zh-CN/next/functions-api.html         |  8 +++--
 content/docs/zh-CN/next/functions-api/index.html   |  8 +++--
 content/docs/zh-CN/next/functions-deploying.html   |  8 +++--
 .../docs/zh-CN/next/functions-deploying/index.html |  8 +++--
 content/docs/zh-CN/next/functions-guarantees.html  |  8 +++--
 .../zh-CN/next/functions-guarantees/index.html     |  8 +++--
 content/docs/zh-CN/next/functions-metrics.html     |  8 +++--
 .../docs/zh-CN/next/functions-metrics/index.html   |  8 +++--
 content/docs/zh-CN/next/functions-overview.html    |  8 +++--
 .../docs/zh-CN/next/functions-overview/index.html  |  8 +++--
 content/docs/zh-CN/next/functions-quickstart.html  |  8 +++--
 .../zh-CN/next/functions-quickstart/index.html     |  8 +++--
 content/docs/zh-CN/next/functions-state.html       |  8 +++--
 content/docs/zh-CN/next/functions-state/index.html |  8 +++--
 content/docs/zh-CN/next/io-aerospike.html          |  8 +++--
 content/docs/zh-CN/next/io-aerospike/index.html    |  8 +++--
 content/docs/zh-CN/next/io-cassandra.html          |  8 +++--
 content/docs/zh-CN/next/io-cassandra/index.html    |  8 +++--
 content/docs/zh-CN/next/io-connectors.html         |  8 +++--
 content/docs/zh-CN/next/io-connectors/index.html   |  8 +++--
 content/docs/zh-CN/next/io-develop.html            |  8 +++--
 content/docs/zh-CN/next/io-develop/index.html      |  8 +++--
 content/docs/zh-CN/next/io-kafka.html              |  8 +++--
 content/docs/zh-CN/next/io-kafka/index.html        |  8 +++--
 content/docs/zh-CN/next/io-kinesis.html            |  8 +++--
 content/docs/zh-CN/next/io-kinesis/index.html      |  8 +++--
 content/docs/zh-CN/next/io-managing.html           |  8 +++--
 content/docs/zh-CN/next/io-managing/index.html     |  8 +++--
 content/docs/zh-CN/next/io-overview.html           |  8 +++--
 content/docs/zh-CN/next/io-overview/index.html     |  8 +++--
 content/docs/zh-CN/next/io-quickstart.html         |  8 +++--
 content/docs/zh-CN/next/io-quickstart/index.html   |  8 +++--
 content/docs/zh-CN/next/io-rabbitmq.html           |  8 +++--
 content/docs/zh-CN/next/io-rabbitmq/index.html     |  8 +++--
 content/docs/zh-CN/next/io-twitter.html            |  8 +++--
 content/docs/zh-CN/next/io-twitter/index.html      |  8 +++--
 content/docs/zh-CN/next/pulsar-2.0.html            |  8 +++--
 content/docs/zh-CN/next/pulsar-2.0/index.html      |  8 +++--
 content/docs/zh-CN/next/pulsar-admin.html          |  8 +++--
 content/docs/zh-CN/next/pulsar-admin/index.html    |  8 +++--
 content/docs/zh-CN/next/reference-cli-tools.html   |  8 +++--
 .../docs/zh-CN/next/reference-cli-tools/index.html |  8 +++--
 .../docs/zh-CN/next/reference-configuration.html   |  4 +--
 .../zh-CN/next/reference-configuration/index.html  |  4 +--
 content/docs/zh-CN/next/reference-terminology.html |  8 +++--
 .../zh-CN/next/reference-terminology/index.html    |  8 +++--
 content/docs/zh-CN/next/security-athenz.html       |  8 +++--
 content/docs/zh-CN/next/security-athenz/index.html |  8 +++--
 .../docs/zh-CN/next/security-authorization.html    |  8 +++--
 .../zh-CN/next/security-authorization/index.html   |  8 +++--
 content/docs/zh-CN/next/security-encryption.html   |  8 +++--
 .../docs/zh-CN/next/security-encryption/index.html |  8 +++--
 content/docs/zh-CN/next/security-extending.html    |  8 +++--
 .../docs/zh-CN/next/security-extending/index.html  |  8 +++--
 content/docs/zh-CN/next/security-overview.html     |  8 +++--
 .../docs/zh-CN/next/security-overview/index.html   |  8 +++--
 .../zh-CN/next/security-tls-authentication.html    |  8 +++--
 .../next/security-tls-authentication/index.html    |  8 +++--
 .../docs/zh-CN/next/security-tls-transport.html    |  8 +++--
 .../zh-CN/next/security-tls-transport/index.html   |  8 +++--
 .../zh-CN/next/sql-deployment-configurations.html  |  8 +++--
 .../next/sql-deployment-configurations/index.html  |  8 +++--
 content/docs/zh-CN/next/sql-getting-started.html   |  8 +++--
 .../docs/zh-CN/next/sql-getting-started/index.html |  8 +++--
 content/docs/zh-CN/next/sql-overview.html          |  8 +++--
 content/docs/zh-CN/next/sql-overview/index.html    |  8 +++--
 content/docs/zh-CN/next/standalone-docker.html     |  8 +++--
 .../docs/zh-CN/next/standalone-docker/index.html   |  8 +++--
 content/docs/zh-CN/next/standalone.html            |  8 +++--
 content/docs/zh-CN/next/standalone/index.html      |  8 +++--
 content/docs/zh-CN/pulsar-2.0.html                 |  8 +++--
 content/docs/zh-CN/pulsar-2.0/index.html           |  8 +++--
 content/docs/zh-CN/pulsar-admin.html               |  8 +++--
 content/docs/zh-CN/pulsar-admin/index.html         |  8 +++--
 content/docs/zh-CN/reference-cli-tools.html        |  8 +++--
 content/docs/zh-CN/reference-cli-tools/index.html  |  8 +++--
 content/docs/zh-CN/reference-configuration.html    |  4 +--
 .../docs/zh-CN/reference-configuration/index.html  |  4 +--
 content/docs/zh-CN/reference-terminology.html      |  8 +++--
 .../docs/zh-CN/reference-terminology/index.html    |  8 +++--
 content/docs/zh-CN/security-athenz.html            |  8 +++--
 content/docs/zh-CN/security-athenz/index.html      |  8 +++--
 content/docs/zh-CN/security-authorization.html     |  8 +++--
 .../docs/zh-CN/security-authorization/index.html   |  8 +++--
 content/docs/zh-CN/security-encryption.html        |  8 +++--
 content/docs/zh-CN/security-encryption/index.html  |  8 +++--
 content/docs/zh-CN/security-extending.html         |  8 +++--
 content/docs/zh-CN/security-extending/index.html   |  8 +++--
 content/docs/zh-CN/security-overview.html          |  8 +++--
 content/docs/zh-CN/security-overview/index.html    |  8 +++--
 .../docs/zh-CN/security-tls-authentication.html    |  8 +++--
 .../zh-CN/security-tls-authentication/index.html   |  8 +++--
 content/docs/zh-CN/security-tls-transport.html     |  8 +++--
 .../docs/zh-CN/security-tls-transport/index.html   |  8 +++--
 .../docs/zh-CN/sql-deployment-configurations.html  |  8 +++--
 .../zh-CN/sql-deployment-configurations/index.html |  8 +++--
 content/docs/zh-CN/sql-getting-started.html        |  8 +++--
 content/docs/zh-CN/sql-getting-started/index.html  |  8 +++--
 content/docs/zh-CN/sql-overview.html               |  8 +++--
 content/docs/zh-CN/sql-overview/index.html         |  8 +++--
 content/docs/zh-CN/standalone-docker.html          |  8 +++--
 content/docs/zh-CN/standalone-docker/index.html    |  8 +++--
 content/docs/zh-CN/standalone.html                 |  8 +++--
 content/docs/zh-CN/standalone/index.html           |  8 +++--
 content/ja/adaptors/PulsarSpark/index.html         |  8 ++---
 content/ja/adaptors/PulsarStorm/index.html         |  6 ++--
 content/ja/admin/AdminInterface/index.html         | 12 +++----
 content/ja/admin/Authz/index.html                  | 12 +++----
 content/ja/admin/ClustersBrokers/index.html        |  6 ++--
 content/ja/admin/PropertiesNamespaces/index.html   |  6 ++--
 content/ja/advanced/PartitionedTopics/index.html   | 12 +++----
 content/ja/advanced/RetentionExpiry/index.html     | 12 +++----
 content/ja/clients/Cpp/index.html                  |  6 ++--
 content/ja/clients/Java/index.html                 |  8 ++---
 content/ja/clients/Python/index.html               |  8 ++---
 content/ja/clients/WebSocket/index.html            |  8 ++---
 content/ja/deployment/InstanceSetup/index.html     |  6 ++--
 content/ja/deployment/Kubernetes/index.html        |  4 +--
 .../ConceptsAndArchitecture/index.html             |  2 +-
 content/ja/getting-started/LocalCluster/index.html |  4 +--
 content/ja/project/BinaryProtocol/index.html       |  4 +--
 content/ja/project/SimulationTools/index.html      |  2 +-
 content/ja/reference/CliTools/index.html           | 18 +++++-----
 content/swagger/swagger.json                       | 38 +++++++++++-----------
 2884 files changed, 14897 insertions(+), 8668 deletions(-)

diff --git a/content/css/main.css b/content/css/main.css
index 28b1f25..7fa54f6 100644
--- a/content/css/main.css
+++ b/content/css/main.css
@@ -1 +1 @@
-a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{border:0;font:inherit;font-size:100%;margin:0;padding:0;vertical-align:baseline}b [...]
\ No newline at end of file
+a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{border:0;font:inherit;font-size:100%;margin:0;padding:0;vertical-align:baseline}b [...]
\ No newline at end of file
diff --git a/content/css/prism.css b/content/css/prism.css
index 7409929..d783edb 100644
--- a/content/css/prism.css
+++ b/content/css/prism.css
@@ -1,11 +1,16 @@
 /**
+ * Copyright (c) 2017-present, Facebook, Inc.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ *
  * Modified prism.js default theme for JavaScript, CSS and HTML
  * Based on dabblet (http://dabblet.com)
  * @author Lea Verou
  */
 
-code[class*="language-"],
-pre[class*="language-"] {
+code[class*='language-'],
+pre[class*='language-'] {
   font-family: Consolas, Monaco, 'Andale Mono', 'Ubuntu Mono', monospace;
   text-align: left;
   white-space: pre;
@@ -25,16 +30,16 @@ pre[class*="language-"] {
 }
 
 /* Code blocks */
-pre[class*="language-"] {
+pre[class*='language-'] {
   padding: 1em;
-  margin: .5em 0;
+  margin: 0.5em 0;
   overflow: auto;
 }
 
 /* Inline code */
-:not(pre) > code[class*="language-"] {
-  padding: .1em;
-  border-radius: .3em;
+:not(pre) > code[class*='language-'] {
+  padding: 0.1em;
+  border-radius: 0.3em;
   white-space: normal;
 }
 
@@ -50,7 +55,7 @@ pre[class*="language-"] {
 }
 
 .namespace {
-  opacity: .7;
+  opacity: 0.7;
 }
 
 .token.property,
@@ -88,7 +93,7 @@ pre[class*="language-"] {
 
 .token.function,
 .token.class-name {
-  color: #DD4A68;
+  color: #dd4a68;
 }
 
 .token.regex,
@@ -107,4 +112,4 @@ pre[class*="language-"] {
 
 .token.entity {
   cursor: help;
-}
\ No newline at end of file
+}
diff --git a/content/docs/en/2.1.0-incubating/adaptors-kafka.html b/content/docs/en/2.1.0-incubating/adaptors-kafka.html
index eb03a09..541a8bd 100644
--- a/content/docs/en/2.1.0-incubating/adaptors-kafka.html
+++ b/content/docs/en/2.1.0-incubating/adaptors-kafka.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar adaptor for Apache Kafka · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar provides an easy option for applications that are currently written using the [Apache Kafka](http://kafka.apache.org) Java client API."/><meta name="docsearch:version" content="2 [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar adaptor for Apache Kafka · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar provides an easy option for applications that are currently written using the &lt;a href=&quot;http://kafka.apache.org&quot;&gt;Apache Kafka&lt;/a&gt; Java client API.&l [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar adaptor for Apache Kafka · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar provides an easy option for applications that are currently written using the &lt;a href=&quot;http://kafka.apache.o [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/adaptors-kafka.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar adaptor for Apache Kafka</h1></header><article><div><span><p>Pulsar provides an easy option for applications that are currently writte [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/adaptors-kafka.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar adaptor for Apache Kafka</h1></header><article><div><span><p>Pulsar provides an easy option for applications that are currently written using the <a hr [...]
 <h2><a class="anchor" aria-hidden="true" id="using-the-pulsar-kafka-compatibility-wrapper"></a><a href="#using-the-pulsar-kafka-compatibility-wrapper" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v [...]
 <p>In an existing application, change the regular Kafka client dependency and replace it with the Pulsar Kafka wrapper. Remove:</p>
 <pre><code class="hljs css language-xml"><span class="hljs-tag">&lt;<span class="hljs-name">dependency</span>&gt;</span>
@@ -286,7 +288,7 @@ consumer.subscribe(Arrays.asList(topic));
 <tr><td style="text-align:left"><a href="http://pulsar.apache.org/api/client/org/apache/pulsar/client/api/ConsumerConfiguration.html#setMaxTotalReceiverQueueSizeAcrossPartitions-int-"><code>pulsar.consumer.total.receiver.queue.size.across.partitions</code></a></td><td style="text-align:left">50000</td><td style="text-align:left">Set the max total receiver queue size across partitons</td></tr>
 </tbody>
 </table>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-schemas"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/adaptors-spark"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#using-the-pulsar-kafka-compatibility-wrapper">Using the Pulsar Kafka compa [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-schemas"><span class="arrow-prev">← </span><span>Managing Schemas</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/adaptors-spark"><span>Pulsar adaptor for Apache Spark</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#using-the-pulsar-kafka-compatibility-wrapper">Using  [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/adaptors-kafka/index.html b/content/docs/en/2.1.0-incubating/adaptors-kafka/index.html
index eb03a09..541a8bd 100644
--- a/content/docs/en/2.1.0-incubating/adaptors-kafka/index.html
+++ b/content/docs/en/2.1.0-incubating/adaptors-kafka/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar adaptor for Apache Kafka · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar provides an easy option for applications that are currently written using the [Apache Kafka](http://kafka.apache.org) Java client API."/><meta name="docsearch:version" content="2 [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar adaptor for Apache Kafka · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar provides an easy option for applications that are currently written using the &lt;a href=&quot;http://kafka.apache.org&quot;&gt;Apache Kafka&lt;/a&gt; Java client API.&l [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar adaptor for Apache Kafka · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar provides an easy option for applications that are currently written using the &lt;a href=&quot;http://kafka.apache.o [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/adaptors-kafka.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar adaptor for Apache Kafka</h1></header><article><div><span><p>Pulsar provides an easy option for applications that are currently writte [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/adaptors-kafka.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar adaptor for Apache Kafka</h1></header><article><div><span><p>Pulsar provides an easy option for applications that are currently written using the <a hr [...]
 <h2><a class="anchor" aria-hidden="true" id="using-the-pulsar-kafka-compatibility-wrapper"></a><a href="#using-the-pulsar-kafka-compatibility-wrapper" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v [...]
 <p>In an existing application, change the regular Kafka client dependency and replace it with the Pulsar Kafka wrapper. Remove:</p>
 <pre><code class="hljs css language-xml"><span class="hljs-tag">&lt;<span class="hljs-name">dependency</span>&gt;</span>
@@ -286,7 +288,7 @@ consumer.subscribe(Arrays.asList(topic));
 <tr><td style="text-align:left"><a href="http://pulsar.apache.org/api/client/org/apache/pulsar/client/api/ConsumerConfiguration.html#setMaxTotalReceiverQueueSizeAcrossPartitions-int-"><code>pulsar.consumer.total.receiver.queue.size.across.partitions</code></a></td><td style="text-align:left">50000</td><td style="text-align:left">Set the max total receiver queue size across partitons</td></tr>
 </tbody>
 </table>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-schemas"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/adaptors-spark"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#using-the-pulsar-kafka-compatibility-wrapper">Using the Pulsar Kafka compa [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-schemas"><span class="arrow-prev">← </span><span>Managing Schemas</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/adaptors-spark"><span>Pulsar adaptor for Apache Spark</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#using-the-pulsar-kafka-compatibility-wrapper">Using  [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/adaptors-spark.html b/content/docs/en/2.1.0-incubating/adaptors-spark.html
index 012c396..49aa48d 100644
--- a/content/docs/en/2.1.0-incubating/adaptors-spark.html
+++ b/content/docs/en/2.1.0-incubating/adaptors-spark.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar adaptor for Apache Spark · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="The Spark Streaming receiver for Pulsar is a custom receiver that enables Apache [Spark Streaming](https://spark.apache.org/streaming/) to receive data from Pulsar."/><meta name="docsea [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar adaptor for Apache Spark · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;The Spark Streaming receiver for Pulsar is a custom receiver that enables Apache &lt;a href=&quot;https://spark.apache.org/streaming/&quot;&gt;Spark Streaming&lt;/a&gt; to rece [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar adaptor for Apache Spark · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;The Spark Streaming receiver for Pulsar is a custom receiver that enables Apache &lt;a href=&quot;https://spark.apache.org/ [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/adaptors-spark.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar adaptor for Apache Spark</h1></header><article><div><span><p>The Spark Streaming receiver for Pulsar is a custom receiver that enables [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/adaptors-spark.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar adaptor for Apache Spark</h1></header><article><div><span><p>The Spark Streaming receiver for Pulsar is a custom receiver that enables Apache <a href=" [...]
 <p>An application can receive data in <a href="https://spark.apache.org/docs/latest/programming-guide.html#resilient-distributed-datasets-rdds">Resilient Distributed Dataset</a> (RDD) format via the Spark Streaming Pulsar receiver and can process it in a variety of ways.</p>
 <h2><a class="anchor" aria-hidden="true" id="prerequisites"></a><a href="#prerequisites" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.8 [...]
 <p>To use the receiver, include a dependency for the <code>pulsar-spark</code> library in your Java configuration.</p>
@@ -86,7 +88,7 @@ JavaReceiverInputDStream&lt;<span class="hljs-keyword">byte</span>[]&gt; msgs =
 <h2><a class="anchor" aria-hidden="true" id="example"></a><a href="#example" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1- [...]
 <p>You can find a complete example <a href="https://github.com/apache/incubator-pulsar/tree/master/pulsar-spark/src/test/java/org/apache/pulsar/spark/example/SparkStreamingPulsarReceiverExample.java">here</a>.
 In this example, the number of messages which contain the string &quot;Pulsar&quot; in received messages is counted.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/adaptors-kafka"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/adaptors-storm"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#prerequisites">Prerequisites</a><ul class="toc-headings"><li><a href="#maven" [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/adaptors-kafka"><span class="arrow-prev">← </span><span>Pulsar adaptor for Apache Kafka</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/adaptors-storm"><span>Pulsar adaptor for Apache Storm</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#prerequisites">Prerequisites</a><ul clas [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/adaptors-spark/index.html b/content/docs/en/2.1.0-incubating/adaptors-spark/index.html
index 012c396..49aa48d 100644
--- a/content/docs/en/2.1.0-incubating/adaptors-spark/index.html
+++ b/content/docs/en/2.1.0-incubating/adaptors-spark/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar adaptor for Apache Spark · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="The Spark Streaming receiver for Pulsar is a custom receiver that enables Apache [Spark Streaming](https://spark.apache.org/streaming/) to receive data from Pulsar."/><meta name="docsea [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar adaptor for Apache Spark · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;The Spark Streaming receiver for Pulsar is a custom receiver that enables Apache &lt;a href=&quot;https://spark.apache.org/streaming/&quot;&gt;Spark Streaming&lt;/a&gt; to rece [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar adaptor for Apache Spark · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;The Spark Streaming receiver for Pulsar is a custom receiver that enables Apache &lt;a href=&quot;https://spark.apache.org/ [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/adaptors-spark.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar adaptor for Apache Spark</h1></header><article><div><span><p>The Spark Streaming receiver for Pulsar is a custom receiver that enables [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/adaptors-spark.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar adaptor for Apache Spark</h1></header><article><div><span><p>The Spark Streaming receiver for Pulsar is a custom receiver that enables Apache <a href=" [...]
 <p>An application can receive data in <a href="https://spark.apache.org/docs/latest/programming-guide.html#resilient-distributed-datasets-rdds">Resilient Distributed Dataset</a> (RDD) format via the Spark Streaming Pulsar receiver and can process it in a variety of ways.</p>
 <h2><a class="anchor" aria-hidden="true" id="prerequisites"></a><a href="#prerequisites" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.8 [...]
 <p>To use the receiver, include a dependency for the <code>pulsar-spark</code> library in your Java configuration.</p>
@@ -86,7 +88,7 @@ JavaReceiverInputDStream&lt;<span class="hljs-keyword">byte</span>[]&gt; msgs =
 <h2><a class="anchor" aria-hidden="true" id="example"></a><a href="#example" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1- [...]
 <p>You can find a complete example <a href="https://github.com/apache/incubator-pulsar/tree/master/pulsar-spark/src/test/java/org/apache/pulsar/spark/example/SparkStreamingPulsarReceiverExample.java">here</a>.
 In this example, the number of messages which contain the string &quot;Pulsar&quot; in received messages is counted.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/adaptors-kafka"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/adaptors-storm"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#prerequisites">Prerequisites</a><ul class="toc-headings"><li><a href="#maven" [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/adaptors-kafka"><span class="arrow-prev">← </span><span>Pulsar adaptor for Apache Kafka</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/adaptors-storm"><span>Pulsar adaptor for Apache Storm</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#prerequisites">Prerequisites</a><ul clas [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/adaptors-storm.html b/content/docs/en/2.1.0-incubating/adaptors-storm.html
index 9a39806..d0fa70c 100644
--- a/content/docs/en/2.1.0-incubating/adaptors-storm.html
+++ b/content/docs/en/2.1.0-incubating/adaptors-storm.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar adaptor for Apache Storm · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar Storm is an adaptor for integrating with [Apache Storm](http://storm.apache.org/) topologies. It provides core Storm implementations for sending and receiving data."/><meta name= [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar adaptor for Apache Storm · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar Storm is an adaptor for integrating with &lt;a href=&quot;http://storm.apache.org/&quot;&gt;Apache Storm&lt;/a&gt; topologies. It provides core Storm implementations for [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar adaptor for Apache Storm · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar Storm is an adaptor for integrating with &lt;a href=&quot;http://storm.apache.org/&quot;&gt;Apache Storm&lt;/a&gt; t [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/adaptors-storm.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar adaptor for Apache Storm</h1></header><article><div><span><p>Pulsar Storm is an adaptor for integrating with <a href="http://storm.apa [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/adaptors-storm.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar adaptor for Apache Storm</h1></header><article><div><span><p>Pulsar Storm is an adaptor for integrating with <a href="http://storm.apache.org/">Apache  [...]
 <p>An application can inject data into a Storm topology via a generic Pulsar spout, as well as consume data from a Storm topology via a generic Pulsar bolt.</p>
 <h2><a class="anchor" aria-hidden="true" id="using-the-pulsar-storm-adaptor"></a><a href="#using-the-pulsar-storm-adaptor" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 1 [...]
 <p>Include dependency for Pulsar Storm Adaptor:</p>
@@ -126,7 +128,7 @@ PulsarBolt bolt = <span class="hljs-keyword">new</span> PulsarBolt(boltConf, cli
 </code></pre>
 <h2><a class="anchor" aria-hidden="true" id="example"></a><a href="#example" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1- [...]
 <p>You can find a complete example <a href="https://github.com/apache/incubator-pulsar/tree/master/pulsar-storm/src/test/java/org/apache/pulsar/storm/example/StormExample.java">here</a>.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/adaptors-spark"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-tiered-storage"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#using-the-pulsar-storm-adaptor">Using the Pulsar Storm Adaptor</a>< [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/adaptors-spark"><span class="arrow-prev">← </span><span>Pulsar adaptor for Apache Spark</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-tiered-storage"><span>Tiered Storage</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#using-the-pulsar-storm-adaptor">Using the Pulsa [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/adaptors-storm/index.html b/content/docs/en/2.1.0-incubating/adaptors-storm/index.html
index 9a39806..d0fa70c 100644
--- a/content/docs/en/2.1.0-incubating/adaptors-storm/index.html
+++ b/content/docs/en/2.1.0-incubating/adaptors-storm/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar adaptor for Apache Storm · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar Storm is an adaptor for integrating with [Apache Storm](http://storm.apache.org/) topologies. It provides core Storm implementations for sending and receiving data."/><meta name= [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar adaptor for Apache Storm · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar Storm is an adaptor for integrating with &lt;a href=&quot;http://storm.apache.org/&quot;&gt;Apache Storm&lt;/a&gt; topologies. It provides core Storm implementations for [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar adaptor for Apache Storm · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar Storm is an adaptor for integrating with &lt;a href=&quot;http://storm.apache.org/&quot;&gt;Apache Storm&lt;/a&gt; t [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/adaptors-storm.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar adaptor for Apache Storm</h1></header><article><div><span><p>Pulsar Storm is an adaptor for integrating with <a href="http://storm.apa [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/adaptors-storm.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar adaptor for Apache Storm</h1></header><article><div><span><p>Pulsar Storm is an adaptor for integrating with <a href="http://storm.apache.org/">Apache  [...]
 <p>An application can inject data into a Storm topology via a generic Pulsar spout, as well as consume data from a Storm topology via a generic Pulsar bolt.</p>
 <h2><a class="anchor" aria-hidden="true" id="using-the-pulsar-storm-adaptor"></a><a href="#using-the-pulsar-storm-adaptor" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 1 [...]
 <p>Include dependency for Pulsar Storm Adaptor:</p>
@@ -126,7 +128,7 @@ PulsarBolt bolt = <span class="hljs-keyword">new</span> PulsarBolt(boltConf, cli
 </code></pre>
 <h2><a class="anchor" aria-hidden="true" id="example"></a><a href="#example" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1- [...]
 <p>You can find a complete example <a href="https://github.com/apache/incubator-pulsar/tree/master/pulsar-storm/src/test/java/org/apache/pulsar/storm/example/StormExample.java">here</a>.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/adaptors-spark"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-tiered-storage"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#using-the-pulsar-storm-adaptor">Using the Pulsar Storm Adaptor</a>< [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/adaptors-spark"><span class="arrow-prev">← </span><span>Pulsar adaptor for Apache Spark</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-tiered-storage"><span>Tiered Storage</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#using-the-pulsar-storm-adaptor">Using the Pulsa [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/admin-api-brokers.html b/content/docs/en/2.1.0-incubating/admin-api-brokers.html
index 536dc2d..157a80e 100644
--- a/content/docs/en/2.1.0-incubating/admin-api-brokers.html
+++ b/content/docs/en/2.1.0-incubating/admin-api-brokers.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing Brokers · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar brokers consist of two components:"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Managing Brokers [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing Brokers · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar brokers consist of two components:&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Managing Brokers · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar brokers consist of two components:&lt;/p&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-brokers.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing Brokers</h1></header><article><div><span><p>Pulsar brokers consist of two components:</p>
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-brokers.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing Brokers</h1></header><article><div><span><p>Pulsar brokers consist of two components:</p>
 <ol>
 <li>An HTTP server exposing a <a href="https://pulsar.incubator.apache.org/en/admin-rest-api#/">REST</a>
  interface administration and <a href="/docs/en/2.1.0-incubating/reference-terminology#topic">topic</a> lookup.</li>
@@ -140,7 +142,7 @@ brokerShutdownTimeoutMs:100
 <h4><a class="anchor" aria-hidden="true" id="java-4"></a><a href="#java-4" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2. [...]
 <pre><code class="hljs css language-java">admin.brokers().getAllDynamicConfigurations();
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-tenants"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-namespaces"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#brokers-resources">Brokers resources</a><ul class="toc-headings"><li [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-tenants"><span class="arrow-prev">← </span><span>Managing Tenants</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-namespaces"><span>Managing Namespaces</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#brokers-resources">Brokers resources</a><ul class="toc-hea [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/admin-api-brokers/index.html b/content/docs/en/2.1.0-incubating/admin-api-brokers/index.html
index 536dc2d..157a80e 100644
--- a/content/docs/en/2.1.0-incubating/admin-api-brokers/index.html
+++ b/content/docs/en/2.1.0-incubating/admin-api-brokers/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing Brokers · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar brokers consist of two components:"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Managing Brokers [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing Brokers · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar brokers consist of two components:&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Managing Brokers · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar brokers consist of two components:&lt;/p&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-brokers.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing Brokers</h1></header><article><div><span><p>Pulsar brokers consist of two components:</p>
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-brokers.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing Brokers</h1></header><article><div><span><p>Pulsar brokers consist of two components:</p>
 <ol>
 <li>An HTTP server exposing a <a href="https://pulsar.incubator.apache.org/en/admin-rest-api#/">REST</a>
  interface administration and <a href="/docs/en/2.1.0-incubating/reference-terminology#topic">topic</a> lookup.</li>
@@ -140,7 +142,7 @@ brokerShutdownTimeoutMs:100
 <h4><a class="anchor" aria-hidden="true" id="java-4"></a><a href="#java-4" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2. [...]
 <pre><code class="hljs css language-java">admin.brokers().getAllDynamicConfigurations();
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-tenants"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-namespaces"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#brokers-resources">Brokers resources</a><ul class="toc-headings"><li [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-tenants"><span class="arrow-prev">← </span><span>Managing Tenants</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-namespaces"><span>Managing Namespaces</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#brokers-resources">Brokers resources</a><ul class="toc-hea [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/admin-api-clusters.html b/content/docs/en/2.1.0-incubating/admin-api-clusters.html
index 6847eac..6e9e6fb 100644
--- a/content/docs/en/2.1.0-incubating/admin-api-clusters.html
+++ b/content/docs/en/2.1.0-incubating/admin-api-clusters.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing Clusters · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar clusters consist of one or more Pulsar [brokers](/docs/en/2.1.0-incubating/reference-terminology#broker), one or more [BookKeeper](/docs/en/2.1.0-incubating/reference-terminology#bookkeeper)"/ [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing Clusters · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar clusters consist of one or more Pulsar &lt;a href=&quot;/docs/en/2.1.0-incubating/reference-terminology#broker&quot;&gt;brokers&lt;/a&gt;, one or more &lt;a href=&quot;/docs/en/2.1.0- [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Managing Clusters · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar clusters consist of one or more Pulsar &lt;a href=&quot;/docs/en/2.1.0-incubating/reference-terminology#broker&quot;&gt;brokers&lt [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-clusters.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing Clusters</h1></header><article><div><span><p>Pulsar clusters consist of one or more Pulsar <a href="/docs/en/2.1.0-incubating/re [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-clusters.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing Clusters</h1></header><article><div><span><p>Pulsar clusters consist of one or more Pulsar <a href="/docs/en/2.1.0-incubating/reference-terminolo [...]
 servers (aka <a href="/docs/en/2.1.0-incubating/reference-terminology#bookie">bookies</a>), and a <a href="https://zookeeper.apache.org">ZooKeeper</a> cluster that provides configuration and coordination management.</p>
 <p>Clusters can be managed via:</p>
 <ul>
@@ -184,7 +186,7 @@ cluster-2
 <h4><a class="anchor" aria-hidden="true" id="java-5"></a><a href="#java-5" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2. [...]
 <pre><code class="hljs css language-java">admin.clusters().updatePeerClusterNames(clusterName, peerClusterList);
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-overview"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-tenants"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#clusters-resources">Clusters resources</a><ul class="toc-headings"><li [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-overview"><span class="arrow-prev">← </span><span>The Pulsar admin interface</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-tenants"><span>Managing Tenants</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#clusters-resources">Clusters resources</a><ul class=" [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/admin-api-clusters/index.html b/content/docs/en/2.1.0-incubating/admin-api-clusters/index.html
index 6847eac..6e9e6fb 100644
--- a/content/docs/en/2.1.0-incubating/admin-api-clusters/index.html
+++ b/content/docs/en/2.1.0-incubating/admin-api-clusters/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing Clusters · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar clusters consist of one or more Pulsar [brokers](/docs/en/2.1.0-incubating/reference-terminology#broker), one or more [BookKeeper](/docs/en/2.1.0-incubating/reference-terminology#bookkeeper)"/ [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing Clusters · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar clusters consist of one or more Pulsar &lt;a href=&quot;/docs/en/2.1.0-incubating/reference-terminology#broker&quot;&gt;brokers&lt;/a&gt;, one or more &lt;a href=&quot;/docs/en/2.1.0- [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Managing Clusters · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar clusters consist of one or more Pulsar &lt;a href=&quot;/docs/en/2.1.0-incubating/reference-terminology#broker&quot;&gt;brokers&lt [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-clusters.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing Clusters</h1></header><article><div><span><p>Pulsar clusters consist of one or more Pulsar <a href="/docs/en/2.1.0-incubating/re [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-clusters.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing Clusters</h1></header><article><div><span><p>Pulsar clusters consist of one or more Pulsar <a href="/docs/en/2.1.0-incubating/reference-terminolo [...]
 servers (aka <a href="/docs/en/2.1.0-incubating/reference-terminology#bookie">bookies</a>), and a <a href="https://zookeeper.apache.org">ZooKeeper</a> cluster that provides configuration and coordination management.</p>
 <p>Clusters can be managed via:</p>
 <ul>
@@ -184,7 +186,7 @@ cluster-2
 <h4><a class="anchor" aria-hidden="true" id="java-5"></a><a href="#java-5" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2. [...]
 <pre><code class="hljs css language-java">admin.clusters().updatePeerClusterNames(clusterName, peerClusterList);
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-overview"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-tenants"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#clusters-resources">Clusters resources</a><ul class="toc-headings"><li [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-overview"><span class="arrow-prev">← </span><span>The Pulsar admin interface</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-tenants"><span>Managing Tenants</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#clusters-resources">Clusters resources</a><ul class=" [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/admin-api-namespaces.html b/content/docs/en/2.1.0-incubating/admin-api-namespaces.html
index 4fda515..142fdbc 100644
--- a/content/docs/en/2.1.0-incubating/admin-api-namespaces.html
+++ b/content/docs/en/2.1.0-incubating/admin-api-namespaces.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing Namespaces · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar [namespaces](/docs/en/2.1.0-incubating/reference-terminology#namespace) are logical groupings of [topics](/docs/en/2.1.0-incubating/reference-terminology#topic)."/><meta name="docsearch:vers [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing Namespaces · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar &lt;a href=&quot;/docs/en/2.1.0-incubating/reference-terminology#namespace&quot;&gt;namespaces&lt;/a&gt; are logical groupings of &lt;a href=&quot;/docs/en/2.1.0-incubating/referenc [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Managing Namespaces · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar &lt;a href=&quot;/docs/en/2.1.0-incubating/reference-terminology#namespace&quot;&gt;namespaces&lt;/a&gt; are logical groupings o [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-namespaces.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing Namespaces</h1></header><article><div><span><p>Pulsar <a href="/docs/en/2.1.0-incubating/reference-terminology#namespace">name [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-namespaces.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing Namespaces</h1></header><article><div><span><p>Pulsar <a href="/docs/en/2.1.0-incubating/reference-terminology#namespace">namespaces</a> are lo [...]
 <p>Namespaces can be managed via:</p>
 <ul>
 <li>The <a href="/docs/en/2.1.0-incubating/pulsar-admin#clusters"><code>namespaces</code></a> command of the <a href="/docs/en/2.1.0-incubating/pulsar-admin"><code>pulsar-admin</code></a> tool</li>
@@ -393,7 +395,7 @@ disables the throttling.</p>
 </code></pre>
 <h4><a class="anchor" aria-hidden="true" id="rest-api-3"></a><a href="#rest-api-3" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1 [...]
 <h4><a class="anchor" aria-hidden="true" id="java-22"></a><a href="#java-22" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1- [...]
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-brokers"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-permissions"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#namespaces-resources">Namespaces resources</a><ul class="toc-headin [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-brokers"><span class="arrow-prev">← </span><span>Managing Brokers</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-permissions"><span>Managing permissions</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#namespaces-resources">Namespaces resources</a><ul class= [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/admin-api-namespaces/index.html b/content/docs/en/2.1.0-incubating/admin-api-namespaces/index.html
index 4fda515..142fdbc 100644
--- a/content/docs/en/2.1.0-incubating/admin-api-namespaces/index.html
+++ b/content/docs/en/2.1.0-incubating/admin-api-namespaces/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing Namespaces · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar [namespaces](/docs/en/2.1.0-incubating/reference-terminology#namespace) are logical groupings of [topics](/docs/en/2.1.0-incubating/reference-terminology#topic)."/><meta name="docsearch:vers [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing Namespaces · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar &lt;a href=&quot;/docs/en/2.1.0-incubating/reference-terminology#namespace&quot;&gt;namespaces&lt;/a&gt; are logical groupings of &lt;a href=&quot;/docs/en/2.1.0-incubating/referenc [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Managing Namespaces · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar &lt;a href=&quot;/docs/en/2.1.0-incubating/reference-terminology#namespace&quot;&gt;namespaces&lt;/a&gt; are logical groupings o [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-namespaces.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing Namespaces</h1></header><article><div><span><p>Pulsar <a href="/docs/en/2.1.0-incubating/reference-terminology#namespace">name [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-namespaces.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing Namespaces</h1></header><article><div><span><p>Pulsar <a href="/docs/en/2.1.0-incubating/reference-terminology#namespace">namespaces</a> are lo [...]
 <p>Namespaces can be managed via:</p>
 <ul>
 <li>The <a href="/docs/en/2.1.0-incubating/pulsar-admin#clusters"><code>namespaces</code></a> command of the <a href="/docs/en/2.1.0-incubating/pulsar-admin"><code>pulsar-admin</code></a> tool</li>
@@ -393,7 +395,7 @@ disables the throttling.</p>
 </code></pre>
 <h4><a class="anchor" aria-hidden="true" id="rest-api-3"></a><a href="#rest-api-3" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1 [...]
 <h4><a class="anchor" aria-hidden="true" id="java-22"></a><a href="#java-22" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1- [...]
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-brokers"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-permissions"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#namespaces-resources">Namespaces resources</a><ul class="toc-headin [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-brokers"><span class="arrow-prev">← </span><span>Managing Brokers</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-permissions"><span>Managing permissions</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#namespaces-resources">Namespaces resources</a><ul class= [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/admin-api-non-persistent-topics.html b/content/docs/en/2.1.0-incubating/admin-api-non-persistent-topics.html
index 20fbbbb..6c0a42d 100644
--- a/content/docs/en/2.1.0-incubating/admin-api-non-persistent-topics.html
+++ b/content/docs/en/2.1.0-incubating/admin-api-non-persistent-topics.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing non-persistent topics · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Non-persistent can be used in applications that only want to consume real time published messages and"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:l [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing non-persistent topics · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Non-persistent can be used in applications that only want to consume real time published messages and&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Managing non-persistent topics · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Non-persistent can be used in applications that only want to consume real time published messages and&lt;/p&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-non-persistent-topics.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing non-persistent topics</h1></header><article><div><span><p>Non-persistent can be used in applications that only want [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-non-persistent-topics.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing non-persistent topics</h1></header><article><div><span><p>Non-persistent can be used in applications that only want to consume real  [...]
 do not need persistent guarantee that can also reduce message-publish latency by removing overhead of
 persisting messages.</p>
 <p>In all of the instructions and commands below, the topic name structure is:</p>
@@ -219,7 +221,7 @@ admin.nonPersistentTopics().getPartitionedTopicMetadata(topicName);
 <pre><code class="hljs css language-java">String topic = <span class="hljs-string">"non-persistent://my-tenantmy-namespace/my-topic"</span>;
 admin.nonPersistentTopics().unload(topic);
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-persistent-topics"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-partitioned-topics"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#non-persistent-topics-resources">Non-persistent to [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-persistent-topics"><span class="arrow-prev">← </span><span>Managing persistent topics</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-partitioned-topics"><span>Managing partitioned topics</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#non-persistent-topics- [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/admin-api-non-persistent-topics/index.html b/content/docs/en/2.1.0-incubating/admin-api-non-persistent-topics/index.html
index 20fbbbb..6c0a42d 100644
--- a/content/docs/en/2.1.0-incubating/admin-api-non-persistent-topics/index.html
+++ b/content/docs/en/2.1.0-incubating/admin-api-non-persistent-topics/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing non-persistent topics · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Non-persistent can be used in applications that only want to consume real time published messages and"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:l [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing non-persistent topics · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Non-persistent can be used in applications that only want to consume real time published messages and&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Managing non-persistent topics · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Non-persistent can be used in applications that only want to consume real time published messages and&lt;/p&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-non-persistent-topics.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing non-persistent topics</h1></header><article><div><span><p>Non-persistent can be used in applications that only want [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-non-persistent-topics.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing non-persistent topics</h1></header><article><div><span><p>Non-persistent can be used in applications that only want to consume real  [...]
 do not need persistent guarantee that can also reduce message-publish latency by removing overhead of
 persisting messages.</p>
 <p>In all of the instructions and commands below, the topic name structure is:</p>
@@ -219,7 +221,7 @@ admin.nonPersistentTopics().getPartitionedTopicMetadata(topicName);
 <pre><code class="hljs css language-java">String topic = <span class="hljs-string">"non-persistent://my-tenantmy-namespace/my-topic"</span>;
 admin.nonPersistentTopics().unload(topic);
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-persistent-topics"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-partitioned-topics"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#non-persistent-topics-resources">Non-persistent to [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-persistent-topics"><span class="arrow-prev">← </span><span>Managing persistent topics</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-partitioned-topics"><span>Managing partitioned topics</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#non-persistent-topics- [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/admin-api-overview.html b/content/docs/en/2.1.0-incubating/admin-api-overview.html
index f711ca2..133928a 100644
--- a/content/docs/en/2.1.0-incubating/admin-api-overview.html
+++ b/content/docs/en/2.1.0-incubating/admin-api-overview.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar admin interface · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="The Pulsar admin interface enables you to manage all of the important entities in a Pulsar [instance](/docs/en/2.1.0-incubating/reference-terminology#instance), such as [tenants](/docs/en/2. [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar admin interface · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;The Pulsar admin interface enables you to manage all of the important entities in a Pulsar &lt;a href=&quot;/docs/en/2.1.0-incubating/reference-terminology#instance&quot;&gt;instanc [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="The Pulsar admin interface · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;The Pulsar admin interface enables you to manage all of the important entities in a Pulsar &lt;a href=&quot;/docs/en/2.1.0-incub [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-overview.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar admin interface</h1></header><article><div><span><p>The Pulsar admin interface enables you to manage all of the important enti [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-overview.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar admin interface</h1></header><article><div><span><p>The Pulsar admin interface enables you to manage all of the important entities in a Pulsar  [...]
 <p>You can currently interact with the admin interface via:</p>
 <ul>
 <li>Making HTTP calls against the admin <a href="https://pulsar.incubator.apache.org/en/admin-rest-api#/">REST</a>
@@ -108,7 +110,7 @@ config.setTlsTrustCertsFilePath(tlsTrustCertsFilePath);
 
 PulsarAdmin admin = <span class="hljs-keyword">new</span> PulsarAdmin(url, config);
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/client-libraries-websocket"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-clusters"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#admin-setup">Admin setup</a><ul class="toc-headings"><li><a h [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/client-libraries-websocket"><span class="arrow-prev">← </span><span class="function-name-prevnext">Pulsar&#x27;s WebSocket API</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-clusters"><span>Managing Clusters</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#admin-setup [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/admin-api-overview/index.html b/content/docs/en/2.1.0-incubating/admin-api-overview/index.html
index f711ca2..133928a 100644
--- a/content/docs/en/2.1.0-incubating/admin-api-overview/index.html
+++ b/content/docs/en/2.1.0-incubating/admin-api-overview/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar admin interface · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="The Pulsar admin interface enables you to manage all of the important entities in a Pulsar [instance](/docs/en/2.1.0-incubating/reference-terminology#instance), such as [tenants](/docs/en/2. [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar admin interface · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;The Pulsar admin interface enables you to manage all of the important entities in a Pulsar &lt;a href=&quot;/docs/en/2.1.0-incubating/reference-terminology#instance&quot;&gt;instanc [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="The Pulsar admin interface · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;The Pulsar admin interface enables you to manage all of the important entities in a Pulsar &lt;a href=&quot;/docs/en/2.1.0-incub [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-overview.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar admin interface</h1></header><article><div><span><p>The Pulsar admin interface enables you to manage all of the important enti [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-overview.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar admin interface</h1></header><article><div><span><p>The Pulsar admin interface enables you to manage all of the important entities in a Pulsar  [...]
 <p>You can currently interact with the admin interface via:</p>
 <ul>
 <li>Making HTTP calls against the admin <a href="https://pulsar.incubator.apache.org/en/admin-rest-api#/">REST</a>
@@ -108,7 +110,7 @@ config.setTlsTrustCertsFilePath(tlsTrustCertsFilePath);
 
 PulsarAdmin admin = <span class="hljs-keyword">new</span> PulsarAdmin(url, config);
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/client-libraries-websocket"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-clusters"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#admin-setup">Admin setup</a><ul class="toc-headings"><li><a h [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/client-libraries-websocket"><span class="arrow-prev">← </span><span class="function-name-prevnext">Pulsar&#x27;s WebSocket API</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-clusters"><span>Managing Clusters</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#admin-setup [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/admin-api-partitioned-topics.html b/content/docs/en/2.1.0-incubating/admin-api-partitioned-topics.html
index da48c85..5643b17 100644
--- a/content/docs/en/2.1.0-incubating/admin-api-partitioned-topics.html
+++ b/content/docs/en/2.1.0-incubating/admin-api-partitioned-topics.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing partitioned topics · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="You can use Pulsar&#x27;s [admin API](/docs/en/2.1.0-incubating/admin-api-overview) to create and manage partitioned topics."/><meta name="docsearch:version" content="2.1.0-incubating"/><me [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing partitioned topics · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;You can use Pulsar&#x27;s &lt;a href=&quot;/docs/en/2.1.0-incubating/admin-api-overview&quot;&gt;admin API&lt;/a&gt; to create and manage partitioned topics.&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Managing partitioned topics · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;You can use Pulsar&#x27;s &lt;a href=&quot;/docs/en/2.1.0-incubating/admin-api-overview&quot;&gt;admin API&lt;/a&gt; to create  [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-partitioned-topics.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing partitioned topics</h1></header><article><div><span><p>You can use Pulsar's <a href="/docs/en/2.1.0-incubating/admin-a [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-partitioned-topics.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing partitioned topics</h1></header><article><div><span><p>You can use Pulsar's <a href="/docs/en/2.1.0-incubating/admin-api-overview">admi [...]
 <p>In all of the instructions and commands below, the topic name structure is:</p>
 <pre><code class="hljs css language-shell">persistent://tenant/namespace/topic
 </code></pre>
@@ -302,7 +304,7 @@ persistent://tenant/namespace/topic2
 <h4><a class="anchor" aria-hidden="true" id="java-6"></a><a href="#java-6" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2. [...]
 <pre><code class="hljs css language-java">admin.persistentTopics().getInternalStats(persistentTopic);
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-non-persistent-topics"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-schemas"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#partitioned-topics-resources">Partitioned topics resource [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-non-persistent-topics"><span class="arrow-prev">← </span><span>Managing non-persistent topics</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-schemas"><span>Managing Schemas</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#partitioned-topics-resources">Partit [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/admin-api-partitioned-topics/index.html b/content/docs/en/2.1.0-incubating/admin-api-partitioned-topics/index.html
index da48c85..5643b17 100644
--- a/content/docs/en/2.1.0-incubating/admin-api-partitioned-topics/index.html
+++ b/content/docs/en/2.1.0-incubating/admin-api-partitioned-topics/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing partitioned topics · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="You can use Pulsar&#x27;s [admin API](/docs/en/2.1.0-incubating/admin-api-overview) to create and manage partitioned topics."/><meta name="docsearch:version" content="2.1.0-incubating"/><me [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing partitioned topics · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;You can use Pulsar&#x27;s &lt;a href=&quot;/docs/en/2.1.0-incubating/admin-api-overview&quot;&gt;admin API&lt;/a&gt; to create and manage partitioned topics.&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Managing partitioned topics · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;You can use Pulsar&#x27;s &lt;a href=&quot;/docs/en/2.1.0-incubating/admin-api-overview&quot;&gt;admin API&lt;/a&gt; to create  [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-partitioned-topics.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing partitioned topics</h1></header><article><div><span><p>You can use Pulsar's <a href="/docs/en/2.1.0-incubating/admin-a [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-partitioned-topics.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing partitioned topics</h1></header><article><div><span><p>You can use Pulsar's <a href="/docs/en/2.1.0-incubating/admin-api-overview">admi [...]
 <p>In all of the instructions and commands below, the topic name structure is:</p>
 <pre><code class="hljs css language-shell">persistent://tenant/namespace/topic
 </code></pre>
@@ -302,7 +304,7 @@ persistent://tenant/namespace/topic2
 <h4><a class="anchor" aria-hidden="true" id="java-6"></a><a href="#java-6" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2. [...]
 <pre><code class="hljs css language-java">admin.persistentTopics().getInternalStats(persistentTopic);
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-non-persistent-topics"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-schemas"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#partitioned-topics-resources">Partitioned topics resource [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-non-persistent-topics"><span class="arrow-prev">← </span><span>Managing non-persistent topics</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-schemas"><span>Managing Schemas</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#partitioned-topics-resources">Partit [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/admin-api-permissions.html b/content/docs/en/2.1.0-incubating/admin-api-permissions.html
index 9ec3892..6ac8c02 100644
--- a/content/docs/en/2.1.0-incubating/admin-api-permissions.html
+++ b/content/docs/en/2.1.0-incubating/admin-api-permissions.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing permissions · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Permissions in Pulsar are managed at the [namespace](/docs/en/2.1.0-incubating/reference-terminology#namespace) level"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docse [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing permissions · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Permissions in Pulsar are managed at the &lt;a href=&quot;/docs/en/2.1.0-incubating/reference-terminology#namespace&quot;&gt;namespace&lt;/a&gt; level&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Managing permissions · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Permissions in Pulsar are managed at the &lt;a href=&quot;/docs/en/2.1.0-incubating/reference-terminology#namespace&quot;&gt;namespace [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-permissions.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing permissions</h1></header><article><div><span><p>Permissions in Pulsar are managed at the <a href="/docs/en/2.1.0-incubating/r [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-permissions.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing permissions</h1></header><article><div><span><p>Permissions in Pulsar are managed at the <a href="/docs/en/2.1.0-incubating/reference-terminol [...]
 (that is, within <a href="/docs/en/2.1.0-incubating/reference-terminology#tenant">tenants</a> and <a href="/docs/en/2.1.0-incubating/reference-terminology#cluster">clusters</a>).</p>
 <h2><a class="anchor" aria-hidden="true" id="grant-permissions"></a><a href="#grant-permissions" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2- [...]
 <p>You can grant permissions to specific roles for lists of operations such as <code>produce</code> and <code>consume</code>.</p>
@@ -112,7 +114,7 @@ Roles <code>my.1.role</code>, <code>my.2.role</code>, <code>my.foo.role</code>,
 <h3><a class="anchor" aria-hidden="true" id="java-2"></a><a href="#java-2" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2. [...]
 <pre><code class="hljs css language-java">admin.namespaces().revokePermissionsOnNamespace(namespace, role);
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-namespaces"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-persistent-topics"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#grant-permissions">Grant permissions</a><ul class="toc-hea [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-namespaces"><span class="arrow-prev">← </span><span>Managing Namespaces</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-persistent-topics"><span>Managing persistent topics</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#grant-permissions">Grant permissions</ [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/admin-api-permissions/index.html b/content/docs/en/2.1.0-incubating/admin-api-permissions/index.html
index 9ec3892..6ac8c02 100644
--- a/content/docs/en/2.1.0-incubating/admin-api-permissions/index.html
+++ b/content/docs/en/2.1.0-incubating/admin-api-permissions/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing permissions · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Permissions in Pulsar are managed at the [namespace](/docs/en/2.1.0-incubating/reference-terminology#namespace) level"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docse [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing permissions · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Permissions in Pulsar are managed at the &lt;a href=&quot;/docs/en/2.1.0-incubating/reference-terminology#namespace&quot;&gt;namespace&lt;/a&gt; level&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Managing permissions · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Permissions in Pulsar are managed at the &lt;a href=&quot;/docs/en/2.1.0-incubating/reference-terminology#namespace&quot;&gt;namespace [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-permissions.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing permissions</h1></header><article><div><span><p>Permissions in Pulsar are managed at the <a href="/docs/en/2.1.0-incubating/r [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-permissions.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing permissions</h1></header><article><div><span><p>Permissions in Pulsar are managed at the <a href="/docs/en/2.1.0-incubating/reference-terminol [...]
 (that is, within <a href="/docs/en/2.1.0-incubating/reference-terminology#tenant">tenants</a> and <a href="/docs/en/2.1.0-incubating/reference-terminology#cluster">clusters</a>).</p>
 <h2><a class="anchor" aria-hidden="true" id="grant-permissions"></a><a href="#grant-permissions" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2- [...]
 <p>You can grant permissions to specific roles for lists of operations such as <code>produce</code> and <code>consume</code>.</p>
@@ -112,7 +114,7 @@ Roles <code>my.1.role</code>, <code>my.2.role</code>, <code>my.foo.role</code>,
 <h3><a class="anchor" aria-hidden="true" id="java-2"></a><a href="#java-2" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2. [...]
 <pre><code class="hljs css language-java">admin.namespaces().revokePermissionsOnNamespace(namespace, role);
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-namespaces"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-persistent-topics"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#grant-permissions">Grant permissions</a><ul class="toc-hea [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-namespaces"><span class="arrow-prev">← </span><span>Managing Namespaces</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-persistent-topics"><span>Managing persistent topics</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#grant-permissions">Grant permissions</ [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/admin-api-persistent-topics.html b/content/docs/en/2.1.0-incubating/admin-api-persistent-topics.html
index ca06cb8..2afdad3 100644
--- a/content/docs/en/2.1.0-incubating/admin-api-persistent-topics.html
+++ b/content/docs/en/2.1.0-incubating/admin-api-persistent-topics.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing persistent topics · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Persistent helps to access topic which is a logical endpoint for publishing and consuming messages. Producers publish messages to the topic and consumers subscribe to the topic, to consume m [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing persistent topics · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Persistent helps to access topic which is a logical endpoint for publishing and consuming messages. Producers publish messages to the topic and consumers subscribe to the topic, to  [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Managing persistent topics · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Persistent helps to access topic which is a logical endpoint for publishing and consuming messages. Producers publish messages t [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-persistent-topics.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing persistent topics</h1></header><article><div><span><p>Persistent helps to access topic which is a logical endpoint for  [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-persistent-topics.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing persistent topics</h1></header><article><div><span><p>Persistent helps to access topic which is a logical endpoint for publishing and co [...]
 <p>In all of the instructions and commands below, the topic name structure is:</p>
 <pre><code class="hljs css language-shell">persistent://tenant/namespace/topic
 </code></pre>
@@ -428,7 +430,7 @@ admin.persistentTopics().getSubscriptions(topic);
 String subscriptionName = <span class="hljs-string">"my-subscription"</span>;
 admin.persistentTopics().deleteSubscription(topic, subscriptionName);
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-permissions"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-non-persistent-topics"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#persistent-topics-resources">Persistent topics resour [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-permissions"><span class="arrow-prev">← </span><span>Managing permissions</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-non-persistent-topics"><span>Managing non-persistent topics</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#persistent-topics-resources" [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/admin-api-persistent-topics/index.html b/content/docs/en/2.1.0-incubating/admin-api-persistent-topics/index.html
index ca06cb8..2afdad3 100644
--- a/content/docs/en/2.1.0-incubating/admin-api-persistent-topics/index.html
+++ b/content/docs/en/2.1.0-incubating/admin-api-persistent-topics/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing persistent topics · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Persistent helps to access topic which is a logical endpoint for publishing and consuming messages. Producers publish messages to the topic and consumers subscribe to the topic, to consume m [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing persistent topics · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Persistent helps to access topic which is a logical endpoint for publishing and consuming messages. Producers publish messages to the topic and consumers subscribe to the topic, to  [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Managing persistent topics · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Persistent helps to access topic which is a logical endpoint for publishing and consuming messages. Producers publish messages t [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-persistent-topics.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing persistent topics</h1></header><article><div><span><p>Persistent helps to access topic which is a logical endpoint for  [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-persistent-topics.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing persistent topics</h1></header><article><div><span><p>Persistent helps to access topic which is a logical endpoint for publishing and co [...]
 <p>In all of the instructions and commands below, the topic name structure is:</p>
 <pre><code class="hljs css language-shell">persistent://tenant/namespace/topic
 </code></pre>
@@ -428,7 +430,7 @@ admin.persistentTopics().getSubscriptions(topic);
 String subscriptionName = <span class="hljs-string">"my-subscription"</span>;
 admin.persistentTopics().deleteSubscription(topic, subscriptionName);
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-permissions"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-non-persistent-topics"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#persistent-topics-resources">Persistent topics resour [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-permissions"><span class="arrow-prev">← </span><span>Managing permissions</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-non-persistent-topics"><span>Managing non-persistent topics</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#persistent-topics-resources" [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/admin-api-schemas.html b/content/docs/en/2.1.0-incubating/admin-api-schemas.html
index ea4b6a4..d97903b 100644
--- a/content/docs/en/2.1.0-incubating/admin-api-schemas.html
+++ b/content/docs/en/2.1.0-incubating/admin-api-schemas.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing Schemas · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Schemas, like other entities in Pulsar, can be managed using the [admin API](/docs/en/2.1.0-incubating/admin-api-overview). "/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="do [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing Schemas · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Schemas, like other entities in Pulsar, can be managed using the &lt;a href=&quot;/docs/en/2.1.0-incubating/admin-api-overview&quot;&gt;admin API&lt;/a&gt;.&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Managing Schemas · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Schemas, like other entities in Pulsar, can be managed using the &lt;a href=&quot;/docs/en/2.1.0-incubating/admin-api-overview&quot;&gt;ad [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-schemas.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing Schemas</h1></header><article><div><span><p>Schemas, like other entities in Pulsar, can be managed using the <a href="/docs/en/2. [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-schemas.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing Schemas</h1></header><article><div><span><p>Schemas, like other entities in Pulsar, can be managed using the <a href="/docs/en/2.1.0-incubating/ad [...]
 <h2><a class="anchor" aria-hidden="true" id="schema-resources"></a><a href="#schema-resources" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2. [...]
 <p>A Pulsar schema is a fairly simple data structure stored in Pulsar for representing the structure of messages stored in a Pulsar topic. The schema structure consists of:</p>
 <ul>
@@ -109,7 +111,7 @@ might be the Git hash associated with the schema, an environment string like <co
 <h4><a class="anchor" aria-hidden="true" id="rest-api-1"></a><a href="#rest-api-1" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1 [...]
 <p><a href="https://pulsar.incubator.apache.org/en/admin-rest-api#operation/deleteSchema"><b>DELETE</b> <i>/admin/v2/schemas/:tenant/:namespace/:topic/schema</i></a>
 </p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-partitioned-topics"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/adaptors-kafka"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#schema-resources">Schema resources</a><ul class="toc-headings"> [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-partitioned-topics"><span class="arrow-prev">← </span><span>Managing partitioned topics</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/adaptors-kafka"><span>Pulsar adaptor for Apache Kafka</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#schema-resources">Schema resou [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/admin-api-schemas/index.html b/content/docs/en/2.1.0-incubating/admin-api-schemas/index.html
index ea4b6a4..d97903b 100644
--- a/content/docs/en/2.1.0-incubating/admin-api-schemas/index.html
+++ b/content/docs/en/2.1.0-incubating/admin-api-schemas/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing Schemas · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Schemas, like other entities in Pulsar, can be managed using the [admin API](/docs/en/2.1.0-incubating/admin-api-overview). "/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="do [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing Schemas · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Schemas, like other entities in Pulsar, can be managed using the &lt;a href=&quot;/docs/en/2.1.0-incubating/admin-api-overview&quot;&gt;admin API&lt;/a&gt;.&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Managing Schemas · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Schemas, like other entities in Pulsar, can be managed using the &lt;a href=&quot;/docs/en/2.1.0-incubating/admin-api-overview&quot;&gt;ad [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-schemas.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing Schemas</h1></header><article><div><span><p>Schemas, like other entities in Pulsar, can be managed using the <a href="/docs/en/2. [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-schemas.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing Schemas</h1></header><article><div><span><p>Schemas, like other entities in Pulsar, can be managed using the <a href="/docs/en/2.1.0-incubating/ad [...]
 <h2><a class="anchor" aria-hidden="true" id="schema-resources"></a><a href="#schema-resources" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2. [...]
 <p>A Pulsar schema is a fairly simple data structure stored in Pulsar for representing the structure of messages stored in a Pulsar topic. The schema structure consists of:</p>
 <ul>
@@ -109,7 +111,7 @@ might be the Git hash associated with the schema, an environment string like <co
 <h4><a class="anchor" aria-hidden="true" id="rest-api-1"></a><a href="#rest-api-1" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1 [...]
 <p><a href="https://pulsar.incubator.apache.org/en/admin-rest-api#operation/deleteSchema"><b>DELETE</b> <i>/admin/v2/schemas/:tenant/:namespace/:topic/schema</i></a>
 </p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-partitioned-topics"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/adaptors-kafka"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#schema-resources">Schema resources</a><ul class="toc-headings"> [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-partitioned-topics"><span class="arrow-prev">← </span><span>Managing partitioned topics</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/adaptors-kafka"><span>Pulsar adaptor for Apache Kafka</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#schema-resources">Schema resou [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/admin-api-tenants.html b/content/docs/en/2.1.0-incubating/admin-api-tenants.html
index e423560..1529375 100644
--- a/content/docs/en/2.1.0-incubating/admin-api-tenants.html
+++ b/content/docs/en/2.1.0-incubating/admin-api-tenants.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing Tenants · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Tenants, like namespaces, can be managed using the [admin API](/docs/en/2.1.0-incubating/admin-api-overview). There are currently two configurable aspects of tenants:"/><meta name="docsearch:version"  [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing Tenants · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Tenants, like namespaces, can be managed using the &lt;a href=&quot;/docs/en/2.1.0-incubating/admin-api-overview&quot;&gt;admin API&lt;/a&gt;. There are currently two configurable aspects of  [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Managing Tenants · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Tenants, like namespaces, can be managed using the &lt;a href=&quot;/docs/en/2.1.0-incubating/admin-api-overview&quot;&gt;admin API&lt;/a& [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-tenants.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing Tenants</h1></header><article><div><span><p>Tenants, like namespaces, can be managed using the <a href="/docs/en/2.1.0-incubating [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-tenants.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing Tenants</h1></header><article><div><span><p>Tenants, like namespaces, can be managed using the <a href="/docs/en/2.1.0-incubating/admin-api-overvi [...]
 <ul>
 <li>Admin roles</li>
 <li>Allowed clusters</li>
@@ -95,7 +97,7 @@ $</span><span class="bash"> pulsar-admin tenants create my-tenant \</span>
 <h3><a class="anchor" aria-hidden="true" id="updating"></a><a href="#updating" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64  [...]
 <h4><a class="anchor" aria-hidden="true" id="pulsar-admin-4"></a><a href="#pulsar-admin-4" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0- [...]
 <p>You can update a tenant's configuration using the <a href="/docs/en/2.1.0-incubating/pulsar-admin#tenants-update"><code>update</code></a> subcommand</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-clusters"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-brokers"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#tenant-resources">Tenant resources</a><ul class="toc-headings"><li><a  [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-clusters"><span class="arrow-prev">← </span><span>Managing Clusters</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-brokers"><span>Managing Brokers</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#tenant-resources">Tenant resources</a><ul class="toc-headings" [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/admin-api-tenants/index.html b/content/docs/en/2.1.0-incubating/admin-api-tenants/index.html
index e423560..1529375 100644
--- a/content/docs/en/2.1.0-incubating/admin-api-tenants/index.html
+++ b/content/docs/en/2.1.0-incubating/admin-api-tenants/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing Tenants · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Tenants, like namespaces, can be managed using the [admin API](/docs/en/2.1.0-incubating/admin-api-overview). There are currently two configurable aspects of tenants:"/><meta name="docsearch:version"  [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Managing Tenants · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Tenants, like namespaces, can be managed using the &lt;a href=&quot;/docs/en/2.1.0-incubating/admin-api-overview&quot;&gt;admin API&lt;/a&gt;. There are currently two configurable aspects of  [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Managing Tenants · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Tenants, like namespaces, can be managed using the &lt;a href=&quot;/docs/en/2.1.0-incubating/admin-api-overview&quot;&gt;admin API&lt;/a& [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-tenants.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing Tenants</h1></header><article><div><span><p>Tenants, like namespaces, can be managed using the <a href="/docs/en/2.1.0-incubating [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/admin-api-tenants.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Managing Tenants</h1></header><article><div><span><p>Tenants, like namespaces, can be managed using the <a href="/docs/en/2.1.0-incubating/admin-api-overvi [...]
 <ul>
 <li>Admin roles</li>
 <li>Allowed clusters</li>
@@ -95,7 +97,7 @@ $</span><span class="bash"> pulsar-admin tenants create my-tenant \</span>
 <h3><a class="anchor" aria-hidden="true" id="updating"></a><a href="#updating" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64  [...]
 <h4><a class="anchor" aria-hidden="true" id="pulsar-admin-4"></a><a href="#pulsar-admin-4" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0- [...]
 <p>You can update a tenant's configuration using the <a href="/docs/en/2.1.0-incubating/pulsar-admin#tenants-update"><code>update</code></a> subcommand</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-clusters"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-brokers"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#tenant-resources">Tenant resources</a><ul class="toc-headings"><li><a  [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/admin-api-clusters"><span class="arrow-prev">← </span><span>Managing Clusters</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-brokers"><span>Managing Brokers</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#tenant-resources">Tenant resources</a><ul class="toc-headings" [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/administration-dashboard.html b/content/docs/en/2.1.0-incubating/administration-dashboard.html
index 32b0755..8922cb6 100644
--- a/content/docs/en/2.1.0-incubating/administration-dashboard.html
+++ b/content/docs/en/2.1.0-incubating/administration-dashboard.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar dashboard · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="The Pulsar dashboard is a web application that enables users to monitor current stats for all [topics](/docs/en/2.1.0-incubating/reference-terminology#topic) in tabular form."/><meta name="docsear [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar dashboard · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;The Pulsar dashboard is a web application that enables users to monitor current stats for all &lt;a href=&quot;/docs/en/2.1.0-incubating/reference-terminology#topic&quot;&gt;topics&lt;/a& [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="The Pulsar dashboard · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;The Pulsar dashboard is a web application that enables users to monitor current stats for all &lt;a href=&quot;/docs/en/2.1.0-incubati [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/administration-dashboard.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar dashboard</h1></header><article><div><span><p>The Pulsar dashboard is a web application that enables users to monitor cu [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/administration-dashboard.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar dashboard</h1></header><article><div><span><p>The Pulsar dashboard is a web application that enables users to monitor current stats for a [...]
 <p>The dashboard is a data collector that polls stats from all the brokers in a Pulsar instance (across multiple clusters) and stores all the information in a <a href="https://www.postgresql.org/">PostgreSQL</a> database.</p>
 <p>A <a href="https://www.djangoproject.com">Django</a> web app is used to render the collected data.</p>
 <h2><a class="anchor" aria-hidden="true" id="install"></a><a href="#install" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1- [...]
@@ -73,7 +75,7 @@ explicitely set the advertise address to the host IP. For example:</p>
 </code></pre>
 <h3><a class="anchor" aria-hidden="true" id="known-issues"></a><a href="#known-issues" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83. [...]
 <p>Pulsar <a href="/docs/en/2.1.0-incubating/security-overview#authentication-providers">authentication</a> is not supported at this point. The dashboard's data collector does not pass any authentication-related data and will be denied access if the Pulsar broker requires authentication.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/administration-geo"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/administration-stats"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#install">Install</a><ul class="toc-headings"><li><a href="#known-is [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/administration-geo"><span class="arrow-prev">← </span><span>Pulsar geo-replication</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/administration-stats"><span>Pulsar stats</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#install">Install</a><ul class="toc-headings"><li><a href=" [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/administration-dashboard/index.html b/content/docs/en/2.1.0-incubating/administration-dashboard/index.html
index 32b0755..8922cb6 100644
--- a/content/docs/en/2.1.0-incubating/administration-dashboard/index.html
+++ b/content/docs/en/2.1.0-incubating/administration-dashboard/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar dashboard · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="The Pulsar dashboard is a web application that enables users to monitor current stats for all [topics](/docs/en/2.1.0-incubating/reference-terminology#topic) in tabular form."/><meta name="docsear [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar dashboard · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;The Pulsar dashboard is a web application that enables users to monitor current stats for all &lt;a href=&quot;/docs/en/2.1.0-incubating/reference-terminology#topic&quot;&gt;topics&lt;/a& [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="The Pulsar dashboard · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;The Pulsar dashboard is a web application that enables users to monitor current stats for all &lt;a href=&quot;/docs/en/2.1.0-incubati [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/administration-dashboard.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar dashboard</h1></header><article><div><span><p>The Pulsar dashboard is a web application that enables users to monitor cu [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/administration-dashboard.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar dashboard</h1></header><article><div><span><p>The Pulsar dashboard is a web application that enables users to monitor current stats for a [...]
 <p>The dashboard is a data collector that polls stats from all the brokers in a Pulsar instance (across multiple clusters) and stores all the information in a <a href="https://www.postgresql.org/">PostgreSQL</a> database.</p>
 <p>A <a href="https://www.djangoproject.com">Django</a> web app is used to render the collected data.</p>
 <h2><a class="anchor" aria-hidden="true" id="install"></a><a href="#install" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1- [...]
@@ -73,7 +75,7 @@ explicitely set the advertise address to the host IP. For example:</p>
 </code></pre>
 <h3><a class="anchor" aria-hidden="true" id="known-issues"></a><a href="#known-issues" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83. [...]
 <p>Pulsar <a href="/docs/en/2.1.0-incubating/security-overview#authentication-providers">authentication</a> is not supported at this point. The dashboard's data collector does not pass any authentication-related data and will be denied access if the Pulsar broker requires authentication.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/administration-geo"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/administration-stats"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#install">Install</a><ul class="toc-headings"><li><a href="#known-is [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/administration-geo"><span class="arrow-prev">← </span><span>Pulsar geo-replication</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/administration-stats"><span>Pulsar stats</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#install">Install</a><ul class="toc-headings"><li><a href=" [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/administration-geo.html b/content/docs/en/2.1.0-incubating/administration-geo.html
index 51c6979..17bb4f8 100644
--- a/content/docs/en/2.1.0-incubating/administration-geo.html
+++ b/content/docs/en/2.1.0-incubating/administration-geo.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar geo-replication · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="*Geo-replication* is the replication of persistently stored message data across multiple clusters of a Pulsar instance."/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="d [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar geo-replication · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;&lt;em&gt;Geo-replication&lt;/em&gt; is the replication of persistently stored message data across multiple clusters of a Pulsar instance.&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar geo-replication · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;&lt;em&gt;Geo-replication&lt;/em&gt; is the replication of persistently stored message data across multiple clusters of a Pulsar ins [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/administration-geo.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar geo-replication</h1></header><article><div><span><p><em>Geo-replication</em> is the replication of persistently stored message dat [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/administration-geo.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar geo-replication</h1></header><article><div><span><p><em>Geo-replication</em> is the replication of persistently stored message data across multiple [...]
 <h2><a class="anchor" aria-hidden="true" id="how-it-works"></a><a href="#how-it-works" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83. [...]
 <p>The diagram below illustrates the process of geo-replication across Pulsar clusters:</p>
 <p><img src="/docs/assets/geo-replication.png" alt="Replication Diagram"></p>
@@ -120,7 +122,7 @@ producer.newMessage()
 <p>In Pulsar, a topic is automatically deleted when it's no longer used, that is to say, when no producers or consumers are connected <em>and</em> there are no subscriptions <em>and</em> no more messages are kept for retention. For global topics, each region will use a fault-tolerant mechanism to decide when it's safe to delete the topic locally.</p>
 <p>You can explicitly disable topic garbage collection by setting <code>brokerDeleteInactiveTopicsEnabled</code> to <code>false</code> in your <a href="reference-configuration#broker">broker configuration</a>.</p>
 <p>To delete a global topic, close all producers and consumers on the topic and delete all its local subscriptions in every replication cluster. When Pulsar determines that no valid subscription for the topic remains across the system, it will garbage collect the topic.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/administration-zk-bk"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/administration-dashboard"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#how-it-works">How it works</a></li><li><a href="#geo-replicat [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/administration-zk-bk"><span class="arrow-prev">← </span><span class="function-name-prevnext">ZooKeeper and BookKeeper administration</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/administration-dashboard"><span>The Pulsar dashboard</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a hre [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/administration-geo/index.html b/content/docs/en/2.1.0-incubating/administration-geo/index.html
index 51c6979..17bb4f8 100644
--- a/content/docs/en/2.1.0-incubating/administration-geo/index.html
+++ b/content/docs/en/2.1.0-incubating/administration-geo/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar geo-replication · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="*Geo-replication* is the replication of persistently stored message data across multiple clusters of a Pulsar instance."/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="d [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar geo-replication · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;&lt;em&gt;Geo-replication&lt;/em&gt; is the replication of persistently stored message data across multiple clusters of a Pulsar instance.&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar geo-replication · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;&lt;em&gt;Geo-replication&lt;/em&gt; is the replication of persistently stored message data across multiple clusters of a Pulsar ins [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/administration-geo.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar geo-replication</h1></header><article><div><span><p><em>Geo-replication</em> is the replication of persistently stored message dat [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/administration-geo.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar geo-replication</h1></header><article><div><span><p><em>Geo-replication</em> is the replication of persistently stored message data across multiple [...]
 <h2><a class="anchor" aria-hidden="true" id="how-it-works"></a><a href="#how-it-works" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83. [...]
 <p>The diagram below illustrates the process of geo-replication across Pulsar clusters:</p>
 <p><img src="/docs/assets/geo-replication.png" alt="Replication Diagram"></p>
@@ -120,7 +122,7 @@ producer.newMessage()
 <p>In Pulsar, a topic is automatically deleted when it's no longer used, that is to say, when no producers or consumers are connected <em>and</em> there are no subscriptions <em>and</em> no more messages are kept for retention. For global topics, each region will use a fault-tolerant mechanism to decide when it's safe to delete the topic locally.</p>
 <p>You can explicitly disable topic garbage collection by setting <code>brokerDeleteInactiveTopicsEnabled</code> to <code>false</code> in your <a href="reference-configuration#broker">broker configuration</a>.</p>
 <p>To delete a global topic, close all producers and consumers on the topic and delete all its local subscriptions in every replication cluster. When Pulsar determines that no valid subscription for the topic remains across the system, it will garbage collect the topic.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/administration-zk-bk"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/administration-dashboard"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#how-it-works">How it works</a></li><li><a href="#geo-replicat [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/administration-zk-bk"><span class="arrow-prev">← </span><span class="function-name-prevnext">ZooKeeper and BookKeeper administration</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/administration-dashboard"><span>The Pulsar dashboard</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a hre [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/administration-load-distribution.html b/content/docs/en/2.1.0-incubating/administration-load-distribution.html
index 7219f86..41640ab 100644
--- a/content/docs/en/2.1.0-incubating/administration-load-distribution.html
+++ b/content/docs/en/2.1.0-incubating/administration-load-distribution.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar load distribution · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="## Load distribution across Pulsar brokers"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar  [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar load distribution · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;h2&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;load-distribution-across-pulsar-brokers&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#load-distribution-across-pulsar-brok [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar load distribution · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;h2&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;load-distribution-across-pulsar-brokers&quot;&gt;&lt;/a&gt;& [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/administration-load-distribution.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar load distribution</h1></header><article><div><span><h2><a class="anchor" aria-hidden="true" id="load-distribution-ac [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/administration-load-distribution.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar load distribution</h1></header><article><div><span><h2><a class="anchor" aria-hidden="true" id="load-distribution-across-pulsar-broke [...]
 <p>Pulsar is an horizontally scalable messaging system, so it is a core requirement that the traffic
 in a logical cluster must be spread across all the available Pulsar brokers, as evenly as possible.</p>
 <p>In most cases, this is true out of the box and one shouldn't worry about it. There are, though,
@@ -190,7 +192,7 @@ being slowed down.</p>
 <span class="hljs-attr">loadBalancerOverrideBrokerNicSpeedGbps</span>=<span class="hljs-string"></span>
 </code></pre>
 <p>When the value is empty, Pulsar will use the value reported by the OS.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/administration-stats"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/administration-proxy"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#load-distribution-across-pulsar-brokers">Load distribution across [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/administration-stats"><span class="arrow-prev">← </span><span>Pulsar stats</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/administration-proxy"><span>The Pulsar proxy</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#load-distribution-across-pulsar-brokers">Load distribution acr [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/administration-load-distribution/index.html b/content/docs/en/2.1.0-incubating/administration-load-distribution/index.html
index 7219f86..41640ab 100644
--- a/content/docs/en/2.1.0-incubating/administration-load-distribution/index.html
+++ b/content/docs/en/2.1.0-incubating/administration-load-distribution/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar load distribution · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="## Load distribution across Pulsar brokers"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar  [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar load distribution · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;h2&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;load-distribution-across-pulsar-brokers&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#load-distribution-across-pulsar-brok [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar load distribution · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;h2&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;load-distribution-across-pulsar-brokers&quot;&gt;&lt;/a&gt;& [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/administration-load-distribution.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar load distribution</h1></header><article><div><span><h2><a class="anchor" aria-hidden="true" id="load-distribution-ac [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/administration-load-distribution.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar load distribution</h1></header><article><div><span><h2><a class="anchor" aria-hidden="true" id="load-distribution-across-pulsar-broke [...]
 <p>Pulsar is an horizontally scalable messaging system, so it is a core requirement that the traffic
 in a logical cluster must be spread across all the available Pulsar brokers, as evenly as possible.</p>
 <p>In most cases, this is true out of the box and one shouldn't worry about it. There are, though,
@@ -190,7 +192,7 @@ being slowed down.</p>
 <span class="hljs-attr">loadBalancerOverrideBrokerNicSpeedGbps</span>=<span class="hljs-string"></span>
 </code></pre>
 <p>When the value is empty, Pulsar will use the value reported by the OS.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/administration-stats"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/administration-proxy"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#load-distribution-across-pulsar-brokers">Load distribution across [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/administration-stats"><span class="arrow-prev">← </span><span>Pulsar stats</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/administration-proxy"><span>The Pulsar proxy</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#load-distribution-across-pulsar-brokers">Load distribution acr [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/administration-proxy.html b/content/docs/en/2.1.0-incubating/administration-proxy.html
index 6a6d28e..1bae2f6 100644
--- a/content/docs/en/2.1.0-incubating/administration-proxy.html
+++ b/content/docs/en/2.1.0-incubating/administration-proxy.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar proxy · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="The [Pulsar proxy](/docs/en/2.1.0-incubating/concepts-architecture-overview#pulsar-proxy) is an optional gateway that you can run over the brokers in a Pulsar cluster. We recommend running a Pulsar pr [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar proxy · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;The &lt;a href=&quot;/docs/en/2.1.0-incubating/concepts-architecture-overview#pulsar-proxy&quot;&gt;Pulsar proxy&lt;/a&gt; is an optional gateway that you can run over the brokers in a Pulsar [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="The Pulsar proxy · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;The &lt;a href=&quot;/docs/en/2.1.0-incubating/concepts-architecture-overview#pulsar-proxy&quot;&gt;Pulsar proxy&lt;/a&gt; is an optional  [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/administration-proxy.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar proxy</h1></header><article><div><span><p>The <a href="/docs/en/2.1.0-incubating/concepts-architecture-overview#pulsar-proxy [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/administration-proxy.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar proxy</h1></header><article><div><span><p>The <a href="/docs/en/2.1.0-incubating/concepts-architecture-overview#pulsar-proxy">Pulsar proxy</a [...]
 <h2><a class="anchor" aria-hidden="true" id="running-the-proxy"></a><a href="#running-the-proxy" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2- [...]
 <p>In order to run the Pulsar proxy, you need to have both a local <a href="https://zookeeper.apache.org">ZooKeeper</a> and configuration store quorum set up for use by your Pulsar cluster. For instructions, see <a href="/docs/en/2.1.0-incubating/deploy-bare-metal">this document</a>. Once you have ZooKeeper set up and have connection strings for both ZooKeeper quorums, you can use the <a href="/docs/en/2.1.0-incubating/reference-cli-tools#pulsar-proxy"><code>proxy</code></a> command of t [...]
 <p>To start the proxy:</p>
@@ -96,7 +98,7 @@ $ bin/pulsar proxy \
 <tr><td>tlsRequireTrustedClientCertOnConnect</td><td>Whether client certificates are required for TLS. Connections are rejected if the client certificate isn’t trusted.</td><td>false</td></tr>
 </tbody>
 </table>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/administration-load-distribution"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/security-overview"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#running-the-proxy">Running the proxy</a></li><li><a href [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/administration-load-distribution"><span class="arrow-prev">← </span><span>Pulsar load distribution</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/security-overview"><span>Pulsar Security Overview</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#running-the-proxy">Running the pr [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/administration-proxy/index.html b/content/docs/en/2.1.0-incubating/administration-proxy/index.html
index 6a6d28e..1bae2f6 100644
--- a/content/docs/en/2.1.0-incubating/administration-proxy/index.html
+++ b/content/docs/en/2.1.0-incubating/administration-proxy/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar proxy · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="The [Pulsar proxy](/docs/en/2.1.0-incubating/concepts-architecture-overview#pulsar-proxy) is an optional gateway that you can run over the brokers in a Pulsar cluster. We recommend running a Pulsar pr [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar proxy · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;The &lt;a href=&quot;/docs/en/2.1.0-incubating/concepts-architecture-overview#pulsar-proxy&quot;&gt;Pulsar proxy&lt;/a&gt; is an optional gateway that you can run over the brokers in a Pulsar [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="The Pulsar proxy · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;The &lt;a href=&quot;/docs/en/2.1.0-incubating/concepts-architecture-overview#pulsar-proxy&quot;&gt;Pulsar proxy&lt;/a&gt; is an optional  [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/administration-proxy.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar proxy</h1></header><article><div><span><p>The <a href="/docs/en/2.1.0-incubating/concepts-architecture-overview#pulsar-proxy [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/administration-proxy.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar proxy</h1></header><article><div><span><p>The <a href="/docs/en/2.1.0-incubating/concepts-architecture-overview#pulsar-proxy">Pulsar proxy</a [...]
 <h2><a class="anchor" aria-hidden="true" id="running-the-proxy"></a><a href="#running-the-proxy" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2- [...]
 <p>In order to run the Pulsar proxy, you need to have both a local <a href="https://zookeeper.apache.org">ZooKeeper</a> and configuration store quorum set up for use by your Pulsar cluster. For instructions, see <a href="/docs/en/2.1.0-incubating/deploy-bare-metal">this document</a>. Once you have ZooKeeper set up and have connection strings for both ZooKeeper quorums, you can use the <a href="/docs/en/2.1.0-incubating/reference-cli-tools#pulsar-proxy"><code>proxy</code></a> command of t [...]
 <p>To start the proxy:</p>
@@ -96,7 +98,7 @@ $ bin/pulsar proxy \
 <tr><td>tlsRequireTrustedClientCertOnConnect</td><td>Whether client certificates are required for TLS. Connections are rejected if the client certificate isn’t trusted.</td><td>false</td></tr>
 </tbody>
 </table>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/administration-load-distribution"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/security-overview"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#running-the-proxy">Running the proxy</a></li><li><a href [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/administration-load-distribution"><span class="arrow-prev">← </span><span>Pulsar load distribution</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/security-overview"><span>Pulsar Security Overview</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#running-the-proxy">Running the pr [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/administration-stats.html b/content/docs/en/2.1.0-incubating/administration-stats.html
index 3f003c0..d0b04ee 100644
--- a/content/docs/en/2.1.0-incubating/administration-stats.html
+++ b/content/docs/en/2.1.0-incubating/administration-stats.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar stats · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="## Partitioned topics"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar stats · Apache Pulsar"/><meta pro [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar stats · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;h2&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;partitioned-topics&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#partitioned-topics&quot; aria-hidden=&quot;true&quot; class=&quot;has [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar stats · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;h2&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;partitioned-topics&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#partitioned-topi [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/administration-stats.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar stats</h1></header><article><div><span><h2><a class="anchor" aria-hidden="true" id="partitioned-topics"></a><a href="#partitione [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/administration-stats.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar stats</h1></header><article><div><span><h2><a class="anchor" aria-hidden="true" id="partitioned-topics"></a><a href="#partitioned-topics" aria-hi [...]
 <table>
 <thead>
 <tr><th>Stat</th><th>Description</th></tr>
@@ -108,7 +110,7 @@
 <tr><td>lastLedgerSwitchTimestamp</td><td>The last time the cursor ledger was rolled over</td></tr>
 </tbody>
 </table>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/administration-dashboard"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/administration-load-distribution"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#partitioned-topics">Partitioned topics</a></li><l [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/administration-dashboard"><span class="arrow-prev">← </span><span>The Pulsar dashboard</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/administration-load-distribution"><span>Pulsar load distribution</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#partitioned-topics">Partitione [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/administration-stats/index.html b/content/docs/en/2.1.0-incubating/administration-stats/index.html
index 3f003c0..d0b04ee 100644
--- a/content/docs/en/2.1.0-incubating/administration-stats/index.html
+++ b/content/docs/en/2.1.0-incubating/administration-stats/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar stats · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="## Partitioned topics"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar stats · Apache Pulsar"/><meta pro [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar stats · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;h2&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;partitioned-topics&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#partitioned-topics&quot; aria-hidden=&quot;true&quot; class=&quot;has [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar stats · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;h2&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;partitioned-topics&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#partitioned-topi [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/administration-stats.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar stats</h1></header><article><div><span><h2><a class="anchor" aria-hidden="true" id="partitioned-topics"></a><a href="#partitione [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/administration-stats.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar stats</h1></header><article><div><span><h2><a class="anchor" aria-hidden="true" id="partitioned-topics"></a><a href="#partitioned-topics" aria-hi [...]
 <table>
 <thead>
 <tr><th>Stat</th><th>Description</th></tr>
@@ -108,7 +110,7 @@
 <tr><td>lastLedgerSwitchTimestamp</td><td>The last time the cursor ledger was rolled over</td></tr>
 </tbody>
 </table>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/administration-dashboard"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/administration-load-distribution"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#partitioned-topics">Partitioned topics</a></li><l [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/administration-dashboard"><span class="arrow-prev">← </span><span>The Pulsar dashboard</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/administration-load-distribution"><span>Pulsar load distribution</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#partitioned-topics">Partitione [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/administration-zk-bk.html b/content/docs/en/2.1.0-incubating/administration-zk-bk.html
index 8c8ca8b..443978c 100644
--- a/content/docs/en/2.1.0-incubating/administration-zk-bk.html
+++ b/content/docs/en/2.1.0-incubating/administration-zk-bk.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>ZooKeeper and BookKeeper administration · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar relies on two external systems for essential tasks:"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta prope [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>ZooKeeper and BookKeeper administration · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar relies on two external systems for essential tasks:&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="ZooKeeper and BookKeeper administration · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar relies on two external systems for essential tasks:&lt;/p&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/administration-zk-bk.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">ZooKeeper and BookKeeper administration</h1></header><article><div><span><p>Pulsar relies on two external systems for essential tasks:</p>
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/administration-zk-bk.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">ZooKeeper and BookKeeper administration</h1></header><article><div><span><p>Pulsar relies on two external systems for essential tasks:</p>
 <ul>
 <li><a href="https://zookeeper.apache.org/">ZooKeeper</a> is responsible for a wide variety of configuration- and coordination-related tasks.</li>
 <li><a href="http://bookkeeper.apache.org/">BookKeeper</a> is responsible for <a href="/docs/en/2.1.0-incubating/concepts-architecture-overview#persistent-storage">persistent storage</a> of message data.</li>
@@ -267,7 +269,7 @@ admin.namespaces().setPersistence(namespace, policies);
 <p>This diagram illustrates the role of ZooKeeper and BookKeeper in a Pulsar cluster:</p>
 <p><img src="/docs/assets/pulsar-system-architecture.png" alt="ZooKeeper and BookKeeper"></p>
 <p>Each Pulsar cluster consists of one or more message brokers. Each broker relies on an ensemble of bookies.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/deploy-monitoring"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/administration-geo"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#zookeeper">ZooKeeper</a><ul class="toc-headings"><li><a href="#deployi [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/deploy-monitoring"><span class="arrow-prev">← </span><span>Monitoring</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/administration-geo"><span>Pulsar geo-replication</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#zookeeper">ZooKeeper</a><ul class="toc-headings"><li><a href="# [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/administration-zk-bk/index.html b/content/docs/en/2.1.0-incubating/administration-zk-bk/index.html
index 8c8ca8b..443978c 100644
--- a/content/docs/en/2.1.0-incubating/administration-zk-bk/index.html
+++ b/content/docs/en/2.1.0-incubating/administration-zk-bk/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>ZooKeeper and BookKeeper administration · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar relies on two external systems for essential tasks:"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta prope [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>ZooKeeper and BookKeeper administration · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar relies on two external systems for essential tasks:&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="ZooKeeper and BookKeeper administration · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar relies on two external systems for essential tasks:&lt;/p&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/administration-zk-bk.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">ZooKeeper and BookKeeper administration</h1></header><article><div><span><p>Pulsar relies on two external systems for essential tasks:</p>
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/administration-zk-bk.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">ZooKeeper and BookKeeper administration</h1></header><article><div><span><p>Pulsar relies on two external systems for essential tasks:</p>
 <ul>
 <li><a href="https://zookeeper.apache.org/">ZooKeeper</a> is responsible for a wide variety of configuration- and coordination-related tasks.</li>
 <li><a href="http://bookkeeper.apache.org/">BookKeeper</a> is responsible for <a href="/docs/en/2.1.0-incubating/concepts-architecture-overview#persistent-storage">persistent storage</a> of message data.</li>
@@ -267,7 +269,7 @@ admin.namespaces().setPersistence(namespace, policies);
 <p>This diagram illustrates the role of ZooKeeper and BookKeeper in a Pulsar cluster:</p>
 <p><img src="/docs/assets/pulsar-system-architecture.png" alt="ZooKeeper and BookKeeper"></p>
 <p>Each Pulsar cluster consists of one or more message brokers. Each broker relies on an ensemble of bookies.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/deploy-monitoring"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/administration-geo"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#zookeeper">ZooKeeper</a><ul class="toc-headings"><li><a href="#deployi [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/deploy-monitoring"><span class="arrow-prev">← </span><span>Monitoring</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/administration-geo"><span>Pulsar geo-replication</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#zookeeper">ZooKeeper</a><ul class="toc-headings"><li><a href="# [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/client-libraries-cpp.html b/content/docs/en/2.1.0-incubating/client-libraries-cpp.html
index 73d0e3a..648ed98 100644
--- a/content/docs/en/2.1.0-incubating/client-libraries-cpp.html
+++ b/content/docs/en/2.1.0-incubating/client-libraries-cpp.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar C++ client · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="## Supported platforms"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="The Pulsar C++ client · Apache [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar C++ client · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;h2&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;supported-platforms&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#supported-platforms&quot; aria-hidden=&quot;true&quot; clas [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="The Pulsar C++ client · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;h2&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;supported-platforms&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#suppor [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/client-libraries-cpp.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar C++ client</h1></header><article><div><span><h2><a class="anchor" aria-hidden="true" id="supported-platforms"></a><a href="# [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/client-libraries-cpp.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar C++ client</h1></header><article><div><span><h2><a class="anchor" aria-hidden="true" id="supported-platforms"></a><a href="#supported-platfor [...]
 <p>The Pulsar C++ client has been successfully tested on <strong>MacOS</strong> and <strong>Linux</strong>.</p>
 <h2><a class="anchor" aria-hidden="true" id="linux"></a><a href="#linux" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09 [...]
 <h3><a class="anchor" aria-hidden="true" id="install"></a><a href="#install" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1- [...]
@@ -189,7 +191,7 @@ config.setAuth(pulsar::AuthTls::create(
 
 <span class="hljs-function">Client <span class="hljs-title">client</span><span class="hljs-params">(<span class="hljs-string">"pulsar+ssl://my-broker.com:6651"</span>, config)</span></span>;
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/client-libraries-python"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/client-libraries-websocket"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#supported-platforms">Supported platforms</a></li><li><a  [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/client-libraries-python"><span class="arrow-prev">← </span><span>The Pulsar Python client</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/client-libraries-websocket"><span class="function-name-prevnext">Pulsar&#x27;s WebSocket API</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href=" [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/client-libraries-cpp/index.html b/content/docs/en/2.1.0-incubating/client-libraries-cpp/index.html
index 73d0e3a..648ed98 100644
--- a/content/docs/en/2.1.0-incubating/client-libraries-cpp/index.html
+++ b/content/docs/en/2.1.0-incubating/client-libraries-cpp/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar C++ client · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="## Supported platforms"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="The Pulsar C++ client · Apache [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar C++ client · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;h2&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;supported-platforms&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#supported-platforms&quot; aria-hidden=&quot;true&quot; clas [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="The Pulsar C++ client · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;h2&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;supported-platforms&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#suppor [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/client-libraries-cpp.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar C++ client</h1></header><article><div><span><h2><a class="anchor" aria-hidden="true" id="supported-platforms"></a><a href="# [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/client-libraries-cpp.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar C++ client</h1></header><article><div><span><h2><a class="anchor" aria-hidden="true" id="supported-platforms"></a><a href="#supported-platfor [...]
 <p>The Pulsar C++ client has been successfully tested on <strong>MacOS</strong> and <strong>Linux</strong>.</p>
 <h2><a class="anchor" aria-hidden="true" id="linux"></a><a href="#linux" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09 [...]
 <h3><a class="anchor" aria-hidden="true" id="install"></a><a href="#install" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1- [...]
@@ -189,7 +191,7 @@ config.setAuth(pulsar::AuthTls::create(
 
 <span class="hljs-function">Client <span class="hljs-title">client</span><span class="hljs-params">(<span class="hljs-string">"pulsar+ssl://my-broker.com:6651"</span>, config)</span></span>;
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/client-libraries-python"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/client-libraries-websocket"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#supported-platforms">Supported platforms</a></li><li><a  [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/client-libraries-python"><span class="arrow-prev">← </span><span>The Pulsar Python client</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/client-libraries-websocket"><span class="function-name-prevnext">Pulsar&#x27;s WebSocket API</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href=" [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/client-libraries-go.html b/content/docs/en/2.1.0-incubating/client-libraries-go.html
index caf0200..67b8020 100644
--- a/content/docs/en/2.1.0-incubating/client-libraries-go.html
+++ b/content/docs/en/2.1.0-incubating/client-libraries-go.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar Go client · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="The Pulsar Go client can be used to create Pulsar [producers](#producers), [consumers](#consumers), and [readers](#readers) in Go (aka Golang)."/><meta name="docsearch:version" content="2.1.0-incu [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar Go client · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;The Pulsar Go client can be used to create Pulsar &lt;a href=&quot;#producers&quot;&gt;producers&lt;/a&gt;, &lt;a href=&quot;#consumers&quot;&gt;consumers&lt;/a&gt;, and &lt;a href=&quot; [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="The Pulsar Go client · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;The Pulsar Go client can be used to create Pulsar &lt;a href=&quot;#producers&quot;&gt;producers&lt;/a&gt;, &lt;a href=&quot;#consumer [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/client-libraries-go.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar Go client</h1></header><article><div><span><p>The Pulsar Go client can be used to create Pulsar <a href="#producers">producer [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/client-libraries-go.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar Go client</h1></header><article><div><span><p>The Pulsar Go client can be used to create Pulsar <a href="#producers">producers</a>, <a href="# [...]
 <blockquote>
 <h4><a class="anchor" aria-hidden="true" id="api-docs-available-as-well"></a><a href="#api-docs-available-as-well" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H [...]
 <p>For standard API docs, consult the <a href="https://godoc.org/github.com/apache/incubator-pulsar/pulsar-client-go/pulsar">Godoc</a>.</p>
@@ -460,7 +462,7 @@ reader, err := client.CreateReader(pulsar.ReaderOptions{
     Authentication: NewAuthenticationTLS(<span class="hljs-string">"my-cert.pem"</span>, <span class="hljs-string">"my-key.pem"</span>),
 }
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/client-libraries-java"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/client-libraries-python"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#installation">Installation</a><ul class="toc-headings"><li><a [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/client-libraries-java"><span class="arrow-prev">← </span><span>The Pulsar Java client</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/client-libraries-python"><span>The Pulsar Python client</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#installation">Installation</a><ul class= [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/client-libraries-go/index.html b/content/docs/en/2.1.0-incubating/client-libraries-go/index.html
index caf0200..67b8020 100644
--- a/content/docs/en/2.1.0-incubating/client-libraries-go/index.html
+++ b/content/docs/en/2.1.0-incubating/client-libraries-go/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar Go client · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="The Pulsar Go client can be used to create Pulsar [producers](#producers), [consumers](#consumers), and [readers](#readers) in Go (aka Golang)."/><meta name="docsearch:version" content="2.1.0-incu [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar Go client · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;The Pulsar Go client can be used to create Pulsar &lt;a href=&quot;#producers&quot;&gt;producers&lt;/a&gt;, &lt;a href=&quot;#consumers&quot;&gt;consumers&lt;/a&gt;, and &lt;a href=&quot; [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="The Pulsar Go client · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;The Pulsar Go client can be used to create Pulsar &lt;a href=&quot;#producers&quot;&gt;producers&lt;/a&gt;, &lt;a href=&quot;#consumer [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/client-libraries-go.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar Go client</h1></header><article><div><span><p>The Pulsar Go client can be used to create Pulsar <a href="#producers">producer [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/client-libraries-go.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar Go client</h1></header><article><div><span><p>The Pulsar Go client can be used to create Pulsar <a href="#producers">producers</a>, <a href="# [...]
 <blockquote>
 <h4><a class="anchor" aria-hidden="true" id="api-docs-available-as-well"></a><a href="#api-docs-available-as-well" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H [...]
 <p>For standard API docs, consult the <a href="https://godoc.org/github.com/apache/incubator-pulsar/pulsar-client-go/pulsar">Godoc</a>.</p>
@@ -460,7 +462,7 @@ reader, err := client.CreateReader(pulsar.ReaderOptions{
     Authentication: NewAuthenticationTLS(<span class="hljs-string">"my-cert.pem"</span>, <span class="hljs-string">"my-key.pem"</span>),
 }
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/client-libraries-java"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/client-libraries-python"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#installation">Installation</a><ul class="toc-headings"><li><a [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/client-libraries-java"><span class="arrow-prev">← </span><span>The Pulsar Java client</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/client-libraries-python"><span>The Pulsar Python client</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#installation">Installation</a><ul class= [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/client-libraries-java.html b/content/docs/en/2.1.0-incubating/client-libraries-java.html
index 3ab6f56..9162681 100644
--- a/content/docs/en/2.1.0-incubating/client-libraries-java.html
+++ b/content/docs/en/2.1.0-incubating/client-libraries-java.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar Java client · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="The Pulsar Java client can be used both to create Java producers, consumers, and [readers](#readers) of messages and to perform [administrative tasks](/docs/en/2.1.0-incubating/admin-api-overvie [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar Java client · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;The Pulsar Java client can be used both to create Java producers, consumers, and &lt;a href=&quot;#readers&quot;&gt;readers&lt;/a&gt; of messages and to perform &lt;a href=&quot;/docs/e [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="The Pulsar Java client · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;The Pulsar Java client can be used both to create Java producers, consumers, and &lt;a href=&quot;#readers&quot;&gt;readers&lt;/a&gt [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/client-libraries-java.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar Java client</h1></header><article><div><span><p>The Pulsar Java client can be used both to create Java producers, consumers [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/client-libraries-java.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar Java client</h1></header><article><div><span><p>The Pulsar Java client can be used both to create Java producers, consumers, and <a href="#r [...]
 <p>Javadoc for the Pulsar client is divided up into two domains, by package:</p>
 <table>
 <thead>
@@ -401,7 +403,7 @@ PulsarClient client = PulsarClient.builder()
 <li><code>data:application/x-pem-file;base64,&lt;base64-encoded value&gt;</code></li>
 </ul>
 </blockquote>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/security-extending"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/client-libraries-go"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#installation">Installation</a><ul class="toc-headings"><li><a href=" [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/security-extending"><span class="arrow-prev">← </span><span>Extending Authentication and Authorization in Pulsar</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/client-libraries-go"><span>The Pulsar Go client</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#installation">Install [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/client-libraries-java/index.html b/content/docs/en/2.1.0-incubating/client-libraries-java/index.html
index 3ab6f56..9162681 100644
--- a/content/docs/en/2.1.0-incubating/client-libraries-java/index.html
+++ b/content/docs/en/2.1.0-incubating/client-libraries-java/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar Java client · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="The Pulsar Java client can be used both to create Java producers, consumers, and [readers](#readers) of messages and to perform [administrative tasks](/docs/en/2.1.0-incubating/admin-api-overvie [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar Java client · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;The Pulsar Java client can be used both to create Java producers, consumers, and &lt;a href=&quot;#readers&quot;&gt;readers&lt;/a&gt; of messages and to perform &lt;a href=&quot;/docs/e [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="The Pulsar Java client · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;The Pulsar Java client can be used both to create Java producers, consumers, and &lt;a href=&quot;#readers&quot;&gt;readers&lt;/a&gt [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/client-libraries-java.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar Java client</h1></header><article><div><span><p>The Pulsar Java client can be used both to create Java producers, consumers [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/client-libraries-java.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar Java client</h1></header><article><div><span><p>The Pulsar Java client can be used both to create Java producers, consumers, and <a href="#r [...]
 <p>Javadoc for the Pulsar client is divided up into two domains, by package:</p>
 <table>
 <thead>
@@ -401,7 +403,7 @@ PulsarClient client = PulsarClient.builder()
 <li><code>data:application/x-pem-file;base64,&lt;base64-encoded value&gt;</code></li>
 </ul>
 </blockquote>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/security-extending"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/client-libraries-go"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#installation">Installation</a><ul class="toc-headings"><li><a href=" [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/security-extending"><span class="arrow-prev">← </span><span>Extending Authentication and Authorization in Pulsar</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/client-libraries-go"><span>The Pulsar Go client</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#installation">Install [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/client-libraries-python.html b/content/docs/en/2.1.0-incubating/client-libraries-python.html
index 8a2e916..2863146 100644
--- a/content/docs/en/2.1.0-incubating/client-libraries-python.html
+++ b/content/docs/en/2.1.0-incubating/client-libraries-python.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar Python client · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="The Pulsar Python client library is a wrapper over the existing [C++ client library](/docs/en/2.1.0-incubating/client-libraries-cpp) and exposes all of the [same features](/api/cpp). You can f [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar Python client · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;The Pulsar Python client library is a wrapper over the existing &lt;a href=&quot;/docs/en/2.1.0-incubating/client-libraries-cpp&quot;&gt;C++ client library&lt;/a&gt; and exposes all o [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="The Pulsar Python client · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;The Pulsar Python client library is a wrapper over the existing &lt;a href=&quot;/docs/en/2.1.0-incubating/client-libraries-cpp&qu [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/client-libraries-python.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar Python client</h1></header><article><div><span><p>The Pulsar Python client library is a wrapper over the existing <a href [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/client-libraries-python.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar Python client</h1></header><article><div><span><p>The Pulsar Python client library is a wrapper over the existing <a href="/docs/en/2.1.0- [...]
 <h2><a class="anchor" aria-hidden="true" id="installation"></a><a href="#installation" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83. [...]
 <p>You can install the <a href="https://pypi.python.org/pypi/pulsar-client"><code>pulsar-client</code></a> library either via <a href="https://pypi.python.org/pypi">PyPi</a>, using <a href="#installation-using-pip">pip</a>, or by building the library from source.</p>
 <h3><a class="anchor" aria-hidden="true" id="installation-using-pip"></a><a href="#installation-using-pip" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0 [...]
@@ -109,7 +111,7 @@ reader = client.create_reader(<span class="hljs-string">'my-topic'</span>, msg_i
     print(<span class="hljs-string">"Received message '{}' id='{}'"</span>.format(msg.data(), msg.message_id()))
     <span class="hljs-comment"># No acknowledgment</span>
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/client-libraries-go"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/client-libraries-cpp"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#installation">Installation</a><ul class="toc-headings"><li><a href [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/client-libraries-go"><span class="arrow-prev">← </span><span>The Pulsar Go client</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/client-libraries-cpp"><span>The Pulsar C++ client</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#installation">Installation</a><ul class="toc-headi [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/client-libraries-python/index.html b/content/docs/en/2.1.0-incubating/client-libraries-python/index.html
index 8a2e916..2863146 100644
--- a/content/docs/en/2.1.0-incubating/client-libraries-python/index.html
+++ b/content/docs/en/2.1.0-incubating/client-libraries-python/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar Python client · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="The Pulsar Python client library is a wrapper over the existing [C++ client library](/docs/en/2.1.0-incubating/client-libraries-cpp) and exposes all of the [same features](/api/cpp). You can f [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar Python client · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;The Pulsar Python client library is a wrapper over the existing &lt;a href=&quot;/docs/en/2.1.0-incubating/client-libraries-cpp&quot;&gt;C++ client library&lt;/a&gt; and exposes all o [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="The Pulsar Python client · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;The Pulsar Python client library is a wrapper over the existing &lt;a href=&quot;/docs/en/2.1.0-incubating/client-libraries-cpp&qu [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/client-libraries-python.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar Python client</h1></header><article><div><span><p>The Pulsar Python client library is a wrapper over the existing <a href [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/client-libraries-python.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar Python client</h1></header><article><div><span><p>The Pulsar Python client library is a wrapper over the existing <a href="/docs/en/2.1.0- [...]
 <h2><a class="anchor" aria-hidden="true" id="installation"></a><a href="#installation" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83. [...]
 <p>You can install the <a href="https://pypi.python.org/pypi/pulsar-client"><code>pulsar-client</code></a> library either via <a href="https://pypi.python.org/pypi">PyPi</a>, using <a href="#installation-using-pip">pip</a>, or by building the library from source.</p>
 <h3><a class="anchor" aria-hidden="true" id="installation-using-pip"></a><a href="#installation-using-pip" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0 [...]
@@ -109,7 +111,7 @@ reader = client.create_reader(<span class="hljs-string">'my-topic'</span>, msg_i
     print(<span class="hljs-string">"Received message '{}' id='{}'"</span>.format(msg.data(), msg.message_id()))
     <span class="hljs-comment"># No acknowledgment</span>
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/client-libraries-go"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/client-libraries-cpp"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#installation">Installation</a><ul class="toc-headings"><li><a href [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/client-libraries-go"><span class="arrow-prev">← </span><span>The Pulsar Go client</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/client-libraries-cpp"><span>The Pulsar C++ client</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#installation">Installation</a><ul class="toc-headi [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/client-libraries-websocket.html b/content/docs/en/2.1.0-incubating/client-libraries-websocket.html
index f6edee5..098c660 100644
--- a/content/docs/en/2.1.0-incubating/client-libraries-websocket.html
+++ b/content/docs/en/2.1.0-incubating/client-libraries-websocket.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar&#x27;s WebSocket API · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar&#x27;s [WebSocket](https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API) API is meant to provide a simple way to interact with Pulsar using languages that do not have an o [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar&#x27;s WebSocket API · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar&#x27;s &lt;a href=&quot;https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API&quot;&gt;WebSocket&lt;/a&gt; API is meant to provide a simple way to interact with Pu [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar&#x27;s WebSocket API · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar&#x27;s &lt;a href=&quot;https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API&quot;&gt;WebSocket&lt;/a&gt; API [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/client-libraries-websocket.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar&#x27;s WebSocket API</h1></header><article><div><span><p>Pulsar's <a href="https://developer.mozilla.org/en-US/docs/Web/AP [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/client-libraries-websocket.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar&#x27;s WebSocket API</h1></header><article><div><span><p>Pulsar's <a href="https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API" [...]
 <blockquote>
 <p>You can use Pulsar's WebSocket API with any WebSocket client library. See examples for Python and Node.js <a href="#client-examples">below</a>.</p>
 </blockquote>
@@ -393,7 +395,7 @@ ws.on(<span class="hljs-string">'message'</span>, <span class="hljs-function"><s
     ws.send(<span class="hljs-built_in">JSON</span>.stringify(ackMsg));
 });
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/client-libraries-cpp"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-overview"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#running-the-websocket-service">Running the WebSocket service</a><ul [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/client-libraries-cpp"><span class="arrow-prev">← </span><span>The Pulsar C++ client</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-overview"><span>The Pulsar admin interface</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#running-the-websocket-service">Running the We [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/client-libraries-websocket/index.html b/content/docs/en/2.1.0-incubating/client-libraries-websocket/index.html
index f6edee5..098c660 100644
--- a/content/docs/en/2.1.0-incubating/client-libraries-websocket/index.html
+++ b/content/docs/en/2.1.0-incubating/client-libraries-websocket/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar&#x27;s WebSocket API · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar&#x27;s [WebSocket](https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API) API is meant to provide a simple way to interact with Pulsar using languages that do not have an o [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar&#x27;s WebSocket API · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar&#x27;s &lt;a href=&quot;https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API&quot;&gt;WebSocket&lt;/a&gt; API is meant to provide a simple way to interact with Pu [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar&#x27;s WebSocket API · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar&#x27;s &lt;a href=&quot;https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API&quot;&gt;WebSocket&lt;/a&gt; API [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/client-libraries-websocket.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar&#x27;s WebSocket API</h1></header><article><div><span><p>Pulsar's <a href="https://developer.mozilla.org/en-US/docs/Web/AP [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/client-libraries-websocket.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar&#x27;s WebSocket API</h1></header><article><div><span><p>Pulsar's <a href="https://developer.mozilla.org/en-US/docs/Web/API/WebSockets_API" [...]
 <blockquote>
 <p>You can use Pulsar's WebSocket API with any WebSocket client library. See examples for Python and Node.js <a href="#client-examples">below</a>.</p>
 </blockquote>
@@ -393,7 +395,7 @@ ws.on(<span class="hljs-string">'message'</span>, <span class="hljs-function"><s
     ws.send(<span class="hljs-built_in">JSON</span>.stringify(ackMsg));
 });
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/client-libraries-cpp"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-overview"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#running-the-websocket-service">Running the WebSocket service</a><ul [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/client-libraries-cpp"><span class="arrow-prev">← </span><span>The Pulsar C++ client</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/admin-api-overview"><span>The Pulsar admin interface</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#running-the-websocket-service">Running the We [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/client-libraries.html b/content/docs/en/2.1.0-incubating/client-libraries.html
index 7d517e3..eae9c6a 100644
--- a/content/docs/en/2.1.0-incubating/client-libraries.html
+++ b/content/docs/en/2.1.0-incubating/client-libraries.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar client libraries · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar currently has client libraries available for following languages:"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta propert [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar client libraries · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar currently has client libraries available for following languages:&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar client libraries · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar currently has client libraries available for following languages:&lt;/p&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/getting-started-clients.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar client libraries</h1></header><article><div><span><p>Pulsar currently has client libraries available for following languages:</p>
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/getting-started-clients.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar client libraries</h1></header><article><div><span><p>Pulsar currently has client libraries available for following languages:</p>
 <ul>
 <li><a href="#java-client">Java</a></li>
 <li><a href="#go-client">Go</a></li>
@@ -112,7 +114,7 @@
 <tr><td>Scala</td><td><a href="https://github.com/sksamuel/pulsar4s">pulsar4s</a></td><td><a href="https://github.com/sksamuel">sksamuel</a></td><td><a href="https://opensource.org/licenses/Apache-2.0"><img src="https://img.shields.io/badge/License-Apache%202.0-blue.svg" alt="License"></a></td><td>Idomatic, typesafe, and reactive Scala client for Apache Pulsar</td></tr>
 </tbody>
 </table>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/standalone-docker"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-overview"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#java-client">Java client</a></li><li><a href="#go-client">Go client</a> [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/standalone-docker"><span class="arrow-prev">← </span><span>Start a standalone cluster with Docker</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-overview"><span>Pulsar Overview</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#java-client">Java client</a></li><li><a hre [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/client-libraries/index.html b/content/docs/en/2.1.0-incubating/client-libraries/index.html
index 7d517e3..eae9c6a 100644
--- a/content/docs/en/2.1.0-incubating/client-libraries/index.html
+++ b/content/docs/en/2.1.0-incubating/client-libraries/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar client libraries · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar currently has client libraries available for following languages:"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta propert [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar client libraries · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar currently has client libraries available for following languages:&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar client libraries · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar currently has client libraries available for following languages:&lt;/p&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/getting-started-clients.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar client libraries</h1></header><article><div><span><p>Pulsar currently has client libraries available for following languages:</p>
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/getting-started-clients.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar client libraries</h1></header><article><div><span><p>Pulsar currently has client libraries available for following languages:</p>
 <ul>
 <li><a href="#java-client">Java</a></li>
 <li><a href="#go-client">Go</a></li>
@@ -112,7 +114,7 @@
 <tr><td>Scala</td><td><a href="https://github.com/sksamuel/pulsar4s">pulsar4s</a></td><td><a href="https://github.com/sksamuel">sksamuel</a></td><td><a href="https://opensource.org/licenses/Apache-2.0"><img src="https://img.shields.io/badge/License-Apache%202.0-blue.svg" alt="License"></a></td><td>Idomatic, typesafe, and reactive Scala client for Apache Pulsar</td></tr>
 </tbody>
 </table>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/standalone-docker"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-overview"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#java-client">Java client</a></li><li><a href="#go-client">Go client</a> [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/standalone-docker"><span class="arrow-prev">← </span><span>Start a standalone cluster with Docker</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-overview"><span>Pulsar Overview</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#java-client">Java client</a></li><li><a hre [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/concepts-architecture-overview.html b/content/docs/en/2.1.0-incubating/concepts-architecture-overview.html
index a769a80..16aed5a 100644
--- a/content/docs/en/2.1.0-incubating/concepts-architecture-overview.html
+++ b/content/docs/en/2.1.0-incubating/concepts-architecture-overview.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Architecture Overview · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="At the highest level, a Pulsar instance is composed of one or more Pulsar clusters. Clusters within an instance can [replicate](/docs/en/2.1.0-incubating/concepts-replication) data amongst themse [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Architecture Overview · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;At the highest level, a Pulsar instance is composed of one or more Pulsar clusters. Clusters within an instance can &lt;a href=&quot;/docs/en/2.1.0-incubating/concepts-replication&quot;& [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Architecture Overview · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;At the highest level, a Pulsar instance is composed of one or more Pulsar clusters. Clusters within an instance can &lt;a href=&quot; [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-architecture-overview.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Architecture Overview</h1></header><article><div><span><p>At the highest level, a Pulsar instance is composed of one or more  [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-architecture-overview.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Architecture Overview</h1></header><article><div><span><p>At the highest level, a Pulsar instance is composed of one or more Pulsar clusters.  [...]
 <p>In a Pulsar cluster:</p>
 <ul>
 <li>One or more brokers handles and load balances incoming messages from producers, dispatches messages to consumers, communicates with the Pulsar configuration store to handle various coordination tasks, stores messages in BookKeeper instances (aka bookies), relies on a cluster-specific ZooKeeper cluster for certain tasks, and more.</li>
@@ -154,7 +156,7 @@
 
 client = Client(<span class="hljs-string">'pulsar://pulsar-cluster.acme.com:6650'</span>)
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-messaging"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-clients"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#brokers">Brokers</a></li><li><a href="#clusters">Clusters</a></li><li>< [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-messaging"><span class="arrow-prev">← </span><span>Messaging Concepts</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-clients"><span>Pulsar Clients</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#brokers">Brokers</a></li><li><a href="#clusters">Clusters</a></l [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/concepts-architecture-overview/index.html b/content/docs/en/2.1.0-incubating/concepts-architecture-overview/index.html
index a769a80..16aed5a 100644
--- a/content/docs/en/2.1.0-incubating/concepts-architecture-overview/index.html
+++ b/content/docs/en/2.1.0-incubating/concepts-architecture-overview/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Architecture Overview · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="At the highest level, a Pulsar instance is composed of one or more Pulsar clusters. Clusters within an instance can [replicate](/docs/en/2.1.0-incubating/concepts-replication) data amongst themse [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Architecture Overview · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;At the highest level, a Pulsar instance is composed of one or more Pulsar clusters. Clusters within an instance can &lt;a href=&quot;/docs/en/2.1.0-incubating/concepts-replication&quot;& [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Architecture Overview · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;At the highest level, a Pulsar instance is composed of one or more Pulsar clusters. Clusters within an instance can &lt;a href=&quot; [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-architecture-overview.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Architecture Overview</h1></header><article><div><span><p>At the highest level, a Pulsar instance is composed of one or more  [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-architecture-overview.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Architecture Overview</h1></header><article><div><span><p>At the highest level, a Pulsar instance is composed of one or more Pulsar clusters.  [...]
 <p>In a Pulsar cluster:</p>
 <ul>
 <li>One or more brokers handles and load balances incoming messages from producers, dispatches messages to consumers, communicates with the Pulsar configuration store to handle various coordination tasks, stores messages in BookKeeper instances (aka bookies), relies on a cluster-specific ZooKeeper cluster for certain tasks, and more.</li>
@@ -154,7 +156,7 @@
 
 client = Client(<span class="hljs-string">'pulsar://pulsar-cluster.acme.com:6650'</span>)
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-messaging"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-clients"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#brokers">Brokers</a></li><li><a href="#clusters">Clusters</a></li><li>< [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-messaging"><span class="arrow-prev">← </span><span>Messaging Concepts</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-clients"><span>Pulsar Clients</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#brokers">Brokers</a></li><li><a href="#clusters">Clusters</a></l [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/concepts-architecture.html b/content/docs/en/2.1.0-incubating/concepts-architecture.html
index 89f877d..f18f5a8 100644
--- a/content/docs/en/2.1.0-incubating/concepts-architecture.html
+++ b/content/docs/en/2.1.0-incubating/concepts-architecture.html
@@ -18,7 +18,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/getting-star [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/getting-started-concepts-and- [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/concepts-architecture/index.html b/content/docs/en/2.1.0-incubating/concepts-architecture/index.html
index 89f877d..f18f5a8 100644
--- a/content/docs/en/2.1.0-incubating/concepts-architecture/index.html
+++ b/content/docs/en/2.1.0-incubating/concepts-architecture/index.html
@@ -18,7 +18,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/getting-star [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/getting-started-concepts-and- [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/concepts-authentication.html b/content/docs/en/2.1.0-incubating/concepts-authentication.html
index 5044eaf..7f4bde5 100644
--- a/content/docs/en/2.1.0-incubating/concepts-authentication.html
+++ b/content/docs/en/2.1.0-incubating/concepts-authentication.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Authentication and Authorization · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar supports a pluggable [authentication](/docs/en/2.1.0-incubating/security-overview) mechanism which can be configured at broker and it also supports authorization to identify cli [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Authentication and Authorization · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar supports a pluggable &lt;a href=&quot;/docs/en/2.1.0-incubating/security-overview&quot;&gt;authentication&lt;/a&gt; mechanism which can be configured at broker and it a [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Authentication and Authorization · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar supports a pluggable &lt;a href=&quot;/docs/en/2.1.0-incubating/security-overview&quot;&gt;authentication&lt;/a&gt; [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,8 +47,8 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-authentication.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Authentication and Authorization</h1></header><article><div><span><p>Pulsar supports a pluggable <a href="/docs/en/2.1.0-incubating/ [...]
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-multi-tenancy"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-topic-compaction"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"></nav></div><footer class="nav-footer" id="footer"><section class="copyright">Copyright © 2018 Th [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-authentication.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Authentication and Authorization</h1></header><article><div><span><p>Pulsar supports a pluggable <a href="/docs/en/2.1.0-incubating/security-overview [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-multi-tenancy"><span class="arrow-prev">← </span><span>Multi Tenancy</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-topic-compaction"><span>Topic Compaction</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"></nav></div><footer class="nav-footer" id="footer"><section class="copyright">Copyright © 201 [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/concepts-authentication/index.html b/content/docs/en/2.1.0-incubating/concepts-authentication/index.html
index 5044eaf..7f4bde5 100644
--- a/content/docs/en/2.1.0-incubating/concepts-authentication/index.html
+++ b/content/docs/en/2.1.0-incubating/concepts-authentication/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Authentication and Authorization · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar supports a pluggable [authentication](/docs/en/2.1.0-incubating/security-overview) mechanism which can be configured at broker and it also supports authorization to identify cli [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Authentication and Authorization · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar supports a pluggable &lt;a href=&quot;/docs/en/2.1.0-incubating/security-overview&quot;&gt;authentication&lt;/a&gt; mechanism which can be configured at broker and it a [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Authentication and Authorization · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar supports a pluggable &lt;a href=&quot;/docs/en/2.1.0-incubating/security-overview&quot;&gt;authentication&lt;/a&gt; [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,8 +47,8 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-authentication.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Authentication and Authorization</h1></header><article><div><span><p>Pulsar supports a pluggable <a href="/docs/en/2.1.0-incubating/ [...]
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-multi-tenancy"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-topic-compaction"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"></nav></div><footer class="nav-footer" id="footer"><section class="copyright">Copyright © 2018 Th [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-authentication.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Authentication and Authorization</h1></header><article><div><span><p>Pulsar supports a pluggable <a href="/docs/en/2.1.0-incubating/security-overview [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-multi-tenancy"><span class="arrow-prev">← </span><span>Multi Tenancy</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-topic-compaction"><span>Topic Compaction</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"></nav></div><footer class="nav-footer" id="footer"><section class="copyright">Copyright © 201 [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/concepts-clients.html b/content/docs/en/2.1.0-incubating/concepts-clients.html
index 3d4f571..0df60d9 100644
--- a/content/docs/en/2.1.0-incubating/concepts-clients.html
+++ b/content/docs/en/2.1.0-incubating/concepts-clients.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar Clients · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar exposes a client API with language bindings for [Java](/docs/en/2.1.0-incubating/client-libraries-java) and [C++](/docs/en/2.1.0-incubating/client-libraries-cpp). The client API optimizes and enc [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar Clients · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar exposes a client API with language bindings for &lt;a href=&quot;/docs/en/2.1.0-incubating/client-libraries-java&quot;&gt;Java&lt;/a&gt; and &lt;a href=&quot;/docs/en/2.1.0-incubating/cl [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar Clients · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar exposes a client API with language bindings for &lt;a href=&quot;/docs/en/2.1.0-incubating/client-libraries-java&quot;&gt;Java&lt;/a& [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-clients.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar Clients</h1></header><article><div><span><p>Pulsar exposes a client API with language bindings for <a href="/docs/en/2.1.0-incubatin [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-clients.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar Clients</h1></header><article><div><span><p>Pulsar exposes a client API with language bindings for <a href="/docs/en/2.1.0-incubating/client-librarie [...]
 <p>Under the hood, the current official Pulsar client libraries support transparent reconnection and/or connection failover to brokers, queuing of messages until acknowledged by the broker, and heuristics such as connection retries with backoff.</p>
 <blockquote>
 <h4><a class="anchor" aria-hidden="true" id="custom-client-libraries"></a><a href="#custom-client-libraries" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 [...]
@@ -103,7 +105,7 @@ Reader&lt;<span class="hljs-keyword">byte</span>[]&gt; reader = pulsarClient.new
     .startMessageId(id)
     .create();
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-architecture-overview"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-replication"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#client-setup-phase">Client setup phase</a></li><li><a h [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-architecture-overview"><span class="arrow-prev">← </span><span>Architecture Overview</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-replication"><span>Geo Replication</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#client-setup-phase">Client setup phase</a></ [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/concepts-clients/index.html b/content/docs/en/2.1.0-incubating/concepts-clients/index.html
index 3d4f571..0df60d9 100644
--- a/content/docs/en/2.1.0-incubating/concepts-clients/index.html
+++ b/content/docs/en/2.1.0-incubating/concepts-clients/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar Clients · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar exposes a client API with language bindings for [Java](/docs/en/2.1.0-incubating/client-libraries-java) and [C++](/docs/en/2.1.0-incubating/client-libraries-cpp). The client API optimizes and enc [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar Clients · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar exposes a client API with language bindings for &lt;a href=&quot;/docs/en/2.1.0-incubating/client-libraries-java&quot;&gt;Java&lt;/a&gt; and &lt;a href=&quot;/docs/en/2.1.0-incubating/cl [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar Clients · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar exposes a client API with language bindings for &lt;a href=&quot;/docs/en/2.1.0-incubating/client-libraries-java&quot;&gt;Java&lt;/a& [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-clients.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar Clients</h1></header><article><div><span><p>Pulsar exposes a client API with language bindings for <a href="/docs/en/2.1.0-incubatin [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-clients.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar Clients</h1></header><article><div><span><p>Pulsar exposes a client API with language bindings for <a href="/docs/en/2.1.0-incubating/client-librarie [...]
 <p>Under the hood, the current official Pulsar client libraries support transparent reconnection and/or connection failover to brokers, queuing of messages until acknowledged by the broker, and heuristics such as connection retries with backoff.</p>
 <blockquote>
 <h4><a class="anchor" aria-hidden="true" id="custom-client-libraries"></a><a href="#custom-client-libraries" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 [...]
@@ -103,7 +105,7 @@ Reader&lt;<span class="hljs-keyword">byte</span>[]&gt; reader = pulsarClient.new
     .startMessageId(id)
     .create();
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-architecture-overview"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-replication"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#client-setup-phase">Client setup phase</a></li><li><a h [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-architecture-overview"><span class="arrow-prev">← </span><span>Architecture Overview</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-replication"><span>Geo Replication</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#client-setup-phase">Client setup phase</a></ [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/concepts-messaging.html b/content/docs/en/2.1.0-incubating/concepts-messaging.html
index 0ce30ac..e297870 100644
--- a/content/docs/en/2.1.0-incubating/concepts-messaging.html
+++ b/content/docs/en/2.1.0-incubating/concepts-messaging.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Messaging Concepts · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar is built on the [publish-subscribe](https://en.wikipedia.org/wiki/Publish%E2%80%93subscribe_pattern) pattern, aka pub-sub. In this pattern, [producers](#producers) publish messages to [topics [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Messaging Concepts · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar is built on the &lt;a href=&quot;https://en.wikipedia.org/wiki/Publish%E2%80%93subscribe_pattern&quot;&gt;publish-subscribe&lt;/a&gt; pattern, aka pub-sub. In this pattern, &lt;a hre [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Messaging Concepts · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar is built on the &lt;a href=&quot;https://en.wikipedia.org/wiki/Publish%E2%80%93subscribe_pattern&quot;&gt;publish-subscribe&lt;/a [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-messaging.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Messaging Concepts</h1></header><article><div><span><p>Pulsar is built on the <a href="https://en.wikipedia.org/wiki/Publish%E2%80%93subs [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-messaging.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Messaging Concepts</h1></header><article><div><span><p>Pulsar is built on the <a href="https://en.wikipedia.org/wiki/Publish%E2%80%93subscribe_pattern">pu [...]
 <p>Once a subscription has been created, all messages will be <a href="/docs/en/2.1.0-incubating/concepts-architecture-overview#persistent-storage">retained</a> by Pulsar, even if the consumer gets disconnected. Retained messages will be discarded only when a consumer acknowledges that they've been successfully processed.</p>
 <h2><a class="anchor" aria-hidden="true" id="messages"></a><a href="#messages" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64  [...]
 <p>Messages are the basic &quot;unit&quot; of Pulsar. They're what producers publish to topics and what consumers then consume from topics (and acknowledge when the message has been processed). Messages are the analogue of letters in a postal service system.</p>
@@ -278,7 +280,7 @@ Consumer consumer = client.subscribe(npTopic, subscriptionName);
 <blockquote>
 <p>More in-depth information can be found in <a href="https://streaml.io/blog/pulsar-effectively-once/">this post</a> on the <a href="https://streaml.io/blog">Streamlio blog</a></p>
 </blockquote>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-overview"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-architecture-overview"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#messages">Messages</a></li><li><a href="#producers">Produc [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-overview"><span class="arrow-prev">← </span><span>Pulsar Overview</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-architecture-overview"><span>Architecture Overview</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#messages">Messages</a></li><li><a href="#produc [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/concepts-messaging/index.html b/content/docs/en/2.1.0-incubating/concepts-messaging/index.html
index 0ce30ac..e297870 100644
--- a/content/docs/en/2.1.0-incubating/concepts-messaging/index.html
+++ b/content/docs/en/2.1.0-incubating/concepts-messaging/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Messaging Concepts · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar is built on the [publish-subscribe](https://en.wikipedia.org/wiki/Publish%E2%80%93subscribe_pattern) pattern, aka pub-sub. In this pattern, [producers](#producers) publish messages to [topics [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Messaging Concepts · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar is built on the &lt;a href=&quot;https://en.wikipedia.org/wiki/Publish%E2%80%93subscribe_pattern&quot;&gt;publish-subscribe&lt;/a&gt; pattern, aka pub-sub. In this pattern, &lt;a hre [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Messaging Concepts · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar is built on the &lt;a href=&quot;https://en.wikipedia.org/wiki/Publish%E2%80%93subscribe_pattern&quot;&gt;publish-subscribe&lt;/a [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-messaging.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Messaging Concepts</h1></header><article><div><span><p>Pulsar is built on the <a href="https://en.wikipedia.org/wiki/Publish%E2%80%93subs [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-messaging.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Messaging Concepts</h1></header><article><div><span><p>Pulsar is built on the <a href="https://en.wikipedia.org/wiki/Publish%E2%80%93subscribe_pattern">pu [...]
 <p>Once a subscription has been created, all messages will be <a href="/docs/en/2.1.0-incubating/concepts-architecture-overview#persistent-storage">retained</a> by Pulsar, even if the consumer gets disconnected. Retained messages will be discarded only when a consumer acknowledges that they've been successfully processed.</p>
 <h2><a class="anchor" aria-hidden="true" id="messages"></a><a href="#messages" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64  [...]
 <p>Messages are the basic &quot;unit&quot; of Pulsar. They're what producers publish to topics and what consumers then consume from topics (and acknowledge when the message has been processed). Messages are the analogue of letters in a postal service system.</p>
@@ -278,7 +280,7 @@ Consumer consumer = client.subscribe(npTopic, subscriptionName);
 <blockquote>
 <p>More in-depth information can be found in <a href="https://streaml.io/blog/pulsar-effectively-once/">this post</a> on the <a href="https://streaml.io/blog">Streamlio blog</a></p>
 </blockquote>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-overview"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-architecture-overview"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#messages">Messages</a></li><li><a href="#producers">Produc [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-overview"><span class="arrow-prev">← </span><span>Pulsar Overview</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-architecture-overview"><span>Architecture Overview</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#messages">Messages</a></li><li><a href="#produc [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/concepts-multi-tenancy.html b/content/docs/en/2.1.0-incubating/concepts-multi-tenancy.html
index 47338ea..61d56a8 100644
--- a/content/docs/en/2.1.0-incubating/concepts-multi-tenancy.html
+++ b/content/docs/en/2.1.0-incubating/concepts-multi-tenancy.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Multi Tenancy · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar was created from the ground up as a multi-tenant system. To support multi-tenancy, Pulsar has a concept of tenants. Tenants can be spread across clusters and can each have their own [authenticatio [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Multi Tenancy · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar was created from the ground up as a multi-tenant system. To support multi-tenancy, Pulsar has a concept of tenants. Tenants can be spread across clusters and can each have their own &lt;a [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Multi Tenancy · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar was created from the ground up as a multi-tenant system. To support multi-tenancy, Pulsar has a concept of tenants. Tenants can be spr [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-multi-tenancy.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Multi Tenancy</h1></header><article><div><span><p>Pulsar was created from the ground up as a multi-tenant system. To support multi-te [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-multi-tenancy.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Multi Tenancy</h1></header><article><div><span><p>Pulsar was created from the ground up as a multi-tenant system. To support multi-tenancy, Pulsar has [...]
 <p>The multi-tenant nature of Pulsar is reflected mostly visibly in topic URLs, which have this structure:</p>
 <pre><code class="hljs css language-http">persistent://tenant/namespace/topic
 </code></pre>
@@ -69,7 +71,7 @@ persistent://tenant/app1/topic-2
 
 persistent://tenant/app1/topic-3
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-replication"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-authentication"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#tenants">Tenants</a></li><li><a href="#namespaces">Namespaces< [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-replication"><span class="arrow-prev">← </span><span>Geo Replication</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-authentication"><span>Authentication and Authorization</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#tenants">Tenants</a></li><li><a href="#n [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/concepts-multi-tenancy/index.html b/content/docs/en/2.1.0-incubating/concepts-multi-tenancy/index.html
index 47338ea..61d56a8 100644
--- a/content/docs/en/2.1.0-incubating/concepts-multi-tenancy/index.html
+++ b/content/docs/en/2.1.0-incubating/concepts-multi-tenancy/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Multi Tenancy · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar was created from the ground up as a multi-tenant system. To support multi-tenancy, Pulsar has a concept of tenants. Tenants can be spread across clusters and can each have their own [authenticatio [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Multi Tenancy · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar was created from the ground up as a multi-tenant system. To support multi-tenancy, Pulsar has a concept of tenants. Tenants can be spread across clusters and can each have their own &lt;a [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Multi Tenancy · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar was created from the ground up as a multi-tenant system. To support multi-tenancy, Pulsar has a concept of tenants. Tenants can be spr [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-multi-tenancy.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Multi Tenancy</h1></header><article><div><span><p>Pulsar was created from the ground up as a multi-tenant system. To support multi-te [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-multi-tenancy.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Multi Tenancy</h1></header><article><div><span><p>Pulsar was created from the ground up as a multi-tenant system. To support multi-tenancy, Pulsar has [...]
 <p>The multi-tenant nature of Pulsar is reflected mostly visibly in topic URLs, which have this structure:</p>
 <pre><code class="hljs css language-http">persistent://tenant/namespace/topic
 </code></pre>
@@ -69,7 +71,7 @@ persistent://tenant/app1/topic-2
 
 persistent://tenant/app1/topic-3
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-replication"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-authentication"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#tenants">Tenants</a></li><li><a href="#namespaces">Namespaces< [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-replication"><span class="arrow-prev">← </span><span>Geo Replication</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-authentication"><span>Authentication and Authorization</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#tenants">Tenants</a></li><li><a href="#n [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/concepts-overview.html b/content/docs/en/2.1.0-incubating/concepts-overview.html
index e07b0cf..b4e998e 100644
--- a/content/docs/en/2.1.0-incubating/concepts-overview.html
+++ b/content/docs/en/2.1.0-incubating/concepts-overview.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar Overview · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar is a multi-tenant, high-performance solution for server-to-server messaging originally developed by [Yahoo](http://yahoo.github.io/) and now under the stewardship of the [Apache Software Foundat [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar Overview · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar is a multi-tenant, high-performance solution for server-to-server messaging originally developed by &lt;a href=&quot;http://yahoo.github.io/&quot;&gt;Yahoo&lt;/a&gt; and now under the s [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar Overview · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar is a multi-tenant, high-performance solution for server-to-server messaging originally developed by &lt;a href=&quot;http://yahoo.gi [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-overview.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar Overview</h1></header><article><div><span><p>Pulsar is a multi-tenant, high-performance solution for server-to-server messaging ori [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-overview.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar Overview</h1></header><article><div><span><p>Pulsar is a multi-tenant, high-performance solution for server-to-server messaging originally developed [...]
 <p>Pulsar's key features include:</p>
 <ul>
 <li>Native support for multiple clusters in a Pulsar instance, with seamless <a href="/docs/en/2.1.0-incubating/administration-geo">geo-replication</a> of messages across clusters</li>
@@ -70,7 +72,7 @@
 <li><a href="/docs/en/2.1.0-incubating/concepts-tiered-storage">Tiered Storage</a></li>
 <li><a href="/docs/en/2.1.0-incubating/concepts-schema-registry">Schema Registry</a></li>
 </ul>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/client-libraries"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-messaging"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#contents">Contents</a></li></ul></nav></div><footer class="nav-footer"  [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/client-libraries"><span class="arrow-prev">← </span><span>Pulsar client libraries</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-messaging"><span>Messaging Concepts</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#contents">Contents</a></li></ul></nav></div><footer cla [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/concepts-overview/index.html b/content/docs/en/2.1.0-incubating/concepts-overview/index.html
index e07b0cf..b4e998e 100644
--- a/content/docs/en/2.1.0-incubating/concepts-overview/index.html
+++ b/content/docs/en/2.1.0-incubating/concepts-overview/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar Overview · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar is a multi-tenant, high-performance solution for server-to-server messaging originally developed by [Yahoo](http://yahoo.github.io/) and now under the stewardship of the [Apache Software Foundat [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar Overview · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar is a multi-tenant, high-performance solution for server-to-server messaging originally developed by &lt;a href=&quot;http://yahoo.github.io/&quot;&gt;Yahoo&lt;/a&gt; and now under the s [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar Overview · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar is a multi-tenant, high-performance solution for server-to-server messaging originally developed by &lt;a href=&quot;http://yahoo.gi [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-overview.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar Overview</h1></header><article><div><span><p>Pulsar is a multi-tenant, high-performance solution for server-to-server messaging ori [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-overview.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar Overview</h1></header><article><div><span><p>Pulsar is a multi-tenant, high-performance solution for server-to-server messaging originally developed [...]
 <p>Pulsar's key features include:</p>
 <ul>
 <li>Native support for multiple clusters in a Pulsar instance, with seamless <a href="/docs/en/2.1.0-incubating/administration-geo">geo-replication</a> of messages across clusters</li>
@@ -70,7 +72,7 @@
 <li><a href="/docs/en/2.1.0-incubating/concepts-tiered-storage">Tiered Storage</a></li>
 <li><a href="/docs/en/2.1.0-incubating/concepts-schema-registry">Schema Registry</a></li>
 </ul>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/client-libraries"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-messaging"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#contents">Contents</a></li></ul></nav></div><footer class="nav-footer"  [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/client-libraries"><span class="arrow-prev">← </span><span>Pulsar client libraries</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-messaging"><span>Messaging Concepts</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#contents">Contents</a></li></ul></nav></div><footer cla [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/concepts-replication.html b/content/docs/en/2.1.0-incubating/concepts-replication.html
index b9b78e5..314d48c 100644
--- a/content/docs/en/2.1.0-incubating/concepts-replication.html
+++ b/content/docs/en/2.1.0-incubating/concepts-replication.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Geo Replication · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar enables messages to be produced and consumed in different geo-locations. For instance, your application may be publishing data in one region or market and you would like to process it for consum [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Geo Replication · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar enables messages to be produced and consumed in different geo-locations. For instance, your application may be publishing data in one region or market and you would like to process it f [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Geo Replication · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar enables messages to be produced and consumed in different geo-locations. For instance, your application may be publishing data in on [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,8 +47,8 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-replication.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Geo Replication</h1></header><article><div><span><p>Pulsar enables messages to be produced and consumed in different geo-locations. For [...]
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-clients"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-multi-tenancy"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"></nav></div><footer class="nav-footer" id="footer"><section class="copyright">Copyright © 2018 The Apache  [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-replication.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Geo Replication</h1></header><article><div><span><p>Pulsar enables messages to be produced and consumed in different geo-locations. For instance, your a [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-clients"><span class="arrow-prev">← </span><span>Pulsar Clients</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-multi-tenancy"><span>Multi Tenancy</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"></nav></div><footer class="nav-footer" id="footer"><section class="copyright">Copyright © 2018 The Apach [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/concepts-replication/index.html b/content/docs/en/2.1.0-incubating/concepts-replication/index.html
index b9b78e5..314d48c 100644
--- a/content/docs/en/2.1.0-incubating/concepts-replication/index.html
+++ b/content/docs/en/2.1.0-incubating/concepts-replication/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Geo Replication · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar enables messages to be produced and consumed in different geo-locations. For instance, your application may be publishing data in one region or market and you would like to process it for consum [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Geo Replication · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar enables messages to be produced and consumed in different geo-locations. For instance, your application may be publishing data in one region or market and you would like to process it f [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Geo Replication · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar enables messages to be produced and consumed in different geo-locations. For instance, your application may be publishing data in on [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,8 +47,8 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-replication.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Geo Replication</h1></header><article><div><span><p>Pulsar enables messages to be produced and consumed in different geo-locations. For [...]
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-clients"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-multi-tenancy"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"></nav></div><footer class="nav-footer" id="footer"><section class="copyright">Copyright © 2018 The Apache  [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-replication.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Geo Replication</h1></header><article><div><span><p>Pulsar enables messages to be produced and consumed in different geo-locations. For instance, your a [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-clients"><span class="arrow-prev">← </span><span>Pulsar Clients</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-multi-tenancy"><span>Multi Tenancy</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"></nav></div><footer class="nav-footer" id="footer"><section class="copyright">Copyright © 2018 The Apach [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/concepts-schema-registry.html b/content/docs/en/2.1.0-incubating/concepts-schema-registry.html
index 1f685e4..981b6e4 100644
--- a/content/docs/en/2.1.0-incubating/concepts-schema-registry.html
+++ b/content/docs/en/2.1.0-incubating/concepts-schema-registry.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Schema Registry · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Type safety is extremely important in any application built around a message bus like Pulsar. Producers and consumers need some kind of mechanism for coordinating types at the topic level lest a wide v [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Schema Registry · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Type safety is extremely important in any application built around a message bus like Pulsar. Producers and consumers need some kind of mechanism for coordinating types at the topic level lest [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Schema Registry · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Type safety is extremely important in any application built around a message bus like Pulsar. Producers and consumers need some kind of mec [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-schema-registry.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Schema Registry</h1></header><article><div><span><p>Type safety is extremely important in any application built around a message bu [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-schema-registry.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Schema Registry</h1></header><article><div><span><p>Type safety is extremely important in any application built around a message bus like Pulsar. Pr [...]
 <ol>
 <li>A &quot;client-side&quot; approach in which message producers and consumers are responsible for not only serializing and deserializing messages (which consist of raw bytes) but also &quot;knowing&quot; which types are being transmitted via which topics. If a producer is sending temperature sensor data on the topic <code>topic-1</code>, consumers of that topic will run into trouble if they attempt to parse that data as, say, moisture sensor readings.</li>
 <li>A &quot;server-side&quot; approach in which producers and consumers inform the system which data types can be transmitted via the topic. With this approach, the messaging system enforces type safety and ensures that producers and consumers remain synced.</li>
@@ -117,7 +119,7 @@ Producer&lt;SensorReading&gt; producer = client.newProducer(JSONSchema.of(Sensor
 </blockquote>
 <h2><a class="anchor" aria-hidden="true" id="managing-schemas"></a><a href="#managing-schemas" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2. [...]
 <p>You can use Pulsar's <a href="/docs/en/2.1.0-incubating/admin-api-schemas">admin tools</a> for managing schemas for topics.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-tiered-storage"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-overview"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#basic-architecture">Basic architecture</a></li><li><a href="#how [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-tiered-storage"><span class="arrow-prev">← </span><span>Tiered Storage</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-overview"><span>Pulsar Functions overview</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#basic-architecture">Basic architecture</a></li><li [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/concepts-schema-registry/index.html b/content/docs/en/2.1.0-incubating/concepts-schema-registry/index.html
index 1f685e4..981b6e4 100644
--- a/content/docs/en/2.1.0-incubating/concepts-schema-registry/index.html
+++ b/content/docs/en/2.1.0-incubating/concepts-schema-registry/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Schema Registry · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Type safety is extremely important in any application built around a message bus like Pulsar. Producers and consumers need some kind of mechanism for coordinating types at the topic level lest a wide v [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Schema Registry · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Type safety is extremely important in any application built around a message bus like Pulsar. Producers and consumers need some kind of mechanism for coordinating types at the topic level lest [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Schema Registry · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Type safety is extremely important in any application built around a message bus like Pulsar. Producers and consumers need some kind of mec [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-schema-registry.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Schema Registry</h1></header><article><div><span><p>Type safety is extremely important in any application built around a message bu [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-schema-registry.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Schema Registry</h1></header><article><div><span><p>Type safety is extremely important in any application built around a message bus like Pulsar. Pr [...]
 <ol>
 <li>A &quot;client-side&quot; approach in which message producers and consumers are responsible for not only serializing and deserializing messages (which consist of raw bytes) but also &quot;knowing&quot; which types are being transmitted via which topics. If a producer is sending temperature sensor data on the topic <code>topic-1</code>, consumers of that topic will run into trouble if they attempt to parse that data as, say, moisture sensor readings.</li>
 <li>A &quot;server-side&quot; approach in which producers and consumers inform the system which data types can be transmitted via the topic. With this approach, the messaging system enforces type safety and ensures that producers and consumers remain synced.</li>
@@ -117,7 +119,7 @@ Producer&lt;SensorReading&gt; producer = client.newProducer(JSONSchema.of(Sensor
 </blockquote>
 <h2><a class="anchor" aria-hidden="true" id="managing-schemas"></a><a href="#managing-schemas" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2. [...]
 <p>You can use Pulsar's <a href="/docs/en/2.1.0-incubating/admin-api-schemas">admin tools</a> for managing schemas for topics.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-tiered-storage"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-overview"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#basic-architecture">Basic architecture</a></li><li><a href="#how [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-tiered-storage"><span class="arrow-prev">← </span><span>Tiered Storage</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-overview"><span>Pulsar Functions overview</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#basic-architecture">Basic architecture</a></li><li [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/concepts-tiered-storage.html b/content/docs/en/2.1.0-incubating/concepts-tiered-storage.html
index 6534b67..46e2f8a 100644
--- a/content/docs/en/2.1.0-incubating/concepts-tiered-storage.html
+++ b/content/docs/en/2.1.0-incubating/concepts-tiered-storage.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Tiered Storage · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar&#x27;s segment oriented architecture allows for topic backlogs to grow very large, effectively without limit. However, this can become expensive over time."/><meta name="docsearch:version" conten [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Tiered Storage · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar&#x27;s segment oriented architecture allows for topic backlogs to grow very large, effectively without limit. However, this can become expensive over time.&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Tiered Storage · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar&#x27;s segment oriented architecture allows for topic backlogs to grow very large, effectively without limit. However, this can becom [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-tiered-storage.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Tiered Storage</h1></header><article><div><span><p>Pulsar's segment oriented architecture allows for topic backlogs to grow very lar [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-tiered-storage.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Tiered Storage</h1></header><article><div><span><p>Pulsar's segment oriented architecture allows for topic backlogs to grow very large, effectively w [...]
 <p>One way to alleviate this cost is to use Tiered Storage. With tiered storage, older messages in the backlog can be moved from bookkeeper to a cheaper storage mechanism, while still allowing clients to access the backlog as if nothing had changed.</p>
 <p><img src="/docs/assets/pulsar-tiered-storage.png" alt="Tiered Storage"></p>
 <blockquote>
@@ -55,7 +57,7 @@
 <blockquote>
 <p>For a guide for setting up tiered storage, see the <a href="/docs/en/2.1.0-incubating/cookbooks-tiered-storage">Tiered storage cookbook</a>.</p>
 </blockquote>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-topic-compaction"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-schema-registry"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"></nav></div><footer class="nav-footer" id="footer"><section class="copyright">Copyright © 2018  [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-topic-compaction"><span class="arrow-prev">← </span><span>Topic Compaction</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-schema-registry"><span>Schema Registry</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"></nav></div><footer class="nav-footer" id="footer"><section class="copyright">Copyright © [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/concepts-tiered-storage/index.html b/content/docs/en/2.1.0-incubating/concepts-tiered-storage/index.html
index 6534b67..46e2f8a 100644
--- a/content/docs/en/2.1.0-incubating/concepts-tiered-storage/index.html
+++ b/content/docs/en/2.1.0-incubating/concepts-tiered-storage/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Tiered Storage · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar&#x27;s segment oriented architecture allows for topic backlogs to grow very large, effectively without limit. However, this can become expensive over time."/><meta name="docsearch:version" conten [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Tiered Storage · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar&#x27;s segment oriented architecture allows for topic backlogs to grow very large, effectively without limit. However, this can become expensive over time.&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Tiered Storage · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar&#x27;s segment oriented architecture allows for topic backlogs to grow very large, effectively without limit. However, this can becom [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-tiered-storage.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Tiered Storage</h1></header><article><div><span><p>Pulsar's segment oriented architecture allows for topic backlogs to grow very lar [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-tiered-storage.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Tiered Storage</h1></header><article><div><span><p>Pulsar's segment oriented architecture allows for topic backlogs to grow very large, effectively w [...]
 <p>One way to alleviate this cost is to use Tiered Storage. With tiered storage, older messages in the backlog can be moved from bookkeeper to a cheaper storage mechanism, while still allowing clients to access the backlog as if nothing had changed.</p>
 <p><img src="/docs/assets/pulsar-tiered-storage.png" alt="Tiered Storage"></p>
 <blockquote>
@@ -55,7 +57,7 @@
 <blockquote>
 <p>For a guide for setting up tiered storage, see the <a href="/docs/en/2.1.0-incubating/cookbooks-tiered-storage">Tiered storage cookbook</a>.</p>
 </blockquote>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-topic-compaction"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-schema-registry"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"></nav></div><footer class="nav-footer" id="footer"><section class="copyright">Copyright © 2018  [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-topic-compaction"><span class="arrow-prev">← </span><span>Topic Compaction</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-schema-registry"><span>Schema Registry</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"></nav></div><footer class="nav-footer" id="footer"><section class="copyright">Copyright © [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/concepts-topic-compaction.html b/content/docs/en/2.1.0-incubating/concepts-topic-compaction.html
index 24664e0..a2b3fb7 100644
--- a/content/docs/en/2.1.0-incubating/concepts-topic-compaction.html
+++ b/content/docs/en/2.1.0-incubating/concepts-topic-compaction.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Topic Compaction · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar was built with highly scalable [persistent storage](/docs/en/2.1.0-incubating/concepts-architecture-overview#persistent-storage) of message data as a primary objective. Pulsar topics enable you [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Topic Compaction · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar was built with highly scalable &lt;a href=&quot;/docs/en/2.1.0-incubating/concepts-architecture-overview#persistent-storage&quot;&gt;persistent storage&lt;/a&gt; of message data as a p [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Topic Compaction · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar was built with highly scalable &lt;a href=&quot;/docs/en/2.1.0-incubating/concepts-architecture-overview#persistent-storage&quot;&g [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-topic-compaction.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Topic Compaction</h1></header><article><div><span><p>Pulsar was built with highly scalable <a href="/docs/en/2.1.0-incubating/conc [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-topic-compaction.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Topic Compaction</h1></header><article><div><span><p>Pulsar was built with highly scalable <a href="/docs/en/2.1.0-incubating/concepts-architecture [...]
 <blockquote>
 <p>For a more practical guide to topic compaction, see the <a href="/docs/en/2.1.0-incubating/cookbooks-compaction">Topic compaction cookbook</a>.</p>
 </blockquote>
@@ -72,7 +74,7 @@
 <li>Read beginning at the compaction horizon (if the message ID is lower than the compaction horizon)</li>
 </ul></li>
 </ul>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-authentication"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-tiered-storage"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#how-topic-compaction-works">How topic compaction works</a>< [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-authentication"><span class="arrow-prev">← </span><span>Authentication and Authorization</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-tiered-storage"><span>Tiered Storage</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#how-topic-compaction-works">How topic  [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/concepts-topic-compaction/index.html b/content/docs/en/2.1.0-incubating/concepts-topic-compaction/index.html
index 24664e0..a2b3fb7 100644
--- a/content/docs/en/2.1.0-incubating/concepts-topic-compaction/index.html
+++ b/content/docs/en/2.1.0-incubating/concepts-topic-compaction/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Topic Compaction · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar was built with highly scalable [persistent storage](/docs/en/2.1.0-incubating/concepts-architecture-overview#persistent-storage) of message data as a primary objective. Pulsar topics enable you [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Topic Compaction · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar was built with highly scalable &lt;a href=&quot;/docs/en/2.1.0-incubating/concepts-architecture-overview#persistent-storage&quot;&gt;persistent storage&lt;/a&gt; of message data as a p [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Topic Compaction · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar was built with highly scalable &lt;a href=&quot;/docs/en/2.1.0-incubating/concepts-architecture-overview#persistent-storage&quot;&g [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-topic-compaction.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Topic Compaction</h1></header><article><div><span><p>Pulsar was built with highly scalable <a href="/docs/en/2.1.0-incubating/conc [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/concepts-topic-compaction.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Topic Compaction</h1></header><article><div><span><p>Pulsar was built with highly scalable <a href="/docs/en/2.1.0-incubating/concepts-architecture [...]
 <blockquote>
 <p>For a more practical guide to topic compaction, see the <a href="/docs/en/2.1.0-incubating/cookbooks-compaction">Topic compaction cookbook</a>.</p>
 </blockquote>
@@ -72,7 +74,7 @@
 <li>Read beginning at the compaction horizon (if the message ID is lower than the compaction horizon)</li>
 </ul></li>
 </ul>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-authentication"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-tiered-storage"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#how-topic-compaction-works">How topic compaction works</a>< [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-authentication"><span class="arrow-prev">← </span><span>Authentication and Authorization</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/concepts-tiered-storage"><span>Tiered Storage</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#how-topic-compaction-works">How topic  [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/cookbooks-compaction.html b/content/docs/en/2.1.0-incubating/cookbooks-compaction.html
index 6a26f9d..bc102d6 100644
--- a/content/docs/en/2.1.0-incubating/cookbooks-compaction.html
+++ b/content/docs/en/2.1.0-incubating/cookbooks-compaction.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Topic compaction · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar&#x27;s [topic compaction](/docs/en/2.1.0-incubating/concepts-topic-compaction#compaction) feature enables you to create **compacted** topics in which older, &quot;obscured&quot; entries are pru [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Topic compaction · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar&#x27;s &lt;a href=&quot;/docs/en/2.1.0-incubating/concepts-topic-compaction#compaction&quot;&gt;topic compaction&lt;/a&gt; feature enables you to create &lt;strong&gt;compacted&lt;/str [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Topic compaction · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar&#x27;s &lt;a href=&quot;/docs/en/2.1.0-incubating/concepts-topic-compaction#compaction&quot;&gt;topic compaction&lt;/a&gt; feature  [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-compaction.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Topic compaction</h1></header><article><div><span><p>Pulsar's <a href="/docs/en/2.1.0-incubating/concepts-topic-compaction#compaction"> [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-compaction.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Topic compaction</h1></header><article><div><span><p>Pulsar's <a href="/docs/en/2.1.0-incubating/concepts-topic-compaction#compaction">topic compaction< [...]
 <p>To use compaction:</p>
 <ul>
 <li>You need to give messages keys, as topic compaction in Pulsar takes place on a <em>per-key basis</em> (i.e. messages are compacted based on their key). For a stock ticker use case, the stock symbol---e.g. <code>AAPL</code> or <code>GOOG</code>---could serve as the key (more on this <a href="#when">below</a>). Messages without keys will be left alone by the compaction process.</li>
@@ -139,7 +141,7 @@ Message&lt;<span class="hljs-keyword">byte</span>[]&gt; msg = MessageBuilder.cre
 
 compactedTopicProducer.send(msg);
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-tiered-storage"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-deduplication"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#when-should-i-use-compacted-topics-when">When should I use [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-tiered-storage"><span class="arrow-prev">← </span><span>Tiered Storage</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-deduplication"><span>Message deduplication</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#when-should-i-use-compacted-topics-when">When sh [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/cookbooks-compaction/index.html b/content/docs/en/2.1.0-incubating/cookbooks-compaction/index.html
index 6a26f9d..bc102d6 100644
--- a/content/docs/en/2.1.0-incubating/cookbooks-compaction/index.html
+++ b/content/docs/en/2.1.0-incubating/cookbooks-compaction/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Topic compaction · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar&#x27;s [topic compaction](/docs/en/2.1.0-incubating/concepts-topic-compaction#compaction) feature enables you to create **compacted** topics in which older, &quot;obscured&quot; entries are pru [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Topic compaction · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar&#x27;s &lt;a href=&quot;/docs/en/2.1.0-incubating/concepts-topic-compaction#compaction&quot;&gt;topic compaction&lt;/a&gt; feature enables you to create &lt;strong&gt;compacted&lt;/str [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Topic compaction · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar&#x27;s &lt;a href=&quot;/docs/en/2.1.0-incubating/concepts-topic-compaction#compaction&quot;&gt;topic compaction&lt;/a&gt; feature  [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-compaction.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Topic compaction</h1></header><article><div><span><p>Pulsar's <a href="/docs/en/2.1.0-incubating/concepts-topic-compaction#compaction"> [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-compaction.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Topic compaction</h1></header><article><div><span><p>Pulsar's <a href="/docs/en/2.1.0-incubating/concepts-topic-compaction#compaction">topic compaction< [...]
 <p>To use compaction:</p>
 <ul>
 <li>You need to give messages keys, as topic compaction in Pulsar takes place on a <em>per-key basis</em> (i.e. messages are compacted based on their key). For a stock ticker use case, the stock symbol---e.g. <code>AAPL</code> or <code>GOOG</code>---could serve as the key (more on this <a href="#when">below</a>). Messages without keys will be left alone by the compaction process.</li>
@@ -139,7 +141,7 @@ Message&lt;<span class="hljs-keyword">byte</span>[]&gt; msg = MessageBuilder.cre
 
 compactedTopicProducer.send(msg);
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-tiered-storage"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-deduplication"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#when-should-i-use-compacted-topics-when">When should I use [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-tiered-storage"><span class="arrow-prev">← </span><span>Tiered Storage</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-deduplication"><span>Message deduplication</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#when-should-i-use-compacted-topics-when">When sh [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/cookbooks-deduplication.html b/content/docs/en/2.1.0-incubating/cookbooks-deduplication.html
index 9bad851..d077ebc 100644
--- a/content/docs/en/2.1.0-incubating/cookbooks-deduplication.html
+++ b/content/docs/en/2.1.0-incubating/cookbooks-deduplication.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Message deduplication · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="**Message deduplication** is a feature of Pulsar that, when enabled, ensures that each message produced on Pulsar topics is persisted to disk *only once*, even if the message is produced more tha [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Message deduplication · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;&lt;strong&gt;Message deduplication&lt;/strong&gt; is a feature of Pulsar that, when enabled, ensures that each message produced on Pulsar topics is persisted to disk &lt;em&gt;only once [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Message deduplication · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;&lt;strong&gt;Message deduplication&lt;/strong&gt; is a feature of Pulsar that, when enabled, ensures that each message produced on P [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-deduplication.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Message deduplication</h1></header><article><div><span><p><strong>Message deduplication</strong> is a feature of Pulsar that, when e [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-deduplication.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Message deduplication</h1></header><article><div><span><p><strong>Message deduplication</strong> is a feature of Pulsar that, when enabled, ensures t [...]
 <p>Using message deduplication in Pulsar involves making some <a href="#configuration">configuration changes</a> to your Pulsar brokers as well as some minor changes to the behavior of Pulsar <a href="#clients">clients</a>.</p>
 <blockquote>
 <p>For a more thorough theoretical explanation of message deduplication, see the <a href="/docs/en/2.1.0-incubating/concepts-messaging#message-deduplication">Concepts and Architecture</a> document.</p>
@@ -134,7 +136,7 @@ Producer producer;
 
 Result result = client.createProducer(topic, producerConfig, producer);
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-compaction"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-non-persistent"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#how-it-works">How it works</a></li><li><a href="#configuratio [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-compaction"><span class="arrow-prev">← </span><span>Topic compaction</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-non-persistent"><span>Non-persistent messaging</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#how-it-works">How it works</a></li><li><a href [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/cookbooks-deduplication/index.html b/content/docs/en/2.1.0-incubating/cookbooks-deduplication/index.html
index 9bad851..d077ebc 100644
--- a/content/docs/en/2.1.0-incubating/cookbooks-deduplication/index.html
+++ b/content/docs/en/2.1.0-incubating/cookbooks-deduplication/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Message deduplication · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="**Message deduplication** is a feature of Pulsar that, when enabled, ensures that each message produced on Pulsar topics is persisted to disk *only once*, even if the message is produced more tha [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Message deduplication · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;&lt;strong&gt;Message deduplication&lt;/strong&gt; is a feature of Pulsar that, when enabled, ensures that each message produced on Pulsar topics is persisted to disk &lt;em&gt;only once [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Message deduplication · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;&lt;strong&gt;Message deduplication&lt;/strong&gt; is a feature of Pulsar that, when enabled, ensures that each message produced on P [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-deduplication.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Message deduplication</h1></header><article><div><span><p><strong>Message deduplication</strong> is a feature of Pulsar that, when e [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-deduplication.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Message deduplication</h1></header><article><div><span><p><strong>Message deduplication</strong> is a feature of Pulsar that, when enabled, ensures t [...]
 <p>Using message deduplication in Pulsar involves making some <a href="#configuration">configuration changes</a> to your Pulsar brokers as well as some minor changes to the behavior of Pulsar <a href="#clients">clients</a>.</p>
 <blockquote>
 <p>For a more thorough theoretical explanation of message deduplication, see the <a href="/docs/en/2.1.0-incubating/concepts-messaging#message-deduplication">Concepts and Architecture</a> document.</p>
@@ -134,7 +136,7 @@ Producer producer;
 
 Result result = client.createProducer(topic, producerConfig, producer);
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-compaction"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-non-persistent"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#how-it-works">How it works</a></li><li><a href="#configuratio [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-compaction"><span class="arrow-prev">← </span><span>Topic compaction</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-non-persistent"><span>Non-persistent messaging</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#how-it-works">How it works</a></li><li><a href [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/cookbooks-encryption.html b/content/docs/en/2.1.0-incubating/cookbooks-encryption.html
index 821a8f4..90e36ef 100644
--- a/content/docs/en/2.1.0-incubating/cookbooks-encryption.html
+++ b/content/docs/en/2.1.0-incubating/cookbooks-encryption.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar Encryption · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar encryption allows applications to encrypt messages at the producer and decrypt at the consumer. Encryption is performed using the public/private key pair configured by the application. Encrypt [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar Encryption · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar encryption allows applications to encrypt messages at the producer and decrypt at the consumer. Encryption is performed using the public/private key pair configured by the application [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar Encryption · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar encryption allows applications to encrypt messages at the producer and decrypt at the consumer. Encryption is performed using the  [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-encryption.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar Encryption</h1></header><article><div><span><p>Pulsar encryption allows applications to encrypt messages at the producer and dec [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-encryption.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar Encryption</h1></header><article><div><span><p>Pulsar encryption allows applications to encrypt messages at the producer and decrypt at the consu [...]
 <h2><a class="anchor" aria-hidden="true" id="asymmetric-and-symmetric-encryption"></a><a href="#asymmetric-and-symmetric-encryption" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2 [...]
 <p>Pulsar uses dynamically generated symmetric AES key to encrypt messages(data). The AES key(data key) is encrypted using application provided ECDSA/RSA key pair, as a result there is no need to share the secret with everyone.</p>
 <p>Key is a public/private key pair used for encryption/decryption. The producer key is the public key, and the consumer key is the private key of the key pair.</p>
@@ -201,7 +203,7 @@ Application will never be able to decrypt the messages if the private key is per
 </ul></li>
 <li>If decryption fails, the message consumption stops and application will notice backlog growth in addition to decryption failure messages in the client log. If application does not have access to the private key to decrypt the message, the only option is to skip/discard backlogged messages.</li>
 </ul>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-retention-expiry"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-message-queue"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#asymmetric-and-symmetric-encryption">Asymmetric and symm [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-retention-expiry"><span class="arrow-prev">← </span><span>Message retention and expiry</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-message-queue"><span>Using Pulsar as a message queue</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#asymmetric-and-symmetr [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/cookbooks-encryption/index.html b/content/docs/en/2.1.0-incubating/cookbooks-encryption/index.html
index 821a8f4..90e36ef 100644
--- a/content/docs/en/2.1.0-incubating/cookbooks-encryption/index.html
+++ b/content/docs/en/2.1.0-incubating/cookbooks-encryption/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar Encryption · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar encryption allows applications to encrypt messages at the producer and decrypt at the consumer. Encryption is performed using the public/private key pair configured by the application. Encrypt [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar Encryption · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar encryption allows applications to encrypt messages at the producer and decrypt at the consumer. Encryption is performed using the public/private key pair configured by the application [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar Encryption · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar encryption allows applications to encrypt messages at the producer and decrypt at the consumer. Encryption is performed using the  [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-encryption.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar Encryption</h1></header><article><div><span><p>Pulsar encryption allows applications to encrypt messages at the producer and dec [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-encryption.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar Encryption</h1></header><article><div><span><p>Pulsar encryption allows applications to encrypt messages at the producer and decrypt at the consu [...]
 <h2><a class="anchor" aria-hidden="true" id="asymmetric-and-symmetric-encryption"></a><a href="#asymmetric-and-symmetric-encryption" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2 [...]
 <p>Pulsar uses dynamically generated symmetric AES key to encrypt messages(data). The AES key(data key) is encrypted using application provided ECDSA/RSA key pair, as a result there is no need to share the secret with everyone.</p>
 <p>Key is a public/private key pair used for encryption/decryption. The producer key is the public key, and the consumer key is the private key of the key pair.</p>
@@ -201,7 +203,7 @@ Application will never be able to decrypt the messages if the private key is per
 </ul></li>
 <li>If decryption fails, the message consumption stops and application will notice backlog growth in addition to decryption failure messages in the client log. If application does not have access to the private key to decrypt the message, the only option is to skip/discard backlogged messages.</li>
 </ul>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-retention-expiry"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-message-queue"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#asymmetric-and-symmetric-encryption">Asymmetric and symm [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-retention-expiry"><span class="arrow-prev">← </span><span>Message retention and expiry</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-message-queue"><span>Using Pulsar as a message queue</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#asymmetric-and-symmetr [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/cookbooks-message-queue.html b/content/docs/en/2.1.0-incubating/cookbooks-message-queue.html
index d3453a1..7c423bc 100644
--- a/content/docs/en/2.1.0-incubating/cookbooks-message-queue.html
+++ b/content/docs/en/2.1.0-incubating/cookbooks-message-queue.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Using Pulsar as a message queue · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Message queues are essential components of many large-scale data architectures. If every single work object that passes through your system absolutely *must* be processed in spite of th [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Using Pulsar as a message queue · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Message queues are essential components of many large-scale data architectures. If every single work object that passes through your system absolutely &lt;em&gt;must&lt;/em&gt; [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Using Pulsar as a message queue · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Message queues are essential components of many large-scale data architectures. If every single work object that passes thr [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-message-queue.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Using Pulsar as a message queue</h1></header><article><div><span><p>Message queues are essential components of many large-scale data [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-message-queue.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Using Pulsar as a message queue</h1></header><article><div><span><p>Message queues are essential components of many large-scale data architectures. I [...]
 <p>Pulsar is a great choice for a message queue because:</p>
 <ul>
 <li>it was built with <a href="/docs/en/2.1.0-incubating/concepts-architecture-overview#persistent-storage">persistent message storage</a> in mind</li>
@@ -118,7 +120,7 @@ Consumer consumer;
 
 Result result = client.subscribe(topic, subscription, consumerConfig, consumer);
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-encryption"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/develop-tools"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#java-clients">Java clients</a></li><li><a href="#python-clients">Python  [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-encryption"><span class="arrow-prev">← </span><span>Pulsar Encryption</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/develop-tools"><span>Simulation tools</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#java-clients">Java clients</a></li><li><a href="#python-clients" [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/cookbooks-message-queue/index.html b/content/docs/en/2.1.0-incubating/cookbooks-message-queue/index.html
index d3453a1..7c423bc 100644
--- a/content/docs/en/2.1.0-incubating/cookbooks-message-queue/index.html
+++ b/content/docs/en/2.1.0-incubating/cookbooks-message-queue/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Using Pulsar as a message queue · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Message queues are essential components of many large-scale data architectures. If every single work object that passes through your system absolutely *must* be processed in spite of th [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Using Pulsar as a message queue · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Message queues are essential components of many large-scale data architectures. If every single work object that passes through your system absolutely &lt;em&gt;must&lt;/em&gt; [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Using Pulsar as a message queue · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Message queues are essential components of many large-scale data architectures. If every single work object that passes thr [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-message-queue.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Using Pulsar as a message queue</h1></header><article><div><span><p>Message queues are essential components of many large-scale data [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-message-queue.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Using Pulsar as a message queue</h1></header><article><div><span><p>Message queues are essential components of many large-scale data architectures. I [...]
 <p>Pulsar is a great choice for a message queue because:</p>
 <ul>
 <li>it was built with <a href="/docs/en/2.1.0-incubating/concepts-architecture-overview#persistent-storage">persistent message storage</a> in mind</li>
@@ -118,7 +120,7 @@ Consumer consumer;
 
 Result result = client.subscribe(topic, subscription, consumerConfig, consumer);
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-encryption"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/develop-tools"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#java-clients">Java clients</a></li><li><a href="#python-clients">Python  [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-encryption"><span class="arrow-prev">← </span><span>Pulsar Encryption</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/develop-tools"><span>Simulation tools</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#java-clients">Java clients</a></li><li><a href="#python-clients" [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/cookbooks-non-persistent.html b/content/docs/en/2.1.0-incubating/cookbooks-non-persistent.html
index a21d66e..c9c6f1d 100644
--- a/content/docs/en/2.1.0-incubating/cookbooks-non-persistent.html
+++ b/content/docs/en/2.1.0-incubating/cookbooks-non-persistent.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Non-persistent messaging · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="**Non-persistent topics** are Pulsar topics in which message data is *never* [persistently stored](/docs/en/2.1.0-incubating/concepts-architecture-overview#persistent-storage) and kept only in [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Non-persistent messaging · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;&lt;strong&gt;Non-persistent topics&lt;/strong&gt; are Pulsar topics in which message data is &lt;em&gt;never&lt;/em&gt; &lt;a href=&quot;/docs/en/2.1.0-incubating/concepts-architectu [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Non-persistent messaging · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;&lt;strong&gt;Non-persistent topics&lt;/strong&gt; are Pulsar topics in which message data is &lt;em&gt;never&lt;/em&gt; &lt;a hre [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-non-persistent.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Non-persistent messaging</h1></header><article><div><span><p><strong>Non-persistent topics</strong> are Pulsar topics in which mess [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-non-persistent.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Non-persistent messaging</h1></header><article><div><span><p><strong>Non-persistent topics</strong> are Pulsar topics in which message data is <em>n [...]
 <ul>
 <li>A basic <a href="#overview">conceptual overview</a> of non-persistent topics</li>
 <li>Information about <a href="#configuration">configurable parameters</a> related to non-persistent topics</li>
@@ -83,7 +85,7 @@
 <p>Non-persistent topics can be managed using the <a href="/docs/en/2.1.0-incubating/pulsar-admin#non-persistent"><code>pulsar-admin non-persistent</code></a> command-line interface. With that interface you can perform actions like <a href="/docs/en/2.1.0-incubating/pulsar-admin#non-persistent-create-partitioned-topic">create a partitioned non-persistent topic</a>, get <a href="/docs/en/2.1.0-incubating/pulsar-admin#non-persistent-stats">stats</a> for a non-persistent topic, <a href="/do [...]
 <h2><a class="anchor" aria-hidden="true" id="using-with-pulsar-clients"></a><a href="#using-with-pulsar-clients" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c [...]
 <p>You shouldn't need to make any changes to your Pulsar clients to use non-persistent messaging beyond making sure that you use proper <a href="#using">topic names</a> with <code>non-persistent</code> as the topic type.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-deduplication"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-partitioned"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#overview">Overview</a></li><li><a href="#using">Using</a></li [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-deduplication"><span class="arrow-prev">← </span><span>Message deduplication</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-partitioned"><span>Non-persistent messaging</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#overview">Overview</a></li><li><a href="# [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/cookbooks-non-persistent/index.html b/content/docs/en/2.1.0-incubating/cookbooks-non-persistent/index.html
index a21d66e..c9c6f1d 100644
--- a/content/docs/en/2.1.0-incubating/cookbooks-non-persistent/index.html
+++ b/content/docs/en/2.1.0-incubating/cookbooks-non-persistent/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Non-persistent messaging · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="**Non-persistent topics** are Pulsar topics in which message data is *never* [persistently stored](/docs/en/2.1.0-incubating/concepts-architecture-overview#persistent-storage) and kept only in [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Non-persistent messaging · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;&lt;strong&gt;Non-persistent topics&lt;/strong&gt; are Pulsar topics in which message data is &lt;em&gt;never&lt;/em&gt; &lt;a href=&quot;/docs/en/2.1.0-incubating/concepts-architectu [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Non-persistent messaging · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;&lt;strong&gt;Non-persistent topics&lt;/strong&gt; are Pulsar topics in which message data is &lt;em&gt;never&lt;/em&gt; &lt;a hre [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-non-persistent.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Non-persistent messaging</h1></header><article><div><span><p><strong>Non-persistent topics</strong> are Pulsar topics in which mess [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-non-persistent.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Non-persistent messaging</h1></header><article><div><span><p><strong>Non-persistent topics</strong> are Pulsar topics in which message data is <em>n [...]
 <ul>
 <li>A basic <a href="#overview">conceptual overview</a> of non-persistent topics</li>
 <li>Information about <a href="#configuration">configurable parameters</a> related to non-persistent topics</li>
@@ -83,7 +85,7 @@
 <p>Non-persistent topics can be managed using the <a href="/docs/en/2.1.0-incubating/pulsar-admin#non-persistent"><code>pulsar-admin non-persistent</code></a> command-line interface. With that interface you can perform actions like <a href="/docs/en/2.1.0-incubating/pulsar-admin#non-persistent-create-partitioned-topic">create a partitioned non-persistent topic</a>, get <a href="/docs/en/2.1.0-incubating/pulsar-admin#non-persistent-stats">stats</a> for a non-persistent topic, <a href="/do [...]
 <h2><a class="anchor" aria-hidden="true" id="using-with-pulsar-clients"></a><a href="#using-with-pulsar-clients" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c [...]
 <p>You shouldn't need to make any changes to your Pulsar clients to use non-persistent messaging beyond making sure that you use proper <a href="#using">topic names</a> with <code>non-persistent</code> as the topic type.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-deduplication"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-partitioned"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#overview">Overview</a></li><li><a href="#using">Using</a></li [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-deduplication"><span class="arrow-prev">← </span><span>Message deduplication</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-partitioned"><span>Non-persistent messaging</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#overview">Overview</a></li><li><a href="# [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/cookbooks-partitioned.html b/content/docs/en/2.1.0-incubating/cookbooks-partitioned.html
index 371114d..664d527 100644
--- a/content/docs/en/2.1.0-incubating/cookbooks-partitioned.html
+++ b/content/docs/en/2.1.0-incubating/cookbooks-partitioned.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Non-persistent messaging · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="By default, Pulsar topics are served by a single broker. Using only a single broker, however, limits a topic&#x27;s maximum throughput. *Partitioned topics* are a special type of topic that ca [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Non-persistent messaging · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;By default, Pulsar topics are served by a single broker. Using only a single broker, however, limits a topic&#x27;s maximum throughput. &lt;em&gt;Partitioned topics&lt;/em&gt; are a s [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Non-persistent messaging · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;By default, Pulsar topics are served by a single broker. Using only a single broker, however, limits a topic&#x27;s maximum throug [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-partitioned.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Non-persistent messaging</h1></header><article><div><span><p>By default, Pulsar topics are served by a single broker. Using only a sin [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-partitioned.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Non-persistent messaging</h1></header><article><div><span><p>By default, Pulsar topics are served by a single broker. Using only a single broker, howev [...]
 <p>You can <a href="#publishing-to-partitioned-topics">publish</a> to partitioned topics using Pulsar's client libraries and you can <a href="#managing-partitioned-topics">create and manage</a> partitioned topics using Pulsar's <a href="/docs/en/2.1.0-incubating/admin-api-overview">admin API</a>.</p>
 <h2><a class="anchor" aria-hidden="true" id="publishing-to-partitioned-topics"></a><a href="#publishing-to-partitioned-topics" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13. [...]
 <p>When publishing to partitioned topics, the only difference from non-partitioned topics is that you need to specify a <a href="/docs/en/2.1.0-incubating/concepts-messaging#routing-modes">routing mode</a> when you create a new <a href="/docs/en/2.1.0-incubating/reference-terminology#producer">producer</a>. Examples for <a href="#java">Java</a> are below.</p>
@@ -94,7 +96,7 @@ producer.send(<span class="hljs-string">"Partitioned topic message"</span>.getBy
 </code></pre>
 <h2><a class="anchor" aria-hidden="true" id="managing-partitioned-topics"></a><a href="#managing-partitioned-topics" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 1 [...]
 <p>You can use Pulsar's <a href="/docs/en/2.1.0-incubating/admin-api-overview">admin API</a> to create and manage <a href="/docs/en/2.1.0-incubating/admin-api-partitioned-topics">partitioned topics</a>.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-non-persistent"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-retention-expiry"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#publishing-to-partitioned-topics">Publishing to partiti [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-non-persistent"><span class="arrow-prev">← </span><span>Non-persistent messaging</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-retention-expiry"><span>Message retention and expiry</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#publishing-to-partitioned-to [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/cookbooks-partitioned/index.html b/content/docs/en/2.1.0-incubating/cookbooks-partitioned/index.html
index 371114d..664d527 100644
--- a/content/docs/en/2.1.0-incubating/cookbooks-partitioned/index.html
+++ b/content/docs/en/2.1.0-incubating/cookbooks-partitioned/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Non-persistent messaging · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="By default, Pulsar topics are served by a single broker. Using only a single broker, however, limits a topic&#x27;s maximum throughput. *Partitioned topics* are a special type of topic that ca [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Non-persistent messaging · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;By default, Pulsar topics are served by a single broker. Using only a single broker, however, limits a topic&#x27;s maximum throughput. &lt;em&gt;Partitioned topics&lt;/em&gt; are a s [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Non-persistent messaging · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;By default, Pulsar topics are served by a single broker. Using only a single broker, however, limits a topic&#x27;s maximum throug [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-partitioned.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Non-persistent messaging</h1></header><article><div><span><p>By default, Pulsar topics are served by a single broker. Using only a sin [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-partitioned.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Non-persistent messaging</h1></header><article><div><span><p>By default, Pulsar topics are served by a single broker. Using only a single broker, howev [...]
 <p>You can <a href="#publishing-to-partitioned-topics">publish</a> to partitioned topics using Pulsar's client libraries and you can <a href="#managing-partitioned-topics">create and manage</a> partitioned topics using Pulsar's <a href="/docs/en/2.1.0-incubating/admin-api-overview">admin API</a>.</p>
 <h2><a class="anchor" aria-hidden="true" id="publishing-to-partitioned-topics"></a><a href="#publishing-to-partitioned-topics" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13. [...]
 <p>When publishing to partitioned topics, the only difference from non-partitioned topics is that you need to specify a <a href="/docs/en/2.1.0-incubating/concepts-messaging#routing-modes">routing mode</a> when you create a new <a href="/docs/en/2.1.0-incubating/reference-terminology#producer">producer</a>. Examples for <a href="#java">Java</a> are below.</p>
@@ -94,7 +96,7 @@ producer.send(<span class="hljs-string">"Partitioned topic message"</span>.getBy
 </code></pre>
 <h2><a class="anchor" aria-hidden="true" id="managing-partitioned-topics"></a><a href="#managing-partitioned-topics" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 1 [...]
 <p>You can use Pulsar's <a href="/docs/en/2.1.0-incubating/admin-api-overview">admin API</a> to create and manage <a href="/docs/en/2.1.0-incubating/admin-api-partitioned-topics">partitioned topics</a>.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-non-persistent"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-retention-expiry"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#publishing-to-partitioned-topics">Publishing to partiti [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-non-persistent"><span class="arrow-prev">← </span><span>Non-persistent messaging</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-retention-expiry"><span>Message retention and expiry</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#publishing-to-partitioned-to [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/cookbooks-retention-expiry.html b/content/docs/en/2.1.0-incubating/cookbooks-retention-expiry.html
index 0ef52c0..33c8e62 100644
--- a/content/docs/en/2.1.0-incubating/cookbooks-retention-expiry.html
+++ b/content/docs/en/2.1.0-incubating/cookbooks-retention-expiry.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Message retention and expiry · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar brokers are responsible for handling messages that pass through Pulsar, including [persistent storage](/docs/en/2.1.0-incubating/concepts-architecture-overview#persistent-storage) o [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Message retention and expiry · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar brokers are responsible for handling messages that pass through Pulsar, including &lt;a href=&quot;/docs/en/2.1.0-incubating/concepts-architecture-overview#persistent-stora [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Message retention and expiry · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar brokers are responsible for handling messages that pass through Pulsar, including &lt;a href=&quot;/docs/en/2.1.0-incub [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-retention-expiry.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Message retention and expiry</h1></header><article><div><span><p>Pulsar brokers are responsible for handling messages that pass t [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-retention-expiry.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Message retention and expiry</h1></header><article><div><span><p>Pulsar brokers are responsible for handling messages that pass through Pulsar, in [...]
 <ul>
 <li>immediately delete all messages that have been acknowledged on every subscription, and</li>
 <li>persistently store all unacknowledged messages in a <a href="#backlog-quotas">backlog</a>.</li>
@@ -224,7 +226,7 @@ admin.namespaces().setBacklogQuota(namespace, quota);
 <h4><a class="anchor" aria-hidden="true" id="java-6"></a><a href="#java-6" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2. [...]
 <pre><code class="hljs css language-java">admin.namespaces().get
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-partitioned"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-encryption"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#retention-policies">Retention policies</a><ul class="toc-heading [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-partitioned"><span class="arrow-prev">← </span><span>Non-persistent messaging</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-encryption"><span>Pulsar Encryption</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#retention-policies">Retention policies</a><ul cl [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/cookbooks-retention-expiry/index.html b/content/docs/en/2.1.0-incubating/cookbooks-retention-expiry/index.html
index 0ef52c0..33c8e62 100644
--- a/content/docs/en/2.1.0-incubating/cookbooks-retention-expiry/index.html
+++ b/content/docs/en/2.1.0-incubating/cookbooks-retention-expiry/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Message retention and expiry · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar brokers are responsible for handling messages that pass through Pulsar, including [persistent storage](/docs/en/2.1.0-incubating/concepts-architecture-overview#persistent-storage) o [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Message retention and expiry · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar brokers are responsible for handling messages that pass through Pulsar, including &lt;a href=&quot;/docs/en/2.1.0-incubating/concepts-architecture-overview#persistent-stora [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Message retention and expiry · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar brokers are responsible for handling messages that pass through Pulsar, including &lt;a href=&quot;/docs/en/2.1.0-incub [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-retention-expiry.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Message retention and expiry</h1></header><article><div><span><p>Pulsar brokers are responsible for handling messages that pass t [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-retention-expiry.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Message retention and expiry</h1></header><article><div><span><p>Pulsar brokers are responsible for handling messages that pass through Pulsar, in [...]
 <ul>
 <li>immediately delete all messages that have been acknowledged on every subscription, and</li>
 <li>persistently store all unacknowledged messages in a <a href="#backlog-quotas">backlog</a>.</li>
@@ -224,7 +226,7 @@ admin.namespaces().setBacklogQuota(namespace, quota);
 <h4><a class="anchor" aria-hidden="true" id="java-6"></a><a href="#java-6" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2. [...]
 <pre><code class="hljs css language-java">admin.namespaces().get
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-partitioned"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-encryption"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#retention-policies">Retention policies</a><ul class="toc-heading [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-partitioned"><span class="arrow-prev">← </span><span>Non-persistent messaging</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-encryption"><span>Pulsar Encryption</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#retention-policies">Retention policies</a><ul cl [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/cookbooks-tiered-storage.html b/content/docs/en/2.1.0-incubating/cookbooks-tiered-storage.html
index 131f0e9..dd6a793 100644
--- a/content/docs/en/2.1.0-incubating/cookbooks-tiered-storage.html
+++ b/content/docs/en/2.1.0-incubating/cookbooks-tiered-storage.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Tiered Storage · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar&#x27;s **Tiered Storage** feature allows older backlog data to be offloaded to long term storage, thereby freeing up space in BookKeeper and reducing storage costs. This cookbook walks you throug [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Tiered Storage · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar&#x27;s &lt;strong&gt;Tiered Storage&lt;/strong&gt; feature allows older backlog data to be offloaded to long term storage, thereby freeing up space in BookKeeper and reducing storage cos [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Tiered Storage · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar&#x27;s &lt;strong&gt;Tiered Storage&lt;/strong&gt; feature allows older backlog data to be offloaded to long term storage, thereby fr [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-tiered-storage.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Tiered Storage</h1></header><article><div><span><p>Pulsar's <strong>Tiered Storage</strong> feature allows older backlog data to be [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-tiered-storage.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Tiered Storage</h1></header><article><div><span><p>Pulsar's <strong>Tiered Storage</strong> feature allows older backlog data to be offloaded to lon [...]
 <h2><a class="anchor" aria-hidden="true" id="when-should-i-use-tiered-storage"></a><a href="#when-should-i-use-tiered-storage" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13. [...]
 <p>Tiered storage should be used when you have a topic for which you want to keep a very long backlog for a long time. For example, if you have a topic containing user actions which you use to train your recommendation systems, you may want to keep that data for a long time, so that if you change your recommendation algorithm you can rerun it against your full user history.</p>
 <h2><a class="anchor" aria-hidden="true" id="the-offloading-mechanism"></a><a href="#the-offloading-mechanism" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-. [...]
@@ -135,7 +137,7 @@ null
 
 Reason: Error offloading: org.apache.bookkeeper.mledger.ManagedLedgerException: java.util.concurrent.CompletionException: com.amazonaws.services.s3.model.AmazonS3Exception: Anonymous users cannot initiate multipart uploads.  Please authenticate. (Service: Amazon S3; Status Code: 403; Error Code: AccessDenied; Request ID: 798758DE3F1776DF; S3 Extended Request ID: dhBFz/lZm1oiG/oBEepeNlhrtsDlzoOhocuYMpKihQGXe6EG8puRGOkK6UwqzVrMXTWBxxHcS+g=), S3 Extended Request ID: dhBFz/lZm1oiG/oBEepeNlhr [...]
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/adaptors-storm"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-compaction"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#when-should-i-use-tiered-storage">When should I use Tiered Storage?</a> [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/adaptors-storm"><span class="arrow-prev">← </span><span>Pulsar adaptor for Apache Storm</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-compaction"><span>Topic compaction</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#when-should-i-use-tiered-storage">When should I u [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/cookbooks-tiered-storage/index.html b/content/docs/en/2.1.0-incubating/cookbooks-tiered-storage/index.html
index 131f0e9..dd6a793 100644
--- a/content/docs/en/2.1.0-incubating/cookbooks-tiered-storage/index.html
+++ b/content/docs/en/2.1.0-incubating/cookbooks-tiered-storage/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Tiered Storage · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar&#x27;s **Tiered Storage** feature allows older backlog data to be offloaded to long term storage, thereby freeing up space in BookKeeper and reducing storage costs. This cookbook walks you throug [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Tiered Storage · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar&#x27;s &lt;strong&gt;Tiered Storage&lt;/strong&gt; feature allows older backlog data to be offloaded to long term storage, thereby freeing up space in BookKeeper and reducing storage cos [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Tiered Storage · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar&#x27;s &lt;strong&gt;Tiered Storage&lt;/strong&gt; feature allows older backlog data to be offloaded to long term storage, thereby fr [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-tiered-storage.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Tiered Storage</h1></header><article><div><span><p>Pulsar's <strong>Tiered Storage</strong> feature allows older backlog data to be [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/cookbooks-tiered-storage.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Tiered Storage</h1></header><article><div><span><p>Pulsar's <strong>Tiered Storage</strong> feature allows older backlog data to be offloaded to lon [...]
 <h2><a class="anchor" aria-hidden="true" id="when-should-i-use-tiered-storage"></a><a href="#when-should-i-use-tiered-storage" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13. [...]
 <p>Tiered storage should be used when you have a topic for which you want to keep a very long backlog for a long time. For example, if you have a topic containing user actions which you use to train your recommendation systems, you may want to keep that data for a long time, so that if you change your recommendation algorithm you can rerun it against your full user history.</p>
 <h2><a class="anchor" aria-hidden="true" id="the-offloading-mechanism"></a><a href="#the-offloading-mechanism" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-. [...]
@@ -135,7 +137,7 @@ null
 
 Reason: Error offloading: org.apache.bookkeeper.mledger.ManagedLedgerException: java.util.concurrent.CompletionException: com.amazonaws.services.s3.model.AmazonS3Exception: Anonymous users cannot initiate multipart uploads.  Please authenticate. (Service: Amazon S3; Status Code: 403; Error Code: AccessDenied; Request ID: 798758DE3F1776DF; S3 Extended Request ID: dhBFz/lZm1oiG/oBEepeNlhrtsDlzoOhocuYMpKihQGXe6EG8puRGOkK6UwqzVrMXTWBxxHcS+g=), S3 Extended Request ID: dhBFz/lZm1oiG/oBEepeNlhr [...]
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/adaptors-storm"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-compaction"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#when-should-i-use-tiered-storage">When should I use Tiered Storage?</a> [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/adaptors-storm"><span class="arrow-prev">← </span><span>Pulsar adaptor for Apache Storm</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/cookbooks-compaction"><span>Topic compaction</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#when-should-i-use-tiered-storage">When should I u [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/deploy-aws.html b/content/docs/en/2.1.0-incubating/deploy-aws.html
index cf012a7..db48709 100644
--- a/content/docs/en/2.1.0-incubating/deploy-aws.html
+++ b/content/docs/en/2.1.0-incubating/deploy-aws.html
@@ -1,4 +1,10 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Deploying a Pulsar cluster on AWS using Terraform and Ansible · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&gt; For instructions on deploying a single Pulsar cluster manually rather than using Terraform and Ansible, see [Deploying a Pulsar cluster on bare metal] [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Deploying a Pulsar cluster on AWS using Terraform and Ansible · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;blockquote&gt;
+&lt;p&gt;For instructions on deploying a single Pulsar cluster manually rather than using Terraform and Ansible, see &lt;a href=&quot;/docs/en/2.1.0-incubating/deploy-bare-metal&quot;&gt;Deploying a Pulsar cluster on bare metal&lt;/a&gt;. For instructions on manually deploying a multi-cluster Pulsar instance, see &lt;a href=&quot;/docs/en/2.1.0-incubating/deploy-bare-metal-multi-cluster&quot;&gt;Deploying a Pulsar instance on bare metal&lt;/a&gt;.&lt;/p&gt;
+&lt;/blockquote&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Deploying a Pulsar cluster on AWS using Terraform and Ansible · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;blockquote&gt;
+&lt;p&gt;For instructions on deploying a single Pulsar cluster manually rather than using Terraform and Ansible, see &lt;a href=&quot;/docs/en/2.1.0-incubating/deploy-bare-metal&quot;&gt;Deploying a Pulsar cluster on bare metal&lt;/a&gt;. For instructions on manually deploying a multi-cluster Pulsar instance, see &lt;a href=&quot;/docs/en/2.1.0-incubating/deploy-bare-metal-multi-cluster&quot;&gt;Deploying a Pulsar instance on bare metal&lt;/a&gt;.&lt;/p&gt;
+&lt;/blockquote&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +51,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/deploy-aws.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Deploying a Pulsar cluster on AWS using Terraform and Ansible</h1></header><article><div><span><blockquote>
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/deploy-aws.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Deploying a Pulsar cluster on AWS using Terraform and Ansible</h1></header><article><div><span><blockquote>
 <p>For instructions on deploying a single Pulsar cluster manually rather than using Terraform and Ansible, see <a href="/docs/en/2.1.0-incubating/deploy-bare-metal">Deploying a Pulsar cluster on bare metal</a>. For instructions on manually deploying a multi-cluster Pulsar instance, see <a href="/docs/en/2.1.0-incubating/deploy-bare-metal-multi-cluster">Deploying a Pulsar instance on bare metal</a>.</p>
 </blockquote>
 <p>One of the easiest ways to get a Pulsar <a href="/docs/en/2.1.0-incubating/reference-terminology#cluster">cluster</a> running on <a href="https://aws.amazon.com/">Amazon Web Services</a> (AWS) is to use the the <a href="https://terraform.io">Terraform</a> infrastructure provisioning tool and the <a href="https://www.ansible.com">Ansible</a> server automation tool. Terraform can create the resources necessary to run the Pulsar cluster---<a href="https://aws.amazon.com/ec2/">EC2</a> ins [...]
@@ -199,7 +205,7 @@ it might be potentially erase your disks again and cause the bookies to fail to
 <span class="hljs-meta">&gt;&gt;&gt; </span>client.close()
 </code></pre>
 <p>If all of these commands are successful, your cluster can now be used by Pulsar clients!</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/io-develop"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/deploy-kubernetes"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#requirements-and-setup">Requirements and setup</a></li><li><a href="#installat [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/io-develop"><span class="arrow-prev">← </span><span>Develop Connectors</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/deploy-kubernetes"><span>Deploying Pulsar on Kubernetes</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#requirements-and-setup">Requirements and setup</a></li> [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/deploy-aws/index.html b/content/docs/en/2.1.0-incubating/deploy-aws/index.html
index cf012a7..db48709 100644
--- a/content/docs/en/2.1.0-incubating/deploy-aws/index.html
+++ b/content/docs/en/2.1.0-incubating/deploy-aws/index.html
@@ -1,4 +1,10 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Deploying a Pulsar cluster on AWS using Terraform and Ansible · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&gt; For instructions on deploying a single Pulsar cluster manually rather than using Terraform and Ansible, see [Deploying a Pulsar cluster on bare metal] [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Deploying a Pulsar cluster on AWS using Terraform and Ansible · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;blockquote&gt;
+&lt;p&gt;For instructions on deploying a single Pulsar cluster manually rather than using Terraform and Ansible, see &lt;a href=&quot;/docs/en/2.1.0-incubating/deploy-bare-metal&quot;&gt;Deploying a Pulsar cluster on bare metal&lt;/a&gt;. For instructions on manually deploying a multi-cluster Pulsar instance, see &lt;a href=&quot;/docs/en/2.1.0-incubating/deploy-bare-metal-multi-cluster&quot;&gt;Deploying a Pulsar instance on bare metal&lt;/a&gt;.&lt;/p&gt;
+&lt;/blockquote&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Deploying a Pulsar cluster on AWS using Terraform and Ansible · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;blockquote&gt;
+&lt;p&gt;For instructions on deploying a single Pulsar cluster manually rather than using Terraform and Ansible, see &lt;a href=&quot;/docs/en/2.1.0-incubating/deploy-bare-metal&quot;&gt;Deploying a Pulsar cluster on bare metal&lt;/a&gt;. For instructions on manually deploying a multi-cluster Pulsar instance, see &lt;a href=&quot;/docs/en/2.1.0-incubating/deploy-bare-metal-multi-cluster&quot;&gt;Deploying a Pulsar instance on bare metal&lt;/a&gt;.&lt;/p&gt;
+&lt;/blockquote&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +51,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/deploy-aws.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Deploying a Pulsar cluster on AWS using Terraform and Ansible</h1></header><article><div><span><blockquote>
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/deploy-aws.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Deploying a Pulsar cluster on AWS using Terraform and Ansible</h1></header><article><div><span><blockquote>
 <p>For instructions on deploying a single Pulsar cluster manually rather than using Terraform and Ansible, see <a href="/docs/en/2.1.0-incubating/deploy-bare-metal">Deploying a Pulsar cluster on bare metal</a>. For instructions on manually deploying a multi-cluster Pulsar instance, see <a href="/docs/en/2.1.0-incubating/deploy-bare-metal-multi-cluster">Deploying a Pulsar instance on bare metal</a>.</p>
 </blockquote>
 <p>One of the easiest ways to get a Pulsar <a href="/docs/en/2.1.0-incubating/reference-terminology#cluster">cluster</a> running on <a href="https://aws.amazon.com/">Amazon Web Services</a> (AWS) is to use the the <a href="https://terraform.io">Terraform</a> infrastructure provisioning tool and the <a href="https://www.ansible.com">Ansible</a> server automation tool. Terraform can create the resources necessary to run the Pulsar cluster---<a href="https://aws.amazon.com/ec2/">EC2</a> ins [...]
@@ -199,7 +205,7 @@ it might be potentially erase your disks again and cause the bookies to fail to
 <span class="hljs-meta">&gt;&gt;&gt; </span>client.close()
 </code></pre>
 <p>If all of these commands are successful, your cluster can now be used by Pulsar clients!</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/io-develop"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/deploy-kubernetes"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#requirements-and-setup">Requirements and setup</a></li><li><a href="#installat [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/io-develop"><span class="arrow-prev">← </span><span>Develop Connectors</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/deploy-kubernetes"><span>Deploying Pulsar on Kubernetes</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#requirements-and-setup">Requirements and setup</a></li> [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/deploy-bare-metal-multi-cluster.html b/content/docs/en/2.1.0-incubating/deploy-bare-metal-multi-cluster.html
index 7a42e50..3392600 100644
--- a/content/docs/en/2.1.0-incubating/deploy-bare-metal-multi-cluster.html
+++ b/content/docs/en/2.1.0-incubating/deploy-bare-metal-multi-cluster.html
@@ -1,4 +1,10 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Deploying a multi-cluster on bare metal · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&gt; ### Tips"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Deploying a multi-clu [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Deploying a multi-cluster on bare metal · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;blockquote&gt;
+&lt;h3&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;tips&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#tips&quot; aria-hidden=&quot;true&quot; class=&quot;hash-link&quot;&gt;&lt;svg class=&quot;hash-link-icon&quot; aria-hidden=&quot;true&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3 [...]
+&lt;/blockquote&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Deploying a multi-cluster on bare metal · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;blockquote&gt;
+&lt;h3&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;tips&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#tips&quot; aria-hidden=&quot;true&quot; class=&quot;hash-link&quot;&gt;&lt;svg class=&quot;hash-link-icon&quot; aria-hidden=&quot;true&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3 [...]
+&lt;/blockquote&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +51,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/deploy-bare-metal-multi-cluster.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Deploying a multi-cluster on bare metal</h1></header><article><div><span><blockquote>
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/deploy-bare-metal-multi-cluster.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Deploying a multi-cluster on bare metal</h1></header><article><div><span><blockquote>
 <h3><a class="anchor" aria-hidden="true" id="tips"></a><a href="#tips" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6 [...]
 <ol>
 <li><p>Single-cluster Pulsar installations should be sufficient for all but the most ambitious use cases. If you're interested in experimenting with
@@ -319,7 +325,7 @@ for messages:</p>
 <p>To report the topic stats:</p>
 <pre><code class="hljs css language-shell"><span class="hljs-meta">$</span><span class="bash"> bin/pulsar-admin persistent stats persistent://<span class="hljs-built_in">test</span>-tenant/us-west/ns1/my-topic</span>
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/deploy-bare-metal"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/deploy-dcos"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#system-requirement">System requirement</a></li><li><a href="#installing-pulsa [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/deploy-bare-metal"><span class="arrow-prev">← </span><span>Deploying a cluster on bare metal</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/deploy-dcos"><span>Deploying Pulsar on DC/OS</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#system-requirement">System requirement</a></ [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/deploy-bare-metal-multi-cluster/index.html b/content/docs/en/2.1.0-incubating/deploy-bare-metal-multi-cluster/index.html
index 7a42e50..3392600 100644
--- a/content/docs/en/2.1.0-incubating/deploy-bare-metal-multi-cluster/index.html
+++ b/content/docs/en/2.1.0-incubating/deploy-bare-metal-multi-cluster/index.html
@@ -1,4 +1,10 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Deploying a multi-cluster on bare metal · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&gt; ### Tips"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Deploying a multi-clu [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Deploying a multi-cluster on bare metal · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;blockquote&gt;
+&lt;h3&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;tips&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#tips&quot; aria-hidden=&quot;true&quot; class=&quot;hash-link&quot;&gt;&lt;svg class=&quot;hash-link-icon&quot; aria-hidden=&quot;true&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3 [...]
+&lt;/blockquote&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Deploying a multi-cluster on bare metal · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;blockquote&gt;
+&lt;h3&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;tips&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#tips&quot; aria-hidden=&quot;true&quot; class=&quot;hash-link&quot;&gt;&lt;svg class=&quot;hash-link-icon&quot; aria-hidden=&quot;true&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3 [...]
+&lt;/blockquote&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +51,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/deploy-bare-metal-multi-cluster.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Deploying a multi-cluster on bare metal</h1></header><article><div><span><blockquote>
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/deploy-bare-metal-multi-cluster.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Deploying a multi-cluster on bare metal</h1></header><article><div><span><blockquote>
 <h3><a class="anchor" aria-hidden="true" id="tips"></a><a href="#tips" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6 [...]
 <ol>
 <li><p>Single-cluster Pulsar installations should be sufficient for all but the most ambitious use cases. If you're interested in experimenting with
@@ -319,7 +325,7 @@ for messages:</p>
 <p>To report the topic stats:</p>
 <pre><code class="hljs css language-shell"><span class="hljs-meta">$</span><span class="bash"> bin/pulsar-admin persistent stats persistent://<span class="hljs-built_in">test</span>-tenant/us-west/ns1/my-topic</span>
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/deploy-bare-metal"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/deploy-dcos"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#system-requirement">System requirement</a></li><li><a href="#installing-pulsa [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/deploy-bare-metal"><span class="arrow-prev">← </span><span>Deploying a cluster on bare metal</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/deploy-dcos"><span>Deploying Pulsar on DC/OS</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#system-requirement">System requirement</a></ [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/deploy-bare-metal.html b/content/docs/en/2.1.0-incubating/deploy-bare-metal.html
index 97268ce..f6b47dc 100644
--- a/content/docs/en/2.1.0-incubating/deploy-bare-metal.html
+++ b/content/docs/en/2.1.0-incubating/deploy-bare-metal.html
@@ -1,4 +1,10 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Deploying a cluster on bare metal · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&gt; ### Tips"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Deploying a cluster on bare [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Deploying a cluster on bare metal · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;blockquote&gt;
+&lt;h3&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;tips&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#tips&quot; aria-hidden=&quot;true&quot; class=&quot;hash-link&quot;&gt;&lt;svg class=&quot;hash-link-icon&quot; aria-hidden=&quot;true&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3 [...]
+&lt;/blockquote&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Deploying a cluster on bare metal · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;blockquote&gt;
+&lt;h3&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;tips&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#tips&quot; aria-hidden=&quot;true&quot; class=&quot;hash-link&quot;&gt;&lt;svg class=&quot;hash-link-icon&quot; aria-hidden=&quot;true&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3 [...]
+&lt;/blockquote&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +51,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/deploy-bare-metal.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Deploying a cluster on bare metal</h1></header><article><div><span><blockquote>
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/deploy-bare-metal.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Deploying a cluster on bare metal</h1></header><article><div><span><blockquote>
 <h3><a class="anchor" aria-hidden="true" id="tips"></a><a href="#tips" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6 [...]
 <ol>
 <li><p>Single-cluster Pulsar installations should be sufficient for all but the most ambitious use cases. If you're interested in experimenting with
@@ -305,7 +311,7 @@ verify all the bookies in the cluster are up running.</p>
 <p>You will see output as below:</p>
 <pre><code class="hljs css language-shell">hello world!
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/deploy-kubernetes"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/deploy-bare-metal-multi-cluster"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#preparation">Preparation</a><ul class="toc-headings"><li> [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/deploy-kubernetes"><span class="arrow-prev">← </span><span>Deploying Pulsar on Kubernetes</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/deploy-bare-metal-multi-cluster"><span>Deploying a multi-cluster on bare metal</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#preparation"> [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/deploy-bare-metal/index.html b/content/docs/en/2.1.0-incubating/deploy-bare-metal/index.html
index 97268ce..f6b47dc 100644
--- a/content/docs/en/2.1.0-incubating/deploy-bare-metal/index.html
+++ b/content/docs/en/2.1.0-incubating/deploy-bare-metal/index.html
@@ -1,4 +1,10 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Deploying a cluster on bare metal · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&gt; ### Tips"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Deploying a cluster on bare [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Deploying a cluster on bare metal · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;blockquote&gt;
+&lt;h3&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;tips&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#tips&quot; aria-hidden=&quot;true&quot; class=&quot;hash-link&quot;&gt;&lt;svg class=&quot;hash-link-icon&quot; aria-hidden=&quot;true&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3 [...]
+&lt;/blockquote&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Deploying a cluster on bare metal · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;blockquote&gt;
+&lt;h3&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;tips&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#tips&quot; aria-hidden=&quot;true&quot; class=&quot;hash-link&quot;&gt;&lt;svg class=&quot;hash-link-icon&quot; aria-hidden=&quot;true&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3 [...]
+&lt;/blockquote&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +51,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/deploy-bare-metal.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Deploying a cluster on bare metal</h1></header><article><div><span><blockquote>
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/deploy-bare-metal.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Deploying a cluster on bare metal</h1></header><article><div><span><blockquote>
 <h3><a class="anchor" aria-hidden="true" id="tips"></a><a href="#tips" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6 [...]
 <ol>
 <li><p>Single-cluster Pulsar installations should be sufficient for all but the most ambitious use cases. If you're interested in experimenting with
@@ -305,7 +311,7 @@ verify all the bookies in the cluster are up running.</p>
 <p>You will see output as below:</p>
 <pre><code class="hljs css language-shell">hello world!
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/deploy-kubernetes"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/deploy-bare-metal-multi-cluster"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#preparation">Preparation</a><ul class="toc-headings"><li> [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/deploy-kubernetes"><span class="arrow-prev">← </span><span>Deploying Pulsar on Kubernetes</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/deploy-bare-metal-multi-cluster"><span>Deploying a multi-cluster on bare metal</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#preparation"> [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/deploy-dcos.html b/content/docs/en/2.1.0-incubating/deploy-dcos.html
index e958ebc..d5239f1 100644
--- a/content/docs/en/2.1.0-incubating/deploy-dcos.html
+++ b/content/docs/en/2.1.0-incubating/deploy-dcos.html
@@ -1,4 +1,10 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Deploying Pulsar on DC/OS · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&gt; ### Tips"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Deploying Pulsar on DC/OS · Apache  [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Deploying Pulsar on DC/OS · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;blockquote&gt;
+&lt;h3&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;tips&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#tips&quot; aria-hidden=&quot;true&quot; class=&quot;hash-link&quot;&gt;&lt;svg class=&quot;hash-link-icon&quot; aria-hidden=&quot;true&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3 [...]
+&lt;/blockquote&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Deploying Pulsar on DC/OS · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;blockquote&gt;
+&lt;h3&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;tips&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#tips&quot; aria-hidden=&quot;true&quot; class=&quot;hash-link&quot;&gt;&lt;svg class=&quot;hash-link-icon&quot; aria-hidden=&quot;true&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3 [...]
+&lt;/blockquote&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +51,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/deploy-dcos.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Deploying Pulsar on DC/OS</h1></header><article><div><span><blockquote>
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/deploy-dcos.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Deploying Pulsar on DC/OS</h1></header><article><div><span><blockquote>
 <h3><a class="anchor" aria-hidden="true" id="tips"></a><a href="#tips" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6 [...]
 <p>If you want to enable all builtin <a href="/docs/en/2.1.0-incubating/io-overview">Pulsar IO</a> connectors in your Pulsar deployment, you can choose to use <code>apachepulsar/pulsar-all</code> image instead of
 <code>apachepulsar/pulsar</code> image. <code>apachepulsar/pulsar-all</code> image has already bundled <a href="/docs/en/2.1.0-incubating/io-overview#working-with-connectors">all builtin connectors</a>.</p>
@@ -149,7 +155,7 @@ The <code>pulsar://a1.dcos:6650</code> endpoint is for the broker service. Endpo
 <pre><code class="hljs css language-bash">$ dcos marathon group remove /pulsar
 </code></pre></li>
 </ol>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/deploy-bare-metal-multi-cluster"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/deploy-monitoring"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#prerequisites">Prerequisites</a></li><li><a href="#deploy [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/deploy-bare-metal-multi-cluster"><span class="arrow-prev">← </span><span>Deploying a multi-cluster on bare metal</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/deploy-monitoring"><span>Monitoring</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#prerequisites">Prerequisites</a>< [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/deploy-dcos/index.html b/content/docs/en/2.1.0-incubating/deploy-dcos/index.html
index e958ebc..d5239f1 100644
--- a/content/docs/en/2.1.0-incubating/deploy-dcos/index.html
+++ b/content/docs/en/2.1.0-incubating/deploy-dcos/index.html
@@ -1,4 +1,10 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Deploying Pulsar on DC/OS · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&gt; ### Tips"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Deploying Pulsar on DC/OS · Apache  [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Deploying Pulsar on DC/OS · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;blockquote&gt;
+&lt;h3&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;tips&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#tips&quot; aria-hidden=&quot;true&quot; class=&quot;hash-link&quot;&gt;&lt;svg class=&quot;hash-link-icon&quot; aria-hidden=&quot;true&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3 [...]
+&lt;/blockquote&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Deploying Pulsar on DC/OS · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;blockquote&gt;
+&lt;h3&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;tips&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#tips&quot; aria-hidden=&quot;true&quot; class=&quot;hash-link&quot;&gt;&lt;svg class=&quot;hash-link-icon&quot; aria-hidden=&quot;true&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3 [...]
+&lt;/blockquote&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +51,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/deploy-dcos.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Deploying Pulsar on DC/OS</h1></header><article><div><span><blockquote>
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/deploy-dcos.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Deploying Pulsar on DC/OS</h1></header><article><div><span><blockquote>
 <h3><a class="anchor" aria-hidden="true" id="tips"></a><a href="#tips" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6 [...]
 <p>If you want to enable all builtin <a href="/docs/en/2.1.0-incubating/io-overview">Pulsar IO</a> connectors in your Pulsar deployment, you can choose to use <code>apachepulsar/pulsar-all</code> image instead of
 <code>apachepulsar/pulsar</code> image. <code>apachepulsar/pulsar-all</code> image has already bundled <a href="/docs/en/2.1.0-incubating/io-overview#working-with-connectors">all builtin connectors</a>.</p>
@@ -149,7 +155,7 @@ The <code>pulsar://a1.dcos:6650</code> endpoint is for the broker service. Endpo
 <pre><code class="hljs css language-bash">$ dcos marathon group remove /pulsar
 </code></pre></li>
 </ol>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/deploy-bare-metal-multi-cluster"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/deploy-monitoring"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#prerequisites">Prerequisites</a></li><li><a href="#deploy [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/deploy-bare-metal-multi-cluster"><span class="arrow-prev">← </span><span>Deploying a multi-cluster on bare metal</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/deploy-monitoring"><span>Monitoring</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#prerequisites">Prerequisites</a>< [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/deploy-kubernetes.html b/content/docs/en/2.1.0-incubating/deploy-kubernetes.html
index 4e6b6a6..f5eb583 100644
--- a/content/docs/en/2.1.0-incubating/deploy-kubernetes.html
+++ b/content/docs/en/2.1.0-incubating/deploy-kubernetes.html
@@ -1,4 +1,10 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Deploying Pulsar on Kubernetes · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&gt; ### Tips"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Deploying Pulsar on Kubernetes [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Deploying Pulsar on Kubernetes · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;blockquote&gt;
+&lt;h3&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;tips&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#tips&quot; aria-hidden=&quot;true&quot; class=&quot;hash-link&quot;&gt;&lt;svg class=&quot;hash-link-icon&quot; aria-hidden=&quot;true&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3 [...]
+&lt;/blockquote&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Deploying Pulsar on Kubernetes · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;blockquote&gt;
+&lt;h3&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;tips&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#tips&quot; aria-hidden=&quot;true&quot; class=&quot;hash-link&quot;&gt;&lt;svg class=&quot;hash-link-icon&quot; aria-hidden=&quot;true&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3 [...]
+&lt;/blockquote&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +51,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/deploy-kubernetes.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Deploying Pulsar on Kubernetes</h1></header><article><div><span><blockquote>
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/deploy-kubernetes.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Deploying Pulsar on Kubernetes</h1></header><article><div><span><blockquote>
 <h3><a class="anchor" aria-hidden="true" id="tips"></a><a href="#tips" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6 [...]
 <p>If you want to enable all builtin <a href="/docs/en/2.1.0-incubating/io-overview">Pulsar IO</a> connectors in your Pulsar deployment, you can choose to use <code>apachepulsar/pulsar-all</code> image instead of
 <code>apachepulsar/pulsar</code> image. <code>apachepulsar/pulsar-all</code> image has already bundled <a href="/docs/en/2.1.0-incubating/io-overview#working-with-connectors">all builtin connectors</a>.</p>
@@ -313,7 +319,7 @@ make sure you follow <a href="https://docs.helm.sh/using_helm">Helm documentatio
 <li>Web service url: <code>http://$(minikube ip):30001/</code></li>
 <li>Pulsar service url: <code>pulsar://$(minikube ip):30002/</code></li>
 </ul>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/deploy-aws"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/deploy-bare-metal"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#setup">Setup</a></li><li><a href="#pulsar-on-google-kubernetes-engine">Pulsar  [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/deploy-aws"><span class="arrow-prev">← </span><span>Deploying a Pulsar cluster on AWS using Terraform and Ansible</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/deploy-bare-metal"><span>Deploying a cluster on bare metal</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#setup">Se [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/deploy-kubernetes/index.html b/content/docs/en/2.1.0-incubating/deploy-kubernetes/index.html
index 4e6b6a6..f5eb583 100644
--- a/content/docs/en/2.1.0-incubating/deploy-kubernetes/index.html
+++ b/content/docs/en/2.1.0-incubating/deploy-kubernetes/index.html
@@ -1,4 +1,10 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Deploying Pulsar on Kubernetes · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&gt; ### Tips"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Deploying Pulsar on Kubernetes [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Deploying Pulsar on Kubernetes · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;blockquote&gt;
+&lt;h3&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;tips&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#tips&quot; aria-hidden=&quot;true&quot; class=&quot;hash-link&quot;&gt;&lt;svg class=&quot;hash-link-icon&quot; aria-hidden=&quot;true&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3 [...]
+&lt;/blockquote&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Deploying Pulsar on Kubernetes · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;blockquote&gt;
+&lt;h3&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;tips&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#tips&quot; aria-hidden=&quot;true&quot; class=&quot;hash-link&quot;&gt;&lt;svg class=&quot;hash-link-icon&quot; aria-hidden=&quot;true&quot; height=&quot;16&quot; version=&quot;1.1&quot; viewBox=&quot;0 0 16 16&quot; width=&quot;16&quot;&gt;&lt;path fill-rule=&quot;evenodd&quot; d=&quot;M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3 [...]
+&lt;/blockquote&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +51,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/deploy-kubernetes.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Deploying Pulsar on Kubernetes</h1></header><article><div><span><blockquote>
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/deploy-kubernetes.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Deploying Pulsar on Kubernetes</h1></header><article><div><span><blockquote>
 <h3><a class="anchor" aria-hidden="true" id="tips"></a><a href="#tips" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6 [...]
 <p>If you want to enable all builtin <a href="/docs/en/2.1.0-incubating/io-overview">Pulsar IO</a> connectors in your Pulsar deployment, you can choose to use <code>apachepulsar/pulsar-all</code> image instead of
 <code>apachepulsar/pulsar</code> image. <code>apachepulsar/pulsar-all</code> image has already bundled <a href="/docs/en/2.1.0-incubating/io-overview#working-with-connectors">all builtin connectors</a>.</p>
@@ -313,7 +319,7 @@ make sure you follow <a href="https://docs.helm.sh/using_helm">Helm documentatio
 <li>Web service url: <code>http://$(minikube ip):30001/</code></li>
 <li>Pulsar service url: <code>pulsar://$(minikube ip):30002/</code></li>
 </ul>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/deploy-aws"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/deploy-bare-metal"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#setup">Setup</a></li><li><a href="#pulsar-on-google-kubernetes-engine">Pulsar  [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/deploy-aws"><span class="arrow-prev">← </span><span>Deploying a Pulsar cluster on AWS using Terraform and Ansible</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/deploy-bare-metal"><span>Deploying a cluster on bare metal</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#setup">Se [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/deploy-monitoring.html b/content/docs/en/2.1.0-incubating/deploy-monitoring.html
index 62b7c64..03204dd 100644
--- a/content/docs/en/2.1.0-incubating/deploy-monitoring.html
+++ b/content/docs/en/2.1.0-incubating/deploy-monitoring.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Monitoring · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="There are different ways to monitor a Pulsar cluster, exposing both metrics relative to the usage of topics and the overall health of the individual components of the cluster."/><meta name="docsearch:versio [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Monitoring · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;There are different ways to monitor a Pulsar cluster, exposing both metrics relative to the usage of topics and the overall health of the individual components of the cluster.&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Monitoring · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;There are different ways to monitor a Pulsar cluster, exposing both metrics relative to the usage of topics and the overall health of the indivi [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/deploy-monitoring.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Monitoring</h1></header><article><div><span><p>There are different ways to monitor a Pulsar cluster, exposing both metrics relative to the [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/deploy-monitoring.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Monitoring</h1></header><article><div><span><p>There are different ways to monitor a Pulsar cluster, exposing both metrics relative to the usage of topics  [...]
 <h2><a class="anchor" aria-hidden="true" id="collecting-metrics"></a><a href="#collecting-metrics" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22- [...]
 <h3><a class="anchor" aria-hidden="true" id="broker-stats"></a><a href="#broker-stats" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83. [...]
 <p>Pulsar broker metrics can be collected from brokers and exported in JSON format. There are two main types of metrics:</p>
@@ -100,7 +102,7 @@ in place. This is enabled by default when deploying Pulsar on Kubernetes.</p>
         -e PROMETHEUS_URL=http://$PROMETHEUS_HOST:9090/ \
         apachepulsar/pulsar-grafana:latest
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/deploy-dcos"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/administration-zk-bk"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#collecting-metrics">Collecting metrics</a><ul class="toc-headings"><li><a  [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/deploy-dcos"><span class="arrow-prev">← </span><span>Deploying Pulsar on DC/OS</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/administration-zk-bk"><span class="function-name-prevnext">ZooKeeper and BookKeeper administration</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#coll [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/deploy-monitoring/index.html b/content/docs/en/2.1.0-incubating/deploy-monitoring/index.html
index 62b7c64..03204dd 100644
--- a/content/docs/en/2.1.0-incubating/deploy-monitoring/index.html
+++ b/content/docs/en/2.1.0-incubating/deploy-monitoring/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Monitoring · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="There are different ways to monitor a Pulsar cluster, exposing both metrics relative to the usage of topics and the overall health of the individual components of the cluster."/><meta name="docsearch:versio [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Monitoring · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;There are different ways to monitor a Pulsar cluster, exposing both metrics relative to the usage of topics and the overall health of the individual components of the cluster.&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Monitoring · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;There are different ways to monitor a Pulsar cluster, exposing both metrics relative to the usage of topics and the overall health of the indivi [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/deploy-monitoring.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Monitoring</h1></header><article><div><span><p>There are different ways to monitor a Pulsar cluster, exposing both metrics relative to the [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/deploy-monitoring.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Monitoring</h1></header><article><div><span><p>There are different ways to monitor a Pulsar cluster, exposing both metrics relative to the usage of topics  [...]
 <h2><a class="anchor" aria-hidden="true" id="collecting-metrics"></a><a href="#collecting-metrics" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22- [...]
 <h3><a class="anchor" aria-hidden="true" id="broker-stats"></a><a href="#broker-stats" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83. [...]
 <p>Pulsar broker metrics can be collected from brokers and exported in JSON format. There are two main types of metrics:</p>
@@ -100,7 +102,7 @@ in place. This is enabled by default when deploying Pulsar on Kubernetes.</p>
         -e PROMETHEUS_URL=http://$PROMETHEUS_HOST:9090/ \
         apachepulsar/pulsar-grafana:latest
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/deploy-dcos"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/administration-zk-bk"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#collecting-metrics">Collecting metrics</a><ul class="toc-headings"><li><a  [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/deploy-dcos"><span class="arrow-prev">← </span><span>Deploying Pulsar on DC/OS</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/administration-zk-bk"><span class="function-name-prevnext">ZooKeeper and BookKeeper administration</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#coll [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/develop-binary-protocol.html b/content/docs/en/2.1.0-incubating/develop-binary-protocol.html
index 4282b91..22602b8 100644
--- a/content/docs/en/2.1.0-incubating/develop-binary-protocol.html
+++ b/content/docs/en/2.1.0-incubating/develop-binary-protocol.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar binary protocol specification · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar uses a custom binary protocol for communications between producers/consumers and brokers. This protocol is designed to support required features, such as acknowledgements an [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar binary protocol specification · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar uses a custom binary protocol for communications between producers/consumers and brokers. This protocol is designed to support required features, such as acknowledg [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar binary protocol specification · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar uses a custom binary protocol for communications between producers/consumers and brokers. This protocol is desi [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/developing-binary-protocol.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar binary protocol specification</h1></header><article><div><span><p>Pulsar uses a custom binary protocol for communications  [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/developing-binary-protocol.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar binary protocol specification</h1></header><article><div><span><p>Pulsar uses a custom binary protocol for communications between producers [...]
 <p>Clients and brokers exchange <em>commands</em> with each other. Commands are formatted as binary <a href="https://developers.google.com/protocol-buffers/">protocol buffer</a> (aka <em>protobuf</em>) messages. The format of protobuf commands is specified in the <a href="https://github.com/apache/incubator-pulsar/blob/master/pulsar-common/src/main/proto/PulsarApi.proto"><code>PulsarApi.proto</code></a> file and also documented in the <a href="#protobuf-interface">Protobuf interface</a>  [...]
 <blockquote>
 <h3><a class="anchor" aria-hidden="true" id="connection-sharing"></a><a href="#connection-sharing" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22- [...]
@@ -493,7 +495,7 @@ response will contain actual metadata.</p>
 <h2><a class="anchor" aria-hidden="true" id="protobuf-interface"></a><a href="#protobuf-interface" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22- [...]
 <p>All Pulsar's Protobuf definitions can be found <a href="https://github.com/apache/incubator-pulsar/tree/master//pulsar-common/src/main/proto/PulsarApi.proto">here</a>
 .</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/develop-tools"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/develop-schema"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#framing">Framing</a><ul class="toc-headings"><li><a href="#simple-commands">Si [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/develop-tools"><span class="arrow-prev">← </span><span>Simulation tools</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/develop-schema"><span>Custom schema storage</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#framing">Framing</a><ul class="toc-headings"><li><a href="#simple- [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/develop-binary-protocol/index.html b/content/docs/en/2.1.0-incubating/develop-binary-protocol/index.html
index 4282b91..22602b8 100644
--- a/content/docs/en/2.1.0-incubating/develop-binary-protocol/index.html
+++ b/content/docs/en/2.1.0-incubating/develop-binary-protocol/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar binary protocol specification · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar uses a custom binary protocol for communications between producers/consumers and brokers. This protocol is designed to support required features, such as acknowledgements an [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar binary protocol specification · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar uses a custom binary protocol for communications between producers/consumers and brokers. This protocol is designed to support required features, such as acknowledg [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar binary protocol specification · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar uses a custom binary protocol for communications between producers/consumers and brokers. This protocol is desi [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/developing-binary-protocol.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar binary protocol specification</h1></header><article><div><span><p>Pulsar uses a custom binary protocol for communications  [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/developing-binary-protocol.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar binary protocol specification</h1></header><article><div><span><p>Pulsar uses a custom binary protocol for communications between producers [...]
 <p>Clients and brokers exchange <em>commands</em> with each other. Commands are formatted as binary <a href="https://developers.google.com/protocol-buffers/">protocol buffer</a> (aka <em>protobuf</em>) messages. The format of protobuf commands is specified in the <a href="https://github.com/apache/incubator-pulsar/blob/master/pulsar-common/src/main/proto/PulsarApi.proto"><code>PulsarApi.proto</code></a> file and also documented in the <a href="#protobuf-interface">Protobuf interface</a>  [...]
 <blockquote>
 <h3><a class="anchor" aria-hidden="true" id="connection-sharing"></a><a href="#connection-sharing" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22- [...]
@@ -493,7 +495,7 @@ response will contain actual metadata.</p>
 <h2><a class="anchor" aria-hidden="true" id="protobuf-interface"></a><a href="#protobuf-interface" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22- [...]
 <p>All Pulsar's Protobuf definitions can be found <a href="https://github.com/apache/incubator-pulsar/tree/master//pulsar-common/src/main/proto/PulsarApi.proto">here</a>
 .</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/develop-tools"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/develop-schema"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#framing">Framing</a><ul class="toc-headings"><li><a href="#simple-commands">Si [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/develop-tools"><span class="arrow-prev">← </span><span>Simulation tools</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/develop-schema"><span>Custom schema storage</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#framing">Framing</a><ul class="toc-headings"><li><a href="#simple- [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/develop-cpp.html b/content/docs/en/2.1.0-incubating/develop-cpp.html
index a97d97e..a305725 100644
--- a/content/docs/en/2.1.0-incubating/develop-cpp.html
+++ b/content/docs/en/2.1.0-incubating/develop-cpp.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Building Pulsar C++ client · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="## Supported platforms"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Building Pulsar C++ clien [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Building Pulsar C++ client · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;h2&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;supported-platforms&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#supported-platforms&quot; aria-hidden=&quot;true&quot; [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Building Pulsar C++ client · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;h2&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;supported-platforms&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#s [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/developing-cpp.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Building Pulsar C++ client</h1></header><article><div><span><h2><a class="anchor" aria-hidden="true" id="supported-platforms"></a><a href="#s [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/developing-cpp.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Building Pulsar C++ client</h1></header><article><div><span><h2><a class="anchor" aria-hidden="true" id="supported-platforms"></a><a href="#supported-platform [...]
 <p>The Pulsar C++ client has been successfully tested on <strong>MacOS</strong> and <strong>Linux</strong>.</p>
 <h2><a class="anchor" aria-hidden="true" id="system-requirements"></a><a href="#system-requirements" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.2 [...]
 <p>You need to have the following installed to use the C++ client:</p>
@@ -115,7 +117,7 @@ $</span><span class="bash"> <span class="hljs-built_in">cd</span> /usr/src/gmock
 <span class="hljs-meta">$</span><span class="bash"> cmake .</span>
 <span class="hljs-meta">$</span><span class="bash"> make</span>
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/develop-load-manager"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/reference-terminology"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#supported-platforms">Supported platforms</a></li><li><a href="#s [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/develop-load-manager"><span class="arrow-prev">← </span><span>Modular load manager</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/reference-terminology"><span>Pulsar Terminology</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#supported-platforms">Supported platforms</a></li><l [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/develop-cpp/index.html b/content/docs/en/2.1.0-incubating/develop-cpp/index.html
index a97d97e..a305725 100644
--- a/content/docs/en/2.1.0-incubating/develop-cpp/index.html
+++ b/content/docs/en/2.1.0-incubating/develop-cpp/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Building Pulsar C++ client · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="## Supported platforms"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Building Pulsar C++ clien [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Building Pulsar C++ client · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;h2&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;supported-platforms&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#supported-platforms&quot; aria-hidden=&quot;true&quot; [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Building Pulsar C++ client · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;h2&gt;&lt;a class=&quot;anchor&quot; aria-hidden=&quot;true&quot; id=&quot;supported-platforms&quot;&gt;&lt;/a&gt;&lt;a href=&quot;#s [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/developing-cpp.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Building Pulsar C++ client</h1></header><article><div><span><h2><a class="anchor" aria-hidden="true" id="supported-platforms"></a><a href="#s [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/developing-cpp.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Building Pulsar C++ client</h1></header><article><div><span><h2><a class="anchor" aria-hidden="true" id="supported-platforms"></a><a href="#supported-platform [...]
 <p>The Pulsar C++ client has been successfully tested on <strong>MacOS</strong> and <strong>Linux</strong>.</p>
 <h2><a class="anchor" aria-hidden="true" id="system-requirements"></a><a href="#system-requirements" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.2 [...]
 <p>You need to have the following installed to use the C++ client:</p>
@@ -115,7 +117,7 @@ $</span><span class="bash"> <span class="hljs-built_in">cd</span> /usr/src/gmock
 <span class="hljs-meta">$</span><span class="bash"> cmake .</span>
 <span class="hljs-meta">$</span><span class="bash"> make</span>
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/develop-load-manager"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/reference-terminology"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#supported-platforms">Supported platforms</a></li><li><a href="#s [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/develop-load-manager"><span class="arrow-prev">← </span><span>Modular load manager</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/reference-terminology"><span>Pulsar Terminology</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#supported-platforms">Supported platforms</a></li><l [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/develop-load-manager.html b/content/docs/en/2.1.0-incubating/develop-load-manager.html
index 39656f2..c88b807 100644
--- a/content/docs/en/2.1.0-incubating/develop-load-manager.html
+++ b/content/docs/en/2.1.0-incubating/develop-load-manager.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Modular load manager · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="The *modular load manager*, implemented in  [`ModularLoadManagerImpl`](https://github.com/apache/incubator-pulsar/blob/master/pulsar-broker/src/main/java/org/apache/pulsar/broker/loadbalance/impl/ [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Modular load manager · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;The &lt;em&gt;modular load manager&lt;/em&gt;, implemented in  &lt;a href=&quot;https://github.com/apache/incubator-pulsar/blob/master/pulsar-broker/src/main/java/org/apache/pulsar/broker [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Modular load manager · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;The &lt;em&gt;modular load manager&lt;/em&gt;, implemented in  &lt;a href=&quot;https://github.com/apache/incubator-pulsar/blob/master [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/developing-load-manager.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Modular load manager</h1></header><article><div><span><p>The <em>modular load manager</em>, implemented in  <a href="https://github. [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/developing-load-manager.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Modular load manager</h1></header><article><div><span><p>The <em>modular load manager</em>, implemented in  <a href="https://github.com/apache/incuba [...]
 <h2><a class="anchor" aria-hidden="true" id="usage"></a><a href="#usage" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09 [...]
 <p>There are two ways that you can enable the modular load manager:</p>
 <ol>
@@ -214,7 +216,7 @@ by the same message rates will receive less load. In particular, it tries to ens
 then all machines are approximately overloaded. In the case in which a broker's max usage exceeds the overload
 threshold, that broker is not considered for bundle assignment. If all brokers are overloaded, the bundle is randomly
 assigned.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/develop-schema"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/develop-cpp"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#usage">Usage</a></li><li><a href="#verification">Verification</a></li><li><a hre [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/develop-schema"><span class="arrow-prev">← </span><span>Custom schema storage</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/develop-cpp"><span>Building Pulsar C++ client</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#usage">Usage</a></li><li><a href="#verification">Verificat [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/develop-load-manager/index.html b/content/docs/en/2.1.0-incubating/develop-load-manager/index.html
index 39656f2..c88b807 100644
--- a/content/docs/en/2.1.0-incubating/develop-load-manager/index.html
+++ b/content/docs/en/2.1.0-incubating/develop-load-manager/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Modular load manager · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="The *modular load manager*, implemented in  [`ModularLoadManagerImpl`](https://github.com/apache/incubator-pulsar/blob/master/pulsar-broker/src/main/java/org/apache/pulsar/broker/loadbalance/impl/ [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Modular load manager · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;The &lt;em&gt;modular load manager&lt;/em&gt;, implemented in  &lt;a href=&quot;https://github.com/apache/incubator-pulsar/blob/master/pulsar-broker/src/main/java/org/apache/pulsar/broker [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Modular load manager · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;The &lt;em&gt;modular load manager&lt;/em&gt;, implemented in  &lt;a href=&quot;https://github.com/apache/incubator-pulsar/blob/master [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/developing-load-manager.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Modular load manager</h1></header><article><div><span><p>The <em>modular load manager</em>, implemented in  <a href="https://github. [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/developing-load-manager.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Modular load manager</h1></header><article><div><span><p>The <em>modular load manager</em>, implemented in  <a href="https://github.com/apache/incuba [...]
 <h2><a class="anchor" aria-hidden="true" id="usage"></a><a href="#usage" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09 [...]
 <p>There are two ways that you can enable the modular load manager:</p>
 <ol>
@@ -214,7 +216,7 @@ by the same message rates will receive less load. In particular, it tries to ens
 then all machines are approximately overloaded. In the case in which a broker's max usage exceeds the overload
 threshold, that broker is not considered for bundle assignment. If all brokers are overloaded, the bundle is randomly
 assigned.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/develop-schema"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/develop-cpp"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#usage">Usage</a></li><li><a href="#verification">Verification</a></li><li><a hre [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/develop-schema"><span class="arrow-prev">← </span><span>Custom schema storage</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/develop-cpp"><span>Building Pulsar C++ client</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#usage">Usage</a></li><li><a href="#verification">Verificat [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/develop-schema.html b/content/docs/en/2.1.0-incubating/develop-schema.html
index 5383604..16109d9 100644
--- a/content/docs/en/2.1.0-incubating/develop-schema.html
+++ b/content/docs/en/2.1.0-incubating/develop-schema.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Custom schema storage · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="By default, Pulsar stores data type [schemas](/docs/en/2.1.0-incubating/concepts-schema-registry) in [Apache BookKeeper](https://bookkeeper.apache.org) (which is deployed alongside Pulsar). You c [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Custom schema storage · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;By default, Pulsar stores data type &lt;a href=&quot;/docs/en/2.1.0-incubating/concepts-schema-registry&quot;&gt;schemas&lt;/a&gt; in &lt;a href=&quot;https://bookkeeper.apache.org&quot; [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Custom schema storage · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;By default, Pulsar stores data type &lt;a href=&quot;/docs/en/2.1.0-incubating/concepts-schema-registry&quot;&gt;schemas&lt;/a&gt; in [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/developing-schema.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Custom schema storage</h1></header><article><div><span><p>By default, Pulsar stores data type <a href="/docs/en/2.1.0-incubating/concepts- [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/developing-schema.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Custom schema storage</h1></header><article><div><span><p>By default, Pulsar stores data type <a href="/docs/en/2.1.0-incubating/concepts-schema-registry"> [...]
 <p>In order to use a non-default (i.e. non-BookKeeper) storage system for Pulsar schemas, you need to implement two Java interfaces: <a href="#schemastorage-interface"><code>SchemaStorage</code></a> and <a href="#schemastoragefactory-interface"><code>SchemaStorageFactory</code></a>.</p>
 <h2><a class="anchor" aria-hidden="true" id="schemastorage-interface"></a><a href="#schemastorage-interface" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 [...]
 <p>The <code>SchemaStorage</code> interface has the following methods:</p>
@@ -89,7 +91,7 @@
 <li>Change the <code>schemaRegistryStorageClassName</code> configuration in <a href="/docs/en/2.1.0-incubating/reference-configuration#broker"><code>broker.conf</code></a> to your custom factory class (i.e. the <code>SchemaStorageFactory</code> implementation, not the <code>SchemaStorage</code> implementation).</li>
 <li>Start up Pulsar.</li>
 </ol>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/develop-binary-protocol"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/develop-load-manager"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#schemastorage-interface">SchemaStorage interface</a></li><li>< [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/develop-binary-protocol"><span class="arrow-prev">← </span><span>Pulsar binary protocol specification</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/develop-load-manager"><span>Modular load manager</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#schemastorage-interface">Schema [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/develop-schema/index.html b/content/docs/en/2.1.0-incubating/develop-schema/index.html
index 5383604..16109d9 100644
--- a/content/docs/en/2.1.0-incubating/develop-schema/index.html
+++ b/content/docs/en/2.1.0-incubating/develop-schema/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Custom schema storage · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="By default, Pulsar stores data type [schemas](/docs/en/2.1.0-incubating/concepts-schema-registry) in [Apache BookKeeper](https://bookkeeper.apache.org) (which is deployed alongside Pulsar). You c [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Custom schema storage · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;By default, Pulsar stores data type &lt;a href=&quot;/docs/en/2.1.0-incubating/concepts-schema-registry&quot;&gt;schemas&lt;/a&gt; in &lt;a href=&quot;https://bookkeeper.apache.org&quot; [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Custom schema storage · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;By default, Pulsar stores data type &lt;a href=&quot;/docs/en/2.1.0-incubating/concepts-schema-registry&quot;&gt;schemas&lt;/a&gt; in [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/developing-schema.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Custom schema storage</h1></header><article><div><span><p>By default, Pulsar stores data type <a href="/docs/en/2.1.0-incubating/concepts- [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/developing-schema.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Custom schema storage</h1></header><article><div><span><p>By default, Pulsar stores data type <a href="/docs/en/2.1.0-incubating/concepts-schema-registry"> [...]
 <p>In order to use a non-default (i.e. non-BookKeeper) storage system for Pulsar schemas, you need to implement two Java interfaces: <a href="#schemastorage-interface"><code>SchemaStorage</code></a> and <a href="#schemastoragefactory-interface"><code>SchemaStorageFactory</code></a>.</p>
 <h2><a class="anchor" aria-hidden="true" id="schemastorage-interface"></a><a href="#schemastorage-interface" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 [...]
 <p>The <code>SchemaStorage</code> interface has the following methods:</p>
@@ -89,7 +91,7 @@
 <li>Change the <code>schemaRegistryStorageClassName</code> configuration in <a href="/docs/en/2.1.0-incubating/reference-configuration#broker"><code>broker.conf</code></a> to your custom factory class (i.e. the <code>SchemaStorageFactory</code> implementation, not the <code>SchemaStorage</code> implementation).</li>
 <li>Start up Pulsar.</li>
 </ol>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/develop-binary-protocol"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/develop-load-manager"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#schemastorage-interface">SchemaStorage interface</a></li><li>< [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/develop-binary-protocol"><span class="arrow-prev">← </span><span>Pulsar binary protocol specification</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/develop-load-manager"><span>Modular load manager</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#schemastorage-interface">Schema [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/develop-tools.html b/content/docs/en/2.1.0-incubating/develop-tools.html
index 6bf6166..3589042 100644
--- a/content/docs/en/2.1.0-incubating/develop-tools.html
+++ b/content/docs/en/2.1.0-incubating/develop-tools.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Simulation tools · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="It is sometimes necessary create an test environment and incur artificial load to observe how well load managers"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:lang [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Simulation tools · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;It is sometimes necessary create an test environment and incur artificial load to observe how well load managers&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Simulation tools · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;It is sometimes necessary create an test environment and incur artificial load to observe how well load managers&lt;/p&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/developing-tools.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Simulation tools</h1></header><article><div><span><p>It is sometimes necessary create an test environment and incur artificial load to obse [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/developing-tools.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Simulation tools</h1></header><article><div><span><p>It is sometimes necessary create an test environment and incur artificial load to observe how well load [...]
 handle the load. The load simulation controller, the load simulation client, and the broker monitor were created as an
 effort to make create this load and observe the effects on the managers more easily.</p>
 <h2><a class="anchor" aria-hidden="true" id="simulation-client"></a><a href="#simulation-client" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2- [...]
@@ -138,7 +140,7 @@ console as it is updated using watchers.</p>
 <pre><code class="hljs">pulsar-perf<span class="hljs-built_in"> monitor-brokers </span>--connect-string &lt;zookeeper host:port&gt;
 </code></pre>
 <p>The console will then continuously print load data until it is interrupted.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-message-queue"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/develop-binary-protocol"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#simulation-client">Simulation Client</a><ul class="toc-head [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-message-queue"><span class="arrow-prev">← </span><span>Using Pulsar as a message queue</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/develop-binary-protocol"><span>Pulsar binary protocol specification</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#simulation-client [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/develop-tools/index.html b/content/docs/en/2.1.0-incubating/develop-tools/index.html
index 6bf6166..3589042 100644
--- a/content/docs/en/2.1.0-incubating/develop-tools/index.html
+++ b/content/docs/en/2.1.0-incubating/develop-tools/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Simulation tools · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="It is sometimes necessary create an test environment and incur artificial load to observe how well load managers"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:lang [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Simulation tools · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;It is sometimes necessary create an test environment and incur artificial load to observe how well load managers&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Simulation tools · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;It is sometimes necessary create an test environment and incur artificial load to observe how well load managers&lt;/p&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/developing-tools.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Simulation tools</h1></header><article><div><span><p>It is sometimes necessary create an test environment and incur artificial load to obse [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/developing-tools.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Simulation tools</h1></header><article><div><span><p>It is sometimes necessary create an test environment and incur artificial load to observe how well load [...]
 handle the load. The load simulation controller, the load simulation client, and the broker monitor were created as an
 effort to make create this load and observe the effects on the managers more easily.</p>
 <h2><a class="anchor" aria-hidden="true" id="simulation-client"></a><a href="#simulation-client" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2- [...]
@@ -138,7 +140,7 @@ console as it is updated using watchers.</p>
 <pre><code class="hljs">pulsar-perf<span class="hljs-built_in"> monitor-brokers </span>--connect-string &lt;zookeeper host:port&gt;
 </code></pre>
 <p>The console will then continuously print load data until it is interrupted.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-message-queue"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/develop-binary-protocol"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#simulation-client">Simulation Client</a><ul class="toc-head [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/cookbooks-message-queue"><span class="arrow-prev">← </span><span>Using Pulsar as a message queue</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/develop-binary-protocol"><span>Pulsar binary protocol specification</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#simulation-client [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/functions-api.html b/content/docs/en/2.1.0-incubating/functions-api.html
index 2758a75..03d71e4 100644
--- a/content/docs/en/2.1.0-incubating/functions-api.html
+++ b/content/docs/en/2.1.0-incubating/functions-api.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar Functions API · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="[Pulsar Functions](/docs/en/2.1.0-incubating/functions-overview) provides an easy-to-use API that developers can use to create and manage processing logic for the Apache Pulsar messaging syste [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar Functions API · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;&lt;a href=&quot;/docs/en/2.1.0-incubating/functions-overview&quot;&gt;Pulsar Functions&lt;/a&gt; provides an easy-to-use API that developers can use to create and manage processing l [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="The Pulsar Functions API · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;&lt;a href=&quot;/docs/en/2.1.0-incubating/functions-overview&quot;&gt;Pulsar Functions&lt;/a&gt; provides an easy-to-use API that [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-api.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar Functions API</h1></header><article><div><span><p><a href="/docs/en/2.1.0-incubating/functions-overview">Pulsar Functions</a> provi [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-api.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar Functions API</h1></header><article><div><span><p><a href="/docs/en/2.1.0-incubating/functions-overview">Pulsar Functions</a> provides an easy-to-us [...]
 <blockquote>
 <p>For a more in-depth overview of the Pulsar Functions feature, see the <a href="/docs/en/2.1.0-incubating/functions-overview">Pulsar Functions overview</a>.</p>
 </blockquote>
@@ -637,7 +639,7 @@ String wotd = context.getUserConfigValueOrDefault(<span class="hljs-string">"wor
         <span class="hljs-keyword">if</span> input == <span class="hljs-number">11</span>:
             context.record_metric(<span class="hljs-string">'elevens-count'</span>, <span class="hljs-number">1</span>)
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/functions-quickstart"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-deploying"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#core-programming-model">Core programming model</a><ul class="toc-h [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/functions-quickstart"><span class="arrow-prev">← </span><span>Getting started with Pulsar Functions</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-deploying"><span>Deploying and managing Pulsar Functions</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#core-programmin [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/functions-api/index.html b/content/docs/en/2.1.0-incubating/functions-api/index.html
index 2758a75..03d71e4 100644
--- a/content/docs/en/2.1.0-incubating/functions-api/index.html
+++ b/content/docs/en/2.1.0-incubating/functions-api/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar Functions API · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="[Pulsar Functions](/docs/en/2.1.0-incubating/functions-overview) provides an easy-to-use API that developers can use to create and manage processing logic for the Apache Pulsar messaging syste [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>The Pulsar Functions API · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;&lt;a href=&quot;/docs/en/2.1.0-incubating/functions-overview&quot;&gt;Pulsar Functions&lt;/a&gt; provides an easy-to-use API that developers can use to create and manage processing l [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="The Pulsar Functions API · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;&lt;a href=&quot;/docs/en/2.1.0-incubating/functions-overview&quot;&gt;Pulsar Functions&lt;/a&gt; provides an easy-to-use API that [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-api.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar Functions API</h1></header><article><div><span><p><a href="/docs/en/2.1.0-incubating/functions-overview">Pulsar Functions</a> provi [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-api.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">The Pulsar Functions API</h1></header><article><div><span><p><a href="/docs/en/2.1.0-incubating/functions-overview">Pulsar Functions</a> provides an easy-to-us [...]
 <blockquote>
 <p>For a more in-depth overview of the Pulsar Functions feature, see the <a href="/docs/en/2.1.0-incubating/functions-overview">Pulsar Functions overview</a>.</p>
 </blockquote>
@@ -637,7 +639,7 @@ String wotd = context.getUserConfigValueOrDefault(<span class="hljs-string">"wor
         <span class="hljs-keyword">if</span> input == <span class="hljs-number">11</span>:
             context.record_metric(<span class="hljs-string">'elevens-count'</span>, <span class="hljs-number">1</span>)
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/functions-quickstart"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-deploying"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#core-programming-model">Core programming model</a><ul class="toc-h [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/functions-quickstart"><span class="arrow-prev">← </span><span>Getting started with Pulsar Functions</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-deploying"><span>Deploying and managing Pulsar Functions</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#core-programmin [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/functions-deploying.html b/content/docs/en/2.1.0-incubating/functions-deploying.html
index 36bd109..3a58747 100644
--- a/content/docs/en/2.1.0-incubating/functions-deploying.html
+++ b/content/docs/en/2.1.0-incubating/functions-deploying.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Deploying and managing Pulsar Functions · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="At the moment, there are two deployment modes available for Pulsar Functions:"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" conten [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Deploying and managing Pulsar Functions · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;At the moment, there are two deployment modes available for Pulsar Functions:&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Deploying and managing Pulsar Functions · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;At the moment, there are two deployment modes available for Pulsar Functions:&lt;/p&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-deploying.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Deploying and managing Pulsar Functions</h1></header><article><div><span><p>At the moment, there are two deployment modes available for  [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-deploying.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Deploying and managing Pulsar Functions</h1></header><article><div><span><p>At the moment, there are two deployment modes available for Pulsar Functions:</p>
 <table>
 <thead>
 <tr><th style="text-align:left">Mode</th><th style="text-align:left">Description</th></tr>
@@ -214,7 +216,7 @@ This <span class="hljs-keyword">function</span> <span class="hljs-title">has</sp
 <h4><a class="anchor" aria-hidden="true" id="topic-info-not-required"></a><a href="#topic-info-not-required" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 [...]
 <p>In the <code>trigger</code> command above, you may have noticed that you only need to specify basic information about the function (tenant, namespace, and name). To trigger the function, you didn't need to know the function's input topic(s).</p>
 </blockquote>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/functions-api"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-guarantees"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#requirements">Requirements</a></li><li><a href="#command-line-interface" [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/functions-api"><span class="arrow-prev">← </span><span>The Pulsar Functions API</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-guarantees"><span>Processing guarantees</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#requirements">Requirements</a></li><li><a href="#com [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/functions-deploying/index.html b/content/docs/en/2.1.0-incubating/functions-deploying/index.html
index 36bd109..3a58747 100644
--- a/content/docs/en/2.1.0-incubating/functions-deploying/index.html
+++ b/content/docs/en/2.1.0-incubating/functions-deploying/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Deploying and managing Pulsar Functions · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="At the moment, there are two deployment modes available for Pulsar Functions:"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" conten [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Deploying and managing Pulsar Functions · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;At the moment, there are two deployment modes available for Pulsar Functions:&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Deploying and managing Pulsar Functions · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;At the moment, there are two deployment modes available for Pulsar Functions:&lt;/p&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-deploying.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Deploying and managing Pulsar Functions</h1></header><article><div><span><p>At the moment, there are two deployment modes available for  [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-deploying.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Deploying and managing Pulsar Functions</h1></header><article><div><span><p>At the moment, there are two deployment modes available for Pulsar Functions:</p>
 <table>
 <thead>
 <tr><th style="text-align:left">Mode</th><th style="text-align:left">Description</th></tr>
@@ -214,7 +216,7 @@ This <span class="hljs-keyword">function</span> <span class="hljs-title">has</sp
 <h4><a class="anchor" aria-hidden="true" id="topic-info-not-required"></a><a href="#topic-info-not-required" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 [...]
 <p>In the <code>trigger</code> command above, you may have noticed that you only need to specify basic information about the function (tenant, namespace, and name). To trigger the function, you didn't need to know the function's input topic(s).</p>
 </blockquote>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/functions-api"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-guarantees"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#requirements">Requirements</a></li><li><a href="#command-line-interface" [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/functions-api"><span class="arrow-prev">← </span><span>The Pulsar Functions API</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-guarantees"><span>Processing guarantees</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#requirements">Requirements</a></li><li><a href="#com [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/functions-guarantees.html b/content/docs/en/2.1.0-incubating/functions-guarantees.html
index 9eb1b6e..1879ee6 100644
--- a/content/docs/en/2.1.0-incubating/functions-guarantees.html
+++ b/content/docs/en/2.1.0-incubating/functions-guarantees.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Processing guarantees · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar Functions provides three different messaging semantics that you can apply to any function:"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" cont [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Processing guarantees · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar Functions provides three different messaging semantics that you can apply to any function:&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Processing guarantees · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar Functions provides three different messaging semantics that you can apply to any function:&lt;/p&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-guarantees.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Processing guarantees</h1></header><article><div><span><p>Pulsar Functions provides three different messaging semantics that you can ap [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-guarantees.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Processing guarantees</h1></header><article><div><span><p>Pulsar Functions provides three different messaging semantics that you can apply to any function:</p>
 <table>
 <thead>
 <tr><th style="text-align:left">Delivery semantics</th><th style="text-align:left">Description</th></tr>
@@ -77,7 +79,7 @@
   --processingGuarantees ATMOST_ONCE \
   <span class="hljs-comment"># Other function configs</span>
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/functions-deploying"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-state"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#applying-processing-guarantees-to-a-function">Applying processing guara [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/functions-deploying"><span class="arrow-prev">← </span><span>Deploying and managing Pulsar Functions</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-state"><span>Pulsar Functions State Storage (Developer Preview)</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#applyin [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/functions-guarantees/index.html b/content/docs/en/2.1.0-incubating/functions-guarantees/index.html
index 9eb1b6e..1879ee6 100644
--- a/content/docs/en/2.1.0-incubating/functions-guarantees/index.html
+++ b/content/docs/en/2.1.0-incubating/functions-guarantees/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Processing guarantees · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar Functions provides three different messaging semantics that you can apply to any function:"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" cont [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Processing guarantees · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar Functions provides three different messaging semantics that you can apply to any function:&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Processing guarantees · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar Functions provides three different messaging semantics that you can apply to any function:&lt;/p&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-guarantees.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Processing guarantees</h1></header><article><div><span><p>Pulsar Functions provides three different messaging semantics that you can ap [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-guarantees.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Processing guarantees</h1></header><article><div><span><p>Pulsar Functions provides three different messaging semantics that you can apply to any function:</p>
 <table>
 <thead>
 <tr><th style="text-align:left">Delivery semantics</th><th style="text-align:left">Description</th></tr>
@@ -77,7 +79,7 @@
   --processingGuarantees ATMOST_ONCE \
   <span class="hljs-comment"># Other function configs</span>
 </code></pre>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/functions-deploying"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-state"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#applying-processing-guarantees-to-a-function">Applying processing guara [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/functions-deploying"><span class="arrow-prev">← </span><span>Deploying and managing Pulsar Functions</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-state"><span>Pulsar Functions State Storage (Developer Preview)</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#applyin [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/functions-metrics.html b/content/docs/en/2.1.0-incubating/functions-metrics.html
index 19bf4b6..42c87f4 100644
--- a/content/docs/en/2.1.0-incubating/functions-metrics.html
+++ b/content/docs/en/2.1.0-incubating/functions-metrics.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Metrics for Pulsar Functions · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar Functions can publish arbitrary metrics to the metrics interface which can then be queried. This doc contains instructions for publishing metrics using the [Java](#java-sdk) and [Py [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Metrics for Pulsar Functions · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar Functions can publish arbitrary metrics to the metrics interface which can then be queried. This doc contains instructions for publishing metrics using the &lt;a href=&quot [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Metrics for Pulsar Functions · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar Functions can publish arbitrary metrics to the metrics interface which can then be queried. This doc contains instructi [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-metrics.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Metrics for Pulsar Functions</h1></header><article><div><span><p>Pulsar Functions can publish arbitrary metrics to the metrics interface w [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-metrics.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Metrics for Pulsar Functions</h1></header><article><div><span><p>Pulsar Functions can publish arbitrary metrics to the metrics interface which can then be  [...]
 <blockquote>
 <h4><a class="anchor" aria-hidden="true" id="metrics-and-stats-not-available-through-language-native-interfaces"></a><a href="#metrics-and-stats-not-available-through-language-native-interfaces" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98  [...]
 <p>If a Pulsar Function uses the language-native interface for <a href="/docs/en/2.1.0-incubating/functions-api#java-native-functions">Java</a> or <a href="#python-native-functions">Python</a>, that function will not be able to publish metrics and stats to Pulsar.</p>
@@ -72,7 +74,7 @@
 <p>This function counts the length of each incoming message (of type <code>String</code>) and then registers that under the <code>number-of-characters</code> metric.</p>
 <h2><a class="anchor" aria-hidden="true" id="python-sdk"></a><a href="#python-sdk" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1 [...]
 <p>Documentation for the <a href="/docs/en/2.1.0-incubating/functions-api#python-sdk-functions">Python SDK</a> is coming soon.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/functions-state"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/io-overview"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#accessing-metrics">Accessing metrics</a></li><li><a href="#java-sdk">Java SDK</ [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/functions-state"><span class="arrow-prev">← </span><span>Pulsar Functions State Storage (Developer Preview)</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/io-overview"><span>Pulsar IO Overview</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#accessing-metrics">Accessing metrics [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/functions-metrics/index.html b/content/docs/en/2.1.0-incubating/functions-metrics/index.html
index 19bf4b6..42c87f4 100644
--- a/content/docs/en/2.1.0-incubating/functions-metrics/index.html
+++ b/content/docs/en/2.1.0-incubating/functions-metrics/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Metrics for Pulsar Functions · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar Functions can publish arbitrary metrics to the metrics interface which can then be queried. This doc contains instructions for publishing metrics using the [Java](#java-sdk) and [Py [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Metrics for Pulsar Functions · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar Functions can publish arbitrary metrics to the metrics interface which can then be queried. This doc contains instructions for publishing metrics using the &lt;a href=&quot [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Metrics for Pulsar Functions · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar Functions can publish arbitrary metrics to the metrics interface which can then be queried. This doc contains instructi [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-metrics.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Metrics for Pulsar Functions</h1></header><article><div><span><p>Pulsar Functions can publish arbitrary metrics to the metrics interface w [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-metrics.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Metrics for Pulsar Functions</h1></header><article><div><span><p>Pulsar Functions can publish arbitrary metrics to the metrics interface which can then be  [...]
 <blockquote>
 <h4><a class="anchor" aria-hidden="true" id="metrics-and-stats-not-available-through-language-native-interfaces"></a><a href="#metrics-and-stats-not-available-through-language-native-interfaces" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98  [...]
 <p>If a Pulsar Function uses the language-native interface for <a href="/docs/en/2.1.0-incubating/functions-api#java-native-functions">Java</a> or <a href="#python-native-functions">Python</a>, that function will not be able to publish metrics and stats to Pulsar.</p>
@@ -72,7 +74,7 @@
 <p>This function counts the length of each incoming message (of type <code>String</code>) and then registers that under the <code>number-of-characters</code> metric.</p>
 <h2><a class="anchor" aria-hidden="true" id="python-sdk"></a><a href="#python-sdk" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1 [...]
 <p>Documentation for the <a href="/docs/en/2.1.0-incubating/functions-api#python-sdk-functions">Python SDK</a> is coming soon.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/functions-state"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/io-overview"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#accessing-metrics">Accessing metrics</a></li><li><a href="#java-sdk">Java SDK</ [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/functions-state"><span class="arrow-prev">← </span><span>Pulsar Functions State Storage (Developer Preview)</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/io-overview"><span>Pulsar IO Overview</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#accessing-metrics">Accessing metrics [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/functions-overview.html b/content/docs/en/2.1.0-incubating/functions-overview.html
index 25ddbfe..c776a56 100644
--- a/content/docs/en/2.1.0-incubating/functions-overview.html
+++ b/content/docs/en/2.1.0-incubating/functions-overview.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar Functions overview · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="**Pulsar Functions** are lightweight compute processes that"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar Functions overview · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;&lt;strong&gt;Pulsar Functions&lt;/strong&gt; are lightweight compute processes that&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar Functions overview · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;&lt;strong&gt;Pulsar Functions&lt;/strong&gt; are lightweight compute processes that&lt;/p&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-overview.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar Functions overview</h1></header><article><div><span><p><strong>Pulsar Functions</strong> are lightweight compute processes that</p>
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-overview.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar Functions overview</h1></header><article><div><span><p><strong>Pulsar Functions</strong> are lightweight compute processes that</p>
 <ul>
 <li>consume messages from one or more Pulsar topics,</li>
 <li>apply a user-supplied processing logic to each message,</li>
@@ -396,7 +398,7 @@
 <p>Pulsar Functions that use the <a href="#the-pulsar-functions-sdk">Pulsar Functions SDK</a> can publish metrics to Pulsar. For more information, see <a href="/docs/en/2.1.0-incubating/functions-metrics">Metrics for Pulsar Functions</a>.</p>
 <h2><a class="anchor" aria-hidden="true" id="state-storage"></a><a href="#state-storage" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.8 [...]
 <p>Pulsar Functions use <a href="https://bookkeeper.apache.org">Apache BookKeeper</a> as a state storage interface. All Pulsar installations, including local standalone installations, include a deployment of BookKeeper bookies.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-schema-registry"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-quickstart"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#goals">Goals</a></li><li><a href="#inspirations">Inspirations [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-schema-registry"><span class="arrow-prev">← </span><span>Schema Registry</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-quickstart"><span>Getting started with Pulsar Functions</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#goals">Goals</a></li><li><a href=" [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/functions-overview/index.html b/content/docs/en/2.1.0-incubating/functions-overview/index.html
index 25ddbfe..c776a56 100644
--- a/content/docs/en/2.1.0-incubating/functions-overview/index.html
+++ b/content/docs/en/2.1.0-incubating/functions-overview/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar Functions overview · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="**Pulsar Functions** are lightweight compute processes that"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar Functions overview · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;&lt;strong&gt;Pulsar Functions&lt;/strong&gt; are lightweight compute processes that&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar Functions overview · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;&lt;strong&gt;Pulsar Functions&lt;/strong&gt; are lightweight compute processes that&lt;/p&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-overview.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar Functions overview</h1></header><article><div><span><p><strong>Pulsar Functions</strong> are lightweight compute processes that</p>
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-overview.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar Functions overview</h1></header><article><div><span><p><strong>Pulsar Functions</strong> are lightweight compute processes that</p>
 <ul>
 <li>consume messages from one or more Pulsar topics,</li>
 <li>apply a user-supplied processing logic to each message,</li>
@@ -396,7 +398,7 @@
 <p>Pulsar Functions that use the <a href="#the-pulsar-functions-sdk">Pulsar Functions SDK</a> can publish metrics to Pulsar. For more information, see <a href="/docs/en/2.1.0-incubating/functions-metrics">Metrics for Pulsar Functions</a>.</p>
 <h2><a class="anchor" aria-hidden="true" id="state-storage"></a><a href="#state-storage" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.8 [...]
 <p>Pulsar Functions use <a href="https://bookkeeper.apache.org">Apache BookKeeper</a> as a state storage interface. All Pulsar installations, including local standalone installations, include a deployment of BookKeeper bookies.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-schema-registry"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-quickstart"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#goals">Goals</a></li><li><a href="#inspirations">Inspirations [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/concepts-schema-registry"><span class="arrow-prev">← </span><span>Schema Registry</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-quickstart"><span>Getting started with Pulsar Functions</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#goals">Goals</a></li><li><a href=" [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/functions-quickstart.html b/content/docs/en/2.1.0-incubating/functions-quickstart.html
index a7eddd3..d73f78f 100644
--- a/content/docs/en/2.1.0-incubating/functions-quickstart.html
+++ b/content/docs/en/2.1.0-incubating/functions-quickstart.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Getting started with Pulsar Functions · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="This tutorial will walk you through running a [standalone](/docs/en/2.1.0-incubating/reference-terminology#standalone) Pulsar [cluster](/docs/en/2.1.0-incubating/reference-termino [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Getting started with Pulsar Functions · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;This tutorial will walk you through running a &lt;a href=&quot;/docs/en/2.1.0-incubating/reference-terminology#standalone&quot;&gt;standalone&lt;/a&gt; Pulsar &lt;a href= [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Getting started with Pulsar Functions · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;This tutorial will walk you through running a &lt;a href=&quot;/docs/en/2.1.0-incubating/reference-terminology#standa [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-quickstart.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Getting started with Pulsar Functions</h1></header><article><div><span><p>This tutorial will walk you through running a <a href="/docs/ [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-quickstart.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Getting started with Pulsar Functions</h1></header><article><div><span><p>This tutorial will walk you through running a <a href="/docs/en/2.1.0-incubati [...]
 <blockquote>
 <p>In local run mode, your Pulsar Function will communicate with your Pulsar cluster but will run outside of the cluster.</p>
 </blockquote>
@@ -233,7 +235,7 @@ $ bin/pulsar standalone \
 <li><a href="/docs/en/2.1.0-incubating/functions-api">The Pulsar Functions API</a></li>
 <li><a href="/docs/en/2.1.0-incubating/functions-deploying">Deploying Pulsar Functions</a></li>
 </ul>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/functions-overview"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-api"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#prerequisites">Prerequisites</a></li><li><a href="#run-a-standalone-pulsar [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/functions-overview"><span class="arrow-prev">← </span><span>Pulsar Functions overview</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-api"><span>The Pulsar Functions API</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#prerequisites">Prerequisites</a></li><li><a href=" [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/functions-quickstart/index.html b/content/docs/en/2.1.0-incubating/functions-quickstart/index.html
index a7eddd3..d73f78f 100644
--- a/content/docs/en/2.1.0-incubating/functions-quickstart/index.html
+++ b/content/docs/en/2.1.0-incubating/functions-quickstart/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Getting started with Pulsar Functions · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="This tutorial will walk you through running a [standalone](/docs/en/2.1.0-incubating/reference-terminology#standalone) Pulsar [cluster](/docs/en/2.1.0-incubating/reference-termino [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Getting started with Pulsar Functions · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;This tutorial will walk you through running a &lt;a href=&quot;/docs/en/2.1.0-incubating/reference-terminology#standalone&quot;&gt;standalone&lt;/a&gt; Pulsar &lt;a href= [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Getting started with Pulsar Functions · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;This tutorial will walk you through running a &lt;a href=&quot;/docs/en/2.1.0-incubating/reference-terminology#standa [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-quickstart.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Getting started with Pulsar Functions</h1></header><article><div><span><p>This tutorial will walk you through running a <a href="/docs/ [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-quickstart.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Getting started with Pulsar Functions</h1></header><article><div><span><p>This tutorial will walk you through running a <a href="/docs/en/2.1.0-incubati [...]
 <blockquote>
 <p>In local run mode, your Pulsar Function will communicate with your Pulsar cluster but will run outside of the cluster.</p>
 </blockquote>
@@ -233,7 +235,7 @@ $ bin/pulsar standalone \
 <li><a href="/docs/en/2.1.0-incubating/functions-api">The Pulsar Functions API</a></li>
 <li><a href="/docs/en/2.1.0-incubating/functions-deploying">Deploying Pulsar Functions</a></li>
 </ul>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/functions-overview"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-api"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#prerequisites">Prerequisites</a></li><li><a href="#run-a-standalone-pulsar [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/functions-overview"><span class="arrow-prev">← </span><span>Pulsar Functions overview</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-api"><span>The Pulsar Functions API</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#prerequisites">Prerequisites</a></li><li><a href=" [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/functions-state.html b/content/docs/en/2.1.0-incubating/functions-state.html
index 7a9a0f9..9c6f660 100644
--- a/content/docs/en/2.1.0-incubating/functions-state.html
+++ b/content/docs/en/2.1.0-incubating/functions-state.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar Functions State Storage (Developer Preview) · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Since Pulsar 2.1.0 release, Pulsar integrates with Apache BookKeeper [table service](https://docs.google.com/document/d/155xAwWv5IdOitHh1NVMEwCMGgB28M3FyMiQSxEpjE-Y/e [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar Functions State Storage (Developer Preview) · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Since Pulsar 2.1.0 release, Pulsar integrates with Apache BookKeeper &lt;a href=&quot;https://docs.google.com/document/d/155xAwWv5IdOitHh1NVMEwCMGgB28M3FyMiQ [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar Functions State Storage (Developer Preview) · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Since Pulsar 2.1.0 release, Pulsar integrates with Apache BookKeeper &lt;a href=&quot;https://docs.googl [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-state.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar Functions State Storage (Developer Preview)</h1></header><article><div><span><p>Since Pulsar 2.1.0 release, Pulsar integrates with Ap [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-state.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar Functions State Storage (Developer Preview)</h1></header><article><div><span><p>Since Pulsar 2.1.0 release, Pulsar integrates with Apache BookKeeper < [...]
 for storing the <code>State</code> for functions. For example, A <code>WordCount</code> function can store its <code>counters</code> state into BookKeeper's table service via Pulsar Functions <a href="#api">State API</a>.</p>
 <h2><a class="anchor" aria-hidden="true" id="api"></a><a href="#api" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.2 [...]
 <h3><a class="anchor" aria-hidden="true" id="java-api"></a><a href="#java-api" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64  [...]
@@ -125,7 +127,7 @@ demonstrating on how Application can easily store <code>state</code> in Pulsar F
 </ol>
 <h3><a class="anchor" aria-hidden="true" id="python-example"></a><a href="#python-example" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0- [...]
 <p>State currently is not supported at <a href="/docs/en/2.1.0-incubating/functions-api#python-sdk-functions">Python SDK</a>.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/functions-guarantees"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-metrics"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#api">API</a><ul class="toc-headings"><li><a href="#java-api">Java AP [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/functions-guarantees"><span class="arrow-prev">← </span><span>Processing guarantees</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-metrics"><span>Metrics for Pulsar Functions</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#api">API</a><ul class="toc-headings"><li><a  [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/functions-state/index.html b/content/docs/en/2.1.0-incubating/functions-state/index.html
index 7a9a0f9..9c6f660 100644
--- a/content/docs/en/2.1.0-incubating/functions-state/index.html
+++ b/content/docs/en/2.1.0-incubating/functions-state/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar Functions State Storage (Developer Preview) · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Since Pulsar 2.1.0 release, Pulsar integrates with Apache BookKeeper [table service](https://docs.google.com/document/d/155xAwWv5IdOitHh1NVMEwCMGgB28M3FyMiQSxEpjE-Y/e [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Pulsar Functions State Storage (Developer Preview) · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Since Pulsar 2.1.0 release, Pulsar integrates with Apache BookKeeper &lt;a href=&quot;https://docs.google.com/document/d/155xAwWv5IdOitHh1NVMEwCMGgB28M3FyMiQ [...]
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Pulsar Functions State Storage (Developer Preview) · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Since Pulsar 2.1.0 release, Pulsar integrates with Apache BookKeeper &lt;a href=&quot;https://docs.googl [...]
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-state.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar Functions State Storage (Developer Preview)</h1></header><article><div><span><p>Since Pulsar 2.1.0 release, Pulsar integrates with Ap [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/functions-state.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Pulsar Functions State Storage (Developer Preview)</h1></header><article><div><span><p>Since Pulsar 2.1.0 release, Pulsar integrates with Apache BookKeeper < [...]
 for storing the <code>State</code> for functions. For example, A <code>WordCount</code> function can store its <code>counters</code> state into BookKeeper's table service via Pulsar Functions <a href="#api">State API</a>.</p>
 <h2><a class="anchor" aria-hidden="true" id="api"></a><a href="#api" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.2 [...]
 <h3><a class="anchor" aria-hidden="true" id="java-api"></a><a href="#java-api" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64  [...]
@@ -125,7 +127,7 @@ demonstrating on how Application can easily store <code>state</code> in Pulsar F
 </ol>
 <h3><a class="anchor" aria-hidden="true" id="python-example"></a><a href="#python-example" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0- [...]
 <p>State currently is not supported at <a href="/docs/en/2.1.0-incubating/functions-api#python-sdk-functions">Python SDK</a>.</p>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/functions-guarantees"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-metrics"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#api">API</a><ul class="toc-headings"><li><a href="#java-api">Java AP [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/functions-guarantees"><span class="arrow-prev">← </span><span>Processing guarantees</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/functions-metrics"><span>Metrics for Pulsar Functions</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#api">API</a><ul class="toc-headings"><li><a  [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/io-aerospike.html b/content/docs/en/2.1.0-incubating/io-aerospike.html
index 283d655..cc7306f 100644
--- a/content/docs/en/2.1.0-incubating/io-aerospike.html
+++ b/content/docs/en/2.1.0-incubating/io-aerospike.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Aerospike Sink Connector · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="The Aerospike Sink connector is used to write messages to an Aerospike Cluster."/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Aerospike Sink Connector · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;The Aerospike Sink connector is used to write messages to an Aerospike Cluster.&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Aerospike Sink Connector · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;The Aerospike Sink connector is used to write messages to an Aerospike Cluster.&lt;/p&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -18,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/io-aerospike [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/io-aerospike.md" target="_bla [...]
 <h2><a class="anchor" aria-hidden="true" id="sink-configuration-options"></a><a href="#sink-configuration-options" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H [...]
 <p>The following configuration options are specific to the Aerospike Connector:</p>
 <table>
@@ -35,7 +37,7 @@
 <tr><td><code>retries</code></td><td><code>false</code></td><td><code>1</code></td><td>Maximum number of retries before aborting a write transaction to Aerospike.</td></tr>
 </tbody>
 </table>
-</span></div></article></div><div class="docs-prevnext"></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#sink-configuration-options">Sink Configuration Options</a></li></ul></nav></div><footer class="nav-footer" id="footer"><section class="copyright">Copyright © 2018 The Apache Software Foundation. All Rights Reserved. Apache, Apache Pulsar and the Apache feather logo are trademarks of The Apache Software Foundation.</section><span><script>
+</span></div></article></div><div class="docs-prevnext"></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#sink-configuration-options">Sink Configuration Options</a></li></ul></nav></div><footer class="nav-footer" id="footer"><section class="copyright">Copyright © 2018 The Apache Software Foundation. All Rights Reserved. Apache, Apache Pulsar and the Apache feather logo are trademarks of The Apache Software Foundation.</section><span><script>
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/io-aerospike/index.html b/content/docs/en/2.1.0-incubating/io-aerospike/index.html
index 283d655..cc7306f 100644
--- a/content/docs/en/2.1.0-incubating/io-aerospike/index.html
+++ b/content/docs/en/2.1.0-incubating/io-aerospike/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Aerospike Sink Connector · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="The Aerospike Sink connector is used to write messages to an Aerospike Cluster."/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Aerospike Sink Connector · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;The Aerospike Sink connector is used to write messages to an Aerospike Cluster.&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Aerospike Sink Connector · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;The Aerospike Sink connector is used to write messages to an Aerospike Cluster.&lt;/p&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -18,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/io-aerospike [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/io-aerospike.md" target="_bla [...]
 <h2><a class="anchor" aria-hidden="true" id="sink-configuration-options"></a><a href="#sink-configuration-options" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H [...]
 <p>The following configuration options are specific to the Aerospike Connector:</p>
 <table>
@@ -35,7 +37,7 @@
 <tr><td><code>retries</code></td><td><code>false</code></td><td><code>1</code></td><td>Maximum number of retries before aborting a write transaction to Aerospike.</td></tr>
 </tbody>
 </table>
-</span></div></article></div><div class="docs-prevnext"></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#sink-configuration-options">Sink Configuration Options</a></li></ul></nav></div><footer class="nav-footer" id="footer"><section class="copyright">Copyright © 2018 The Apache Software Foundation. All Rights Reserved. Apache, Apache Pulsar and the Apache feather logo are trademarks of The Apache Software Foundation.</section><span><script>
+</span></div></article></div><div class="docs-prevnext"></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#sink-configuration-options">Sink Configuration Options</a></li></ul></nav></div><footer class="nav-footer" id="footer"><section class="copyright">Copyright © 2018 The Apache Software Foundation. All Rights Reserved. Apache, Apache Pulsar and the Apache feather logo are trademarks of The Apache Software Foundation.</section><span><script>
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/io-cassandra.html b/content/docs/en/2.1.0-incubating/io-cassandra.html
index 1f199ad..e061b44 100644
--- a/content/docs/en/2.1.0-incubating/io-cassandra.html
+++ b/content/docs/en/2.1.0-incubating/io-cassandra.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Cassandra Sink Connector · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="The Cassandra Sink connector is used to write messages to a Cassandra Cluster."/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta  [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Cassandra Sink Connector · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;The Cassandra Sink connector is used to write messages to a Cassandra Cluster.&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Cassandra Sink Connector · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;The Cassandra Sink connector is used to write messages to a Cassandra Cluster.&lt;/p&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -18,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/io-cassandra [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/io-cassandra.md" target="_bla [...]
 <p>The tutorial <a href="/docs/en/2.1.0-incubating/io-quickstart">Connecting Pulsar with Apache Cassandra</a> shows an example how to use Cassandra Sink
 connector to write messages to a Cassandra table.</p>
 <h2><a class="anchor" aria-hidden="true" id="sink-configuration-options"></a><a href="#sink-configuration-options" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H [...]
@@ -35,7 +37,7 @@ connector to write messages to a Cassandra table.</p>
 <tr><td><code>columnName</code></td><td><code>null</code></td><td><code>true</code></td><td>Value column name. The value column is used for storing Pulsar message values.</td></tr>
 </tbody>
 </table>
-</span></div></article></div><div class="docs-prevnext"></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#sink-configuration-options">Sink Configuration Options</a></li></ul></nav></div><footer class="nav-footer" id="footer"><section class="copyright">Copyright © 2018 The Apache Software Foundation. All Rights Reserved. Apache, Apache Pulsar and the Apache feather logo are trademarks of The Apache Software Foundation.</section><span><script>
+</span></div></article></div><div class="docs-prevnext"></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#sink-configuration-options">Sink Configuration Options</a></li></ul></nav></div><footer class="nav-footer" id="footer"><section class="copyright">Copyright © 2018 The Apache Software Foundation. All Rights Reserved. Apache, Apache Pulsar and the Apache feather logo are trademarks of The Apache Software Foundation.</section><span><script>
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/io-cassandra/index.html b/content/docs/en/2.1.0-incubating/io-cassandra/index.html
index 1f199ad..e061b44 100644
--- a/content/docs/en/2.1.0-incubating/io-cassandra/index.html
+++ b/content/docs/en/2.1.0-incubating/io-cassandra/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Cassandra Sink Connector · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="The Cassandra Sink connector is used to write messages to a Cassandra Cluster."/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta  [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Cassandra Sink Connector · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;The Cassandra Sink connector is used to write messages to a Cassandra Cluster.&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Cassandra Sink Connector · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;The Cassandra Sink connector is used to write messages to a Cassandra Cluster.&lt;/p&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -18,7 +20,7 @@
             languagesDropDown.className = "hide";
           }
         });
-      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/io-cassandra [...]
+      </script></span><li class="navSearchWrapper reactNavSearchWrapper"><input type="text" id="search_input_react" placeholder="Search" title="Search"/></li></ul></nav></div></header></div></div><div class="navPusher"><div class="docMainWrapper wrapper"><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/io-cassandra.md" target="_bla [...]
 <p>The tutorial <a href="/docs/en/2.1.0-incubating/io-quickstart">Connecting Pulsar with Apache Cassandra</a> shows an example how to use Cassandra Sink
 connector to write messages to a Cassandra table.</p>
 <h2><a class="anchor" aria-hidden="true" id="sink-configuration-options"></a><a href="#sink-configuration-options" aria-hidden="true" class="hash-link"><svg class="hash-link-icon" aria-hidden="true" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H [...]
@@ -35,7 +37,7 @@ connector to write messages to a Cassandra table.</p>
 <tr><td><code>columnName</code></td><td><code>null</code></td><td><code>true</code></td><td>Value column name. The value column is used for storing Pulsar message values.</td></tr>
 </tbody>
 </table>
-</span></div></article></div><div class="docs-prevnext"></div></div></div><nav class="onPageNav docOnPageNav"><ul class="toc-headings"><li><a href="#sink-configuration-options">Sink Configuration Options</a></li></ul></nav></div><footer class="nav-footer" id="footer"><section class="copyright">Copyright © 2018 The Apache Software Foundation. All Rights Reserved. Apache, Apache Pulsar and the Apache feather logo are trademarks of The Apache Software Foundation.</section><span><script>
+</span></div></article></div><div class="docs-prevnext"></div></div></div><nav class="onPageNav"><ul class="toc-headings"><li><a href="#sink-configuration-options">Sink Configuration Options</a></li></ul></nav></div><footer class="nav-footer" id="footer"><section class="copyright">Copyright © 2018 The Apache Software Foundation. All Rights Reserved. Apache, Apache Pulsar and the Apache feather logo are trademarks of The Apache Software Foundation.</section><span><script>
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/io-connectors.html b/content/docs/en/2.1.0-incubating/io-connectors.html
index 60720da..0ebab07 100644
--- a/content/docs/en/2.1.0-incubating/io-connectors.html
+++ b/content/docs/en/2.1.0-incubating/io-connectors.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Builtin Connectors · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar distribution includes a set of common connectors that have been packaged and tested with the rest of Apache Pulsar."/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="do [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Builtin Connectors · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar distribution includes a set of common connectors that have been packaged and tested with the rest of Apache Pulsar.&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Builtin Connectors · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar distribution includes a set of common connectors that have been packaged and tested with the rest of Apache Pulsar.&lt;/p&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/io-connectors.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Builtin Connectors</h1></header><article><div><span><p>Pulsar distribution includes a set of common connectors that have been packaged and tes [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/io-connectors.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Builtin Connectors</h1></header><article><div><span><p>Pulsar distribution includes a set of common connectors that have been packaged and tested with the rest [...]
 These connectors import and export data from some of the most commonly used data systems. Using any these connectors is
 as easy as writing a simple connector configuration and running the connector locally or submitting the connector to a
 Pulsar Functions cluster.</p>
@@ -58,7 +60,7 @@ Pulsar Functions cluster.</p>
 <li><a href="/docs/en/2.1.0-incubating/io-rabbitmq#source">RabbitMQ Source Connector</a></li>
 <li><a href="/docs/en/2.1.0-incubating/io-twitter">Twitter Firehose Source Connector</a></li>
 </ul>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/io-managing"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/io-develop"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"></nav></div><footer class="nav-footer" id="footer"><section class="copyright">Copyright © 2018 The Apache Software Foundati [...]
+</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/io-managing"><span class="arrow-prev">← </span><span>Managing Connectors</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/io-develop"><span>Develop Connectors</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav"></nav></div><footer class="nav-footer" id="footer"><section class="copyright">Copyright © 2018 The Apache Softw [...]
       const community = document.querySelector("a[href='#community']").parentNode;
       const communityMenu =
         '<li>' +
diff --git a/content/docs/en/2.1.0-incubating/io-connectors/index.html b/content/docs/en/2.1.0-incubating/io-connectors/index.html
index 60720da..0ebab07 100644
--- a/content/docs/en/2.1.0-incubating/io-connectors/index.html
+++ b/content/docs/en/2.1.0-incubating/io-connectors/index.html
@@ -1,4 +1,6 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Builtin Connectors · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="Pulsar distribution includes a set of common connectors that have been packaged and tested with the rest of Apache Pulsar."/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="do [...]
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Builtin Connectors · Apache Pulsar</title><meta name="viewport" content="width=device-width"/><meta name="generator" content="Docusaurus"/><meta name="description" content="&lt;p&gt;Pulsar distribution includes a set of common connectors that have been packaged and tested with the rest of Apache Pulsar.&lt;/p&gt;
+"/><meta name="docsearch:version" content="2.1.0-incubating"/><meta name="docsearch:language" content="en"/><meta property="og:title" content="Builtin Connectors · Apache Pulsar"/><meta property="og:type" content="website"/><meta property="og:url" content="https://pulsar.incubator.apache.org/index.html"/><meta property="og:description" content="&lt;p&gt;Pulsar distribution includes a set of common connectors that have been packaged and tested with the rest of Apache Pulsar.&lt;/p&gt;
+"/><meta name="twitter:card" content="summary"/><meta name="twitter:image" content="https://pulsar.incubator.apache.org/img/pulsar.svg"/><link rel="shortcut icon" href="/img/pulsar.ico"/><link rel="stylesheet" href="https://cdn.jsdelivr.net/docsearch.js/1/docsearch.min.css"/><link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.12.0/styles/atom-one-dark.min.css"/><link rel="alternate" type="application/atom+xml" href="https://pulsar.incubator.apache.org/blog/atom.x [...]
               (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
               (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
               m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
@@ -45,7 +47,7 @@
                 };
               }
             });
-        </script></nav></div><div class="container mainContainer docMainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/io-connectors.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Builtin Connectors</h1></header><article><div><span><p>Pulsar distribution includes a set of common connectors that have been packaged and tes [...]
+        </script></nav></div><div class="container mainContainer"><div class="wrapper"><div class="post"><header class="postHeader"><a class="edit-page-link button" href="https://github.com/apache/incubator-pulsar/edit/master/site2/docs/io-connectors.md" target="_blank" rel="noreferrer noopener">Edit</a><h1 class="postHeaderTitle">Builtin Connectors</h1></header><article><div><span><p>Pulsar distribution includes a set of common connectors that have been packaged and tested with the rest [...]
 These connectors import and export data from some of the most commonly used data systems. Using any these connectors is
 as easy as writing a simple connector configuration and running the connector locally or submitting the connector to a
 Pulsar Functions cluster.</p>
@@ -58,7 +60,7 @@ Pulsar Functions cluster.</p>
 <li><a href="/docs/en/2.1.0-incubating/io-rabbitmq#source">RabbitMQ Source Connector</a></li>
 <li><a href="/docs/en/2.1.0-incubating/io-twitter">Twitter Firehose Source Connector</a></li>
 </ul>
-</span></div></article></div><div class="docs-prevnext"><a class="docs-prev button" href="/docs/en/2.1.0-incubating/io-managing"><span class="arrow-prev">← </span><span>Previous</span></a><a class="docs-next button" href="/docs/en/2.1.0-incubating/io-develop"><span>Next</span><span class="arrow-next"> →</span></a></div></div></div><nav class="onPageNav docOnPageNav"></nav></div><footer class="nav-footer" id="footer"><section class="copyright">Copyright © 2018 The Apache Software Foundati [...]
+</span></div></article></div><