-
1、网卡规范名称 [root@server ~]# grubby --update-kernel ALL --args net.ifnames=0 # 内核中禁止使用net.ifnames模块,这样可以让网卡显示为ethx # 后再重启reboot,使内核生效, 网卡名则显示为eth开头 2、网卡配置文件目录 ——除RHEL9外配置网卡的配置文件目录 [root@server_node ~]# cd /etc/sysconfig/network-scripts/ [root@server_node network-scripts]# vim ifcfg-eth0 [root@server_node network-scripts]# cat ifcfg-eth0 DEVICE=eth0 # 网卡名字 ONBOOT=yes # 网卡服务启动自动激活网卡 BOOTPROTO=dhcp # 网卡工作模式 NAME=eth0 # 网络链接名称 [root@server_node network-scripts]# nmcli connection reload [root@server_node network-scripts]# nmcli connection up eth0 连接已成功激活(D-Bus 活动路径:/org/freedesktop/NetworkManager/ActiveConnection/42) # 还可配置IP [root@server_node network-scripts]# vim ifcfg-eth1 [root@server_node network-scripts]# cat ifcfg-eth1 DEVICE=eth1 # 设备名字 NAME=eth_1 # 设备名称 ONBOOT=yes # 开网启动 BOOTPROTO=none # 工作方式 IPADDR1=172.25.254.100 # IP NETMASK=255.255.255.0 # 子网掩码 GATEWAY1=172.25.254.2 # 网关 DNS1=114.114.114.114 # DNS [root@server_node network-scripts]# nmcli connection reload # 法一 [root@server_node network-scripts]# nmcli connection up eth_1 [root@server_node ~]# systemctl restart NetworkManager # 法二 3、网络配置脚本 #!/bin/bash cat >/etc/sysconfig/network-scripts/ifcfg-$1 <<EOF DEVICE=$1 ONBOOT=yes BOOTPROTO=none IPADDR1=$2 NETMASK1=255.255.255.0 DNS1=114.114.114.114 GATEWAY1=172.25.254.2 NAME=$1 EOF nmcli connection reload nmcli connection up $1 ———————————————— 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 原文链接:https://blog.csdn.net/weixin_68256171/article/details/141031954
-
简要介绍Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写。Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。更多关于Kafka信息请参见:Kafka官网。硬件要求项目说明服务器TaiShan服务器CPU鲲鹏920处理器或鲲鹏916处理器磁盘分区对磁盘分区无要求网络可访问外网软件要求项目版本OpenJDK1.8.0_252Maven3.5.4Gradle4.10Kafka0.10.1.1CentOS系统项目版本CentOS7.6OS Kernel4.14.0GCC4.8.5openEuler系统项目版本openEuler20.03 LTS SP122.03 LTSOS Kernel4.19.90GCC7.3.0安装GCC挂载OS镜像。mount YOUR_OS.iso /media -o loop说明YOUR_OS.iso用实际的iso包名代替。备份repo文件,清空“/etc/yum.repos.d/”目录文件。cp -r /etc/yum.repos.d /etc/yum.repos.d-bak rm /etc/yum.repos.d/*须知请确认已经备份所有repo文件后,在rm删除界面输入“y”表示同意删除。配置Yum本地源。打开“/etc/yum.repos.d/Local.repo”文件。vi /etc/yum.repos.d/Local.repo按“i”进入编辑模式,在文件中添加以下内容。[Local] name=Local baseurl=file:///media/ enabled=1 gpgcheck=0按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。使Yum源配置生效。yum clean all yum makecache通过Yum源安装GCC相关软件。yum -y install gcc.aarch64 gcc-c++.aarch64 gcc-gfortran.aarch64 libgcc.aarch64修改GCC(解决-fsigned-char问题)寻找GCC所在路径(一般位于“/usr/bin/gcc”)。command -v gcc更改原GCC文件的名字(例如改成gcc-impl)。mv /usr/bin/gcc /usr/bin/gcc-impl配置GCC文件。新建GCC文件。vi /usr/bin/gcc按“i”进入编辑模式,填入如下内容。#! /bin/sh /usr/bin/gcc-impl -fsigned-char "$@"按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。给GCC文件添加可执行权限。chmod +x /usr/bin/gcc确认GCC是否可用。gcc --versionCentOS:回显如下所示即为安装成功。openEuler:回显如下所示即为安装成功。修改G++(解决-fsigned-char问题)寻找G++所在路径(一般位于“/usr/bin/g++”)。command -v g++更改原G++文件的名字(例如改成g++-impl)。mv /usr/bin/g++ /usr/bin/g++-impl配置G++文件。新建G++文件。vi /usr/bin/g++按“i”进入编辑模式,填入如下内容。#! /bin/sh /usr/bin/g++-impl -fsigned-char "$@"按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。给G++文件添加可执行权限。chmod +x /usr/bin/g++确认G++是否可用。g++ --versionCentOS:回显如下所示即为安装成功。openEuler:回显如下所示即为安装成功。安装依赖通过Yum源安装依赖的相关软件。yum install -y wget vim openssl-devel zlib-devel automake libtool make libstdc++-static glibc-static git snappy snappy-deve下载并解压安装到指定目录(此处以指定“/opt/tools/installed/”目录为例)。wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u252-b09/OpenJDK8U-jdk_aarch64_linux_hotspot_8u252b09.tar.gz tar -zxf OpenJDK8U-jdk_aarch64_linux_hotspot_8u252b09.tar.gz mkdir -p /opt/tools/installed/ mv jdk8u252-b09 /opt/tools/installed/配置Java环境变量。打开“/etc/profile”文件。vi /etc/profile按“i”进入编辑模式,在文件末尾添加如下代码。export JAVA_HOME=/opt/tools/installed/jdk8u252-b09 export PATH=$JAVA_HOME/bin:$PATH按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。使修改的环境变量生效。source /etc/profile检查OpenJDK是否安装成功。java -version回显如下所示即为安装成功。下载Gradle源码并安装到指定目录(此处以指定“/opt/tools/installed/”目录为例)。wget https://downloads.gradle.org/distributions/gradle-4.10-bin.zip --no-check-certificate unzip gradle-4.10-bin.zip mv gradle-4.10 /opt/tools/installed/修改Gradle环境变量。打开“/etc/profile”文件。vi /etc/profile按“i”进入编辑模式,在文件末尾增加下面代码。export GRADLE_HOME=/opt/tools/installed/gradle-4.10 export PATH=$GRADLE_HOME/bin:$PATH按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。使修改的环境变量生效。source /etc/profile
-
简要介绍本文档重点介绍软件部署步骤,并不涉及软件源码编译步骤。文档中使用的软件都是从官网下载获取,这类软件多基于x86环境编译得到,软件内如果包含非跨平台语言(如C/C++)实现的模块,直接在TaiShan服务器上使用会出现不兼容的问题,需下载对应软件源码包进行编译,然后部署。但不管软件包是在哪种环境下编译得到,部署步骤都是一致的。建议的版本软件版本获取方法OpenJDKjdk8u252-b09Arm: cid:link_2x86: cid:link_3ZooKeeper3.4.6在官网下载所需版本的软件包。下载地址:cid:link_5Kafka2.11-2.2.0在官网下载所需版本的软件包。下载地址:cid:link_6硬件要求最低配置:任意CPU、一根内存(大小不限)、一块硬盘(大小不限)。具体配置视实际应用场景而定。操作系统要求适用于CentOS 7.4~7.6、openEuler 20.03~22.03操作系统。依次登录所有节点,将节点的主机名分别修改为server1、agent1、agent2、agent3。hostnamectl set-hostname 主机名 --static登录所有节点,添加集群所有节点的“地址-主机名”映射关系。打开“/etc/hosts”文件。vi /etc/hosts按“i”进入编辑模式,在hosts文件中添加以下内容。IPaddress1 server1 IPaddress2 agent1 IPaddress3 agent2 IPaddress4 agent3按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。登录所有节点,关闭防火墙。systemctl stop firewalld.service systemctl disable firewalld.service登录所有节点,配置SSH免密登录。生成密钥,遇到提示时,按“Enter”。ssh-keygen -t rsa在每台机器上配置SSH免密登录(包括配置自身节点的免密)。ssh-copy-id -i ~/.ssh/id_rsa.pub root@节点IP登录所有节点,安装OpenJDK。下载OpenJDK并解压到“/usr/local”目录。ARM:wget cid:link_2 tar -zxf OpenJDK8U-jdk_aarch64_linux_hotspot_8u252b09.tar.gz -C /usr/localx86:wget cid:link_3 tar -zxf OpenJDK8U-jdk_x64_linux_hotspot_8u252b09.tar.gz -C /usr/local将解压后的JDK目录的所属用户、所属用户组变更为“root”。chown -R root /usr/local/jdk8u252-b09 chgrp -R root /usr/local/jdk8u252-b09配置环境变量。打开“/etc/profile”文件。vi /etc/profile按“i”进入编辑模式,添加以下内容。export JAVA_HOME=/usr/local/jdk8u252-b09 export PATH=$JAVA_HOME/bin:$PATH按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。使环境变量生效。source /etc/profile检查OpenJDK是否安装成功。java -version回显如下所示即为安装成功。下载并解压ZooKeeper登录agent1节点,进入“/usr/local”目录,下载zookeeper-3.4.6.tar.gz,并解压。cd /usr/local wget http://archive.apache.org/dist/zookeeper/zookeeper-3.4.6/zookeeper-3.4.6.tar.gz tar -zxvf zookeeper-3.4.6.tar.gz建立软链接,便于后期版本更换。ln -s zookeeper-3.4.6 zookeeper添加ZooKeeper到环境变量登录agent1节点,打开配置文件。vi /etc/profile按“i”进入编辑模式,添加ZooKeeper到环境变量。export ZOOKEEPER_HOME=/usr/local/zookeeper export PATH=$ZOOKEEPER_HOME/bin:$PATH按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。修改ZooKeeper配置文件登录agent1节点,进入ZooKeeper所在目录。cd /usr/local/zookeeper/conf拷贝配置文件。cp zoo_sample.cfg zoo.cfg修改通用配置。打开文件。vi zoo.cfg按“i”进入编辑模式,修改数据目录。dataDir=/usr/local/zookeeper/tmp可选:添加AdminServer配置。(此配置项于ZooKeeper 3.5.0版本引入,低于此版本可跳过此步骤)admin.enableServer=false在文件末尾添加如下代码,其中server.1~server.3是部署ZooKeeper的节点。server.1=agent1:2888:3888 server.2=agent2:2888:3888 server.3=agent3:2888:3888按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。添加JMX配置。编辑文件zkServer.sh。vi /usr/local/zookeeper/bin/zkServer.sh按“i”进入编辑模式,添加JMX配置至图示位置。JMXDISABLE=true说明若使用ZooKeeper 3.6及以上版本,则可在“/usr/local/zookeeper/conf”目录下新建文件zookeeper-env.sh,将JMX配置设置在此文件中,便于后续配置调整。按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。可选:添加JVM配置。说明若使用ZooKeeper 3.6及以上版本,相关配置已预先设置完毕,可跳过此步骤。编辑文件zkEnv.sh。vi /usr/local/zookeeper/bin/zkEnv.sh按“i”进入编辑模式,添加如下配置至文件末尾。# default heap for zookeeper server ZK_SERVER_HEAP="${ZK_SERVER_HEAP:-10000}" export SERVER_JVMFLAGS="-Xmx${ZK_SERVER_HEAP}m $SERVER_JVMFLAGS" # default heap for zookeeper client ZK_CLIENT_HEAP="${ZK_CLIENT_HEAP:-256}" export CLIENT_JVMFLAGS="-Xmx${ZK_CLIENT_HEAP}m $CLIENT_JVMFLAGS"按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。创建“tmp”目录作数据目录。mkdir /usr/local/zookeeper/tmp在“tmp”目录中创建一个空文件,并向该文件写入myid内容。touch /usr/local/zookeeper/tmp/myid echo 1 > /usr/local/zookeeper/tmp/myid配置文件权限。chmod 750 /usr/local/zookeeper find /usr/local/zookeeper/bin -name "*.sh" | xargs -i chmod 500 {} find /usr/local/zookeeper/conf -name "*" -type f | xargs -i chmod 600 {} chown -R root /usr/local/zookeeper-3.4.6 chgrp -R root /usr/local/zookeeper-3.4.6同步配置到其它节点登录agent1节点,将配置好的ZooKeeper拷贝到其它节点。scp -r /usr/local/zookeeper-3.4.6 root@agent2:/usr/local scp -r /usr/local/zookeeper-3.4.6 root@agent3:/usr/local登录agent2、agent3,创建软链接并修改myid内容。agent2:cd /usr/local ln -s zookeeper-3.4.6 zookeeper echo 2 > /usr/local/zookeeper/tmp/myidagent3:cd /usr/local ln -s zookeeper-3.4.6 zookeeper echo 3 > /usr/local/zookeeper/tmp/myid使环境变量生效。source /etc/profile在agent2和agent3节点重复执行1~4,配置ZooKeeper的环境变量。请参见《Kafka 移植指南(CentOS&openEuler)》编译出Kafka软件部署包。将Kafka软件部署包放置于agent1节点的“/usr/local”目录下,并解压。mv kafka_2.11-2.2.0.tgz /usr/local tar -zxvf kafka_2.11-2.2.0.tgz说明若Kafka软件部署包名称不是kafka_2.11-2.2.0.tgz,请根据实际情况修改命令。建立软链接,便于后期版本更换。ln -s kafka_2.11-2.2.0 kafka说明若Kafka软件目录名称不是kafka_2.11-2.2.0,请根据实际情况修改命令。打开配置文件。vi /etc/profile按“i”进入编辑模式,添加Kafka到环境变量。export KAFKA_HOME=/usr/local/kafka export PATH=$KAFKA_HOME/bin:$PATH按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。环境变量生效。source /etc/profile说明Kafka所有的配置文件都在“$KAFKA_HOME/config”目录下,修改以下配置文件前,需要切换到“$KAFKA_HOME/config”目录。cd $KAFKA_HOME/config修改server.properties文件。打开文件。vi server.properties按“i”进入编辑模式,内容修改如下。broker.id=0 port=6667 host.name=agent1 log.dirs=/data/data1/kafka,/data/data2/kafka,/data/data3/kafka,/data/data4/kafka,/data/data5/kafka,/data/data6/kafka,/data/data7/kafka,/data/data8/kafka,/data/data9/kafka,/data/data10/kafka,/data/data11/kafka,/data/data12/kafka zookeeper.connect=agent1:2181,agent2:2181,agent3:2181说明其中,参数host.name可填写agent1对应的IP地址,log.dirs为实际的存储数据路径。按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。同步配置到其它节点。拷贝kafka_2.11-0.10.1.1到agent2、3的“/usr/local”目录下。scp -r /usr/local/kafka_2.11-2.2.0 root@agent2:/usr/local scp -r /usr/local/kafka_2.11-2.2.0 root@agent3:/usr/local登录到agent2、agent3节点,为kafka_2.11-2.2.0建立软链接。cd /usr/local ln -s kafka_2.11-2.2.0 kafka修改节点相关参数。登录agent2,修改server.properties。vi server.properties按“i”进入编辑模式,内容修改如下。broker.id=1 host.name=agent2 #可填对应的IP地址按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。登录agent3,修改server.properties。vi server.properties按“i”进入编辑模式,内容修改如下。broker.id=2 host.name=agent3 #可填对应的IP地址按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。分别在agent1~3上启动Kafka。cd /usr/local/kafka/bin ./kafka-server-start.sh -daemon ../config/server.properties观察进程是否都正常启动。jps说明agent节点应启动的进程以agent1为准,server无进程。分别在agent1~3上停止Kafka。cd /usr/local/kafka/bin ./kafka-server-stop.sh
-
简要介绍Spark是用于大规模数据处理的统一分析引擎,具有可伸缩、基于内存计算等特点,已经成为轻量级大数据快速处理的统一平台,各种不同的应用,如实时流处理、机器学习、交互式查询等,都可以通过Spark建立在不同的存储和运行系统上。更多关于Spark信息请参见:cid:link_0。开发语言:Scala硬件要求项目说明服务器TaiShan服务器CPU鲲鹏920处理器或鲲鹏916处理器磁盘分区对磁盘分区无要求网络可访问外网软件要求项目版本OpenJDK1.8.0_252Maven3.5.4R3.1.1Spark2.3.0CentOS系统项目版本CentOS7.6OS Kernel4.14.0GCC4.8.5openEuler系统项目版本openEuler20.03 LTS SP122.03 LTSOS Kernel4.19.90GCC7.3.0安装GCC挂载OS镜像。mount YOUR_OS.iso /media -o loop说明YOUR_OS.iso用实际的iso包名代替。备份repo文件,清空“/etc/yum.repos.d/”目录文件。cp -r /etc/yum.repos.d /etc/yum.repos.d-bak rm /etc/yum.repos.d/*须知请确认已经备份所有repo文件后,在rm删除界面输入“y”表示同意删除。配置Yum本地源。打开“/etc/yum.repos.d/Local.repo”文件。vi /etc/yum.repos.d/Local.repo按“i”进入编辑模式,在文件中添加以下内容。[Local] name=Local baseurl=file:///media/ enabled=1 gpgcheck=0按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。使Yum源配置生效。yum clean all yum makecache通过Yum源安装GCC相关软件。yum -y install gcc.aarch64 gcc-c++.aarch64 gcc-gfortran.aarch64 libgcc.aarch64修改GCC(解决-fsigned-char问题)寻找GCC所在路径(一般位于“/usr/bin/gcc”)。command -v gcc更改原GCC文件的名字(例如改成gcc-impl)。mv /usr/bin/gcc /usr/bin/gcc-impl配置GCC文件。新建GCC文件。vi /usr/bin/gcc按“i”进入编辑模式,填入如下内容。#! /bin/sh /usr/bin/gcc-impl -fsigned-char "$@"按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。给GCC文件添加可执行权限。chmod +x /usr/bin/gcc确认GCC是否可用。gcc --versionCentOS:回显如下所示即为安装成功。openEuler:回显如下所示即为安装成功。修改G++(解决-fsigned-char问题)寻找G++所在路径(一般位于“/usr/bin/g++”)。command -v g++更改原G++文件的名字(例如改成g++-impl)。mv /usr/bin/g++ /usr/bin/g++-impl配置G++文件。新建G++文件。vi /usr/bin/g++按“i”进入编辑模式,填入如下内容。#! /bin/sh /usr/bin/g++-impl -fsigned-char "$@"按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。给G++文件添加可执行权限。chmod +x /usr/bin/g++确认G++是否可用。g++ --version下载并解压安装到指定目录(此处以指定“/opt/tools/installed/”目录为例)。wget https://github.com/AdoptOpenJDK/openjdk8-binaries/releases/download/jdk8u252-b09/OpenJDK8U-jdk_aarch64_linux_hotspot_8u252b09.tar.gz tar -zxf OpenJDK8U-jdk_aarch64_linux_hotspot_8u252b09.tar.gz mkdir -p /opt/tools/installed/ mv jdk8u252-b09 /opt/tools/installed/配置Java环境变量。打开“/etc/profile”文件。vi /etc/profile按“i”进入编辑模式,在文件末尾添加如下代码。export JAVA_HOME=/opt/tools/installed/jdk8u252-b09 export PATH=$JAVA_HOME/bin:$PATH按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。使修改的环境变量生效。source /etc/profile检查OpenJDK是否安装成功。java -version回显如下所示即为安装成功。下载并安装到指定目录(此处以指定“/opt/tools/installed/”目录为例)。wget https://archive.apache.org/dist/maven/maven-3/3.5.4/binaries/apache-maven-3.5.4-bin.tar.gz --no-check-certificate tar -zxf apache-maven-3.5.4-bin.tar.gz mkdir -p /opt/tools/installed mv apache-maven-3.5.4 /opt/tools/installed/修改Maven环境变量。打开“/etc/profile”文件。vi /etc/profile按“i”进入编辑模式,在末尾增加如下代码。export MAVEN_HOME=/opt/tools/installed/apache-maven-3.5.4 export PATH=$MAVEN_HOME/bin:$PATH按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。使修改的环境变量生效。source /etc/profile检查Maven是否安装成功。mvn -v回显如下所示即为安装成功。修改Maven配置文件中的本地仓路径、远程仓。打开配置文件。vi /opt/tools/installed/apache-maven-3.5.4/conf/settings.xml说明本地仓库地址默认在“~/.m2/”目录下,如果想修改成指定目录,则修改<localRepository>标签,没有特殊需求,无需修改该参数。按“i”进入编辑模式,远程仓库配置(修改成自己搭建的Maven仓库,如果没有,可以按照下面示例配置),在<mirrors>标签内添加以下内容。<mirror> <id>huaweimaven</id> <name>huawei maven</name> <url>https://mirrors.huaweicloud.com/repository/maven/</url> <mirrorOf>central</mirrorOf> </mirror>可选:当编译环境不能访问外网,需要在settings.xml配置文件中添加代理配置,具体内容如下。<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>按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。CentOS:回显如下所示即为安装成功。openEuler:回显如下所示即为安装成功 安装依赖通过Yum源安装依赖的相关软件。yum install -y wget vim openssl-devel zlib-devel automake libtool make libstdc++-static glibc-static git snappy snappy-devel fuse fuse-devel下载R语言安装包。wget http://cran.rstudio.com/src/base/R-3/R-3.1.1.tar.gz解压安装包。tar -zxf R-3.1.1.tar.gz安装依赖库。yum -y install libXt-devel.aarch64 readline-devel.aarch64进入解压后目录。cd R-3.1.1执行编译。./configure --enable-R-shlib --enable-R-static-lib --with-libpng --with-jpeglib --prefix=/opt/tools/installed/R-3.1.1 make all -j10 && make install配置R语言环境变量。export R_HOME=/opt/tools/installed/R-3.1.1 export PATH=$R_HOME/bin:$PATH原始jarso文件commons-crypto-1.0.0.jarlibcommons-crypto.sojline-2.12.1.jarlibjansi.soleveldbjni-all-1.8.jarlibleveldbjni.sonetty-all-4.1.17.Final.jarlibnetty_transport_native_epoll_x86_64.soscala-compiler-2.11.12.jarlibjansi.sosnappy-java-1.1.2.6.jarlibsnappyjava.solz4-java-1.4.0.jarliblz4-java.so下载Spark安装包。wget https://github.com/apache/spark/archive/v2.3.0.tar.gz解压安装包。tar -zxf v2.3.0.tar.gz进入解压后目录。cd spark-2.3.0修改pom.xml。打开文件。vi pom.xml按“i”进入编辑模式,在<repositories>标签的第一位添加鲲鹏Maven仓库源。<repository> <id>kunpengmaven</id> <name>kunpeng maven</name> <url>https://mirrors.huaweicloud.com/kunpeng/maven</url> </repository>在<pluginRepository>标签第一位添加华为Maven源。<pluginRepository> <id>huaweicloud-plugin</id> <url>https://mirrors.huaweicloud.com/repository/maven</url> </pluginRepository>按“Esc”键,输入:wq!,按“Enter”保存并退出编辑。执行编译。dev/make-distribution.sh --tgz -Pyarn,hive,hive-thriftserver,sparkr编译完成后会在源码目录下生成编译好的包spark-2.3.0-bin-2.6.5.tgz。
-
简要介绍HBase–Hadoop Database,是一个高可靠、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群,海量数据的快速随机访问。更多关于HBase信息请参见:https://hbase.apache.org。开发语言:Java一句话描述:分布式数据库说明CentOS 7.6操作系统下HBase 2.1.0版本,建议使用鲲鹏应用迁移工具专项软件迁移功能,一键迁移至鲲鹏平台。具体操作请参见专项软件迁移。openEuler 20.03 LTS SP1、openEuler 22.03 LTS操作系统下HBase 2.1.0版本,可以参考本文档的操作指导迁移至鲲鹏平台。硬件要求项目说明服务器TaiShan服务器CPU鲲鹏920处理器或鲲鹏916处理器磁盘分区对磁盘分区无要求网络可访问外网软件要求项目版本OpenJDK1.8.0_252Maven3.5.4HBase2.1.0Protobuf2.5.0CentOS系统项目版本CentOS7.6OS Kernel4.14.0GCC4.8.5openEuler系统项目版本openEuler20.03 LTS SP122.03 LTSOS Kernel4.19.90GCC7.3.0
-
安装完dotnet后执行dotnet --info报错, 执行dotnet --list 又没问题 ,大概意思libicuil8n..so.50这个文件有问题,但又找不到正常文件cannot get symbol ucol_setMaxVariable_50 from libicui18n error:/lib64/libicuil8n..so.50: undefined symbol:ucol_setMaxVariable_50 Aborted
-
调度文件无法修改,没法保存
-
大神们帮忙看看,很奇怪。
-
【问题背景】调整CentOS的监控周期,原先默认为10分钟【执行方法】1.进入/etc/cron.d/sysstat路径2.找到包含以下内容的行:*/10 * * * * root command -v debian-sa1 > /dev/null && debian-sa1 1 1把10改为需要的分钟数3.修改后保存文件,重启sysstat服务以使修改生效:sudo service sysstat restart修改前:修改后:
-
概述:kms: Kms(Key Management Service): 是微软官方认可的一种系统激活方式。这个激活方式主要用于企业批量激活计算机的windows和officevlmcsd:vlmcsd:'vlmcsd'是一个开源项目,它是一个 KMS(Key Management Service)的仿真器。KMS 是 Microsoft 为批量激活 Windows 和 Office 产品提供的服务,而 'vlmcsd' 则可以模拟这种服务。 具体来说,vlmcsd 可以接受kms请求并返回激活数据,这使得你可以在没有直接从 microsoft 获取授权的情况下激活windows 或office。具体步骤1、下载vlmcsd进行配置12345678910111213141516171819202122232425262728wget https://github.com/Wind4/vlmcsd/releases/download/svn1113/binaries.tar.gz #下载vlmcsd压缩包 tar xf binaries.tar.gz #解压到当前目录 cp /root/binaries/Linux/intel/static/vlmcsd-x64-musl-static /usr/bin/kms #将vlmcsd复制到/usr/bin目录下,并更名为kms /usr/bin/kms #运行kms ps -ef |grep kms #查看kms是否运行 ss -lntup | grep kms #查看kms端口是否正常 vi /usr/lib/systemd/system/kms.service #创建服务文件,方便通过systemctl管理 ############################################################ [Unit] Description=KMS Server By vlmcsd After=network.target [Service] Type=forking PIDFile=/run/kms.pid ExecStart=/usr/bin/kms -p /run/kms.pid ExecStop=/bin/kill -HUP $MAINPID PrivateTmp=true [Install] WantedBy=multi-user.target ############################################################ pkill kms #结束kms进程 systemctl daemon-reload #重新加载配置文件 systemctl enable kms.service #设置开机自启 systemctl start kms.service #启动服务 ps -ef |grep kms #查看kms是否运行 ss -lntup | grep kms #查看kms端口是否正常2、防火墙放行端口,关闭selinux12345setenforce 0 #临时关闭selinux firewall-cmd --zone=public --add-port=1688/tcp --permanent #永久放行1688端口 firewall-cmd --reload #防火墙配置重新加载 #直接关闭防火墙也可以 systemctl stop firewalld3、在window10上进行测试123456789101112#以管理员身份运行cmd C:\Windows\system32> slmgr /upk | slmgr /skms 10.0.0.55 | slmgr /ipk NPPR9-FWDCX-D2C8J-H872K-2YT43 | slmgr /ato (Windows10企业版) # /upk:卸载秘钥 # /skms:设置kms服务器的地址或域名 # /ipk:安装(指定)密钥 # /ato:执行激活 #查看激活信息的cmd命令 C:\Windows\system32> slmgr /xpr #查看激活后的到期时间 C:\Windows\system32> slmgr /dli #查看详细激活信息 C:\Windows\system32>slmgr /dlv #查看详细的产品密钥许可信息
-
一、安装下载 下载地址: https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.44-el7-x86_64.tar.gz 脚本和tar包结构 my.cnf 配置文件 [root@windp-aio opt]# cat config/my.cnf [mysql] socket=/var/lib/mysql/mysql.sock # set mysql client default chararter default-character-set=utf8 [mysqld] socket=/var/lib/mysql/mysql.sock # set mysql server port port = 3306 # set mysql install base dir basedir=/usr/local/mysql # set the data store dir datadir=/usr/local/mysql/data # set the number of allow max connnection max_connections=200 # set server charactre default encoding character-set-server=utf8 # the storage engine default-storage-engine=INNODB lower_case_table_names=1 max_allowed_packet=16M explicit_defaults_for_timestamp=true [mysql.server] user=mysql basedir=/usr/local/mysql 二、执行安装 install_mysql.sh 安装脚本 #! /bin/bash # # Author: kangll # CreateTime: 2023-11-10 # Desc: install mysql5.7.44 # echo "******** INSTALL MYSQL *********" BASEDIR=$(cd "$(dirname "$0")"; pwd) # 卸载原有的mariadb OLD_MYSQL=`rpm -qa|grep mariadb` profile=/etc/profile for mariadb in $OLD_MYSQL do rpm -e --nodeps $mariadb done # 删除原有的my.cnf rm -rf /etc/my.cnf #添加用户组 用户 groupadd mysql useradd -g mysql mysql #解压mysql包并修改名称 tar -zxvf $BASEDIR/mysql-5.7.44-el7-x86_64.tar.gz -C /usr/local mv /usr/local/mysql-5.7.44-el7-x86_64 /usr/local/mysql #更改所属的组和用户 chown -R mysql /usr/local/mysql chgrp -R mysql /usr/local/mysql mkdir -p /usr/local/mysql/data mkdir -p /usr/local/mysql/log chown -R mysql:mysql /usr/local/mysql/data #粘贴配置文件my.cnf 内容见八 中的 my.cnf cp $BASEDIR/config/my.cnf /usr/local/mysql/ # 安装mysql /usr/local/mysql/bin/mysql_install_db --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ # 设置文件及目录权限: cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld chown 777 /usr/local/mysql/my.cnf chmod +x /etc/init.d/mysqld mkdir /var/lib/mysql chmod 777 /var/lib/mysql # 启动mysql /etc/init.d/mysqld start # 设置开机启动 chkconfig --level 35 mysqld on chmod +x /etc/rc.d/init.d/mysqld chkconfig --add mysqld # 修改环境变量 ln -s /usr/local/mysql/bin/mysql /usr/bin ln -s /var/lib/mysql/mysql.sock /tmp/ cat > /etc/profile.d/mysql.sh<<EOF export PATH=$PATH:/usr/local/mysql/bin EOF mysqlPw=`sed -n 2p /root/.mysql_secret` mysqlPwTMP=`sed -n 2p /root/.mysql_secret`1 mysqlNewPw=Winner001 hostname=`"hostname"` #ssh $hostname "source /etc/profile;java -version" ssh $hostname "source /etc/profile;mysqladmin -h127.0.0.1 -uroot -p'$mysqlPw' password '$mysqlPwTMP';mysqladmin -h127.0.0.1 -uroot -p'$mysqlPwTMP' password '$mysqlNewPw';exit" echo "******** MYSQL installation completed ******* 执行完脚本 成功登录 ssh 操作需要免密 附上 本机免密脚本 ssh_keygen.sh #! /bin/bash # #Author: kangll #CreateTime: 2023-11-10 #Desc: 本机免密 # set -x # get ip ip=$(ip addr show | grep -E 'inet [0-9]' | awk '{print $2}' | awk -F '/' '{print $1}' | sed -n '$p') ssh_hosts=${ip} ssh_networkname=(windp-aio) ssh_passwd=winner@001 # 定义修改/etc/hosts文件的方法 #echo "开始修改地址映射" #for ((i=0;i<${#ssh_hosts[*]};i++));do # sed -i '/^'"${ssh_hosts[$i]}"'/d' /etc/hosts # echo "尝试连接: ${ssh_networkname[$i]}" # timeout 5 ssh root@${ssh_networkname[$i]} "echo ${ssh_networkname[$i]}: 'This is success!'" # if [[ $? -ne 0 ]];then # echo "添加地址映射:${ssh_hosts[$i]} ${ssh_networkname[$i]}" # echo "${ssh_hosts[$i]} ${ssh_networkname[$i]}" >> /etc/hosts # fi #done expect -v if [ `echo $?` -ne 0 ];then echo "安装expect命令" yum install -y expect fi ################################ # ################################ create_ssh_pub(){ echo "生成本地ssh公钥" /usr/bin/expect << eof # 设置捕获字符串后,期待回复的超时时间 set timeout 30 spawn ssh-keygen -t rsa -b 1024 ## 开始进连续捕获 expect { ".ssh/id_rsa)" { send "\n"; exp_continue } "Overwrite (y/n)?" { send "y\n"; exp_continue } "no passphrase):" { send "\n"; exp_continue } "passphrase again:" { send "\n"; exp_continue } } eof } if [ ! -f /root/.ssh/id_rsa.pub ];then create_ssh_pub fi ################################# # 定义复制ssh公钥方法 ################################# config_copy_ssh(){ echo "复制公钥到对应的主机上" /usr/bin/expect << eof # 设置捕获字符串后,期待回复的超时时间 set timeout 30 spawn ssh-copy-id -i /root/.ssh/id_rsa.pub $1@$2 ## 开始进连续捕获 expect { "connecting (yes/no)?" { send "yes\n"; exp_continue } "s password:" { send "${ssh_passwd}\n"; exp_continue } } eof } for name in ${ssh_networkname[*]};do timeout 5 ssh root@${name} "echo ${name}: 'This is success!'" if [[ $? -ne 0 ]];then echo "复制文件到: ${name}" config_copy_ssh root ${name} > /dev/null fi ———————————————— 版权声明:本文为CSDN博主「阿龙先生啊」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。 原文链接:https://blog.csdn.net/qq_35995514/article/details/134350572
-
SELinux(Security-Enhanced Linux)是美国国家安全局(NSA)对于强制访问控制的实现,是Linux历史上最杰出的新安全子系统。NSA在Linux社区的帮助下开发了一种访问控制体系,在这种访问控制体系的限制下,进程只能访问那些在他的任务中所需要文件。SELinux 默认安装在 Fedora 和 Red Hat Enterprise Linux 上,也可以作为其他发行版上容易安装的包得到。SELinux 是2.6版本的Linux内核中提供的强制访问控制(MAC)系统。对于可用的 Linux安全模块来说,SELinux 是功能最全面且测试最充分的,它是在20年的MAC研究基础上建立的。SELinux在类型强制服务器中合并了多级安全性或一种可选的多类策略,并采用了基于角色的访问控制概念。大部分使用 SELinux 的人使用的都是 SELinux 就绪的发行版,例如 Fedora、Red Hat Enterprise Linux (RHEL)、Debian或 Centos。它们都是在内核中启用 SELinux 的,并且提供一个可定制的安全策略,还提供很多用户层的库和工具,它们都可以使用 SELinux 的功能。SELinux是一种基于域-类型模型(domain-type)的强制访问控制(MAC)安全系统,它由NSA编写并设计成内核模块包含到内核中,相应的某些安全相关的应用也被打了SELinux的补丁,最后还有一个相应的安全策略。任何程序对其资源享有完全的控制权。假设某个程序打算把含有潜在重要信息的文件扔到/tmp目录下,那么在DAC情况下没人能阻止他。SELinux提供了比传统的UNIX权限更好的访问控制。至于CentOS 7为什么要默认禁用SELinux,这可能是由于SELinux虽然提供了强大的安全功能,但是使用起来相对复杂,需要专门的管理员来配置和管理。对于一些小型的或者不需要额外安全保障的系统,使用默认的Linux权限可能就足够了,因此默认情况下可能会禁用SELinux。控制台里面输入 setenforce 0 可以关闭 selinux
-
由于CentOS 7.6系统libvirt-4.5.0存在bug,所以使用virt-manager时会触发一些报错,例如:Error polling connection 'qemu:///system':internal error: Socket 4314 can't be handled (max socket is 4095),如果一定要用 virt-manager操作,可按照以下所述安装升级libvirt 5.6.0版本。问题 已安装libvirt版本 打开virt-manager后,界面提示“Error polling connection 'qemu:///system':internal error: Socket 4314 can't be handled (max socket is 4095)”的报错。 安装一、安装edk2 1) wget https://www.kraxel.org/repos/firmware.repo -O /etc/yum.repos.d/firmware.repo 2)yum clean all && yum makecache 3)yum -y install edk2.git-aarch64 二、安装依赖包 yum -y install gluster* libxml2-devel readline-devel ncurses-devel libtasn1-devel gnutls-devel libattr-devel libblkid-devel augeas systemd-devel libpciaccess-devel yajl-devel sanlock-devel libpcap-devel libnl3-devel libselinux-devel dnsmasq radvd cyrus-sasl-devel libacl-devel parted-devel device-mapper-devel xfsprogs-devel librados2-devel librbd1-devel glusterfs-api-devel glusterfs-devel numactl-devel libcapng-devel fuse-devel netcf-devel libcurl-devel audit-libs-devel systemtap-sdt-devel nfs-utils dbusdevel scrub numad libcap-ng-devel dbus-devel三、获取源码包 在线执行以下命令 wget https://libvirt.org/sources/libvirt-5.6.0-1.fc30.src.rpm --no-check-certificate四、编译安装 1) 安装获取的源码包 rpm -ivh libvirt-5.6.0-1.fc30.src.rpm 2) 编译生成rpm包 cd /root/rpmbuild/SPECS rpmbuild -ba libvirt.spec 3) 安装rpm包 cd /root/rpmbuild/RPMS/aarch64/ yum -y install *.rpm4) 修改配置文件 在/etc/libvirt/QEMU.conf文件中添加以下内容 nvram = ["/usr/share/edk2.git/aarch64/QEMU_EFI-pflash.raw:/usr/share/edk2.git/aarch64/vars-template-pflash.raw"] 5) 关闭SELinux(临时) setenforce 0 6) 重启libvirtd服务 systemctl restart libvirtd.service五、验证环境 libvirtd --version 参考来源:https://www.cnblogs.com/lin-wang/p/15750165.html
-
Centos Stream是Centos 8之后一个滚动发布的Linux发行版。在2021年年底,Centos 8将会停止维护,届时Centos Stream将作为RHEL的上游分支进行持续更新。在红帽开源开发模式中,红帽在发布红帽企业Linux新版本前,会先在CentOS Stream上开发红帽企业Linux源代码,使CentOS Stream成为红帽企业Linux未来版本的预览。建议增加Centos Stream镜像。官方主页: cid:link_0
推荐直播
-
TinyEngine低代码引擎系列.第1讲——低代码浪潮之下,带你走进TinyEngine
2024/11/11 周一 16:00-18:00
李老师 高级前端开发工程师
低代码浪潮之下,带你走进TinyEngine。李旭宏老师将从低代码的发展趋势、TinyEngine的项目介绍,三方物料组件的使用、跨技术栈的使用、源码生成能力的差异性对比等多个方面带大家对TinyEngine低代码引擎有一个更清晰的认知和了解。
即将直播 -
0代码智能构建AI Agent——华为云AI原生应用引擎的架构与实践
2024/11/13 周三 16:30-18:00
苏秦 华为云aPaaS DTSE技术布道师
大模型及生成式AI对应用和软件产业带来了哪些影响?从企业场景及应用开发视角,面向AI原生应用需要什么样的工具及平台能力?企业要如何选好、用好、管好大模型,使能AI原生应用快速创新?本期直播,华为云aPaaS DTSE技术布道师苏秦将基于华为云自身实践出发,深入浅出地介绍华为云AI原生应用引擎,通过分钟级智能生成Agent应用的方式帮助企业完成从传统应用到智能应用的竞争力转型,使能千行万业智能应用创新。
去报名
热门标签