设置 OTA 社区版工作区时出现问题

Problems setting up the OTA Community Edition workspace

我在设置位于 https://github.com/advancedtelematic/ota-community-edition

的 advancedtelematic/ota-community-edition 工作区时遇到问题

我已经安装了列出的所有应用程序(主要是通过 chocolatey)。当 运行 make 启动时,在我的 windows 机器上使用 docker 配置,我遇到了以下错误:

Can't open /proc/1204/fd/63 for reading, No such file or directory
20036:error:02001003:system library:fopen:No such process:../openssl-1.1.1k/crypto/bio/bss_file.c:69:fopen('/proc/1204/fd/63','r')
20036:error:2006D080:BIO routines:BIO_new_file:no such file:../openssl-1.1.1k/crypto/bio/bss_file.c:76:
make: *** [Makefile:34: start_start-all] Error 1

我在 new_server() 方法中使用 openssl 请求密钥时写了一些日志和它发生的情况。

进程的完整日志如下

make start
* The control plane node must be running for this command
  To start a cluster, run: "minikube start"
* minikube v1.24.0 on Microsoft Windows 10 Pro 10.0.19042 Build 19042
* Kubernetes 1.22.3 is now available. If you would like to upgrade, specify: --kubernetes-version=v1.22.3
* Using the docker driver based on existing profile
* Starting control plane node minikube in cluster minikube
* Pulling base image ...
* Restarting existing docker container for "minikube" ...
* Preparing Kubernetes v1.18.3 on Docker 20.10.8 ...
* Verifying Kubernetes components...
  - Using image kubernetesui/dashboard:v2.3.1
  - Using image kubernetesui/metrics-scraper:v1.0.7
  - Using image gcr.io/k8s-minikube/storage-provisioner:v5
* Enabled addons: storage-provisioner, dashboard, default-storageclass

! C:\ProgramData\chocolatey\bin\kubectl.exe is version 1.21.2, which may have incompatibilites with Kubernetes 1.18.3.
  - Want kubectl v1.18.3? Try 'minikube kubectl -- get pods -A'
* Done! kubectl is now configured to use "minikube" cluster and "default" namespace by default
WARNING: version difference between client (1.21) and server (1.18) exceeds the supported minor version skew of +/-1
serviceaccount/weave-net configured
clusterrole.rbac.authorization.k8s.io/weave-net configured
clusterrolebinding.rbac.authorization.k8s.io/weave-net configured
role.rbac.authorization.k8s.io/weave-net configured
rolebinding.rbac.authorization.k8s.io/weave-net configured
daemonset.apps/weave-net configured
read EC key
writing EC key
read EC key
writing EC key
sending request to cert
Can't open /proc/1204/fd/63 for reading, No such file or directory
20036:error:02001003:system library:fopen:No such process:../openssl-1.1.1k/crypto/bio/bss_file.c:69:fopen('/proc/1204/fd/63','r')
20036:error:2006D080:BIO routines:BIO_new_file:no such file:../openssl-1.1.1k/crypto/bio/bss_file.c:76:
make: *** [Makefile:34: start_start-all] Error 1

你应该使用新的 repo https://github.com/uptane/ota-community-edition 是新的。

问题是您使用的是 Windows 而不是 Linux,例如使用 Ubuntu 20.04。

从搞乱这个 ota-community-edition 解决方案。我认为它到处都是坏的。缺少 APIs,未知 APIs,非常糟糕的使用说明。

在某些时候,repo 的原始创建者被另一家公司收购,从它看起来 ota-community-edition 只是无法使用且未得到维护。

更新: 对于您应该使用的设备:https://github.com/advancedtelematic/aktualizr/tree/5336fd20bb59ebfcc4ef0285128dece7e0412867 较新的版本已损坏。它可能是可以修复的(由你在某个地方乱搞),在你使用下载 API 调用后,较新的版本将尝试执行 event:8443 调用,但会失败。 (https://github.com/advancedtelematic/libaktualizr-demo-app)

https://github.com/simao/ota-cli 这个用于服务器交互。 您必须编辑:.../ota-community-edition/templates/services 活动家、主管和注册表的 .toml 文件以导出主机...您可以查看 app.tmpl.yaml 以了解如何执行此操作的示例。