搭建 Linux 运行环境
Linux 支持运行 C/C++、Java、JavaScript、Python 和 Go 语言开发的微服务,且运行微服务前需要部署云原生 SDK 运行环境。本节将分别介绍如何在 Linux 系统中搭建 C/C++、Java、JavaScript、Python 和 Go 运行环境,并安装容器管理引擎 ECSD。
搭建运行环境
搭建 C/C++ 程序运行环境
有关搭建 C/C++ 程序运行环境的详细步骤,请参考 VSOA 软总线 搭建 Linux 运行环境 章节。
搭建 Java 程序运行环境
Linux 基于 Java 的云原生 SDK 可以从 maven 仓库下载,仓库地址为 https://mvnrepository.com/artifact/com.acoinfo/vsoa 。 在 maven 工程配置文件 pom.xml 加入 vsoa 相关配置依赖即可使用,配置示例如下:
<dependency>
<groupId>com.acoinfo</groupId>
<artifactId>vsoa</artifactId>
<version>1.0</version>
</dependency>
搭建 JavaScript 程序运行环境
Linux 基于 Node.js 的云原生 SDK 开发环境以 npm 方式下载,具体可参考 https://www.npmjs.com/package/vsoa 。
用户可以参考 Linux JavaScript 验证范例 对 Linux 中的云原生 JavaScript 运行环境进行验证。
搭建 Python 程序运行环境
Linux 下运行 Python VSOA 时,可使用如下命令安装 VSOA:
acoinfo@acoinfo:~$ pip install vsoa==0.0.1
搭建 Go 程序运行环境
Linux 下运行 Go 程序不需要安装特殊的依赖。
安装容器管理引擎 ECSD
容器管理平台 ECSM 可以管理 Linux Docker 容器,被管理的 Linux 系统需要安装 ECSD。下面以 Debian 系统为例介绍 ECSD 的安装步骤。
步骤 1:下载 ECSD 及相关工具
步骤 2:安装 docker
更新包缓存:
acoinfo@acoinfo:~$ sudo apt update acoinfo@acoinfo:~$ sudo apt-get install ca-certificates curl gnupg lsb-release
安装证书:
acoinfo@acoinfo:~$ sudo mkdir -m 0755 -p /etc/apt/keyrings acoinfo@acoinfo:~$ curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
写入软件源信息:
acoinfo@acoinfo:~$ echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null acoinfo@acoinfo:~$ sudo apt-get update
安装 docker:
acoinfo@acoinfo:~$ sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
步骤 3:使用 hello-world 镜像验证
拉取 hello-world 镜像:
acoinfo@acoinfo:~$ sudo docker run hello-world
测试运行 hello-world:
acoinfo@acoinfo:~$ sudo docker run hello-world:latest Hello from Docker! This message shows that your installation appears to be working correctly.
步骤 4:生成 license 文件
修改已下载的注册程序可执行权限(以 ARM64 注册程序为例)。
acoinfo@acoinfo:~$ chmod 755 realevo-register_arm64
执行注册程序,根据提示输入 SN 号。可通过 联系我们 获取授权 SN。
acoinfo@acoinfo:~$ ./realevo-register_arm64 Please input your SN:
输入 SN 号后,根据提示选择绑定的网卡,选择后将显示注册码。
acoinfo@acoinfo:~$ ./realevo-register_arm64 Please input your SN: xxxxxxxxxx Which net adapter do you want to bind SN: 0--vethb90de57 1--ens3 2--docker0 Please input number before the network adapter name: 1 Your register code is: YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY Please open url http://www.sylixos.com/register/register_new.html
进入注册网站 https://www.sylixos.com/register/register_new.html ,使用注册码获取授权 license 信息。
将生成的 license 输入到授权终端后,完成注册流程,将在授权程序当前目录下生成 license 文件。
Your register code is: YYYYYYYYYYYYYYYYYYYYYYYYYYYYYYYY Please open url http://www.sylixos.com/register/register_new.html input your reigster code. Please input your license: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX Register success, license file:./license
步骤 5:部署 ECSD
将
ecsd-vx.x-docker-arch.tar.gz
镜像包及ecsd.sh
复制到 Linux 内,并执行以下命令导入容器镜像:acoinfo@acoinfo:~$ gunzip -c ecsd-v0.4.19-docker-x86.tar.gz | sudo docker image load
使用脚本启动容器,该脚本程序将通过 "docker image" 命令搜索 ecsd 相关的镜像,并提示用户选择后运行。
acoinfo@acoinfo:~$ sudo chmod +x ecsd.sh acoinfo@acoinfo:~$ ./ecsd.sh ECSD license loaded from 'xxxxxxxxxx/license': xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx 1) acoinfo/ecsd:0.4.18 c5d4ae8a6eab Select ecsd version to run: 1 Start ECSD image acoinfo/ecsd:0.4.18 - c5d4ae8a6eab as container: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx Done
可以查看当前的容器,出现如下内容则说明启动成功。
acoinfo@acoinfo:~$ sudo docker images REPOSITORY TAG IMAGE ID CREATED SIZE ecsd/ecsd 20221230.14-32-24.0.4.4 42f537c989ef 6 weeks ago 203MB
在 Linux 节点创建 /etc/docker/daemon.json 文件,文件内容如下,其中
insecure-registries
为 ECSM 所在网络的网关地址。{ "insecure-registries" : [ "192.168.128.1/24" ] }