You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pulsar.apache.org by GitBox <gi...@apache.org> on 2020/02/20 01:30:06 UTC
[GitHub] [pulsar] lixin9311 opened a new issue #6372: Several bugs in script
leading to failure to bootstrap pulsar in Kubernetes
lixin9311 opened a new issue #6372: Several bugs in script leading to failure to bootstrap pulsar in Kubernetes
URL: https://github.com/apache/pulsar/issues/6372
**Describe the bug**
Failed to run bookie & broker by `kubectl apply -f bookie.yml` and `kubectl apply -f broker.yml`
**To Reproduce**
Steps to reproduce the behavior:
1. Follow the steps in http://pulsar.apache.org/docs/en/deploy-kubernetes/#pulsar-on-a-custom-kubernetes-cluster
**Expected behavior**
Pulsar cluster should be up running
**Root cause**
1. First BUG
Env vars defined here https://github.com/apache/pulsar/blob/943c9035b77d9a11c77d2ba42c8970dc09d5d70b/deployment/kubernetes/generic/k8s-1-9-and-above/bookie.yaml#L25-L30
are supposed read by `apply-config-from-env.py` and applied to configuration files.
https://github.com/apache/pulsar/blob/943c9035b77d9a11c77d2ba42c8970dc09d5d70b/deployment/kubernetes/generic/k8s-1-9-and-above/bookie.yaml#L87-L91
However, those keys with a prefix already exist in the configuration files, and [`apply-config-from-env.py`](https://github.com/apache/pulsar/blob/e1f3409fd45b26bafb44c321f99f853ebbc50109/docker/pulsar/scripts/apply-config-from-env.py) will only append keys with a prefix. So the existed k-v pairs (e.g., `zkServers`) won't be updated by the python script.
**Temporary fix**: Remove the prefix of env vars in the `bookie.yml` and `broker.yml`
2. Second BUG
The env var defined in
https://github.com/apache/pulsar/blob/943c9035b77d9a11c77d2ba42c8970dc09d5d70b/deployment/kubernetes/generic/k8s-1-9-and-above/bookie.yaml#L26 will be read py `apply-config-from-env.py` and applied to `pulsar_env.sh`. However, the `PULSAR_MEM` var will remain with quotes `"`.
Before running `bookie`, https://github.com/apache/pulsar/blob/e1f3409fd45b26bafb44c321f99f853ebbc50109/bin/pulsar#L47-L57
will initialize some new env vars. But it loads `kbenv.sh` first instead of `pulsar_env.sh`, causing https://github.com/apache/pulsar/blob/e1f3409fd45b26bafb44c321f99f853ebbc50109/conf/bkenv.sh#L36 `BOOKIE_MEM` will be initialized as same as `PULSAR_MEM` with quotes. Causing invalid arguments when running the bookie.
**Temporary fix**: add a line `. conf/pulsar_env.sh` before launching `bin/pulsar bookie` in the `bookie.yml`
**Fix**: need to source `pulsar_env.sh` before `bkenv.sh` in the `pulsar`
```yaml
args:
- >
bin/apply-config-from-env.py conf/bookkeeper.conf &&
bin/apply-config-from-env.py conf/pulsar_env.sh &&
. conf/pulsar_env.sh &&
bin/pulsar bookie
```
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services
[GitHub] [pulsar] jiazhai commented on issue #6372: Several buggy scripts
lead to failure to bootstrap pulsar on Kubernetes
Posted by GitBox <gi...@apache.org>.
jiazhai commented on issue #6372: Several buggy scripts lead to failure to bootstrap pulsar on Kubernetes
URL: https://github.com/apache/pulsar/issues/6372#issuecomment-589473372
Hi @lixin9311 thanks for the report. Seems these 2 bugs are know issue. and have PRs related.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services