Linux ARM架构_安装JDK8-银河麒麟V10 Kylin Linux

Posted 枫树湾河桥

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux ARM架构_安装JDK8-银河麒麟V10 Kylin Linux相关的知识,希望对你有一定的参考价值。

原文链接:https://blog.csdn.net/a767815662/article/details/124579939

1、官网下载aarch64架构jdk包
2、linux服务器中创建java文件夹,方便后期快速寻找
3、将jdk包传输到Linux系统中的/usr/local/java目录下
4、查看linux机器中是否有安装jdk8
5、查看java安装文件
6、卸载OpenJDK
7、校验卸载OpenJDK是否成功
8、安装JDK8
8.1 解压下载好的tar.gz文件
8.2 配置Java环境变量
9、测试JDK 是否安装成功
大家好,我是星仔。本博客收录于《华星详谈-学习中心》。本学习中心收集了Java整个技术体系的所有技术要点。每篇博客后面或者知识点结尾都附带有面试题,提供给大家巩固本章内容。

为各位同胞们能够系统性的掌握整个Java技术体系而建立的学习中心。星仔正在努力的更新学习中心中的内容。望诸君共勉!!!

本博客是基于银河麒麟V10(Kylin Linux Advanced Server V10 (Tercel))操作系统环境下进行安装,故先去JDK官网上下载aarch64架构的jdk包。

1、官网下载aarch64架构jdk包
建议在windows服务器下下载好对应的包之后再上传上去。

官网下载地址:https://www.oracle.com/java/technologies/downloads/#java8

选择RAM架构的包,进行下载

 

现在下载jdk包要先进行登录注册,要是没有注册的话填写下信息直接注册。


2、linux服务器中创建java文件夹,方便后期快速寻找
cd /usr/local/
mkdir java
1
2
3、将jdk包传输到Linux系统中的/usr/local/java目录下
一般本人使用的是xftp工具进行文件的上传

4、查看linux机器中是否有安装jdk8
一般的来说,新linux服务器都会默认安装有OpenJDK,此时我们需要先把他删除掉

java -version
1


5、查看java安装文件
rpm -qa|grep java
1


6、卸载OpenJDK
.noarch可以不用删除,其他通过rpm -qa|grep java命令查询的文件都删掉

rpm -e --nodeps java-11-openjdk-headless-11.0.6.10-4.ky10.ky10.aarch64
rpm -e --nodeps java-11-openjdk-11.0.6.10-4.ky10.ky10.aarch64
rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.242.b08-1.h5.ky10.aarch64
rpm -e --nodeps java-1.8.0-openjdk-1.8.0.242.b08-1.h5.ky10.aarch64
1
2
3
4
7、校验卸载OpenJDK是否成功
通过java -version 命令,如果没有出现java 的版本信息则说明已经卸载成功

[root@app--0002 java]# java -version
-bash: /usr/bin/java: 没有那个文件或目录
1
2
8、安装JDK8
8.1 解压下载好的tar.gz文件
tar -zxvf jdk-8u321-linux-aarch64.tar.gz
1
解压完成后


8.2 配置Java环境变量
/etc/profile文件的改变会涉及到系统的环境,也就是有关Linux环境变量的东西,所以我们要将jdk配置到/etc/profile,才可以在任何一个目录访问jdk。

首先执行以下命令,打开/etc/profile文件

vim /etc/profile
1
按i进入编辑,在profile文件尾部添加如下内容,其中JAVA_HOME为jdk的安装路径,我这里是/usr/local/java/jdk1.8.0_321路径下

export JAVA_HOME=/usr/local/java/jdk1.8.0_321
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export JAVA_PATH=$JAVA_HOME/bin:$JRE_HOME/bin
export PATH=$PATH:$JAVA_PATH
1
2
3
4
5

然后保存并退出编辑
首先按Esc,然后输入 :wq 进行保存并退出

最后通过命令source /etc/profile让profile文件立即生效

source /etc/profile
1
9、测试JDK 是否安装成功
java -version
1

 

ARM架构-银河麒麟v10-server离线安装Harbor

​​​​​​​

咱也刚接触Harbor,在x86上部署倒是没什么问题,在arm上部署还是费了一些事的,趟了一些小坑,基本填平,小白学习中,请多指教。

目录

1. 安装docker-compose环境

2.harbor离线安装准备

3.Https方式部署

3.1 生成CA证书私钥

3.2 生成CA证书

3.3 生成一个x509 v3扩展文件

3.4 使用该v3.ext文件为您的Harbor主机生成证书

3.4 重新启动Docker Engine

4. 修改harbor.yml配置文件

5. 执行harbor部署

6. 查看harbor安装情况

7. redis一直处于restarting

8. hosts中配置harbor域名

9. 在控制台登录harbor


1. 安装docker-compose环境

安装docker-compose

cd /root/k8s/docker-compose/
cp ./docker-compose-linux-aarch64 ./docker-compose
mv docker-compose /usr/local/bin/
chmod +x /usr/local/bin/docker-compose
docker-compose -v //查看版本

2.harbor离线安装准备

准备harbor离线包及部分镜像包

ps:harbor-arm安装包也是找了好久的,官方的包貌似更适配x86架构,在百度茫茫博客中找到了一个arm架构的包,倒也不是完全适配的,又后续替换了redis,补充了trivy,才算是齐备的harbor-arm安装包啦~

言归正传~Harbor有两种部署方式:http和https,经过尝试已知http方式只能部署harbor,无法登陆harbor仓库,对于我而言,并不能解决我的问题,安装方式也极其简单,此处不再进行记录;https方式可以实现仓库登陆,但是配置过程更加复杂,但是没有办法,我也只能采用这种方式。

哒哒哒哒~拿到安装包的第一步当然是解压看看里面的内容!

3.Https方式部署

默认情况下,Harbor不附带证书。要配置HTTPS,必须创建SSL证书。可以使用由受信任的第三方CA签名的证书,也可以使用自签名证书。本节介绍如何使用OpenSSL创建CA,以及如何使用CA签署服务器证书和客户端证书。您可以使用其他CA提供程序,例如Let’s Encrypt。

可以以registry.harbor.com域名为例进行配置,也可以直接使用IP地址代替域名配置https,但在生成证书时有两处配置稍有不同。

官方文档:https://goharbor.io/docs/2.0.0/install-config/configure-https/

在生产环境中,您应该从CA获得证书。在测试或开发环境中,您可以生成自己的CA。要生成CA证书,请运行以下命令。

3.1 生成CA证书私钥

#创建目录保存证书(可选)
mkdir -p /root/harbor/ssl
cd /root/harbor/ssl

openssl genrsa -out ca.key 4096

3.2 生成CA证书

调整-subj选项中的值以反映您的组织。如果使用FQDN连接Harbor主机,则必须将其指定为通用名称(CN)属性。

openssl req -x509 -new -nodes -sha512 -days 3650 \\
 -subj "/C=CN/ST=Beijing/L=Beijing/O=example/OU=Personal/CN=registry.harbor.com" \\
 -key ca.key \\
 -out ca.crt
 
 
 
如果使用IP地址,需要在执行以上命令前执行以下操作:

cd /root
openssl rand -writerand .rnd
cd -

生成服务器证书

证书通常包含一个.crt文件和一个.key文件,例如yourdomain.com.crt和yourdomain.com.key。

1、生成私钥。

openssl genrsa -out registry.harbor.com.key 4096

2、生成证书签名请求(CSR)。

调整-subj选项中的值以反映您的组织。如果使用FQDN连接Harbor主机,则必须将其指定为通用名称(CN)属性,并在密钥和CSR文件名中使用它。

openssl req -sha512 -new \\
    -subj "/C=CN/ST=Beijing/L=Beijing/O=example/OU=Personal/CN=registry.harbor.com" \\
    -key registry.harbor.com.key \\
    -out registry.harbor.com.csr

3.3 生成一个x509 v3扩展文件

无论您使用FQDN还是IP地址连接到Harbor主机,都必须创建此文件,以便可以为您的Harbor主机生成符合主题备用名称(SAN)和x509 v3的证书扩展要求。替换DNS条目以反映您的域。

cat > v3.ext <<-EOF
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth
subjectAltName = @alt_names

[alt_names]
DNS.1=registry.harbor.com
DNS.2=registry.harbor
DNS.3=harbor
EOF

如果使用ip,需要使用如下方式进行创建:

cat > v3.ext <<-EOF
authorityKeyIdentifier=keyid,issuer
basicConstraints=CA:FALSE
keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth
subjectAltName = IP:192.168.93.9
EOF

3.4 使用该v3.ext文件为您的Harbor主机生成证书

将yourdomain.comCRS和CRT文件名中的替换为Harbor主机名。

openssl x509 -req -sha512 -days 3650 \\
    -extfile v3.ext \\
    -CA ca.crt -CAkey ca.key -CAcreateserial \\
    -in registry.harbor.com.csr \\
    -out registry.harbor.com.crt
	
	
提供证书给Harbor和Docker

生成后ca.crt,yourdomain.com.crt和yourdomain.com.key文件,必须将它们提供给harbor和docker,和重新配置harbor使用它们。

1、将服务器证书和密钥复制到Harbor主机上的certficates文件夹中。

mkdir -p /data/cert
cp registry.harbor.com.crt /data/cert/
cp registry.harbor.com.key /data/cert/


2、转换yourdomain.com.crt为yourdomain.com.cert,供Docker使用。
Docker守护程序将.crt文件解释为CA证书,并将.cert文件解释为客户端证书。

openssl x509 -inform PEM -in registry.harbor.com.crt -out registry.harbor.com.cert

3、将服务器证书,密钥和CA文件复制到Harbor主机上的Docker证书文件夹中。您必须首先创建适当的文件夹。

mkdir -p /etc/docker/certs.d/registry.harbor.com/
cp registry.harbor.com.cert /etc/docker/certs.d/registry.harbor.com/
cp registry.harbor.com.key /etc/docker/certs.d/registry.harbor.com/
cp ca.crt /etc/docker/certs.d/registry.harbor.com/


如果将默认nginx端口443映射到其他端口,请创建文件夹/etc/docker/certs.d/yourdomain.com:port或/etc/docker/certs.d/harbor_IP:port。(省略)

3.4 重新启动Docker Engine

systemctl restart docker

4. 修改harbor.yml配置文件

跳转到harbor所在的目录,没有所谓的harbor.yml,但是有harbor.yml.tmpl,那就cp出harbor.yml,并修改文件中的hostname及https下的证书路径:

cd /root/k8s/harbor230/harbor

并

cp harbor.yml.tmpl harbor.yml

#只需修改hostname及https下的证书路径即可,其他保持默认

[root@harbor harbor]# vi harbor.yml
# Configuration file of Harbor

# The IP address or hostname to access admin UI and registry service.
# DO NOT use localhost or 127.0.0.1, because Harbor needs to be accessed by external clients.
hostname: registry.harbor.com

# http related config
http:
  # port for http, default is 80. If https enabled, this port will redirect to https port
  port: 80

# https related config
https:
  # https port for harbor, default is 443
  port: 443
  # The path of cert and key files for nginx
  certificate: /data/cert/registry.harbor.com.crt
  private_key: /data/cert/registry.harbor.com.key
...

5. 执行harbor部署

./install.sh --with-trivy

因为我这边的需求要实现镜像扫描,所以我是安装了扫描器的:trivy,安装包需要特地下载一下的。

6. 查看harbor安装情况

#在harbor文件夹下使用docker-compose命令,也是在实践过程中发现docker-compose要在docker-compose所在的目录下才能使用,也不知道是我的问题还是它的问题。

docker-compose ps

7. redis一直处于restarting

#如果redis一直是restarting的状态:
[root@harbor230 ~]# docker load < trivy-adapter-photon_v2.3.4.tar
[root@harbor230 ~]# docker load < redis.tar    #加载新下载的redis-arm的镜像包

#将之前harbor安装包自带的redis容器删除掉,并将新下载的redis重新打上标签,使用新的redis镜像包
docker rmi -f goharbor/redis-python:v2.3.4的镜像ID
docker stop 正在运行的容器ID
docker rm 正在运行的容器id
docker rmi -f goharbor/redis-python:v2.3.4的镜像ID
docker tag redis:latest goharbor/redis-python:v2.3.4

#重启harbor组件镜像包:
docker-compose down -v
docker-compose up -d

8. hosts中配置harbor域名

#在hosts文件加入以下内容
192.168.0.190 registry.harbor.com

#hosts是系统文件,修改后,需要重启主机
reboot

9. 在控制台登录harbor

docker login registry.harbor.com
Username: admin
Password: Harbor12345
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store

Login Succeeded

至此,harbor算是可以使用啦~~~在网页端通过域名或地址访问就好啦

~~地址访问:https://192.168.0.190:443

~~域名访问:应该是需要给浏览器配置一下ca证书

某些浏览器可能会显示警告,指出证书颁发机构(CA)未知。使用不是来自受信任的第三方CA的自签名CA时,会发生这种情况。可以将CA导入浏览器以删除警告。

注意,这里的CA证书位于harbor节点/root/harbor/ssl/ca.crt。

以chrome浏览器导入证书为例,搜索栏输入以下内容,下拉选择管理证书,选择受信任的证书颁发机构,然后导入ca.crt重启浏览器使用域名访问即可。

chrome://settings/security

以上是关于Linux ARM架构_安装JDK8-银河麒麟V10 Kylin Linux的主要内容,如果未能解决你的问题,请参考以下文章

arm64linux无法使用数据库

Linux operation 23Win 10 64位(X86 架构CPU)安装ARM架构的虚拟机(银河麒麟高级服务器操作系统 V10)

银河麒麟 ARM架构 Qemu虚拟机

ARM架构下银河麒麟V10系统安装最新版本Docker

Windows x86 环境 虚拟机 安装银河麒麟V10 arm架构系统

ARM架构-银河麒麟v10-server离线安装Harbor