-
天津HDZ开发者社区正式成立志愿者火热招募中,期待您的加入~天津HDZ报名通道:https://275956.weixin.drip.im/form/detail/27667c0f-8c4e-4c47-957d-a7bf3d524245?special=275956社区宗旨:开放、创新、多元对于前沿技术开发感兴趣的朋友欢迎加入到HDZ的大家庭!!!HDZ社区—携手全球开发者 共建开放、创新、多元的开发者社区组织 HDZ是Huawei Developers Zone的英文缩写,是华为开发者生态面向全球开发者建立开放、创新、多元的开发者社区组织。 致力于帮助开发者学习提升、互动交流、挖掘机会,推动ICT、互联网等产业生态的建立和发展。 对云计算、IoT、人工智能、5G、区块链、鲲鹏、昇腾、软件开发与运维、开源等各技术领域感兴趣的开发者、软件工程师、创业者、运营人、产品人、大学生、老师等都可以参与到HDZ。 HDZ秉承开放、创新、多元的社区文化,完全由各地HDZ组织者、志愿者自发组建和领导。华为公司不直接参与HDZ组织建设和领导,只按需对HDZ社区活动提供必要的方向指导、资源支持、活动支撑等,并为各地HDZ组织者提供与全国组织者互动交流的机会。【全国各城市核心组织者报名通道】
-
济南HDZ开发者社区正式成立志愿者火热招募中,期待您的加入~社区宗旨:开放、创新、多元对于前沿技术开发感兴趣的朋友欢迎加入到HDZ的大家庭!!!济南HDZ报名通道:https://333786.weixin.drip.im/form/detail/281cf3d6-daef-42d3-9516-b676be247897?special=333786【 济南HDZ 公众号 】HDZ社区—携手全球开发者 共建开放、创新、多元的开发者社区组织 HDZ是Huawei Developers Zone的英文缩写,是华为开发者生态面向全球开发者建立开放、创新、多元的开发者社区组织。 致力于帮助开发者学习提升、互动交流、挖掘机会,推动ICT、互联网等产业生态的建立和发展。 对云计算、IoT、人工智能、5G、区块链、鲲鹏、昇腾、软件开发与运维、开源等各技术领域感兴趣的开发者、软件工程师、创业者、运营人、产品人、大学生、老师等都可以参与到HDZ。 HDZ秉承开放、创新、多元的社区文化,完全由各地HDZ组织者、志愿者自发组建和领导。华为公司不直接参与HDZ组织建设和领导,只按需对HDZ社区活动提供必要的方向指导、资源支持、活动支撑等,并为各地HDZ组织者提供与全国组织者互动交流的机会。【全国各城市核心组织者报名通道】
-
疫情下的城市,渐渐苏醒。全国各大城市复工复产,一座座城市将科技的智慧融入管理,搭建人与人之间之间爱的桥梁,让市民享受便利,让疫情无所遁形,让城市重现活力。根据发改委的数据:截至2018年8月,全国100%的副省级以上城市,包括76%以上的地级城市和32%的县级市,总计大约500座城市已经明确提出正在建设新型智慧城市。华为也在全球40多个国家参与了200多个智慧城市的建设,面对疫情防控挑战和复工复产最新要求,华为与伙伴联合打造城市IOC(智能运营指挥中心)疫情防控解决方案,用科技的力量助力多个城市做好联防联控,不断有序推动企业复工复产。一、广东:疫情防控直观可视,社情民意快速响应基于广东省较为严峻的疫情防控态势,佛山市迅速成立新型冠状病毒感染的肺炎疫情防控指挥部,为协助政府打赢疫情防控战,华为联合合作伙伴仅用一周时间快速上线佛山市疫情防控数据监测方案,积极发挥政数局大数据力量,让疫情防控数据在指挥部“一张图”直观可达,精准辅助决策。疫情防控复工复产一张图:全面掌控疫情真实信息 从疫情态势、防控情况、社情民意、复工复产四个维度,“复工复产一张图”分析展示全市疫情态势及趋势、联防联控情况、实时社情民意、防控物资(如口罩药品等)预约与供应情况、企业复工返岗率,为疫情防控指挥部精准部署防控排查措施、快速响应社情民意、及时解决市民企业防疫物资短缺等问题提供了大数据决策依据。线上线下融合,助力应急响应战时模式 借助城市IOC与WeLink视频会议融合,佛山市政府迅速启动“疫情应急值守、疫情会议会商、疫情联动指挥”的应急响应战时模式,及时组织音视频多媒体会议通过IOC疫情防控一张图共享各级指挥部疫情情况,对疫情防控事件分析、复工复产工作部署等进行多部门联动会商决策。 二、天津:隐患智能排查和协同实时指挥经过多年的信息化积累,天津经开区(经济技术开发区)智慧城市建设走在了全国前列,形成了“1+4+N”(一个城市IOC、4大服务平台、N个创新应用)的整体布局,不仅在政府公共事务管理和便民惠企服务中发挥了重要作用,也在此次疫情防控中“大显身手”。AI让“漏网之鱼”无处可藏天津经开区疫情防控指挥部依托城市IOC的AI能力,自动识别近一个月内在本地出现过的重点区域车辆牌照信息,2天之内在500多名私家车主中排查出5人未在社区和企业登记,其中3人存在瞒报、漏报情况;同时AI智能识别违规人员(比如未带口罩),让“漏网之鱼”无处可藏。大数据助力企业和社区隐患排查企业和社区排查上报的数据与城市IOC中“一人一档”,一企一档数据体系进行深度碰撞和分析,通过大数据技术可快速发现漏报、瞒报或信息不一致等情况,迅速发现隐患并及时排查。 指挥驾驶舱实现哪里需要,哪里就是指挥中心 城市IOC实时汇聚疫情防控相关的IT数据和OT数据,如人口、车辆、交通、疫情、地理信息、物联网数据、视频数据等,并通过精准治理和深度融合,为指挥大厅提供“疫情一张图”全面感知疫情发展情况,同时为防控办提供疫情数据分析服务,为区政府提供疫情数据报表,通过移动端,PC端,大屏等多种呈现方式,为疫情防控提供精准的数据支撑。三、江苏:有序复工复产,精准联防联控早在2019年苏州吴江平望镇携手华为与合作伙伴睿呈时代开始建设智慧平望IOC,这次面对突入袭来的疫情,城市IOC快速上线疫情防控专题,用信息化手段协助政府科学防治、精准施策、高效防范。 城市IOC助力企业复工复产 智慧平望IOC,在企业复工复产方面与镇“平波台”公众号数据对接,实现复工企业人员健康状况实时同步,监测复工企业疫情防控措施落实情况。城市IOC助力联防联控 苏州吴江平望镇依托网格化管理对辖区进行全面详细排查,排查的信息汇聚到智慧平望城市IOC中,形成孪生信息层,用大数据构建信息化的出租房管理模式,实现出租房屋实时动态管理。 同时,城市IOC深度融合房屋、人口、企业等多种开放数据,通过大数据分析在时间和空间上精确统计出租房信息、外来务工人员返城信息、社区人员流动信息,以出租房屋、各村社区卡点、企业复工申报作为重点管控单元,用一张图做到人员流动可视、可控。以科技赋能疫情防控,华为与合作伙伴用切实行动助力城市打赢这场防疫战,助力企业复工复产。未来,我们一起努力,共同期待春暖花开,让我们的城市恢复如常。
-
1. 简介Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。 其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析。2. 部署环境Packet NameVersionDetailCentOSCentOS 7.5 64bit with ARMarm通用计算增强型 2vCPUs | 4GB | kc1.large.2Hive3.0.0GCC4.8.5Yum安装MavenApache-maven-3.3.9 JDK1.8.0_191 Protoc2.5.0 3. 安装部署3.1安装基本依赖库yum install gcc.aarch64 gcc-c++.aarch64 gcc-gfortran.aarch64 libgcc.aarch64yum install openssl-devel zlib-devel automake libtool cmake3.2 安装OpenJDK下载OpenJDK安装包wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u191-b12/OpenJDK8U-jdk_aarch64_linux_hotspot_8u191b12.tar.gz解压安装包tar -zxvf OpenJDK8U-jdk_aarch64_linux_hotspot_8u191b12.tar.gz创建指定文件夹mkdir -p /opt/tools/installed将JDK移动到相应位置mv jdk8u191-b12 /opt/tools/installed/3.3 安装Mavenwget https://archive.apache.org/dist/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gztar -zxvf apache-maven-3.3.9-bin.tar.gzmv apache-maven-3.3.9 /opt/tools/installed/下载Maven安装包配置环境变量,在/etc/profile后面加上JAVA_HOME=/opt/tools/installed/jdk8u191-b12MAVEN_HOME=/opt/tools/installed/apache-maven-3.5.4PATH=$MAVEN_HOME/bin:$JAVA_HOME/bin:$PATHexport MAVEN_HOME JAVA_HOME PATH运行命令,使环境变量生效source /etc/profile3.4 安装Protocwget https://github.com/protocolbuffers/protobuf/releases/download/v2.5.0/protobuf-2.5.0.tar.gztar -zxvf protobuf-2.5.0.tar.gzcd protobuf-2.5.0下载并解压源码打上补丁cp protoc.patch ./src/google/protobuf/stubs/cd ./src/google/protobuf/stubs/patch -p1 < protoc.patch补丁下载地址:https://obs-mirror-ftp4.obs.cn-north-4.myhuaweicloud.com/tools/protoc.patch安装./autogen.sh && ./configure CFLAGS='-fsigned-char' && make && make install 3.5 编译Hive下载Spark安装包wget https://github.com/apache/hive/archive/rel/release-3.0.0.tar.gztar -zxvf release-3.0.0.tar.gzcd hive-rel-release-3.0.0将依赖的protoc包改为本地的sed -i 's|<protocArtifact>com.google.protobuf:protoc:2.5.0</protocArtifact>|<protocCommand>/usr/local/bin/protoc</protocCommand>|g' `grep "protoc:2.5.0" -rl ./`开始编译mvn clean install -DskipTests 4 FAQ编译时报错:执行sed -i 's|<protocArtifact>com.google.protobuf:protoc:2.5.0</protocArtifact>|<protocCommand>/usr/local/bin/protoc</protocCommand>|g' `grep "protoc:2.5.0" -rl ./`可解决问题。
-
1. 简介HBase–Hadoop Database,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群,海量数据的快速随机访问。2. 部署环境Packet NameVersionDetailCentOSCentOS 7.5 64bit with ARMarm通用计算增强型 2vCPUs | 4GB | kc1.large.2Hbase2.1.0GCC4.8.5Yum安装MavenApache-maven-3.3.9 JDK1.8.0_191 Protoc2.5.0 3. 安装部署3.1安装基本依赖库yum install gcc.aarch64 gcc-c++.aarch64 gcc-gfortran.aarch64 libgcc.aarch64yum install openssl-devel zlib-devel automake libtool cmake3.2 安装OpenJDK下载OpenJDK安装包wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u191-b12/OpenJDK8U-jdk_aarch64_linux_hotspot_8u191b12.tar.gz解压安装包tar -zxvf OpenJDK8U-jdk_aarch64_linux_hotspot_8u191b12.tar.gz创建指定文件夹mkdir -p /opt/tools/installed将JDK移动到相应位置mv jdk8u191-b12 /opt/tools/installed/3.3 安装Mavenwget https://archive.apache.org/dist/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gztar -zxvf apache-maven-3.3.9-bin.tar.gzmv apache-maven-3.3.9 /opt/tools/installed/下载Maven安装包配置环境变量,在/etc/profile后面加上JAVA_HOME=/opt/tools/installed/jdk8u191-b12MAVEN_HOME=/opt/tools/installed/apache-maven-3.3.9PATH=$MAVEN_HOME/bin:$JAVA_HOME/bin:$PATHexport MAVEN_HOME JAVA_HOME PATH运行命令,使环境变量生效source /etc/profile3.4 安装Protocwget https://github.com/protocolbuffers/protobuf/releases/download/v2.5.0/protobuf-2.5.0.tar.gztar -zxvf protobuf-2.5.0.tar.gzcd protobuf-2.5.0下载并解压源码打上补丁cp protoc.patch ./src/google/protobuf/stubs/cd ./src/google/protobuf/stubs/patch -p1 < protoc.patch补丁地址:https://obs-mirror-ftp4.obs.cn-north-4.myhuaweicloud.com/tools/protoc.patch安装./autogen.sh && ./configure CFLAGS='-fsigned-char' && make && make install 3.5 编译Hbase下载Hbase安装包wget http://archive.apache.org/dist/hbase/2.1.0/hbase-2.1.0-src.tar.gztar –zxvf hbase-2.1.0-src.tar.gzcd hbase-2.1.0安装Protoc依赖mvn install:install-file -DgroupId=com.google.protobuf -DartifactId=protoc -Dversion=2.5.0 -Dclassifier=linux-aarch_64 -Dpackaging=exe -Dfile=/usr/local/bin/protoc执行编译mvn clean package -DskipTests assembly:single4 FAQ编译时报错:[ERROR] Failed to execute goal org.xolstice.maven.plugins:protobuf-maven-plugin:0.5.0:compile (compile-protoc) on project hbase-protocol: Missing:执行mvn install:install-file -DgroupId=com.google.protobuf -DartifactId=protoc -Dversion=2.5.0 -Dclassifier=linux-aarch_64 -Dpackaging=exe -Dfile=/usr/local/bin/protoc可解决问题。
-
1. 简介Apache Spark 是专为大规模数据处理而设计的快速通用的计算引擎。它拥有Hadoop MapReduce所具有的优点;但不同于MapReduce的是——Job中间输出结果可以保存在内存中,从而不再需要读写HDFS,因此Spark能更好地适用于数据挖掘与机器学习等需要迭代的MapReduce的算法。2. 部署环境Packet NameVersionDetailCentOSCentOS 7.5 64bit with ARMarm通用计算增强型 2vCPUs | 4GB | kc1.large.2Spark2.3.0GCC4.8.5Yum安装MavenApache-maven-3.3.9 JDK1.8.0_191 Protoc2.5.0 Cmake3.1.2 R3.1.1 Scala2.11.12 3. 安装部署3.1安装基本依赖库yum install gcc.aarch64 gcc-c++.aarch64 gcc-gfortran.aarch64 libgcc.aarch64yum install openssl-devel zlib-devel automake libtool cmake3.2 安装OpenJDK下载OpenJDK安装包wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u191-b12/OpenJDK8U-jdk_aarch64_linux_hotspot_8u191b12.tar.gz解压安装包tar -zxvf OpenJDK8U-jdk_aarch64_linux_hotspot_8u191b12.tar.gz创建指定文件夹mkdir -p /opt/tools/installed将JDK移动到相应位置mv jdk8u191-b12 /opt/tools/installed/3.3 安装Mavenwget https://archive.apache.org/dist/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gztar -zxvf apache-maven-3.3.9-bin.tar.gzmv apache-maven-3.3.9 /opt/tools/installed/下载Maven安装包配置环境变量,在/etc/profile后面加上JAVA_HOME=/opt/tools/installed/jdk8u191-b12MAVEN_HOME=/opt/tools/installed/apache-maven-3.5.4PATH=$MAVEN_HOME/bin:$JAVA_HOME/bin:$PATHexport MAVEN_HOME JAVA_HOME PATH运行命令,使环境变量生效source /etc/profile3.4 安装Protocwget https://github.com/protocolbuffers/protobuf/releases/download/v2.5.0/protobuf-2.5.0.tar.gztar -zxvf protobuf-2.5.0.tar.gzcd protobuf-2.5.0下载并解压源码打上补丁cp protoc.patch ./src/google/protobuf/stubs/cd ./src/google/protobuf/stubs/patch -p1 < protoc.patch补丁可从此次获取:https://obs-mirror-ftp4.obs.cn-north-4.myhuaweicloud.com/tools/protoc.patch安装./autogen.sh && ./configure CFLAGS='-fsigned-char' && make && make install 3.5 安装R语言安装相关依赖yum install readline-develyum install libXt-devel下载R语言安装包wget http://cran.rstudio.com/src/base/R-3/R-3.1.1.tar.gztar -zxvf R-3.1.1.tar.gz -C /opt/installedcd R-3.1.1./configure --enable-R-shlib --enable-R-static-lib --with-libpng --with-jpeglib --prefix=/opt/tools/installed/R-3.1.1make && make install配置环境变量vim /etc/profileR_HOME=/opt/tools/installed/R-3.1.1PATH=$R_HOME/bin:$PATHexport R_HOME PATH#wq退出保存source/etc/profile3.6 安装Scala下载安装包并解压wget https://downloads.lightbend.com/scala/2.11.12/scala-2.11.12.tgztar -zxvf scala-2.11.12.tgz -C /opt/tools/installed配置环境变量vim /etc/profile#修改文件最后一行export PATH=/opt/tools/installed/scala-2.11.12/bin:$PATH#wq退出保存source/etc/profile3.6 编译spark下载Spark安装包wget https://github.com/apache/spark/archive/v2.3.0.tar.gztar -zxvf spark-2.3.0.tar.gzcd spark-2.3.0修改pom.xml,将true改为false<useZincServer>false</useZincServer>执行编译dev/make-distribution.sh --tgz -Pyarn,hive,hive-thriftserver,sparkr4 示例测试以local的方式启动sparkcd spark-2.3.0spark-shell master local[2]运行成功。
-
1. 简介Hadoop是一个开源的分布式存储及计算框架,被广泛用于海量数据的存储及处理,可以以可靠、高效、可伸缩的方式进行数据处理。2. 部署环境Packet NameVersionDetailCentOSCentOS 7.5 64bit with ARMarm通用计算增强型 2vCPUs | 4GB | kc1.large.2Hadoop3.1.3GCC4.8.5Yum安装MavenApache-maven-3.3.9 JDK1.8.0_191 Protoc2.5.0 Cmake3.1.2 3. 安装部署3.1安装基本依赖库yum install gcc.aarch64 gcc-c++.aarch64 gcc-gfortran.aarch64 libgcc.aarch64yum install openssl-devel zlib-devel automake libtool cmake3.2 安装OpenJDK下载OpenJDK安装包wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u191-b12/OpenJDK8U-jdk_aarch64_linux_hotspot_8u191b12.tar.gz解压安装包tar -zxvf OpenJDK8U-jdk_aarch64_linux_hotspot_8u191b12.tar.gz创建指定文件夹mkdir -p /opt/tools/installed将JDK移动到相应位置mv jdk8u191-b12 /opt/tools/installed/3.3 安装Mavenwget https://archive.apache.org/dist/maven/maven-3/3.3.9/binaries/apache-maven-3.3.9-bin.tar.gztar -zxvf apache-maven-3.3.9-bin.tar.gzmv apache-maven-3.3.9 /opt/tools/installed/下载Maven安装包配置环境变量,在/etc/profile后面加上JAVA_HOME=/opt/tools/installed/jdk8u191-b12MAVEN_HOME=/opt/tools/installed/apache-maven-3.3.9PATH=$MAVEN_HOME/bin:$JAVA_HOME/bin:$PATHexport MAVEN_HOME JAVA_HOME PATH运行命令,使环境变量生效source /etc/profile3.4 安装Protocwget https://github.com/protocolbuffers/protobuf/releases/download/v2.5.0/protobuf-2.5.0.tar.gztar -zxvf protobuf-2.5.0.tar.gzcd protobuf-2.5.0下载并解压源码打上补丁wget https://obs-mirror-ftp4.obs.cn-north-4.myhuaweicloud.com/tools/protoc.patchcp protoc.patch ./src/google/protobuf/stubs/cd ./src/google/protobuf/stubs/patch -p1 < protoc.patch安装./autogen.sh && ./configure CFLAGS='-fsigned-char' && make && make install3.5 安装cmakewget https://cmake.org/files/v3.1/cmake-3.1.2.tar.gztar -zxvf cmake-3.1.2.tar.gzCentOS7.5默认的cmake是2.8版本的,hadoop3.1.3要求Cmake3.1以上, 需要手动安装下载并解压安装cd cmake-3.1.2./configuremake && make install3.6 编译hadoopwget https://www.apache.org/dist/hadoop/common/hadoop-3.1.3/hadoop-3.1.3-src.tar.gzcd hadoop-3.1.3-srcmvn package -DskipTests -Pdist,native -Dtar -Dmaven.javadoc.skip=true4 .示例测试使用hadoop自带测试程序计算PI值cd hadoop-3.1.3-src/hadoop-dist/target/hadoop-3.1.3./bin/yarn jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-3.1.3.jar pi 5 10运行成功。5.FAQGCC版本不能太高,编译的时候会报错。
-
技术领域帖子主题帖子链接云虚拟化虚拟化场景下大页内存优化案例https://bbs.huaweicloud.com/forum/thread-41737-1-1.html虚拟化场景IO性能优化案例分享https://bbs.huaweicloud.com/forum/thread-41517-1-1.html硬件设备裸盘IO优化案例分享https://bbs.huaweicloud.com/forum/thread-41513-1-1.html网络低时延场景下性能优化措施分享https://bbs.huaweicloud.com/blogs/147393网卡性能问题案例分享https://bbs.huaweicloud.com/blogs/147409网安鲲鹏(ARM64) Hyperscan 5.2.0 移植指导https://bbs.huaweicloud.com/forum/thread-42784-1-1.html图形鲲鹏920(ARM64) Qt 4.8.6 移植指南for CentOS-7.6https://bbs.huaweicloud.com/blogs/146372 数据库MariaDB高并发场景下的性能优化案例https://bbs.huaweicloud.com/forum/thread-41738-1-1.htmlsqlite-jdbc-3.8.11.2.jar移植指南 https://bbs.huaweicloud.com/forum/thread-42780-1-1.htmlrocksdbjni-5.7.3.jar移植指南 https://bbs.huaweicloud.com/forum/thread-42776-1-1.html视频鲲鹏920(ARM64) kurento-media-server移植指南 for Ubuntu 18.04https://bbs.huaweicloud.com/blogs/147677 Kurento播放失败问题案例分享https://bbs.huaweicloud.com/blogs/147681科学计算octave5.1移植指南https://bbs.huaweicloud.com/forum/thread-41834-1-1.htmlgmt4.5.18移植指南https://bbs.huaweicloud.com/forum/thread-41837-1-1.htmlshakemap3.5移植指南https://bbs.huaweicloud.com/forum/thread-41851-1-1.html汇编指令X86 xchgl和cmpxchgl指令替换案例分享https://bbs.huaweicloud.com/blogs/146370cpuid汇编指令替换分享https://bbs.huaweicloud.com/blogs/147391分布式存储Ceph测试调优案例分享https://bbs.huaweicloud.com/forum/thread-41761-1-1.html大数据大数据组件logstash迁移指南https://bbs.huaweicloud.com/forum/thread-41801-1-1.html大数据组件thrift迁移指南https://bbs.huaweicloud.com/forum/thread-41742-1-1.html大数据组件portainer迁移指南https://bbs.huaweicloud.com/forum/thread-41770-1-1.html大数据组件harbor迁移指南https://bbs.huaweicloud.com/forum/thread-41810-1-1.html鲲鹏 librdkafka v1.2.0 移植和双向认证指南 (Linx-6.0.90)https://bbs.huaweicloud.com/forum/thread-42514-1-1.htmlsnappy-java-1.1.1.6.jar移植指南 https://bbs.huaweicloud.com/forum/thread-42779-1-1.html鲲鹏 kafka_2.11-0.10.1.1移植指南 (Linx-6.0.90)https://bbs.huaweicloud.com/forum/thread-42528-1-1.htmlhbase-shaded-netty-2.1.0.jar移植指南 https://bbs.huaweicloud.com/forum/thread-42782-1-1.html hadoop2.5.3迁移指南-cenos7.6 https://bbs.huaweicloud.com/forum/thread-42293-1-1.html大数据任务执行时间优化案例分享https://bbs.huaweicloud.com/blogs/147398测试工具SPEC 测试失败问题总结分享https://bbs.huaweicloud.com/blogs/147392sysbench压测mysql性能调优案例分享https://bbs.huaweicloud.com/blogs/147490 编译器鲲鹏(ARM64) GCC 9.1.0 CentOS 7.6移植指南 https://bbs.huaweicloud.com/forum/thread-42781-1-1.html鲲鹏C/C++编译时间优化技术案例分享https://bbs.huaweicloud.com/forum/thread-42510-1-1.html编程语言容器场景场景下JVM调优案例分享https://bbs.huaweicloud.com/forum/thread-41739-1-1.htmlscala-compiler-2.11.7.jar移植指南 https://bbs.huaweicloud.com/forum/thread-42774-1-1.htmljava测试程序优化案例分析https://bbs.huaweicloud.com/blogs/147394WEBNginx应用调优案例https://bbs.huaweicloud.com/blogs/146367鲲鹏920(ARM64) chromium移植指南 for centos7.6https://bbs.huaweicloud.com/blogs/148360wildfly15.0.0移植指南https://bbs.huaweicloud.com/forum/thread-41830-1-1.htmlAppweb运行时coredump问题分享https://bbs.huaweicloud.com/blogs/147401OS多路云游戏同时启动概率失败和卡死问题案例分享https://bbs.huaweicloud.com/blogs/147405 来源: 【精华】【鲲鹏迁移调优案例分析合集FAQ汇总贴】想学习实战信息来这里吧//持续更新中...
-
技术领域帖子主题帖子链接云虚拟化虚拟化场景下大页内存优化案例https://bbs.huaweicloud.com/forum/thread-41737-1-1.html虚拟化场景IO性能优化案例分享https://bbs.huaweicloud.com/forum/thread-41517-1-1.html硬件设备裸盘IO优化案例分享https://bbs.huaweicloud.com/forum/thread-41513-1-1.html登录iSCSI设备失败案例分享https://bbs.huaweicloud.com/forum/thread-42879-1-1.html网络低时延场景下性能优化措施分享https://bbs.huaweicloud.com/blogs/147393网卡性能问题案例分享https://bbs.huaweicloud.com/blogs/147409网安鲲鹏(ARM64) Hyperscan 5.2.0 移植指导https://bbs.huaweicloud.com/forum/thread-42784-1-1.html图形鲲鹏920(ARM64) Qt 4.8.6 移植指南for CentOS-7.6https://bbs.huaweicloud.com/blogs/146372 数据库MariaDB高并发场景下的性能优化案例https://bbs.huaweicloud.com/forum/thread-41738-1-1.htmlsqlite-jdbc-3.8.11.2.jar移植指南 https://bbs.huaweicloud.com/forum/thread-42780-1-1.htmlrocksdbjni-5.7.3.jar移植指南 https://bbs.huaweicloud.com/forum/thread-42776-1-1.html视频鲲鹏920(ARM64) kurento-media-server移植指南 for Ubuntu 18.04https://bbs.huaweicloud.com/blogs/147677 Kurento播放失败问题案例分享https://bbs.huaweicloud.com/blogs/147681科学计算octave5.1移植指南https://bbs.huaweicloud.com/forum/thread-41834-1-1.htmlgmt4.5.18移植指南https://bbs.huaweicloud.com/forum/thread-41837-1-1.htmlshakemap3.5移植指南https://bbs.huaweicloud.com/forum/thread-41851-1-1.html汇编指令X86 xchgl和cmpxchgl指令替换案例分享https://bbs.huaweicloud.com/blogs/146370cpuid汇编指令替换分享https://bbs.huaweicloud.com/blogs/147391分布式存储Ceph测试调优案例分享https://bbs.huaweicloud.com/forum/thread-41761-1-1.html大数据大数据组件logstash迁移指南https://bbs.huaweicloud.com/forum/thread-41801-1-1.html大数据组件thrift迁移指南https://bbs.huaweicloud.com/forum/thread-41742-1-1.html大数据组件portainer迁移指南https://bbs.huaweicloud.com/forum/thread-41770-1-1.html大数据组件harbor迁移指南https://bbs.huaweicloud.com/forum/thread-41810-1-1.html鲲鹏 librdkafka v1.2.0 移植和双向认证指南 (Linx-6.0.90)https://bbs.huaweicloud.com/forum/thread-42514-1-1.htmlsnappy-java-1.1.1.6.jar移植指南 https://bbs.huaweicloud.com/forum/thread-42779-1-1.html鲲鹏 kafka_2.11-0.10.1.1移植指南 (Linx-6.0.90)https://bbs.huaweicloud.com/forum/thread-42528-1-1.htmlhbase-shaded-netty-2.1.0.jar移植指南 https://bbs.huaweicloud.com/forum/thread-42782-1-1.html hadoop2.5.3迁移指南-cenos7.6 https://bbs.huaweicloud.com/forum/thread-42293-1-1.html大数据任务执行时间优化案例分享https://bbs.huaweicloud.com/blogs/147398测试工具SPEC 测试失败问题总结分享https://bbs.huaweicloud.com/blogs/147392sysbench压测mysql性能调优案例分享https://bbs.huaweicloud.com/blogs/147490 编译器鲲鹏(ARM64) GCC 9.1.0 CentOS 7.6移植指南 https://bbs.huaweicloud.com/forum/thread-42781-1-1.html鲲鹏C/C++编译时间优化技术案例分享https://bbs.huaweicloud.com/forum/thread-42510-1-1.html编程语言容器场景场景下JVM调优案例分享https://bbs.huaweicloud.com/forum/thread-41739-1-1.htmlscala-compiler-2.11.7.jar移植指南 https://bbs.huaweicloud.com/forum/thread-42774-1-1.htmljava测试程序优化案例分析https://bbs.huaweicloud.com/blogs/147394WEBNginx应用调优案例https://bbs.huaweicloud.com/blogs/146367鲲鹏920(ARM64) chromium移植指南 for centos7.6https://bbs.huaweicloud.com/blogs/148360wildfly15.0.0移植指南https://bbs.huaweicloud.com/forum/thread-41830-1-1.htmlAppweb运行时coredump问题分享https://bbs.huaweicloud.com/blogs/147401OS多路云游戏同时启动概率失败和卡死问题案例分享https://bbs.huaweicloud.com/blogs/147405
-
一 介绍1.简要介绍Harbor:是docker镜像仓库,用于存储和分发Docker镜像。2.建议的版本本次迁移涉及到组件的版本如下,1.8.1版本下载地址:https://github.com/goharbor/harbor/tree/v1.8.1 二 环境要求本组件是基于centos7.6进行迁移的 三 配置编译环境在编译安装之前,需要配置编译环境,安装一些必要的编译工具(如gcc,maven)和运行环境依赖(如jdk和selinux)等。3.1 安装Openjdk下载并安装到指定目录(如/opt/tools/installed):wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u191-b12/OpenJDK8U-jdk_aarch64_linux_hotspot_8u191b12.tar.gztar -zxf OpenJDK8U-jdk_aarch64_linux_hotspot_8u191b12.tar.gzmv jdk8u191-b12 /opt/tools/installed/配置java环境变量,在/etc/profile文件末尾处增加下面的代码:JAVA_HOME=/opt/tools/installed/jdk8u191-b12PATH=$JAVA_HOME/bin:$PATHexport JAVA_HOME PATH运行下面命令,使修改的环境变量生效:source /etc/profile3.2 安装Maven下载并安装到指定目录(如/opt/tools/installed):wget https://archive.apache.org/dist/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gztar -zxf apache-maven-3.5.4-bin.tar.gzmv apache-maven-3.5.4 /opt/tools/installed/修改maven环境变量,在/etc/profile文件末尾增加下面高亮代码:JAVA_HOME=/opt/tools/installed/jdk8u191-b12MAVEN_HOME=/opt/tools/installed/apache-maven-3.5.4PATH=$MAVEN_HOME/bin:$JAVA_HOME/bin:$PATHexport MAVEN_HOME JAVA_HOME PATH运行下面的命令,是修改的环境变量生效:source /etc/profile修改maven配置文件中的:本地仓路径、远程仓等:配置文件路径:/opt/tools/installed/apache-maven-3.5.4/conf/settings.xml本地仓库配置:<!--默认在“~/.m2/”目录下,修改成你自己想保存的目录--><localRepository>/path/to/local/repo</localRepository>远程仓库配置:<!--修改成自己搭建的maven仓库,如果没有,可以使用下面的aliyun --><mirror> <id>alimaven</id> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> <mirrorOf>central</mirrorOf> </mirror>配置代理: <proxies> <proxy> <id>optional</id> <active>true</active> <protocol>http</protocol> <username>用户名</username> <password>密码</password> <host>代理服务器网址</host> <port>代理服务器端口</port> <nonProxyHosts>local.net|some.host.com</nonProxyHosts> </proxy> </proxies> 3.3 安装GCC挂载OS镜像:mount YOUR_OS.iso /media -o loop修改/etc/yum.repos.d/Base.repo文件,配置yum本地源:[Local]name=CentOS-7.4 Localbaseurl=file:///media/enabled=1gpgcheck=0运行下面的命令,使yum源配置生效:yum clean allyum makecacheyum安装GCC相关软件:yum install gcc.aarch64 gcc-c++.aarch64 gcc-gfortran.aarch64 libgcc.aarch64 3.4 Docker依赖selinux安装Docker安装时需要依赖于selinux,可以提前安装selinux。安装方式是,wget先下载到本地Wget http://mirror.centos.org/centos/7/updates/x86_64/Packages/selinux-policy-targeted-3.13.1-229.el7_6.12.noarch.rpm然后用rpm –ivh selinux-policy-targeted-3.13.1-229.el7_6.12.noarch.rpm来安装 四 获取源码 使用git 命令下载指定版本git clone https://github.com/goharbor/harbor.gitgit checkout v1.8.1 五 编译 5.1 Docker安装Docker需要下载aarch64版本的:https://download.docker.com/linux/centos/7/aarch64/stable/Packages/可以根据需要选择对应的版本号,由于harbor运行要求Docker的版本至少在17.06.0以上,所以可以下载18版本的,如docker-ce-18.03.1.ce-1.el7.centos.aarch64.rpm这个版本。先使用wget 进行下载wget https://download.docker.com/linux/centos/7/aarch64/stable/Packages/docker-ce-18.03.1.ce-1.el7.centos.aarch64.rpm --no-check-certificate下载之后,使用yum安装yum install /path/to/package.rpm注意:Docker运行需要提前配置好http_proxy和https_proxy等文件,在/usr/lib/systemd/system/docker.service文件中设置http_proxy代理是否配置正确,否则访问不了docker镜像,后面的Docker-compose也需要依赖于Docker可以运行起来。步骤1. 启动dockersystemctl start docker步骤2.运行hello-world,检查Docker配置是否已经正确docker run hello-world配置正确的Docker运行hello-world时会打印如下信息:5.2 Docker-compose编译安装Docker-compose的安装也依赖于docker,所以需要先确保docker可以正常运行起来,如docker run hello-world运行时不会报错Github上已经有aarch64的docker-compose版本,可以直接从github下载arm64版本:https://github.com/ubiquiti/docker-compose-aarch64步骤1:下载aarch64的docker-compose源码git clone https://github.com/ubiquiti/docker-compose-aarch64.git步骤2:生成docker镜像下载之后,主要有Dockerfile文件用来构建compose镜像,README.md则是具体构建方法:docker build . -t docker-compose-aarch64-builderdocker run --rm -v "$(pwd)":/dist docker-compose-aarch64-builder总共就两步:构建docker-compose镜像运行docker-compose镜像,同时在本地生成可执行文件docker-compose-Linux-aarch64 5.3 Harbor编译前Dockerfile修改Harbor的build过程,主要有两步,一个是执行make all先进行编译,第二步是执行install.sh进行安装。Make的过程是依次执行 make/photon下12个组件(common和notary下没有Dockerfile)下的Dockerfile的过程1.修改make/photon文件夹下各个模块的Dockerfile中的photon:2.0为photon:3.0由于这几个模块的Dockerfile都是基于photon2.0的镜像,而photon2.0不支持arm64,执行过程中会出现如下photonde 库列表匹配不到linux/arm64的报错而photon3.0已经支持arm64,所以需要提前将这些Dockerfile中的photon:2.0改为photon:3.0改为photon:3.02.在各个需要与远端仓库交互的Dockerfile中增加http_proxy/https_proxy代理,确保Dockerfile执行过程中可以到远端仓库进行下载注意!由于make/photon/portal/Dockerfile中有两个From基础镜像,这两个FROM之后都要增加代理(由于portal组件是有已经生成好的镜像,此处不需要编译,也不需要修改) 3 修改make/checkenv.sh和make/install.sh脚本以及MakeFile由于harbor在make时,会先检查golang,docker和docker-compose是否安装,以及版本号,在安装了docker-compose之后,需要修改make.checkenv.sh脚本中关于docker-compose(如果前面docker-compose编译的时候,已经修改了docker-compose-Linux-aarch64为docker-compose,此处不需要修改)名字的判断,按如下红框将原来的docker-compose改为docker-compose-Linux-aarch64Make/install.sh脚本除了修改如上function check_dockercompose函数中的docker-compose为docker-compose-Linux-aarch64,还要修改如下红框中的语句Makefile里也要修改检查docker-compose的语句 4.harbor.yml文件配置需要修改harbor.yml文件中hostname为自己的主机名5.4 Harbor编译Harbor的build过程,主要有两步,一个是执行make all先进行编译,第二步是执行install.sh进行安装。在harbor目录下执行make all之后,会先检查golang/docker/docker-compose等是否安装,然后再依次build 如下几个模块的Dockerfile: prepare-db-poratl-core-jobservice-log-nginx- registry- registryctrl-redis一个镜像构建成功之后,会自动build下一个镜像同时可以用docker images来查看已经构建成功的镜像Make all成功后会自动生成docker-compose.yml配置文件在make all执行成功之后就可以执行install.sh进行安装了,install.sh的脚本主要有3步:检查安装环境,准备环境(自动生成配置文件),以及启动harbor如果出现如下打印“Harbor has been installed and started successfully.”,说明已经安装成功了,可以用ps命令查看harbor的几个组件是否已经成功拉起,以及状态是否健康等六 运行验证在harbor编译成功后,如果出现如下打印“Harbor has been installed and started successfully.”,说明已经安装成功了,可以用ps命令查看harbor的几个组件是否已经成功拉起,以及状态是否健康等在harbor成功拉起后,可以在浏览器上打开harbor界面,确认是否正常七 FAQ 7.1 Harbor在安装阶段启动时报错容器冲突问题现象:在harbor启动时,报错容器冲突解决方法:先将容器停掉,然后删除,再重新install.sh7.2 Harbor的portal模块在build时报npm错误问题现象:在harbor执行make all编译,编译至portal这个模块时报npm错误 解决办法:在make/photon/portal/Dockerfile中,先注释掉npm的安装,由于harbor-portal有aarch64的镜像,采用直接运行已有的aarch64的harbor-portal的方式来规避。相关镜像的下载请参考此网站,已有人build成功的harbor-portal镜像:https://hub.docker.com/search?q=harbor-portal&type=image用docker pull命令将harbor-portal:dev这个aarch64的镜像pull下来2.将原来build的goharbor/harbor-portal:dev的镜像删除先查询和停掉portal容器,再删除portal镜像把portal镜像删除3.将docker pull下来的镜像改名为goharbor/harbor-portal:dev,并删除frankzhang0803/harbor-portal:dev4.运行goharbor/harbor-portal5.停掉docker-compose6.修改make/photon/Makefile,注释掉如下编译PORTAL的语句,使用仓库上的镜像就不再编译portal组件7.重新make all和执行install.sh,重新启动harbor7.3 Harbor的registry模块一直是restarting状态问题现象:harbor启动时,registry状态一直为restarting解决办法: 1.修改harbor-1.8.1/Makefile, 以下内容82 BUILDBIN=true100 REGISTRYVERSION=v2.7.1修改harbor-1.8.1/make/photon/Makefile修改harbor-1.8.1/make/photon/registry/Dockerfile修改harbor-1.8.1/make/photon/registryctl/Dockerfile若之前执行过编译安装,请先清除遗留信息。默认,遗留信息存放在/data目录下。rm -rf /data/*7.4 Harbor的redis-photon模块一直是restarting状态问题现象:redis-photon启动异常解决办法:将系统page size 64K修改为4K,编译内核,参考:https://bbs.huaweicloud.com/forum/thread-26293-1-1.html
-
一 介绍1.简要介绍Logstash: Logstash 是一个应用程序日志、事件的传输、处理、管理和搜索的平台。可以用它来统一对应用程序日志进行收集管理,提供 Web 接口用于查询和统计。Logstash是一个开源数据收集引擎,具有实时管道功能。Logstash可以动态地将来自不同数据源的数据统一起来,并将数据标准化到你所选择的目的地。 2.建议的版本本次迁移涉及到组件的版本如下。下载地址:https://www.elastic.co/cn/downloads/logstash三配置编译环境3.1 安装Openjdk下载并安装到指定目录(如/opt/tools/installed):wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u191-b12/OpenJDK8U-jdk_aarch64_linux_hotspot_8u191b12.tar.gztar -zxf OpenJDK8U-jdk_aarch64_linux_hotspot_8u191b12.tar.gzmv jdk8u191-b12 /opt/tools/installed/配置java环境变量,在/etc/profile文件末尾处增加下面的代码:JAVA_HOME=/opt/tools/installed/jdk8u191-b12PATH=$JAVA_HOME/bin:$PATHexport JAVA_HOME PATH运行下面命令,使修改的环境变量生效:source /etc/profile3.2 安装Maven下载并安装到指定目录(如/opt/tools/installed):wget https://archive.apache.org/dist/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gztar -zxf apache-maven-3.5.4-bin.tar.gzmv apache-maven-3.5.4 /opt/tools/installed/修改maven环境变量,在/etc/profile文件末尾增加下面高亮代码:JAVA_HOME=/opt/tools/installed/jdk8u191-b12MAVEN_HOME=/opt/tools/installed/apache-maven-3.5.4PATH=$MAVEN_HOME/bin:$JAVA_HOME/bin:$PATHexport MAVEN_HOME JAVA_HOME PATH运行下面的命令,是修改的环境变量生效:source /etc/profile修改maven配置文件中的:本地仓路径、远程仓等:配置文件路径:/opt/tools/installed/apache-maven-3.5.4/conf/settings.xml本地仓库配置:<!--默认在“~/.m2/”目录下,修改成你自己想保存的目录--><localRepository>/path/to/local/repo</localRepository>远程仓库配置:<!--修改成自己搭建的maven仓库,如果没有,可以使用下面的aliyun --><mirror> <id>alimaven</id> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> <mirrorOf>central</mirrorOf> </mirror>配置代理: <proxies> <proxy> <id>optional</id> <active>true</active> <protocol>http</protocol> <username>用户名</username> <password>密码</password> <host>代理服务器网址</host> <port>代理服务器端口</port> <nonProxyHosts>local.net|some.host.com</nonProxyHosts> </proxy> </proxies> 3.3 安装GCC挂载OS镜像:mount YOUR_OS.iso /media -o loop修改/etc/yum.repos.d/Base.repo文件,配置yum本地源:[Local]name=CentOS-7.4 Localbaseurl=file:///media/enabled=1gpgcheck=0运行下面的命令,使yum源配置生效:yum clean allyum makecacheyum安装GCC相关软件:yum install gcc.aarch64 gcc-c++.aarch64 gcc-gfortran.aarch64 libgcc.aarch64 四 获取源码Logstash的下载和解压操作如下:wget https://artifacts.elastic.co/downloads/logstash/logstash-7.2.0.tar.gztar xvf logstash-7.2.0.tar.gz五 编译Logstash是一个开源的日志搜集管理工具,该软件为java程序,不需要编译,只需要解压,在解压后的bin文件中运行logstash即可。详细安装指导可以参考官网,其运行需要的java环境为1.8或者1.11,本文的使用的java版本为1.8:[root@ceph1 make]# java -versionjava version "1.8.0_211"Java(TM) SE Runtime Environment (build 1.8.0_211-b12)Logstash主要有离线安装和在线安装两种,本文中采用在线下载安装的方式,使用最新的7.2.0的版本,采用如方法下载到本地指定路径后,解压即可wget https://artifacts.elastic.co/downloads/logstash/logstash-7.2.0.tar.gztar xvf logstash-7.2.0.tar.gz 六 运行验证在logstash解压后的bin目录下,直接运行logstash验证下是否安装成功: cd logstash-7.2.0/bin./logstash -e 'input {stdin{}} output {stdout{}}'直接运行会报加载ffi/ffi时java空指针异常加载ffi/ffi模块时出现java空指针异常的原因在于Logstash-7.2.0中对aarch64平台支撑不好,缺少必要的platform.conf文件,将logstash-7.2.0解压后,将logstash-core\lib\jars\jruby-complete-9.2.7.0.jar包继续解压,在jruby-complete-9.2.7.0\META-INF\jruby.home\lib\ruby\stdlib\ffi\ffi.rb文件中打开platform.conf文件异常:实际上在对应的jruby-complete-9.2.7.0\META-INF\jruby.home\lib\ruby\stdlib\ffi\platform\aarch64-linux平台下,只有一个types.conf文件,没有platform.conf文件 解决办法是将types.conf文件复制一份命名为platform.conf,然后将platform.conf这个文件然后重新打包到jruby-complete-9.2.7.0.jar: 1.jar包解压cd logstash-7.2.0/logstash-core/lib/jars/mkdir -p testcp jruby-complete-9.2.7.0.jar test/cd test解压jar包unzip jruby-complete-9.2.7.0.jar 2 types.conf复制 在解压后的platform目录下,复制types.conf为platform.conf cp META-INF/jruby.home/lib/ruby/stdlib/ffi/platform/aarch64-linux/types.conf META-INF/jruby.home/lib/ruby/stdlib/ffi/platform/aarch64-linux/platform.confcp META-INF/jruby.home/lib/ruby/stdlib/ffi/platform/arm-linux/types.conf META-INF/jruby.home/lib/ruby/stdlib/ffi/platform/arm-linux/platform.conf 3.重新打包将复制的platform.conf文件重新打包到jruby-complete-9.2.7.0.jar,生成一个新的jar包,替换原来的logstash-core\lib\jars\jruby-complete-9.2.7.0.jar zip jruby-complete-9.2.7.0.jar META-INF/jruby.home/lib/ruby/stdlib/ffi/platform/arm-linux/platform.confzip jruby-complete-9.2.7.0.jar META-INF/jruby.home/lib/ruby/stdlib/ffi/platform/aarch64-linux/platform.confcp jruby-complete-9.2.7.0.jar ../ -rf rm ../test重新在Logstash-7.2.0/bin下验证,当出现如下打印Successfully started Logstash API endpoint {:port=>9600}时即为安装和运行成功
-
一 介绍简要介绍Portainer: Portainer是一个开源、轻量级Docker管理用户界面,基于Docker API,提供状态显示面板、应用模板快速部署、容器镜像网络数据卷的基本操作(包括上传下载镜像,创建容器等操作)、事件日志显示、容器控制台操作、Swarm集群和服务等集中管理和操作、登录用户管理和控制等功能。功能十分全面,基本能满足中小型单位对容器管理的全部需求。 建议的版本本次迁移涉及到组件的版本如下。 二 环境要求硬件要求硬件要求如表2-1所示。 2.操作系统要求操作系统要求如表2-3所示。三 配置编译环境3.1 安装Openjdk下载并安装到指定目录(如/opt/tools/installed):wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u191-b12/OpenJDK8U-jdk_aarch64_linux_hotspot_8u191b12.tar.gztar -zxf OpenJDK8U-jdk_aarch64_linux_hotspot_8u191b12.tar.gzmv jdk8u191-b12 /opt/tools/installed/配置java环境变量,在/etc/profile文件末尾处增加下面的代码:JAVA_HOME=/opt/tools/installed/jdk8u191-b12PATH=$JAVA_HOME/bin:$PATHexport JAVA_HOME PATH运行下面命令,使修改的环境变量生效:source /etc/profile3.2 安装Maven下载并安装到指定目录(如/opt/tools/installed):wget https://archive.apache.org/dist/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gztar -zxf apache-maven-3.5.4-bin.tar.gzmv apache-maven-3.5.4 /opt/tools/installed/修改maven环境变量,在/etc/profile文件末尾增加下面高亮代码:JAVA_HOME=/opt/tools/installed/jdk8u191-b12MAVEN_HOME=/opt/tools/installed/apache-maven-3.5.4PATH=$MAVEN_HOME/bin:$JAVA_HOME/bin:$PATHexport MAVEN_HOME JAVA_HOME PATH运行下面的命令,是修改的环境变量生效:source /etc/profile修改maven配置文件中的:本地仓路径、远程仓等:配置文件路径:/opt/tools/installed/apache-maven-3.5.4/conf/settings.xml本地仓库配置:<!--默认在“~/.m2/”目录下,修改成你自己想保存的目录--><localRepository>/path/to/local/repo</localRepository>远程仓库配置:<!--修改成自己搭建的maven仓库,如果没有,可以使用下面的aliyun --><mirror> <id>alimaven</id> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> <mirrorOf>central</mirrorOf> </mirror>配置代理: <proxies> <proxy> <id>optional</id> <active>true</active> <protocol>http</protocol> <username>用户名</username> <password>密码</password> <host>代理服务器网址</host> <port>代理服务器端口</port> <nonProxyHosts>local.net|some.host.com</nonProxyHosts> </proxy> </proxies> 3.3 安装GCC挂载OS镜像:mount YOUR_OS.iso /media -o loop修改/etc/yum.repos.d/Base.repo文件,配置yum本地源:[Local]name=CentOS-7.4 Localbaseurl=file:///media/enabled=1gpgcheck=0运行下面的命令,使yum源配置生效:yum clean allyum makecacheyum安装GCC相关软件:yum install gcc.aarch64 gcc-c++.aarch64 gcc-gfortran.aarch64 libgcc.aarch64四 获取源码此次移植指定的版本为1.21.0,针对ARM64, 官方直接发布了二进制的软件包,我们可以下载直接使用而不需要经过编译。下载地址如下:https://github.com/portainer/portainer/releases注意,需要获取的版本为arm64,见下图:或直接使用wget方式获取:wget --no-check-certificate https://github.com/portainer/portainer/releases/download/1.21.0/portainer-1.21.0-linux-arm64.tar.gz五 编译Portainer不需要编译,直接解压后运行即可,运行方法参考第六章六 运行验证在执行此步骤时,先确保docker已经正确安装,并且正常运行。接着解压portainer-1.21.0-linux-arm64.tar.gz,进入到portainer文件夹,在该目录下运行:docker volume create portainer_datadocker run -d -p 9000:9000 --name portainer --restart always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer运行成功之后,使用浏览器访问该服务器的portainer服务,即可展示管理首次登录界面,在该界面上会指导用户设置管理员密码。服务端口默认的是9000,根据需要也可以修改成其它的端口。基它修改可参考官方指导:https://portainer.readthedocs.io/en/latest/deployment.html
-
一 介绍简要介绍 Thrift:Thrift是一种接口定义语言和二进制通信协议,用于定义和创建多种语言的服务。它形成了一个远程程序调用 (RPC) 框架,并在 Facebook 上开发,用于"可扩展的跨语言服务开发"。它将软件堆栈与代码生成引擎相结合,构建跨平台服务,可以连接以各种语言和框架编写的应用程序,虽然是在Facebook上开发的,但它现在是Apache软件基金会的一个开源项目2.建议的版本本次迁移涉及到组件的版本如下。版本号:0.12.0,下载地址:http://mirrors.tuna.tsinghua.edu.cn/apache/thrift/0.12.0/thrift-0.12.0.tar.gz二 环境要求硬件要求硬件要求如下表所示2.操作系统 三 配置编译环境在编译安装之前,需要配置编译环境,安装一些必要的编译工具(如gcc,maven)和运行环境依赖(如jdk和selinux)等。3.1 安装Openjdk下载并安装到指定目录(如/opt/tools/installed):wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u191-b12/OpenJDK8U-jdk_aarch64_linux_hotspot_8u191b12.tar.gztar -zxf OpenJDK8U-jdk_aarch64_linux_hotspot_8u191b12.tar.gzmv jdk8u191-b12 /opt/tools/installed/配置java环境变量,在/etc/profile文件末尾处增加下面的代码:JAVA_HOME=/opt/tools/installed/jdk8u191-b12PATH=$JAVA_HOME/bin:$PATHexport JAVA_HOME PATH运行下面命令,使修改的环境变量生效:source /etc/profile3.2 安装Maven下载并安装到指定目录(如/opt/tools/installed):wget https://archive.apache.org/dist/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gztar -zxf apache-maven-3.5.4-bin.tar.gzmv apache-maven-3.5.4 /opt/tools/installed/修改maven环境变量,在/etc/profile文件末尾增加下面高亮代码:JAVA_HOME=/opt/tools/installed/jdk8u191-b12MAVEN_HOME=/opt/tools/installed/apache-maven-3.5.4PATH=$MAVEN_HOME/bin:$JAVA_HOME/bin:$PATHexport MAVEN_HOME JAVA_HOME PATH运行下面的命令,是修改的环境变量生效:source /etc/profile修改maven配置文件中的:本地仓路径、远程仓等:配置文件路径:/opt/tools/installed/apache-maven-3.5.4/conf/settings.xml本地仓库配置:<!--默认在“~/.m2/”目录下,修改成你自己想保存的目录--><localRepository>/path/to/local/repo</localRepository>远程仓库配置:<!--修改成自己搭建的maven仓库,如果没有,可以使用下面的aliyun --><mirror> <id>alimaven</id> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> <mirrorOf>central</mirrorOf> </mirror>配置代理: <proxies> <proxy> <id>optional</id> <active>true</active> <protocol>http</protocol> <username>用户名</username> <password>密码</password> <host>代理服务器网址</host> <port>代理服务器端口</port> <nonProxyHosts>local.net|some.host.com</nonProxyHosts> </proxy> </proxies> 3.3 安装GCC挂载OS镜像:mount YOUR_OS.iso /media -o loop修改/etc/yum.repos.d/Base.repo文件,配置yum本地源:[Local]name=CentOS-7.4 Localbaseurl=file:///media/enabled=1gpgcheck=0运行下面的命令,使yum源配置生效:yum clean allyum makecacheyum安装GCC相关软件:yum install gcc.aarch64 gcc-c++.aarch64 gcc-gfortran.aarch64 libgcc.aarch64四 获取源码根据实践,thrift在编译安装时依赖于boost,为节省时间,先在系统上完成boost的安装。wget http://sourceforge.net/projects/boost/files/boost/1.53.0/boost_1_53_0.tar.gztar xvf boost_1_53_0.tar.gzcd boost_1_53_0./bootstrap.shsudo ./b2 install此次版本的thrift版本为0.10.0,首先从镜像获取对应的源码包:wget https://mirrors.tuna.tsinghua.edu.cn/apache/thrift/0.10.0/thrift-0.10.0.tar.gz正常情况下,按README的说明操作,就可以完成整个编译:解压下载获取到的源码,然后进入到目录中,在目录中执行: ./bootstrap.sh./configure --with-lua=nomakemake install 五 编译正常情况下,按README的说明操作,就可以完成整个编译:解压下载获取到的源码,然后进入到目入中,在目录中执行: ./bootstrap.sh./configure --with-lua=nomakemake install 六 运行和验证七 FAQ7.1.1 提示找不到Python.h以及cStringIO.h头文件这种错误的原因,是因为系统中安装的Python版本没有将相关的头文件包含在” /usr/local/include/”对应的软件目录中。重新安装Python版本即可,本文档中也遇到了相同的问题,重新安装了python 2.7后解决问题。 7.1.2 提示无法引用boost的若干类问题问题现象2.解决方法出现这个问题,先确认boost 是否已完成编译安装,如果已经完成,则需要修改编译脚本。注意,需要修改的脚本不止一处,分别是(本文档中将thrift下载到了/home/hello目录中,根据实际的下载目录去调整)/home/hello/thrift-0.10.0/compiler/cpp/src/Makefile 和/home/hello/thrift-0.10.0/compiler/cpp/test/Makefile在文件中找到内容 “LIBS = -lrt -lpthread”,修改变为“LIBS = -lrt -lpthread -lboost_atomic -lboost_system”7.1.3 提示无法获取maven-ant-tasks JAR包无法获取问题现象解决方法 有可能出现了安装程序无法访问服务器的问题,需要我们手工来完成下载。针对这个问题,根据提示,使用wget 获取的对应的jar包,并拷贝到提示中的目录中。但这个安装程序一定要自己下载成功才会继续完成编译,因此我们需要手工注释掉该文件的下载(因为我们已经手工下载成功)。修改方法:路径本文档中将thrift下载到了/home/hello目录中,根据实际的下载目录去调整):“/home/hello/thrift-0.10.0/lib/java/build.xml”,修改位置见下图。7.1.4 提示读取slf4j-api JAR包出错问题现象 解决方法可以查看一下该文件大小,报错是只有2K大小,是安装包本身有误,手工下载覆盖即可。下载地址:http://repo2.maven.org/maven2/org/slf4j/slf4j-api/1.7.12/slf4j-api-1.7.12.jar7.1.5 提示下载pom/jar包出错问题现象这类错误出现时,有明确的提示告诉用户需要什么软件包,在什么地方下载,以及如何安装; 解决方法我们只需要根据它的提示,然后使用mvn来进行安装。比如:mvn install:install-file -DgroupId=org.slf4j -DartifactId=slf4j-api -Dversion=1.7.12 -Dpackaging=jar -Dfile=slf4j-api-1.7.12.pom mvn install:install-file -DgroupId=org.apache.httpcomponents -DartifactId=httpclient -Dversion=4.4.1 -Dpackaging=jar -Dfile=httpclient-4.4.1.jar标黄部分就是需要手工下载的文件7.1.6 提示Bundler包出错问题现象 解决方法一般情况,生成插件包支持JAVA,Python即可满足大部分情况,这个报错出现是因为在编译脚本默认所有语言的插件的生成,我们可以编加编译脚本,将不必要的编译注释掉。修改的文件目录:/home/hello/thrift-0.10.0/lib/Makefile修改内容如下图:
-
【摘要】张波详细解读了区块链技术、应用与人才培养的逻辑关系,并分享如何培养区块链人才。主讲人:张波以下分享内容PPT合集:HDZ社区—携手全球开发者 共建开放、创新、多元的开发者社区组织 HDZ是Huawei Developers Zone的英文缩写,是华为开发者生态面向全球开发者建立开放、创新、多元的开发者社区组织。 致力于帮助开发者学习提升、互动交流、挖掘机会,推动ICT、互联网等产业生态的建立和发展。 对云计算、IoT、人工智能、5G、区块链、鲲鹏、昇腾、软件开发与运维、开源等各技术领域感兴趣的开发者、软件工程师、创业者、运营人、产品人、大学生、老师等都可以参与到HDZ。 HDZ秉承开放、创新、多元的社区文化,完全由各地HDZ组织者、志愿者自发组建和领导。华为公司不直接参与HDZ组织建设和领导,只按需对HDZ社区活动提供必要的方向指导、资源支持、活动支撑等,并为各地HDZ组织者提供与全国组织者互动交流的机会。 怎么加入HDZ? 目前,全国各地HDZ社区正在加速建设,后续将在20多个城市全面铺开。全国各地市的小伙伴只要你对HDZ感兴趣,愿意加入社区共同推进当地开发者社区组建和发展,都可以报名成为HDZ核心组织者或志愿者! 如何加入HDZ,成为核心组成员?核心组成员需要在IT技术领域、社区活动、组织策划、媒体传播等方面中的某一领域具有一定的经验,并愿意对组织负责,愿意通过HDZ交流学习,锻炼自己的技术能力、组织能力,认识更多同道中人,掌握更多先进的技术知识。 如何加入HDZ成为志愿者?社区的成长离不开各领域提供资源的合作伙伴、活动组织者、社区运营伙伴等的参与。不论你擅长运营、营销、文案、摄影、活动组织,还是擅长技术分享;不论你是在校学生,还是职场精英;不管您是大咖还是小咖,只要您对HDZ社区感兴趣,都可以申请加入HDZ社区成为社区的一员,共同推动社区发展进步。你可以利用业余时间,结识更多志同道合的朋友,也可以在这里发掘商业机会、合作伙伴。 加入HDZ我能得到什么?1.核心组织者可写入HDZ贡献者名单2.结识更多志同道合的朋友,发掘机会3.提升自己的技术能力、活动组织能力、运营能力等4.证书、奖章激励5.有机会受邀参与华为官方大会,与全国各地HDZ核心组织者见面碰撞6.更多权益、福利,持续更新中...扫描上方二维码即可报名申请成为各城市核心者、志愿者
-
【摘要】曹一峰带领大家了解区块链核心技术、区块链价值以及区块链应用场景,并表示:“带上你的好奇和勇气,赴一场大概率的确定性机会”。主讲人:曹一峰扫描上方二维码可直接观看分享视频以下分享内容PPT合集:HDZ社区—携手全球开发者 共建开放、创新、多元的开发者社区组织 HDZ是Huawei Developer Zone的英文缩写,是华为开发者生态面向全球开发者建立开放、创新、多元的开发者社区组织。 致力于帮助开发者学习提升、互动交流、挖掘机会,推动ICT、互联网等产业生态的建立和发展。 对云计算、IoT、人工智能、5G、区块链、鲲鹏、昇腾、软件开发与运维、开源等各技术领域感兴趣的开发者、软件工程师、创业者、运营人、产品人、大学生、老师等都可以参与到HDZ。 HDZ秉承开放、创新、多元的社区文化,完全由各地HDZ组织者、志愿者自发组建和领导。华为公司不直接参与HDZ组织建设和领导,只按需对HDZ社区活动提供必要的方向指导、资源支持、活动支撑等,并为各地HDZ组织者提供与全国组织者互动交流的机会。 怎么加入HDZ? 目前,全国各地HDZ社区正在加速建设,后续将在20多个城市全面铺开。全国各地市的小伙伴只要你对HDZ感兴趣,愿意加入社区共同推进当地开发者社区组建和发展,都可以报名成为HDZ核心组织者或志愿者! 如何加入HDZ,成为核心组成员?核心组成员需要在IT技术领域、社区活动、组织策划、媒体传播等方面中的某一领域具有一定的经验,并愿意对组织负责,愿意通过HDZ交流学习,锻炼自己的技术能力、组织能力,认识更多同道中人,掌握更多先进的技术知识。 如何加入HDZ成为志愿者?社区的成长离不开各领域提供资源的合作伙伴、活动组织者、社区运营伙伴等的参与。不论你擅长运营、营销、文案、摄影、活动组织,还是擅长技术分享;不论你是在校学生,还是职场精英;不管您是大咖还是小咖,只要您对HDZ社区感兴趣,都可以申请加入HDZ社区成为社区的一员,共同推动社区发展进步。你可以利用业余时间,结识更多志同道合的朋友,也可以在这里发掘商业机会、合作伙伴。 加入HDZ我能得到什么?1.核心组织者可写入HDZ贡献者名单2.结识更多志同道合的朋友,发掘机会3.提升自己的技术能力、活动组织能力、运营能力等4.证书、奖章激励5.有机会受邀参与华为官方大会,与全国各地HDZ核心组织者见面碰撞6.更多权益、福利,持续更新中...扫描上方二维码即可报名申请成为各城市核心者、志愿者
上滑加载中
推荐直播
-
华为云码道Agent集成与鸿蒙实战2026/08/11 周二 19:00-21:00
王一男-华为云码道产品规划专家;李炎-华为云码道产品专家;彭江敏-华为云鸿蒙端云一体化开发专家
本次直播带你解读华为云码道7月份产品新特性、新功能。更有专家演示码道Agent Space × 钉钉机器集成实战,从0到1打通消息通道;码道鸿蒙端云一体化实战,快速搭建员工签到系统。
回顾中 -
华为云开发者AI素养直播课·第五期2026/09/04 周五 16:00-18:00
林华鼎-华为云AI开发者运营负责人;蒋春阳-华为云AI开发者案例开发专家
本期直播内容: AI工具体验营 · 第5-8课连讲。Agent-Team 多智能体协作完成毕业设计实践
回顾中 -
华为云开发者AI素养ClassRoom·第六期2026/09/08 周二 19:00-20:00
樊渊-2026华为软件挑战赛冠军
高手来了:看软挑高手解析二维排样问题—从工业难题到算法突破
回顾中
热门标签