King

business intelligence ,is my love。

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

一、说说情怀

随着公司硬件开发资源的不足,构建一个云平台似乎重要了起来。当然,也不是这个平台搭建的主力,出于工作的需求和个人兴趣爱好,接下来就来学习一下OpenNebula相关的东西,这是第一节课,先来说一下OpenNebula的安装,实现的目标是非快速安装,把MySQL作为OpenNebula的存储资源库

二、安装步骤

2.1:环境准备

  • 准备至少一台安装了Ubuntu16.0.4LTS的物理机或者虚拟机
  • 处理器要支持KVM虚拟化
  • 系统已更新为aliyun的source且已经更新
  • 关闭防火墙

2.2:安装步骤

2.2.1:安装KVM

查看CPU是否支持KVM虚拟化
grep vmx /proc/cpuinfo
安装KVM
sudo apt-get install kvm qemu-kvm ubuntu-vm-builder bridge-utils libvirt-bin virtinst
启动KVM内核支持 【注】在服务器安装界面启用虚拟化支持,可以忽略此步骤
modprobe kvm
modprobe kvm_intel
modprobe kvm_amd
将root加入kvm群组中
adduser root kvm
验证KVM是否成功
virsh -c qemu:///system list
lsmod | grep kvm

2.2.2:安装MySQL服务

上面的是quick install模式下的安装,OpenNebula采用了默认的资料库,官方的说明如下

2.2.5 Step 5. Enabling MySQL/MariaDB (Optional)
You can skip this step if you just want to deploy OpenNebula as quickly as possible. However if you are deploying
this for production or in a more serious environment, make sure you read the MySQL Setup section.
Note that it is possible to switch from SQLite to MySQL, but since it’s more cumbersome to migrate databases, we
suggest that if in doubt, use MySQL from the start.

这里我们可以利用已经存在的任何一个OpenNebula服务可以访问的MySQL Server主机,也可以在localhost安装一个MySQL Server,为了不干扰其他系统,我选择在本地安装一个新的MySQL  Server,输入mysql命令查看系统是否已经安装了mysql服务

由上图可以看到系统中并不存在MySQL服务器,我们需要首先在Ubuntu 16.04上安装MySQL数据库

sudo apt-get install mysql-server mysql-client

安装过程中会出现一个为MySQL数据库输入ROOT密码的界面,请牢记这个密码

看MySQL是否安装成功(由于在安装过程中,设置了密码,所以不能匿名mysql登录,需要加上mysql  -u  root -p)如下图,安装成功

使用MySQL的root用户登录后,执行下面的命令,如下图所示

mysql> GRANT ALL PRIVILEGES ON opennebula.* TO 'oneadmin' IDENTIFIED BY 'oneadmin';
Query OK, 0 rows affected, 1 warning (0.00 sec)
mysql> SET GLOBAL TRANSACTION ISOLATION LEVEL READ COMMITTED;
Query OK, 0 rows affected (0.00 sec)

注意!注意!注意!这里不需要创建opennebula数据库,因为接下来我们安装OpenNebula的时候会设置相关信息,OpenNebula服务会自动的

帮助我们创建一个我们配置信息中的数据库,只要给予oneadmin足够的权限即可

2.2.3:安装OpenNebula Front-end

下载opennebula repo源

wget -q -O- http://downloads.opennebula.org/repo/Debian/repo.key | apt-key add -

将下载的源存放到apt的source清单中

echo "deb http://downloads.opennebula.org/repo/5.2/Ubuntu/16.04 stable opennebula" > /etc/apt/sources.list.d/opennebula.list

更新系统和下载最新的opennebula软件包

apt-get update

安装opennebula Front-end需要的软件包

apt-get install opennebula opennebula-sunstone opennebula-gate opennebula-flow

切换到oneadmin并且给oneadmin指定密码(oneadmin是安装opennebula相关服务的时候创建的一个用户)

su - oneadmin
echo "oneadmin:youpassword" > ~/.one/one_auth

☆☆☆ 给OpenNebula配置MySQL内容存储库

找到/etc/one/oned.conf配置文件,修改内容如下,注释掉默认的SQLite,然后保存这个修改

这个地方是十分重要的地方,如果这个操作没有做千万不要启动OpenNebula服务,否则系统会默认OpenNebula的资料库为SQLite,会给以后造成麻烦,官网资料也给出了说明

【关于内容库的说明】

 

2.3 MySQL Setup
The MySQL/MariaDB back-end is an alternative to the default SQLite back-end. In this guide and in the rest of Open-
Nebula’s documentation and configuration files we will refer to this database as the MySQL, however OpenNebula
you can use either MySQL or MariaDB.
The two back-ends cannot coexist (SQLite and MySQL), and you will have to decide which one is going to be used
while planning your OpenNebula installation.
Note: If you are planning to install OpenNebula with MySQL back-end, please follow this guide prior to start
OpenNebula the first time to avoid problems with oneadmin and serveradmin credentials.

【关于MySQL配置时间点的说明】

确保上面的操作都完成后,就可以启动opennebula和sunstone服务
systemctl start opennebula

systemctl start opennebula-sunstone

或者使用Linux的 service 命令

service opennebula start

service opennebula-sunstone start

启动的时候需要输入OS的密码进行验证(如果不需要认证则直接跳过),在这个时候就会针对各种服务进行授权,如下图所示,每次启动一个服务后,输入密码

提示AUTHENTICATION COMPLETE,则说明认证完成启动OK

查看one服务是否启动成功

 

确定启动成功后,我们再次用root用户登录mysql,可以发现这个时候OpenNebula的数据库已经自动创建好了

 

接下来我们访问OpenNebula前端服务UI,在浏览器输入http://<fontend_address>:9869即可访问OpenNebula的登录页面

 使用你上面设置的oneadmin用户的用户名:oneadmin  密码:youpassword进行登录,登录后即可看到OpenNebula的主管理界面

看着不舒服的话,可以在设置里面设置一下语言为简体中文,设置后会显示中文的界面,如下图所示

 到这里为止,OpenNebula在Ubuntu16.04上面的基于MySQL内容库的安装已经全部完成了,这一天也该结束了。

posted on 2017-07-12 18:37  kingstudy  阅读(1484)  评论(0编辑  收藏  举报