关于arm:分布式-如何在鲲鹏ARM的服务器上运行-DBLE

32次阅读

共计 2886 个字符,预计需要花费 8 分钟才能阅读完成。

作者:郭奥门

爱可生 DBLE 研发成员,负责分布式数据库中间件的新性能开发,答复社区 / 客户 / 外部提出的一般性问题。

本文起源:原创投稿

* 爱可生开源社区出品,原创内容未经受权不得随便应用,转载请分割小编并注明起源。

背景

鲲鹏 920 处理器是华为在 2019 年 1 月公布的数据中心高性能处理器,由华为自主研发设计,旨在满足数据中心多样性计算、绿色计算等需要。鲲鹏处理器基于 ARM 架构。

ARM 是一种 CPU 架构,有别于 Intel&AMD 的 CPU 采纳的 CISC 简单指令集;ARM CPU 采纳 RISC 精简指令集(reduced instruction set computer,精简指令集计算机)。

近几年为了响应国产化的号召,越来越多的国内厂商也逐步应用华为鲲鹏 920 的服务器来代替之前的服务器。最近也是有很多社区小伙伴在鲲鹏的服务器上安装 dble 时遇到了一些问题,这里总结了一下装置步骤。

步骤

DBLE 的 GitHub 文档《0.3 疾速开始》是基于 x86 处理器的服务器的装置教程,在基于 ARM 处理器的服务器上安装 DBLE 时可能会报以下谬误:

[root@huawei bin]# ./dble start
Unable to locate any of the following operational binaries:
  /opt/dble/bin/./wrapper-linux-aarch64-64
  /opt/dble/bin/./wrapper-linux-aarch64-32
  /opt/dble/bin/./wrapper

这时咱们须要先执行以下步骤:

1. 补齐 wrapper 须要的文件

  • 从 java service wrapper 下载并解压 ARM 架构的文件
wget https://download.tanukisoftware.com/wrapper/3.5.40/wrapper-linux-armhf-64-3.5.40.tar.gz
tar zxvf wrapper-linux-armhf-64-3.5.40.tar.gz
  • 将 bin/wrapper 拷贝至 dble/bin 目录下
  • 将 lib/libwrapper.so 拷贝至 dble/lib 目录下

2. 装置鲲鹏版 jdk

环境变量等问题不在此赘述,自行 Google 解决(adoptopenjdk 官网、编译工具 — AdoptOpenJDK)。

3. 启动 DBLE

查看 wrapper.log,如呈现相似以下的日志示意 DBLE 启动胜利。

STATUS | wrapper  | 2021/01/08 13:45:15 | --> Wrapper Started as Daemon
STATUS | wrapper  | 2021/01/08 13:45:15 | Java Service Wrapper Community Edition 64-bit 3.5.40
STATUS | wrapper  | 2021/01/08 13:45:15 |   Copyright (C) 1999-2019 Tanuki Software, Ltd. All Rights Reserved.
STATUS | wrapper  | 2021/01/08 13:45:15 |     http://wrapper.tanukisoftware.com
STATUS | wrapper  | 2021/01/08 13:45:15 |
STATUS | wrapper  | 2021/01/08 13:45:16 | Launching a JVM...
INFO   | jvm 1    | 2021/01/08 13:45:16 | Listening for transport dt_socket at address: 8088
INFO   | jvm 1    | 2021/01/08 13:45:16 | WrapperManager: Initializing...
INFO   | jvm 1    | 2021/01/08 13:45:19 | Server startup successfully. dble version is [5.7.21-dble-3.20.10.99-cdc0923be854d91a0f942a9027bef1454057bde3-20210107185349]. Please see logs in logs/dble.log

4. 连贯验证

查看 user.xml 文件中的 shardingUser 用户,并应用 mysql 客户端建设连贯,如呈现以下状况示意连贯建设胜利

[root@localhost ~]# mysql -uroot -p123456 -P8066 -hyour_ip
mysql: [Warning] Using a password on the command line interface can be insecure.
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.7.11-dble-3.20.10.0-b29c7c91ac638509dbc4f2c146aea41c3f9f0b83-20201203053354 dble Server (ActionTech)
 
Copyright (c) 2000, 2020, Oracle and/or its affiliates. All rights reserved.
 
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
 
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
 
mysql> show databases;
+----------+
| DATABASE |
+----------+
| testdb   |
+----------+
1 row in set (0.04 sec)
 
mysql> use testdb;
Database changed

留神

  • wrapper 版本为 3.5.40,不统一会报错
INFO   | jvm 1    | 2021/01/08 16:12:21 | WrapperManager: ERROR - The version of the Wrapper which launched this JVM is "3.5.42"
INFO   | jvm 1    | 2021/01/08 16:12:21 | WrapperManager:         while the version of the Wrapper jar file currently in use
INFO   | jvm 1    | 2021/01/08 16:12:21 | WrapperManager:         is "3.5.40".
INFO   | jvm 1    | 2021/01/08 16:12:21 | WrapperManager:
STATUS | wrapper  | 2021/01/08 16:12:23 | <-- Wrapper Stopped
  • 不应用鲲鹏版的 jdk 也是能够启动胜利,不过在理论应用过程中可能会呈现无奈预知的问题(比方之前遇到应用 Oracle 的 ARM 版 jdk,DBLE 能够启动,然而队列无奈工作,会阻塞工作)

正文完
 0