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