You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by li...@apache.org on 2021/08/26 13:46:07 UTC
[pulsar] branch master updated: [docs] [ISSUE 8671] Add hardware
settings recommendations (#11712)
This is an automated email from the ASF dual-hosted git repository.
liuyu pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/pulsar.git
The following commit(s) were added to refs/heads/master by this push:
new 07aff70 [docs] [ISSUE 8671] Add hardware settings recommendations (#11712)
07aff70 is described below
commit 07aff70006e5875180ed9f4d1697024c0597a5ec
Author: sijia-w <53...@users.noreply.github.com>
AuthorDate: Thu Aug 26 15:45:01 2021 +0200
[docs] [ISSUE 8671] Add hardware settings recommendations (#11712)
* add hardware settings recommendations
* update
* update
---
site2/docs/deploy-bare-metal.md | 31 ++++++++++++++++++++---
site2/docs/getting-started-docker.md | 9 +++----
site2/docs/getting-started-helm.md | 16 ++++++------
site2/docs/getting-started-standalone.md | 42 ++++++++++++--------------------
4 files changed, 54 insertions(+), 44 deletions(-)
diff --git a/site2/docs/deploy-bare-metal.md b/site2/docs/deploy-bare-metal.md
index 0062284..7f56cbf 100644
--- a/site2/docs/deploy-bare-metal.md
+++ b/site2/docs/deploy-bare-metal.md
@@ -26,8 +26,7 @@ Deploying a Pulsar cluster consists of the following steps:
Currently, Pulsar is available for 64-bit **macOS**, **Linux**, and **Windows**. To use Pulsar, you need to install 64-bit JRE/JDK 8 or later versions.
->**Tips**
->
+>**Tips**
> You can reuse existing Zookeeper clusters.
To run Pulsar on bare metal, the following configuration is recommended:
@@ -37,8 +36,7 @@ To run Pulsar on bare metal, the following configuration is recommended:
* 3 for running a Pulsar broker, and a [BookKeeper](https://bookkeeper.apache.org) bookie
* A single [DNS](https://en.wikipedia.org/wiki/Domain_Name_System) name covering all of the Pulsar broker hosts
-> **Note**
->
+> **Note**
> * Broker is only supported on 64-bit JVM.
> * If you do not have enough machines, or you want to test Pulsar in cluster mode (and expand the cluster later), You can fully deploy Pulsar on a node on which ZooKeeper, bookie and broker run.
> * If you do not have a DNS server, you can use the multi-host format in the service URL instead.
@@ -65,6 +63,31 @@ For machines running a bookie and a Pulsar broker, more powerful machines are re
* Fast CPUs and 10Gbps [NIC](https://en.wikipedia.org/wiki/Network_interface_controller) (for Pulsar brokers)
* Small and fast [solid-state drives](https://en.wikipedia.org/wiki/Solid-state_drive) (SSDs) or [hard disk drives](https://en.wikipedia.org/wiki/Hard_disk_drive) (HDDs) with a [RAID](https://en.wikipedia.org/wiki/RAID) controller and a battery-backed write cache (for BookKeeper bookies)
+To start a Pulsar instance, below are the minimum and the recommended hardware settings.
+
+1. The minimum hardware settings (250 Pulsar topics)
+ - Broker
+ - CPU: 0.2
+ - Memory: 256MB
+ - Bookie
+ - CPU: 0.2
+ - Memory: 256MB
+ - Storage:
+ - Journal: 8GB, PD-SSD
+ - Ledger: 16GB, PD-STANDARD
+
+2. The recommended hardware settings (1000 Pulsar topics)
+
+ - Broker
+ - CPU: 8
+ - Memory: 8GB
+ - Bookie
+ - CPU: 4
+ - Memory: 8GB
+ - Storage:
+ - Journal: 256GB, PD-SSD
+ - Ledger: 2TB, PD-STANDARD
+
## Install the Pulsar binary package
> You need to install the Pulsar binary package on each machine in the cluster, including machines running ZooKeeper and BookKeeper.
diff --git a/site2/docs/getting-started-docker.md b/site2/docs/getting-started-docker.md
index c3a241a..16dfa8b 100644
--- a/site2/docs/getting-started-docker.md
+++ b/site2/docs/getting-started-docker.md
@@ -4,11 +4,9 @@ title: Set up a standalone Pulsar in Docker
sidebar_label: Run Pulsar in Docker
---
-For local development and testing, you can run Pulsar in standalone
-mode on your own machine within a Docker container.
+For local development and testing, you can run Pulsar in standalone mode on your own machine within a Docker container.
-If you have not installed Docker, download the [Community edition](https://www.docker.com/community-edition)
-and follow the instructions for your OS.
+If you have not installed Docker, download the [Community edition](https://www.docker.com/community-edition) and follow the instructions for your OS.
## Start Pulsar in Docker
@@ -32,8 +30,7 @@ If you start Pulsar successfully, you will see `INFO`-level log messages like th
...
```
-> #### Tip
->
+> **Tip**
> When you start a local standalone cluster, a `public/default`
namespace is created automatically. The namespace is used for development purposes. All Pulsar topics are managed within namespaces.
For more information, see [Topics](concepts-messaging.md#topics).
diff --git a/site2/docs/getting-started-helm.md b/site2/docs/getting-started-helm.md
index b1313039..b147f55 100644
--- a/site2/docs/getting-started-helm.md
+++ b/site2/docs/getting-started-helm.md
@@ -20,7 +20,7 @@ For deploying a Pulsar cluster for production usage, read the documentation on [
- kubectl 1.14.0+
- Helm 3.0+
-> #### Tip
+> **Tip**
> For the following steps, step 2 and step 3 are for **developers** and step 4 and step 5 are for **administrators**.
## Step 0: Prepare a Kubernetes cluster
@@ -52,7 +52,7 @@ We use [Minikube](https://minikube.sigs.k8s.io/docs/start/) in this quick start
## Step 1: Install Pulsar Helm chart
-0. Add Pulsar charts repo.
+1. Add Pulsar charts repo.
```bash
helm repo add apache https://pulsar.apache.org/charts
@@ -62,14 +62,14 @@ We use [Minikube](https://minikube.sigs.k8s.io/docs/start/) in this quick start
helm repo update
```
-1. Clone the Pulsar Helm chart repository.
+2. Clone the Pulsar Helm chart repository.
```bash
git clone https://github.com/apache/pulsar-helm-chart
cd pulsar-helm-chart
```
-2. Run the script `prepare_helm_release.sh` to create secrets required for installing the Apache Pulsar Helm chart. The username `pulsar` and password `pulsar` are used for logging into the Grafana dashboard and Pulsar Manager.
+3. Run the script `prepare_helm_release.sh` to create secrets required for installing the Apache Pulsar Helm chart. The username `pulsar` and password `pulsar` are used for logging into the Grafana dashboard and Pulsar Manager.
```bash
./scripts/pulsar/prepare_helm_release.sh \
@@ -78,9 +78,9 @@ We use [Minikube](https://minikube.sigs.k8s.io/docs/start/) in this quick start
-c
```
-3. Use the Pulsar Helm chart to install a Pulsar cluster to Kubernetes.
+4. Use the Pulsar Helm chart to install a Pulsar cluster to Kubernetes.
- > **NOTE**
+ > **Note**
> You need to specify `--set initialize=true` when installing Pulsar the first time. This command installs and starts Apache Pulsar.
```bash
@@ -91,7 +91,7 @@ We use [Minikube](https://minikube.sigs.k8s.io/docs/start/) in this quick start
pulsar-mini apache/pulsar
```
-4. Check the status of all pods.
+5. Check the status of all pods.
```bash
kubectl get pods -n pulsar
@@ -115,7 +115,7 @@ We use [Minikube](https://minikube.sigs.k8s.io/docs/start/) in this quick start
pulsar-mini-zookeeper-0 1/1 Running 0 9m27s
```
-5. Check the status of all services in the namespace `pulsar`.
+6. Check the status of all services in the namespace `pulsar`.
```bash
kubectl get services -n pulsar
diff --git a/site2/docs/getting-started-standalone.md b/site2/docs/getting-started-standalone.md
index 2449f52..657fd7d 100644
--- a/site2/docs/getting-started-standalone.md
+++ b/site2/docs/getting-started-standalone.md
@@ -6,22 +6,21 @@ sidebar_label: Run Pulsar locally
For local development and testing, you can run Pulsar in standalone mode on your machine. The standalone mode includes a Pulsar broker, the necessary ZooKeeper and BookKeeper components running inside of a single Java Virtual Machine (JVM) process.
-> #### Pulsar in production?
+> **Pulsar in production?**
> If you're looking to run a full production Pulsar installation, see the [Deploying a Pulsar instance](deploy-bare-metal.md) guide.
## Install Pulsar standalone
-This tutorial guides you through every step of the installation process.
+This tutorial guides you through every step of installing Pulsar locally.
### System requirements
Currently, Pulsar is available for 64-bit **macOS**, **Linux**, and **Windows**. To use Pulsar, you need to install 64-bit JRE/JDK 8 or later versions.
-> #### Tip
+> **Tip**
> By default, Pulsar allocates 2G JVM heap memory to start. It can be changed in `conf/pulsar_env.sh` file under `PULSAR_MEM`. This is extra options passed into JVM.
-> **Note**
->
+> **Note**
> Broker is only supported on 64-bit JVM.
### Install Pulsar using binary release
@@ -67,7 +66,7 @@ Directory | Contains
`instances` | Artifacts created for [Pulsar Functions](functions-overview.md).
`logs` | Logs created by the installation.
-> #### Tip
+> **Tip**
> If you want to use builtin connectors and tiered storage offloaders, you can install them according to the following instructions:
>
> * [Install builtin connectors (optional)](#install-builtin-connectors-optional)
@@ -104,20 +103,16 @@ pulsar-io-aerospike-{{pulsar:version}}.nar
...
```
-> #### Note
->
-> * If you are running Pulsar in a bare metal cluster, make sure `connectors` tarball is unzipped in every pulsar directory of the broker
-> (or in every pulsar directory of function-worker if you are running a separate worker cluster for Pulsar Functions).
+> **Note**
+> * If you are running Pulsar in a bare metal cluster, make sure `connectors` tarball is unzipped in every pulsar directory of the broker (or in every pulsar directory of function-worker if you are running a separate worker cluster for Pulsar Functions).
>
-> * If you are [running Pulsar in Docker](getting-started-docker.md) or deploying Pulsar using a docker image (e.g. [K8S](deploy-kubernetes.md) or [DCOS](deploy-dcos.md)),
-> you can use the `apachepulsar/pulsar-all` image instead of the `apachepulsar/pulsar` image. `apachepulsar/pulsar-all` image has already bundled [all builtin connectors](io-overview.md#working-with-connectors).
+> * If you are [running Pulsar in Docker](getting-started-docker.md) or deploying Pulsar using a docker image (e.g. [K8S](deploy-kubernetes.md) or [DCOS](deploy-dcos.md)), you can use the `apachepulsar/pulsar-all` image instead of the `apachepulsar/pulsar` image. `apachepulsar/pulsar-all` image has already bundled [all builtin connectors](io-overview.md#working-with-connectors).
### Install tiered storage offloaders (optional)
-> #### Tip
->
-> Since `2.2.0` release, Pulsar releases a separate binary distribution, containing the tiered storage offloaders.
-> To enable tiered storage feature, follow the instructions below; otherwise skip this section.
+> **Tip**
+> - Since `2.2.0` release, Pulsar releases a separate binary distribution, containing the tiered storage offloaders.
+> - To enable tiered storage feature, follow the instructions below; otherwise skip this section.
To get started with [tiered storage offloaders](concepts-tiered-storage.md), you need to download the offloaders tarball release on every broker node in one of the following ways:
@@ -150,12 +145,10 @@ tiered-storage-jcloud-{{pulsar:version}}.nar
For more information on how to configure tiered storage, see [Tiered storage cookbook](cookbooks-tiered-storage.md).
-> #### Note
->
+> **Note**
> * If you are running Pulsar in a bare metal cluster, make sure that `offloaders` tarball is unzipped in every broker's pulsar directory.
>
-> * If you are [running Pulsar in Docker](getting-started-docker.md) or deploying Pulsar using a docker image (e.g. [K8S](deploy-kubernetes.md) or [DCOS](deploy-dcos.md)),
-> you can use the `apachepulsar/pulsar-all` image instead of the `apachepulsar/pulsar` image. `apachepulsar/pulsar-all` image has already bundled tiered storage offloaders.
+> * If you are [running Pulsar in Docker](getting-started-docker.md) or deploying Pulsar using a docker image (e.g. [K8S](deploy-kubernetes.md) or [DCOS](deploy-dcos.md)), you can use the `apachepulsar/pulsar-all` image instead of the `apachepulsar/pulsar` image. `apachepulsar/pulsar-all` image has already bundled tiered storage offloaders.
## Start Pulsar standalone
@@ -173,8 +166,7 @@ If you have started Pulsar successfully, you will see `INFO`-level log messages
21:59:34.576 [main] INFO org.apache.pulsar.websocket.WebSocketService - Pulsar WebSocket Service started
```
-> #### Tip
->
+> **Tip**
> * The service is running on your terminal, which is under your direct control. If you need to run other commands, open a new terminal window.
You can also run the service as a background process using the `pulsar-daemon start standalone` command. For more information, see [pulsar-daemon](https://pulsar.apache.org/docs/en/reference-cli-tools/#pulsar-daemon).
>
@@ -200,8 +192,7 @@ If the message has been successfully consumed, you will see a confirmation like
22:17:16.781 [main] INFO org.apache.pulsar.client.cli.PulsarClientTool - 1 messages successfully consumed
```
-> #### Tip
->
+> **Tip**
> As you have noticed that we do not explicitly create the `my-topic` topic, to which we consume the message. When you consume a message to a topic that does not yet exist, Pulsar creates that topic for you automatically. Producing a message to a topic that does not exist will automatically create that topic for you as well.
### Produce a message
@@ -222,8 +213,7 @@ If the message has been successfully published to the topic, you will see a conf
Press `Ctrl+C` to stop a local standalone Pulsar.
-> #### Tip
->
+> **Tip**
> If the service runs as a background process using the `pulsar-daemon start standalone` command, then use the `pulsar-daemon stop standalone` command to stop the service.
>
> For more information, see [pulsar-daemon](https://pulsar.apache.org/docs/en/reference-cli-tools/#pulsar-daemon).