Description
I am trying to deploy Openwhisk on Windows Docker Desktop k8s
If I following the Deploying Released Charts from Helm Repository Section in README, the install-package pod will finally get status Error
.
Final status of pods looks like this
NAMESPACE NAME READY STATUS RESTARTS AGE
openwhisk owdev-alarmprovider-687f79859b-rnhxk 1/1 Running 0 5h46m
openwhisk owdev-apigateway-56b8cc9dbf-kxbdz 1/1 Running 0 5h46m
openwhisk owdev-controller-0 1/1 Running 0 5h46m
openwhisk owdev-couchdb-59f57cbff7-rxhkt 1/1 Running 0 5h46m
openwhisk owdev-gen-certs--1-6gtl7 0/1 Completed 0 5h46m
openwhisk owdev-init-couchdb--1-gh9jl 0/1 Completed 0 5h46m
openwhisk owdev-install-packages--1-4wjvq 0/1 Error 0 5h46m
openwhisk owdev-install-packages--1-nh2hw 0/1 Error 0 5h12m
openwhisk owdev-install-packages--1-npqgd 0/1 Error 0 5h16m
openwhisk owdev-install-packages--1-pxn47 0/1 Error 0 5h23m
openwhisk owdev-invoker-0 1/1 Running 0 5h46m
openwhisk owdev-kafka-0 1/1 Running 0 5h46m
openwhisk owdev-kafkaprovider-5574d4bf5f-spfkd 1/1 Running 0 5h46m
openwhisk owdev-nginx-74fdfbf868-czfhk 1/1 Running 0 5h46m
openwhisk owdev-redis-68bfb4ccb8-n5ppj 1/1 Running 0 5h46m
openwhisk owdev-wskadmin 1/1 Running 0 5h46m
openwhisk owdev-zookeeper-0 1/1 Running 0 5h46m
openwhisk wskowdev-invoker-00-1-prewarm-nodejs10 1/1 Running 0 5h44m
openwhisk wskowdev-invoker-00-2-prewarm-nodejs10 1/1 Running 0 5h44m
Part of the install-package log shows as below, and the full log is here.
+ npm install
npm WARN deprecated [email protected]: This package is no longer maintained.
npm WARN deprecated [email protected]: request has been deprecated, see https://github.com/request/request/issues/3142
npm WARN deprecated [email protected]: this library is no longer supported
npm WARN deprecated [email protected]: Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.
[email protected] /openwhisk-package-alarms/action
├── @types/[email protected] extraneous
├── @types/[email protected] extraneous
├── [email protected] extraneous
├── [email protected] extraneous
├── [email protected] extraneous
└─┬ [email protected]
├─┬ [email protected]
│ └── [email protected]
├─┬ [email protected]
│ └── [email protected]
└── [email protected]
npm WARN [email protected] No description
npm WARN [email protected] No repository field.
npm WARN [email protected] No license field.
npm ERR! Linux 5.4.72-microsoft-standard-WSL2
npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "install"
npm ERR! node v8.10.0
npm ERR! npm v3.5.2
npm ERR! path /openwhisk-package-alarms/action/node_modules/.staging/@types/node-7154234c/package.json
npm ERR! code ENOTDIR
npm ERR! errno -20
npm ERR! syscall open
npm ERR! ENOTDIR: not a directory, open '/openwhisk-package-alarms/action/node_modules/.staging/@types/node-7154234c/package.json'
npm ERR!
npm ERR! If you need help, you may report this error at:
npm ERR! <https://github.com/npm/npm/issues>
npm ERR! Please include the following file with any support request:
npm ERR! /openwhisk-package-alarms/action/npm-debug.log
Steps to reproduce the problem
Environment
Windows 10 64bit
docker desktop version 4.3.0
docker version 20.10
k8s version 1.22.4
helm version 3.4.2
mycluster.yaml
whisk:
ingress:
type: NodePort
apiHostName: 192.168.65.4 # docker desktop node InternalIP
apiHostPort: 31001
useInternally: false
nginx:
httpsNodePort: 31001
# try to disable presistence
k8s:
persistence:
enabled: false
# A single node cluster; so disable affinity
affinity:
enabled: false
toleration:
enabled: false
invoker:
options: "-Dwhisk.kubernetes.user-pod-node-affinity.enabled=false"
Follow the instructions in README, run
helm repo add openwhisk https://openwhisk.apache.org/charts
helm repo update
helm install owdev openwhisk/openwhisk -n openwhisk --create-namespace -f mycluster.yaml
My guess
I think it is because npm v3.5.2 has been outdated for a long time.
I also notice that some docker images used by Deploying Released Charts from Helm Repository is much older than those used by Deploying from Git, for example the openwhisk/ow-utils
image. I don't know if it is related to that this problem only occurs when I deploy by charts from the helm repository. (I cannot find npm version in logs when deploying from git. I am not really sure which docker container correspond to the install-package pod, so I also cannot enter it and see its npm version.)
Helm repo of Openwhisk is here. On the right hand side you can see Containers images.
I also want to know what potential differences will these different versions of images bring to my cluster.
Also, by the way, the service only generate at most four install-package pods. To make debug easier, I want to know if there is a way to let the deploy generate a new install-package pod automatically after the old ones are deleted.