分类分类
大小:0.58 MB 更新:2020/04/30
类别:服务器区系统:WinXP, Win7, Win8, Win10, WinAll
OpenBalena是一个用于部署和管理连接设备的平台,设备运行balenaOS(一种旨在在IoT设备上运行容器的主机操作系统),并通过balena CLI进行管理,用户可以使用balena CLI来配置应用程序容器,推送更新,检查状态,查看日志等;OpenBalena的后端服务由经过久经考验的组件组成,这些组件已经在balenaCloud上的生产环境中运行多年,可以安全可靠地存储设备信息,可以通过内置的VPN服务进行远程管理,并可以将容器映像有效地分发到您的设备;借助该程序,可以使开发人员能够自行管理大量设备,释放openBalena的主要动机之一是减轻对锁定的恐惧并消除退出(进入)的障碍;以便用户可以解决问题并自己添加功能,系统将继续与balenaCloud同步发展openBalena,大部分开发过程都是在开放的环境中进行的,以便用户可以共同改进开源项目和托管服务;需要的用户可以下载体验
可扩展:部署和管理一台或一百万台设备。
强大的API和SDK:扩展openBalena以适应您的需求
轻松更新:使用单个命令远程更新设备上的软件
基于容器:受益于针对边缘进行了优化的虚拟化功能。
内置VPN:不论设备的网络环境如何,都可以访问它们
简单配置:向您的车队添加设备非常容易。
任何可以运行balenaOS的设备都可以与openBalena一起使用。
BalenaOS支持许多不同的设备类型和多种体系结构。
可以查看受支持设备的完整列表,对于Beta版本,openBalena仅支持Raspberry Pi系列,Intel NUC,NVIDIA Jetson TX2和balenaFin。
尽管openBalena和balenaCloud共享相同的核心技术,但仍存在一些关键差异。
首先,openBalena是自托管的,而balenaCloud是由balena托管的
因此可以处理所有后端服务的安全性,维护,扩展和可靠性。
OpenBalena也是单用户,而balenaCloud支持多个用户和组织。
OpenBalena还缺少一些定义balenaCloud的商业功能,例如基于Web的仪表板和带有二进制容器增量的更新。
我们在balenaOS中添加了一项功能,使设备可以加入和离开服务器。
实际上,这意味着balena客户将始终可以选择设置开源服务器,而不再使用云服务
而开源用户如果需要现成的,受商业支持的平台,则始终可以迁移到balenaCloud 。
在balena,我们希望我们的关系由我们提供的值来定义,而不是由无法移动造成的锁定来定义。
我们认为openBalena是消除这些退出(和进入!)障碍的重要一步。
在VPS上设置您自己的openBalena实例
为此,我们将设置裸机Ubuntu 18.04 x64服务器。
安装依赖
在开始设置balena环境之前,首先,我们需要安装一些工具,并确保我们的机器是最新的。
登录到新服务器:
$ ssh root@your_server_ip
更新所有初始软件:
$ apt-get update && apt-get install -y build-essential git
创建一个balena用户:
$ adduser balena
添加用户管理员权限:
$ usermod -aG sudo balena
安装docker:
$ apt-get install docker.io
将balena用户添加到docker组:
usermod -aG docker balena
安装docker-compose:
$ curl -L https://github.com/docker/compose/releases/download/1.24.0/docker-compose-Linux-x86_64 -o /usr/local/bin/docker-compose
$ chmod +x /usr/local/bin/docker-compose
使用测试您的docker-compose安装$ docker-compose --version。
安装OpenSSL:
apt-get install libssl-dev
安装nodejs:
apt-get install nodejs
安装NPM:
apt-get install npm
安装openBalena
安装了所有必需的软件后,我们可以继续安装openBalena。
使用以下命令将openBalena项目克隆到您的主文件夹中:
git clone https://github.com/balena-io/open-balena.git ~/open-balena
转到open-balena目录并运行配置脚本。这将创建一个新目录,config并为实例生成适当的SSL证书和配置。提供的电子邮件和密码将用于创建超级用户帐户,您将使用该帐户对系统进行身份验证。
$ ./scripts/quickstart -U -P
您可以选择将实例配置为在自定义域名下运行。默认值为openbalena.local。在本指南中,我们将使用domain进行设置mydomain.com,因此在这种情况下,我们将使用:
$ ./scripts/quickstart -U -P -d mydomain.com
有关更多可用选项,请参见脚本的帮助:
$ ./scripts/quickstart -h
在这一点上,我们准备使用以下方法启动openBalena实例:
$ ./scripts/compose up -d
您可以通过以下方式停止实例:
$ ./scripts/compose stop
域配置
为了能够访问您的openBalena实例,必须配置一些CNAME地址并指向您的服务器。
api.mydomain.com
registry.mydomain.com
vpn.mydomain.com
s3.mydomain.com
安装CLI客户端
在openBalena服务器启动并运行后,我们需要在本地计算机上安装balena CLI,这是一个命令行界面,将用于管理所有设备,并成为您与服务器之间的链接。
按照此处提供的说明安装balena CLI
通过balenaUrl在CLI配置文件中设置服务器域名,将balena CLI指向您的服务器,例如:
Linux或macOS: ~/.balenarc.yml
Windows: %UserProfile%\_balenarc.yml
balenaUrl: "mydomain.com"
安装自签名证书
创建openBalena实例时,它会生成一些自签名证书,我们需要使用这些证书才能使本地计算机和设备连接到服务器。
在安装了Balena CLI的计算机(本地计算机)上,ca.crt从服务器下载证书并进行安装。在我们当前的示例中,openBalena实例安装在上, ~/open-balena/因此证书位于~/open-balena/config/certs/root/ca.crt。
在Linux上:
$ sudo cp ca.crt /usr/local/share/ca-certificates/ca.crt
$ sudo update-ca-certificates
$ sudo systemctl restart docker
在macOS上:
$ sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain ~/ca.crt
$ osascript -e 'quit app "Docker"' && open -a Docker
在Windows上:
$ certutil -addstore -f "ROOT" ca.crt
重要信息:您必须重新启动Docker守护程序,以获取新信任的CA证书。如果不重新启动Docker,您将无法将映像推送到openBalena注册表。
在所有平台上:
此外,通过设置指向ca.crt本地计算机上文件下载副本的环境变量,指示balena CLI使用新证书:
贝壳命令
重击export NODE_EXTRA_CA_CERTS='/path/to/ca.crt'
Windows cmd.exeset NODE_EXTRA_CA_CERTS=C:\path\to\ca.crt
Windows PowerShell$Env:NODE_EXTRA_CA_CERTS="C:\path\to\ca.crt"
部署我们的第一个应用程序
此时,我们可以登录到服务器并创建我们的第一个应用程序。
1)登录到openBalena
键入balena login,选择Credentials并使用先前生成的超级用户信息。
2)创建应用程序
现在,我们可以使用来创建我们的第一个应用程序。balena app create myApp 从那里,您可以选择要使用的设备,例如Raspberry Pi 3。
3)生成图像文件
在继续之前,请确保已创建我们的应用程序
$ balena apps
ID APP NAME DEVICE TYPE ONLINE DEVICES DEVICE COUNT
1 myApp raspberrypi3
一旦有了一些应用程序,就可以开始在其中配置设备了,为此,我们需要先从https://balena.io/os下载适用于我们设备类型的balenaOS映像。在部署Raspberry Pi 3设备时,我们可以转到https://balena.io/os/#downloads-raspberrypi并为其下载映像。
下载完操作系统映像后,将其解压缩到本地,然后使用balena CLI为我们的openBalena实例进行配置。可以按以下步骤完成:
balena os configure ~/Downloads/balenaos-raspberrypi3-2.22.1+rev1-dev-v7.25.3.img --app myApp
一旦使用网络凭据和密钥配置了映像以连接到我们的openBalena实例,我们就可以使用https://etcher.io将其刷新到我们的SD卡上,然后启动设备。
大约30秒后,我们应该能够在我们的应用程序中看到我们新配置的设备,为此,我们运行balena devices:
$ balena devices
ID UUID DEVICE NAME DEVICE TYPE APPLICATION NAME STATUS IS ONLINE SUPERVISOR VERSION OS VERSION
4 59d7700 winter-tree raspberrypi3 myApp Idle true 7.25.3 balenaOS 2.22.1+rev1
如果我们想更仔细地检查设备,我们可以如下使用设备UUID:
$ balena device 59d7700
== WINTER TREE
ID: 4
DEVICE TYPE: raspberrypi3
STATUS: online
IS ONLINE: true
IP ADDRESS: 192.168.43.247
APPLICATION NAME: myApp
UUID: 59d7700755ec5de06783eda8034c9d3d
SUPERVISOR VERSION: 7.25.3
OS VERSION: balenaOS 2.22.1+rev1
好了,因此我们已经设置了一些设备并连接到我们的openBalena实例,现在该部署一些代码了。在openBalena中,没有云构建器服务,因此所有容器的构建都需要使用CLI在本地进行。
对于此示例,我将使用来自Raspberry Pi 3和Sense Hat的https://github.com/balena-io-playground/sense-snake部署示例项目。
让我们将此仓库克隆到我们的计算机上,然后将其推送到我们刚刚配置的设备上:
git clone https://github.com/balena-io-playground/sense-snake.git
cd sense-snake
balena deploy myApp --logs --source . --emulated
请注意,在上面的部署代码中,我们添加--emulated了结尾,这是因为我们正在为Raspberry Pi构建一个容器,该容器具有ARM架构,而本地计算机使用x86_64架构。
看到独角兽之后,我们可以在将代码推送到设备的同时喝点咖啡。几分钟后,您会注意到该代码将开始在我们的Raspberry Pi上运行。
ManageEngine ADManager Plus(AD域管理软件) 服务器区258.09 MB7.2
详情Serv-U FTP Server 6.4.0.6 简体中文注册版 服务器区4.00 MB
详情WWWFileSharePro 7.0 汉化绿色版 服务器区2.00 MB
详情Serv-U 12.1.0.8 企业金版 服务器区18.00 MB
详情securefx9.0(FTP工具) 服务器区48 MB32位/64位(附安装教程)
详情Serv-U File Server v15.1.6 简体中文 服务器区20.00 MB
详情Xlight FTP Server v3.6.5 简体中文 服务器区1.00 MB
详情idm ultraftp 21(FTP工具) 服务器区94.8 MBv21.00.0.12 (附使用
详情xmanager7(FTP软件) 服务器区161.0 MB附安装教程
详情Serv-U FTP Server v14.0.2.0 中文白金 服务器区19.00 MB
详情Magic Winmail4.1 服务器区22.00 MB
详情Winmail Mail Server 服务器区26.97 MBv4.5
详情Serv-U FTP Server 10.5.0.24 简体中文 服务器区15.00 MB
详情RaidenFTPD(雷电FTPD) 2.4 Build 2570 服务器区0 MB
详情SecureCRT 64位 服务器区32.4 MBv8.5.4
详情nero2014中文 服务器区111.6 MBv15.0.25001 附带安装教程
详情勤哲excel服务器2016 服务器区111.05 MBv12.0.46 完美
详情Server Genius(服务器监控工具) 服务器区154 MBv3.7.11.14
详情Actual Multiple Monitors(多显示器管理工具) 服务器区11.85 MBv8.14.4 免费版
详情定时小应用 2.0 服务器区3.40 MB
详情pulse secure for windows 64位 服务器区27.8 MBv5.2.5 官方中文安装版
详情XP自动安装IIS5.1 便携安装包 服务器区13.00 MB
详情Magic Winmail4.1 服务器区22.00 MB
详情手机架设服务器 Servers Ultimate Pro v6.3.10 汉化版 服务器区7.00 MB
详情Serv-U File Server v15.1.6 简体中文 服务器区20.00 MB
详情SecureCRT 64位 服务器区32.4 MBv8.5.4
详情简易服务器 Http File Server 2.3i Build 297 汉化版 服务器区2.00 MB
详情Serv-U FTP Server 6.4.0.6 简体中文注册版 服务器区4.00 MB
详情Serv-U FTP Server 10.5.0.24 简体中文 服务器区15.00 MB
详情勤哲excel服务器2016 服务器区111.05 MBv12.0.46 完美
详情花生壳动态域名 6.0.5.13990 正式版 服务器区3.00 MB
详情ManageEngine ADManager Plus(AD域管理软件) 服务器区258.09 MB7.2
详情HaneWin NFS Server v1.1.69 汉化注册版 服务器区0.68 MB
详情局域网远程开机、关机、重启软件 绿色版 服务器区2.00 MB
详情XenServer7.0 服务器区614.93 MB附带安装教程
详情局域网网盘系统 v1.0 免费版 服务器区3.00 MB
详情Serv-U FTP Server v14.0.2.0 中文白金 服务器区19.00 MB
详情e-Border Driver(socks5代理工具) 服务器区3.6 MBv3.5.1 汉化版
详情局域网超级工具(NetSuper) V3.0 简体中文绿色版 服务器区0.23 MB
详情Serv-U 12.1.0.8 企业金版 服务器区18.00 MB
详情WinSCP SFTP客户端 服务器区9.31 MBv5.19.5
详情Serv-U FTP Server 6.4.0.6 简体中文注册版 服务器区4.00 MB
详情WebEasyMail 3.6.2.1 企业注册版 服务器区0 MB
详情Serv-U FTP Server 10.5.0.24 简体中文 服务器区15.00 MB
详情nero2014中文 服务器区111.6 MBv15.0.25001 附带安装教程
详情XP自动安装IIS5.1 便携安装包 服务器区13.00 MB
详情RaidenFTPD(雷电FTPD) 2.4 Build 2570 服务器区0 MB
详情花生壳动态域名 6.0.5.13990 正式版 服务器区3.00 MB
详情WWW File Share Pro 5.40 汉化注册版 服务器区2.00 MB
详情MDaemon Server 10.1.1 简体中文版 服务器区110.00 MB
详情