飞腾Ubantu22.04.3安装OpenNebula测试

news2024/11/29 2:35:11

目前只有one服务能够启动成功,sunstone-server nodejs 构建存在问题。

1.概述

因OpenneBula官方镜像源只有AMD架构的镜像包不存在ARM的镜像包,借此用源码编译进行测试。

2.官网github地址

下载解压存放在服务器上:

https://github.com/OpenNebula/minione/blob/master

文件目录:
在这里插入图片描述

3.安装依赖包

sudo apt -y install g++ libxmlrpc-c++8-dev scons sqlite3 libmysqlclient-dev postgresql libxml2 libxml2-dev libvncserver-dev openssl libssl-dev ruby bison debhelper default-jdk libws-commons-util-java flex freerdp2-dev grunt javahelper libaugeas-dev libcairo2-dev libcurl4 libcurl4-openssl-dev libmysql++-dev libmysqlclient-dev libnode-dev libossp-uuid-dev libpango1.0-dev libpulse-dev libsqlite3-dev libssh2-1-dev  libssl-dev libsystemd-dev libtool libvncserver-dev libvorbis-dev libwebp-dev libxml2-dev libxmlrpc-c++8-dev libxslt1-dev libzmq3-dev libzmq5 nodejs npm postgresql-server-dev-all python3 python3-pip python3-setuptools rake ruby-dev unzip

4.创建用户及文件夹

创建用户文件夹:

sudo mkdir -p /srv/cloud/
sudo groupadd -g 10000 cloud
sudo useradd -u 10000 -g cloud -m oneadmin -d /srv/cloud/one -s /bin/bash

sudo passwd oneadmin
sudo chown -R oneadmin:cloud /srv/cloud/

安装秘钥:

su -l oneadmin
ssh-keygen
cat ~/.ssh/id_rsa.pub > ~/.ssh/authorized_keys
echo “StrictHostKeyChecking no” > ~/.ssh/config
exit

安装nfs:

sudo apt-get install nfs-kernel-server

设置权限:

sudo pico /etc/exports

增加如下内容:

/srv/cloud  *(rw,fsid=0,nohide,sync,root_squash,no_subtree_check)

启动nfs:

sudo /etc/init.d/nfs-kernel-server start

安装 mariadb-client:

apt install mariadb-client-core-10.6

初始化mariadb:

mariadb-secure-installation
mysql -u root -proot
CREATE USER "oneadmin"@"localhost" IDENTIFIED BY "oneadmin";
CREATE DATABASE opennebula;
GRANT ALL PRIVILEGES ON opennebula.* TO "oneadmin" IDENTIFIED BY "oneadmin";
FLUSH PRIVILEGES;
quit;

5.编译

切换到one-master目录执行编译命令【参数根据自己需要选择】:

su -l oneadmin
scons sqlite=no mysql=yes postgresql=yes parsers=yes new_xmlrpc=yes sunstone=yes fireedge=yes systemd=yes rubygems=yes svncterm=yes  context=yes strict=yes

或者修改配置文件【one-master/SConstruct】

scons -j 4

在这里插入图片描述

6.安装

切换到one-master目录执行安装命令:

./install.sh -u oneadmin -g cloud -d /srv/cloud/one

配置环境变量:

vim ~/.bash_profile

export ONE_LOCATION=/srv/cloud/one
export ONE_AUTH=$ONE_LOCATION/.one/one_auth
export ONE_XMLRPC=http://localhost:2633/RPC2
export PATH=$ONE_LOCATION/bin:/usr/local/bin:/var/lib/gems/1.8/bin/:$PATH

刷新环境变量:

source ~/.bash_profile

创建用户登录账号密码:

mkdir ~/.one
echo "oneadmin:YOUR_PASSWORD" > ~/.one/one_auth
chmod 640 ~/.one/one_auth
one start

在这里插入图片描述

7. 启动sunstone-server(没有成功,访问界面不存在)

注意安装nodejs的版本为14,因"node-sass": “4.14.1”

官网下arm版本

https://nodejs.org/dist/latest-v14.x/ 

解压文件到 /usr/local下

vim  /etc/profile
export NODE_HOME=/usr/local/node-v14.21.3-linux-arm64
export PATH=$PATH:$NODE_HOME/bin


source /etc/profile
rm -rf /usr/local/bin/node
ln -s /usr/local/node-v14.21.3-linux-arm64/bin/node /usr/local/bin/node
rm -rf /usr/local/bin/npm
ln -s  /usr/local/node-v14.21.3-linux-arm64/bin/npm /usr/local/bin/npm

改变npm默认的路径。
步骤如下:
进入终端,依次输入一下命令
(1)创建global安装任务的目录
mkdir ~/.npm-global
(2)配置npm使用新的目录
sudo npm config set prefix ‘~/.npm-global’
(3)在~/.profile文件中增加配置
sudo export PATH=~/.npm-global/bin:$PATH
(4)配置文件立即生效
source ~/.profile

目前ubantu 不支持在线下载16版本以下的nodejs,安装方法保留,

sudo apt purge nodejs
sudo apt autoremove 
sudo apt update
sudo apt install -y curl
curl -fsSL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo dpkg --remove --force-remove-reinstreq libnode-dev
sudo dpkg --remove --force-remove-reinstreq libnode72:amd6
sudo apt install nodejs build-essential -y

配置为淘宝镜像:

npm config set registry http://registry.npm.taobao.org/

还原默认镜像

npm config set registry https://registry.npmjs.org

到安装目录/lib/sunstone/public/下构建nodejs

sudo npm install -g bower
sudo npm install -g grunt-cli
sudo npm install -g grunt
npm install
sh build.sh

运行

sunstone-server start

8. OpenNebula-kvm-node

正在调研。

9. 异常

Install 过程中部分文件找不到(先忽略):
在这里插入图片描述
移除man相关文件

mv /usr/share/man/man1/oneacct.1.gz /bak
mv /usr/share/man/man1/oneshowback.1.gz /bak
mv /usr/share/man/man1/oneacl.1.gz /bak
mv /usr/share/man/man1/onehook.1.gz /bak
mv /usr/share/man/man1/onebackupjob.1.gz /bak
mv /usr/share/man/man1/onelog.1.gz /bak
mv /usr/share/man/man1/oneirb.1.gz /bak
mv /usr/share/man/man1/onehost.1.gz /bak
mv /usr/share/man/man1/oneimage.1.gz /bak
mv /usr/share/man/man1/oneuser.1.gz /bak
mv /usr/share/man/man1/onevm.1.gz /bak
mv /usr/share/man/man1/onevnet.1.gz /bak
mv /usr/share/man/man1/onetemplate.1.gz /bak
mv /usr/share/man/man1/onegroup.1.gz /bak
mv /usr/share/man/man1/onecfg.1.gz /bak
mv /usr/share/man/man1/onedb.1.gz /bak
mv /usr/share/man/man1/onedatastore.1.gz /bak
mv /usr/share/man/man1/onecluster.1.gz /bak
mv /usr/share/man/man1/onezone.1.gz /bak
mv /usr/share/man/man1/onevcenter.1.gz /bak
mv /usr/share/man/man1/oneflow.1.gz /bak
mv /usr/share/man/man1/oneflow-template.1.gz /bak
mv /usr/share/man/man1/oneprovision.1.gz /bak
mv /usr/share/man/man1/oneprovider.1.gz /bak
mv /usr/share/man/man1/onesecgroup.1.gz /bak
mv /usr/share/man/man1/onevdc.1.gz /bak
mv /usr/share/man/man1/onevrouter.1.gz /bak
mv /usr/share/man/man1/onemarket.1.gz /bak
mv /usr/share/man/man1/onemarketapp.1.gz /bak
mv /usr/share/man/man1/onevmgroup.1.gz /bak
mv /usr/share/man/man1/onevntemplate.1.gz /bak

生成man包文件(如果缺少其他依赖请自己安装):

apt-get install ronn
cd /xxx/one-master/share/man
bash build .sh

One服务启动失败:
在这里插入图片描述
详细查看日志文件onehem.error(不能加载文件):
在这里插入图片描述
在rubby工具中安装工具:

gem install ffi
gem install ffi-rzmq

再次启动 one start
在这里插入图片描述
安装依赖:

sudo gem install treetop

在这里插入图片描述
安装依赖:

sudo gem install  parse-cron

在次启动,具体错误找寻不到:
在这里插入图片描述
sunstone-server 服务启动失败:
在这里插入图片描述
安转依赖:

sudo gem install  sinatra

在这里插入图片描述
安转依赖:

sudo gem install  rqrcode

在这里插入图片描述
安转依赖:

sudo gem install  rotp

在这里插入图片描述
安转依赖:

sudo gem install  rbvmomi

在这里插入图片描述
安转依赖:

sudo gem install  addressable

缺少文件:
在这里插入图片描述
目前 有关nodejs 的编译失败,具体原因是node-sass": "4.14.1 自动编译拉取失败。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1356598.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

轻量检测模型PP-PicoDet解析

Paper:PP-PicoDet: A Better Real-Time Object Detector on Mobile Devices official implementation:https://github.com/PaddlePaddle/PaddleDetection/tree/release/2.7/configs/picodet Backbone 作者通过实验发现,ShuffleNetV2在移动…

2024第一篇: 架构师成神之路总结,你值得拥有

大家好,我是冰河~~ 很多小伙伴问我进大厂到底需要怎样的技术能力,经过几天的思考和总结,终于梳理出一份相对比较完整的技能清单,小伙伴们可以对照清单提前准备相关的技能,在平时的工作中注意积累和总结。 只要在平时…

Apache Commons BCEL与Java字节码操作

第1章:Apache Commons BCEL简介 大家好,我是小黑,咱们今天来聊聊Apache Commons BCEL(Byte Code Engineering Library)。你可能会问,BCEL是什么鬼?别急,小黑这就给你娓娓道来。BCEL…

Hadoop入门学习笔记——八、数据分析综合案例

视频课程地址:https://www.bilibili.com/video/BV1WY4y197g7 课程资料链接:https://pan.baidu.com/s/15KpnWeKpvExpKmOC8xjmtQ?pwd5ay8 Hadoop入门学习笔记(汇总) 目录 八、数据分析综合案例8.1. 需求分析8.1.1. 背景介绍8.1.2…

基于Python实现二手房整体情况可视化分析+房价预测【500010099】

项目描述 通过房天下兰州二手房信息,对数据进行进一步清洗处理,分析各维度的数据,筛选对房价有显著影响的特征变量,探索兰州二手房整体情况、价格情况和价格的影响因素,建立房价预测模型。 提出问题 探究单价、数量…

SVN服务端的下载、安装

地址 : Apache Subversion Binary Packages 下载 点击 VisualSVN 安装 都是点击 next 点击next ,即可安装成功

代码随想录算法训练营第五十七天|647. 回文子串、516.最长回文子序列、动态规划总结篇

代码随想录 (programmercarl.com) 647. 回文子串 1.dp数组及下标含义 我们在判断字符串S是否是回文,那么如果我们知道 s[1],s[2],s[3] 这个子串是回文的,那么只需要比较 s[0]和s[4]这两个元素是否相同,如果相同的话&…

矩阵式键盘按键音

#include<reg51.h> //包含51单片机寄存器定义的头文件 sbit soundP3^7; //将sound位定义为P3.7 /************************************************************** 函数功能&#xff1a;蜂鸣器发声延时约120ms *************************************************…

Linux 内核调试

文章目录 一、方法论 一、方法论 qemu 虚拟机 Linux内核学习 Linux 内核调试 一&#xff1a;概述 Linux 内核调试 二&#xff1a;ubuntu20.04安装qemu Linux 内核调试 三&#xff1a;《QEMU ARM guest support》翻译 Linux 内核调试 四&#xff1a;qemu-system-arm功能选项整…

大数据毕业设计:租房推荐系统 python 租房大数据 爬虫+可视化大屏 计算机毕业设计(附源码+文档)✅

毕业设计&#xff1a;2023-2024年计算机专业毕业设计选题汇总&#xff08;建议收藏&#xff09; 毕业设计&#xff1a;2023-2024年最新最全计算机专业毕设选题推荐汇总 &#x1f345;感兴趣的可以先收藏起来&#xff0c;点赞、关注不迷路&#xff0c;大家在毕设选题&#xff…

年度征文|回顾2023我的CSDN

一年转眼而逝&#xff0c;回顾这一年在csdn的创作&#xff0c;学习&#xff0c;记录历程。回顾过去&#xff0c;才能展望未来&#xff0c;首先看图说话。 今年在csdn的访问量已由年初的2万到年末的50w。粉丝有年初的300个左右&#xff0c;增加到4000个左右。我年初的目标是粉丝…

Dockerfile语法和简单镜像构建

Dockerfile是一个用于定义Docker镜像的文本文件&#xff0c;包含了一系列的指令和参数&#xff0c;用于指示Docker在构建镜像时应该执行哪些操作&#xff0c;例如基于哪个基础镜像、复制哪些文件到镜像中、运行哪些命令等。 Dockerfile文件的内容主要有几个部分组成&#xff0c…

算法——BFS解决FloodFill算法

什么是FloodFill算法 中文&#xff1a;洪水灌溉。假设这一块4*4的方格是一块土地&#xff0c;有凸起的地方&#xff0c;也有凹陷的地方&#xff08;凹陷的地方用负数表示&#xff09;。此时下大雨发洪水&#xff0c;会把凹陷的地方填满。绿色圈起来的属于一块区域&#xff08;…

caj转换成pdf有哪些方法?

caj转换成pdf有哪些方法&#xff1f;PDF是一个被广泛支持的文件格式&#xff0c;这种格式基本上在所有的操作系统和设备上都是支持使用的&#xff0c;也能够将PDF文件打开和查看的&#xff0c;相比于caj文件&#xff0c;它就只能通过一下特定的软件或者是插件才能够将caj打开或…

3.2.1CURRENT 、3.2.2-SNAPSHOT、3.1.7GA 这三者的springboot版本之前有什么区别

在Spring Boot中&#xff0c;版本号通常遵循主要版本.次要版本.修补版本的格式&#xff0c;有时后面会跟着一个额外的标签来表示版本的特殊性质。根据您提供的版本号 “3.2.1CURRENT”、“3.2.2-SNAPSHOT” 和 “3.1.7GA”&#xff0c;我们可以解释这些版本的含义和它们之间的区…

用贪心算法编程求解任务安排问题

题目&#xff1a;用贪心算法编程求解以下任务安排问题 一个单位时间任务是恰好需要一个单位时间完成的任务。给定一个单位时间任务的有限集S。关于S的一个时间表用于描述S中单位时间任务的执行次序。时间表中第1个任务从时间0 开始执行直至时间1 结束&#xff0c;第2 个任务从时…

react-router-dom5升级到6

前言 升级前版本为5.1.2 下载与运行 下载 npm install react-router-dom6运行 运行发现报错: 将node_modules删除&#xff0c;重新执行npm i即可 运行发现如下报错 这是因为之前有引用react-router-dom.min&#xff0c;v6中取消了该文件&#xff0c;所以未找到文件导致报错。…

鸿蒙4.0开发实战(ArkTS)-闹钟制作

闹钟功能要求 展示指针表盘或数字时间。添加、修改和删除闹钟。展示闹钟列表&#xff0c;并可打开和关闭单个闹钟。闹钟到设定的时间后弹出提醒。将闹钟的定时数据保存到轻量级数据库。 闹钟主界面 闹钟界面包括当前时间、闹钟列表、添加闹钟子组件&#xff0c;具体包括以下…

游戏缺少emp.dll详细修复教程,快速解决游戏无法启动问题

在现代游戏中&#xff0c;我们经常会遇到一些错误提示&#xff0c;其中之一就是“emp.dll丢失”。emp.dll是一个动态链接库文件&#xff0c;它包含了许多程序运行所需的函数和数据。当一个程序需要调用这些函数时&#xff0c;系统会从emp.dll文件中加载相应的内容。因此&#x…

智邦国际ERP系统 SQL注入漏洞复现

0x01 产品简介 北京智邦国际软件技术有限公司的ERP系统是一种集成化的企业资源计划&#xff08;Enterprise Resource Planning&#xff0c;简称ERP&#xff09;解决方案&#xff0c;旨在帮助企业实现高效的运营管理和资源优化。 0x02 漏洞概述 智邦国际ERP系统 GetPersonalS…