Kylin(二)安装使用
目录
- 安装
- Hadoop 环境
- Kylin下载
- Kylin目录结构
- 配置kylin.properties
- 验证检查环境
- 启动/停止Kylin
- guava.jar版本问题
- 启动 Kylin
- CuratorConnectionLossException
- 错误
- 熟悉使用 Kylin
- 进入web界面
- 创建项目
- 同步hive表
- Failed to load Hive Table
- 创建Model
- 创建Cube
- 查看cube信息
- SQL
- Planner
- 构建Cube
- 查询Cube
- 了解Kyliin构建Cube的过程
- Kylin使用beeline连接hive
- kylin查询api
- 查询SQL
- Put提交cube
- JAVA API
安装
参考案例:https://my.oschina.net/u/4350719/blog/4686802
Hadoop 环境
Kylin 依赖于 Hadoop 集群处理大量的数据集。您需要准备一个配置好 HDFS,YARN,MapReduce,Hive, HBase,Zookeeper 和其他服务的 Hadoop 集群供 Kylin 运行。
Kylin 可以在 Hadoop 集群的任意节点上启动。方便起见,您可以在 master 节点上运行 Kylin。但为了更好的稳定性,我们建议您将 Kylin 部署在一个干净的 Hadoop client 节点上,该节点上 Hive,HBase,HDFS 等命令行已安装好。
运行 Kylin 的 Linux 账户要有访问 Hadoop 集群的权限,包括创建/写入 HDFS 文件夹,Hive 表, HBase 表和提交 MapReduce 任务的权限。
Kylin下载
从 Apache Kylin下载网站 下载一个适用于您 Hadoop 版本的二进制文件。例如,适用于 HBase 1.x 的 Kylin 2.5.0 可通过如下命令行下载得到:
cd /usr/local/
wget http://mirror.bit.edu.cn/apache/kylin/apache-kylin-2.5.0/apache-kylin-2.5.0-bin-hbase1x.tar.gz
解压 tar 包,配置环境变量 $KYLIN_HOME
指向 Kylin 文件夹。
tar -zxvf apache-kylin-2.5.0-bin-hbase1x.tar.gz
cd apache-kylin-2.5.0-bin-hbase1x
# Kylin_HOME
export KYLIN_HOME=/usr/local/kylin-3.1.1
export PATH=$KYLIN_HOME/bin:$PATH
我下载安装的是这个:
从 v2.6.1 开始, Kylin 不再包含 Spark 二进制包; 如果需要,您需要另外下载 Spark,然后设置 SPARK_HOME
系统变量到 Spark 安装目录:
export SPARK_HOME=/usr/local/spark
export PATH=$SPARK_HOME/bin:$PATH
或者使用脚本下载:
$KYLIN_HOME/bin/download-spark.sh
由于上面在/etc/profile
文件中新增了内容,键入source /etc/profile
让刚刚做的修改立即生效
Kylin目录结构
bin
: shell 脚本,用于启动/停止 Kylin,备份/恢复 Kylin 元数据,以及一些检查端口、获取 Hive/HBase 依赖的方法等;conf
: Hadoop 任务的 XML 配置文件,这些文件的作用可参考配置页面lib
: 供外面应用使用的 jar 文件,例如 Hadoop 任务 jar, JDBC 驱动, HBase coprocessor 等.meta_backups
: 执行bin/metastore.sh backup
后的默认的备份目录;sample_cube
用于创建样例 Cube 和表的文件。spark
: 自带的 spark。tomcat
: 自带的 tomcat,用于启动 Kylin 服务。tool
: 用于执行一些命令行的jar文件。
配置kylin.properties
进入
conf
目录,将kylin.properties.template
改成kylin.properties
,命令:mv kylin.properties.template kylin.properties
编辑
kylin.properties
文件,添加以下内容# kylin集群节点配置:node1是我的主机名,因为kylin部署为一个节点kylin.server.cluster-servers=node1:7070#配置节点类型(kylin节点模式分为all、query(查询模式)、job(任务构建模式))#因为我们只部署一个节点kylin,所以配置为allkylin.server.mode=all
验证检查环境
键入以下命令以分别检查环境
# 检查环境bin/check-env.sh# 检查hive依赖bin/find-hive-dependency.sh# 检查hbase依赖bin/find-hbase-dependency.sh
# 检查环境 进入Kylin - bin目录下执行 check-env.sh
# 检查hive依赖 进入Kylin - bin目录下执行
find-hive-dependency.sh
下面遇到的问题是在购买的阿里EMR服务器上遇到的找不到hive-site.xml
的错误;
该问题是因为Kylin 会自动从环境中读取 Hadoop 配置(core-site.xml),Hive 配置(hive-site.xml)和 HBase 配置(hbase-site.xml)。而此时找不到并且它提示需要配置$HIVE_CONF
指向hive-site.xml。
解决方法:在 /etc/profile配置环境变量。可是我发现该文件中是空白的???(没有 export 字样)但是可以执行cd $HIVE_HOME
,cd $HIVE_CONF_HOME
,cd $HIVE_CONF_DIR
命令。最终通过grep -r "$KYLIN_HOME" /
grep -r "关键字" "查找路径"
找到HIVE HOME的环境变量配置在哪里。
阿里云EMR服务器将 各个插件的环境变量配置在了profile.d 目录下(方便维护权限)。然后进入HIVE.sh 添加下面的配置。
# 检查hbase依赖 进入Kylin - bin目录下执行
find-hbase-dependency.sh
,检查hbase 依赖项的时候报错 找不到 common 包
解决:http://92072234.wiz03.com/share/s/2i1O8Q1L1k042IDoOy3h7BgH2K4G6J2SoQv42Xc4b01xpCrj
找到 并且编辑vim $HBASE_HOME/bin/hbase
。发现没有将自己的jar包添加class path 中
那我需要做的事情就是将自己的jar包添加class path 中,将CLASSPATH修改为:# CLASSPATH initially contains $HBASE_CONF_DIR CLASSPATH="${HBASE_CONF_DIR}" CLASSPATH=${CLASSPATH}:$JAVA_HOME/lib/tools.jar:$HBASE_HOME/lib/*
最终/etc/profile
#JAVA_HOME JAVA_HOME=/usr/local/jdk1.8 export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar#ZK_HOME export ZK_HOME=/usr/local/zookeeper-3.4.11 export PATH=$ZK_HOME/bin:$PATH#HADOOP_HOME export HADOOP_HOME=/usr/local/hadoop-3.2.1 export HADOOP_MAPRED_HOME=$HADOOP_HOME export HADOOP_COMMON_HOME=$HADOOP_HOME export HADOOP_HDFS_HOME=$HADOOP_HOME export HADOOP_YARN_HOME=$HADOOP_HOME export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin#HBASE_HOME export HBASE_HOME=/usr/local/hbase-2.2.4 export PATH=$HBASE_HOME/bin:$PATH# HIVE_HOME export HIVE_HOME=/usr/local/hive-3.1.2 export PATH=$HIVE_HOME/bin:$PATH export HIVE_CONF_HOME=$HIVE_HOME/conf export HCAT_HOME=$HIVE_HOME/hcatalog export PATH=$HCAT_HOME/bin:$PATH# Kylin_HOME export KYLIN_HOME=/usr/local/kylin-3.1.1 export PATH=$KYLIN_HOME/bin:$PATH
启动/停止Kylin
# 启动Kylinbin/kylin.sh start# 停止Kylinbin/kylin.sh stop
guava.jar版本问题
进入Kylin - bin目录下执行 kylin.sh start
该问题在该环境信息下:Hadoop3.2.1 HBase2.2.4 Hive3.1.2。安装Hive3.1.2的时候也出现过
安装Hive的解决办法:
com.google.common.base.Preconditions.checkArgument这个类所在的jar包为:guava.jar
hadoop-3.2.1(路径:hadoop\share\hadoop\common\lib)中该jar包为 guava-27.0-jre.jar;而hive-3.1.2(路径:hive/lib)中该jar包为guava-19.0.1.jar
将jar包变成一致的版本:删除hive中低版本jar包,将hadoop中高版本的复制到hive的lib中。
此时又出现了该问题。可是我们的guava已经修改为27 版本了。为什么还有该问题?
原因:Kylin 的源数据服务是 Hive,依赖与 Hive 中 一个guava包。可是Hive 框架中 源码中pom.xml 该guava包的版本并没有统一,有的地方还是19版本。
官网提供了解决方案:
启动 Kylin
运行
$KYLIN_HOME/bin/kylin.sh start
脚本来启动 Kylin,界面输出如下:Retrieving hadoop conf dir... KYLIN_HOME is set to /usr/local/apache-kylin-2.5.0-bin-hbase1x ...... A new Kylin instance is started by root. To stop it, run 'kylin.sh stop' Check the log at /usr/local/apache-kylin-2.5.0-bin-hbase1x/logs/kylin.log Web UI is at http://<hostname>:7070/kylin
注:如果在启动 kylin 时遇到如下报错(Hadoop3 环境下可能出现):
Caused by: java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkArgument(ZLjava/lang/String;Ljava/lang/Object;)Vat org.apache.hadoop.conf.Configuration.set(Configuration.java:1358)at org.apache.hadoop.conf.Configuration.set(Configuration.java:1339)at org.apache.kylin.common.util.HadoopUtil.healSickConfig(HadoopUtil.java:77)at org.apache.kylin.common.util.HadoopUtil.getCurrentConfiguration(HadoopUtil.java:63)at org.apache.kylin.storage.hbase.HBaseConnection.newHBaseConfiguration(HBaseConnection.java:170)at org.apache.kylin.storage.hbase.HBaseConnection.get(HBaseConnection.java:259)at org.apache.kylin.storage.hbase.HBaseResourceStore.getConnection(HBaseResourceStore.java:96)at org.apache.kylin.storage.hbase.HBaseResourceStore.createHTableIfNeeded(HBaseResourceStore.java:119)at org.apache.kylin.storage.hbase.HBaseResourceStore.<init>(HBaseResourceStore.java:89)... 8 more
可以尝试如下方法解决:
下载guava-28.0-jre.jar, 将其放到
$KYLIN_HOME/tool/
和$KYLIN_HOME/tomcat/lib/
目录下,然后重启kylinbin/kylin.sh restart
。
CuratorConnectionLossException
org.apache.curator.CuratorConnectionLossException: KeeperErrorCode = ConnectionLoss
2021-02-01 19:21:46,453 ERROR [main] curator.ConnectionState:228 : Connection timed out for connection string (node1:2181:2181,node2:2181:2181,node3:2181:2181/kylin/kylin_metadata) and timeout (15000) / elapsed (24928)
org.apache.curator.CuratorConnectionLossException: KeeperErrorCode = ConnectionLoss
日志信息提示:node1:2181:2181,node2:2181:2181,node3:2181:2181。说明多了一次2181。这是由于:读取的是配置文件hbase-site.xml的hbase.zookeeper.quorum,该项只需配置Host不需要配置端口号Port,改回来之后重启hbase就好了。
错误
ERROR: Check hive's usability failed, please check the status of your cluster
解决 在kylin的安装目录下进入bin
目录然后找到check-hive-usability.sh
,之后键入命令vim check-hive-usability.sh
编辑该文件,修改timeLeft的值为100(默认值为60),见下图
熟悉使用 Kylin
不会涉及到 衍生维度,分区cube之类的。
进入web界面
如果成功启动,在terminal中键入jps命令会出现RunJar的进程,terminal末尾的显示的信息如下图
Kylin 启动后您可以通过浏览器 http://:7070/kylin
进行访问。
其中 `` 为具体的机器名、IP 地址或域名,默认端口为 7070。
初始用户名和密码是 ADMIN/KYLIN
。
服务器启动后,您可以通过查看 $KYLIN_HOME/logs/kylin.log
获得运行时日志。
创建项目
登陆kylin后,点击左上角的+号来创建Project:
同步hive表
点击Model->Data Source->Load Table From Tree,
Kylin会读取到Hive数据源中的表并以树状方式显示出来,你可以选择自己要使用的表,然后点击sync进行将其加载到kylin。
Failed to load Hive Table
选择hive表,报错?
2021-02-02 17:30:14,875 ERROR [http-nio-7070-exec-5] controller.TableController:132 : Failed to load Hive Table
java.lang.RuntimeException: cannot get HiveTableMetaat org.apache.kylin.source.hive.HiveMetadataExplorer.loadTableMetadata(HiveMetadataExplorer.java:68)
报错原因是kylin在load表的时候,需要调用StorageSchemaReader接口的readSchema方法,默认的default是没有这个实现方法的就会报错。
解决方法是在 hive-site.xml中 添加以下属性
<property>
<name>metastore.storage.schema.reader.impl</name>
<value>org.apache.hadoop.hive.metastore.SerDeStorageSchemaReader</value>
</property>
关联成功
创建Model
new Model
model信息
选择事实表,以及维度表
添加Lookup Table时需要设置与事实表的JOIN条件。
然后点击Next到下一步添加Dimension(维度)
点击Next下一步添加Measure(度量)
点击Next下一步跳转到设置时间分区列和过滤条件页面,时间分区列用于增量构建时选择时间范围,如果不设置时间分区列则代表该model下的cube都是全量构建。过滤条件会在打 平表 时用于where条件。
平表意思是(维度和度量组成的中间表)会在生成cube的时候有截图
创建Cube
1.先要选择该Cube是 属于哪个 Model的。定义cube信息
2. 点击Next到下一步添加Dimension,Lookup Table的维度可以设置为Normal(普通维度)或者Derived(衍生维度)两种类型,默认设置为衍生维度,衍生维度代表该列可以从所属维度表的主键中衍生出来,所以实际上只有主键列会被Cube加入计算。
我这里选择的都是事实表的维度
3. 选择度量
点击Next到下一步,点击+Measure来添加需要预计算的度量。Kylin会默认创建一个Count(1)的度量。Kylin支持SUM、MIN、MAX、COUNT、COUNT_DISTINCT、TOP_N、EXTENDED_COLUMN、PERCENTILE八种度量。请为COUNT_DISTINCT和TOP_N选择合适的返回类型,这关系到Cube的大小。添加完成之后点击ok,该Measure将会显示在Measures列表中。
**函数SUM的返回类型必须是 [ smallint,int4,double,tinyint,numeric,long8,integer,real,float,decimal,bigint ] 之一。**
4.其他
6. 创建完成
查看cube信息
SQL
查看到创建完成cube的sql。该sql体现了 平表的逻辑。
Planner
注意在Kylin中每一种维度的组合 都管它叫做 Cuboid 。下图一共有 4095 个 ,图表展示。最下面是各个维度
4095 = 2的12次方-1 (2^12)-1
构建Cube
上一个步骤创建好的Cube只有定义,而没有计算好的数据,它的状态是‘DISABLED’,是不可以查询的。要想让Cube有数据,还需要对它进行构建。
Cube的构建方式通常有两种:全量构建和增量构建。
点击要构建的Cube的Actions列下的Action展开,选择Build,如果Cube所属Model中没有设置时间分区列,则默认全量构建,直接提交构建任务。
如果设置了时间分区列,则会出现如下页面,在这里你要选择构建数据的起止时间,然后点击Submit
然后你可以在Monitor页面观察构建任务的状态。Kylin会在页面上显示每一个步骤的运行状态、输出日志以及MapReduce任务。可以在
${KYLIN_HOME}/logs/kylin.log
中查看更详细的日志信息。
任务构建完成后,Cube状态会变成READY,并且可以看到Segment的信息。
构建过程中发生的错误信息:
check status java.io.IOException: java.net.ConnectException: Your endpoint configuration is wrong; For more details see: http://wiki.apache.org/hadoop/UnsetHostnameOrPort
查询Cube
Cube构建完成后,在Insight页面的Tables列表下面可以看到构建完成的Cube的table,并可以对其进行查询.查询语句击中Cube后会返回存储在Hbase中的预计算结果。
查询的时候报错:
java.lang.NoClassDefFoundError : org.apache.commons.lang.text.StrSubstitutor;
查看kylin的源码发现在 KylinConfigBase 类中 使用了 StrSubstitutor 类。并且pom.xml中也没有依赖
那也就说明了需要依赖hive以及hbase的该jar包。后来查看hive下是有这个jar包的。而hbase没有。
将hive的那个jar包复制到hbase的目录下了。又添加了/etc/profile文件的配置。修改了很多地方记不清楚了。贴一个最新的配置信息吧
vim /etc/profile
#JAVA_HOME JAVA_HOME=/usr/local/jdk1.8 export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar#ZK_HOME export ZK_HOME=/usr/local/zookeeper-3.4.11 export PATH=$ZK_HOME/bin:$PATH#HADOOP_HOME export HADOOP_HOME=/usr/local/hadoop-3.2.1 export HADOOP_MAPRED_HOME=$HADOOP_HOME export HADOOP_COMMON_HOME=$HADOOP_HOME export HADOOP_HDFS_HOME=$HADOOP_HOME export HADOOP_YARN_HOME=$HADOOP_HOME export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin#HBASE_HOME export HBASE_HOME=/usr/local/hbase-2.2.4 export PATH=$HBASE_HOME/bin:$PATH# HIVE_HOME export HIVE_HOME=/usr/local/hive-3.1.2 export PATH=$HIVE_HOME/bin:$PATH export HIVE_CONF_HOME=$HIVE_HOME/conf export HCAT_HOME=$HIVE_HOME/hcatalog export PATH=$HCAT_HOME/bin:$PATH # Kylin_HOME export KYLIN_HOME=/usr/local/kylin-3.1.1 export PATH=$KYLIN_HOME/bin:$PATH
vim/usr/local/hbase/bin/hbase
# CLASSPATH initially contains $HBASE_CONF_DIR CLASSPATH="${HBASE_CONF_DIR}" CLASSPATH=${CLASSPATH}:$JAVA_HOME/lib/tools.jar:$HBASE_HOME/lib/*
了解Kyliin构建Cube的过程
创建临时的Hive平表(从Hive读取数据)。说白了就是将 事实表,维度表的 维度和度量全部查询出来的结果作为一张平表。(也就是我们此次构建用到的所有数据结合起来)
计算各维度的不同值,并收集各Cuboid的统计数据。
创建并保存字典。
保存Cuboid统计信息。
创建HTable。
计算Cube(一轮或若干轮MapReduce)。
将Cube的计算结果转成HFile。
加载HFile到HBase。
更新Cube元数据。
垃圾回收
Kylin使用beeline连接hive
之前一直是通过cli连接hive,由于系统升级需要通过beeline连接。此处的hive已经配置了自定义安全认证
官网教程:http://kylin.apache.org/docs/howto/howto_use_beeline.html
我的配置文件:-n 指定用户名,-p指定密码,-u指定和hiveServer2 连接地址 问号后面内容为了支持操作hive的事务表。
-u 'jdbc:hive2://localhost:10000?hive.txn.manager=org.apache.hadoop.hive.ql.lockmgr.DbTxnManager;hive.support.concurrency=true;'
kylin查询api
之前已经成功创建了kylin的cube,并且可以使用 web ui查询。但除了通过web ui进行操作,我们还可以使用api调用。
RestFul API
在使用之前,我们要先进行认证,目前Kylin使用 basic Authentication。Basic Authentication是一种非常简单的访问控制机制,它先对账号密码基于Base64编码,然后将其作为请求头添加到HTTP请求头中,后端会读取请求头中的账号密码信息以进行认证。
以Kylin默认的账号密码 ADMIN/KYLIN
为例,对相应的账号密码进行编码后,结果为Basic QURNSU46S1lMSU4=,那么HTTP对应的头信息 则为Authorization:Basic QURNSU46S1lMSU4=。
查询SQL
curl -X POST -H "Authorization: Basic QURNSU46S1lMSU4=" -H 'Content-Type: application/json'
http://localhost:7070/kylin/api/query -d '{
"sql":"select market,sum(sales) from kylin_sale group by market",
"offset":0,
"limit":10,
"acceptPartial":false,
"project":"my_kylin"
}'
参数解释:
- sql:必填,字符串类型,请求的SQL。
- offset:可选,整型,查询默认从第一行返回结果,可以设置该参数以决定返回数据从哪一行开始往后返回。
- limit:可选,整型,加上limit参数后会从offset开始返回对应的行数, 返回数据行数小于limit的将以实际行数为准。
- acceptPartial:可选,布尔类型,默认是true,如果为true,那么实际上最多会返回一百万行数据;如果要返回的结果集超过了一百万行,那么 该参数需要设置为false。
- project:可选,字符串类型,默认为DEFAULT,在实际使用时,如 果对应查询的项目不是DEFAULT,那就需要设置为自己的项目。
Put提交cube
curl -X PUT -H "Authorization: Basic QURNSU46S1lMSU4=" -H 'Content-Type: application/json'
http://localhost:7070/kylin/api/cubes/my_cube/build -d '{
"startTime":0,
"endTime":"$endTime",
"buildType":"BUILD"
}'
上面的内容里面,url里面的my_cube是你自己的cube名,endTime是你需要去指定的,startTime : 当cube中不存在segment时,可以将其设置为0,那么就会从头开始算。做增量时,startTime 要设置为上一次build的
endTime。endTime:时间精确到毫秒(例1388563200000)。
注意点
我们在通过RESTful API向kylin进行build和rebuild的时候一定要观察kylin的web界面下面的Montior进程,否则不小心运行太多进程导致服务器崩掉
JAVA API
JDBC连接方式
和hive、mysql很相似。
package com.shsxt.kylinTest;
import org.apache.kylin.jdbc.Driver;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.Properties;public class KylinJdbc {public static void main(String[] args) throws IllegalAccessException,InstantiationException, ClassNotFoundException, SQLException {KylinJdbc kylinJdbc = new KylinJdbc();kylinJdbc.connectJdbc();}public void connectJdbc() throws ClassNotFoundException, IllegalAccessException,InstantiationException, SQLException {Driver driver = (Driver) Class.forName("org.apache.kylin.jdbc.Driver").newInstance();Properties properties = new Properties();properties.put("user","ADMIN");properties.put("password","KYLIN");//url后面跟上你的project的名称Connection connect = driver.connect("jdbc:kylin://192.168.4.10:7070/my_kylin",properties);//sql语句和kylin库所含数据一一对应。Statement statement = connect.createStatement();ResultSet resultSet = statement.executeQuery("select market,sum(sales) from kylin_sale group by market");while(resultSet.next()){String market = resultSet.getString(1);long sales = resultSet.getLong(2);System.out.println(market+" : "+ sales);}}
}
Kylin(二)安装使用相关推荐
- Kylin(二) 安装与搭建
文章目录 地址 安装部署 地址 1)官网地址 http://kylin.apache.org/cn/ 2)官方文档 http://kylin.apache.org/cn/docs/ 3)下载地址 ht ...
- ubuntu kylin mysql_Ubuntu16.04下Kylin的安装与配置
一.系统环境 kylin的安装配置并不像官方文档中描述的那样简单,复杂的原因在于hadoop,hive,hbase,kylin的版本一定要兼容,不然就会出现各种奇怪的错误.以下各软件版本可以成功运行k ...
- 优麒麟mysql_如何在优麒麟Ubuntu Kylin下安装Numix主题和图标
Numix主题和图标受到了很多Linux用户的好评,我们前面介绍了 如何在Ubuntu中安装Numix主题和图标,本文要介绍的是如何在优麒麟Ubuntu Kylin下安装Numix主题和图标,其实方法 ...
- Kylin 10 安装达梦数据库 图形界面乱码 最小修正解决(一个字体文件)
Kylin 10 安装达梦数据库 图形中文界面乱码 最小修正解决(一个字体文件) 一. Kylin 10 测试图形界面(无xclock,xmanager passive模式) 二. Kylin 10 ...
- Xen Server二安装xc及管理xen主机
Xen Server二安装xc及管理xen主机 上篇我们已经安装好xen主机,这篇我们将在win机器上安装xen center也就是xen的管理工具,用来管理xen主机,相当于微软的scvmm或者vm ...
- 如何安装Windows操作系统?(二)安装启动项杂谈
(二)安装启动项杂谈 上面说到过,如何去选择启动项和硬件的选择. 其实在硬件没有问题的情况下,只要有一个能启动的项目就可以安装系统了. 从BIOS给出的启动项,我们可以看到以下几个启动项 1.光盘/软 ...
- Kali Linux 从入门到精通(二)-安装
Kali Linux 从入门到精通(二)-安装 Kail Linux 安装 持久加密USB安装-1 LUSK:Linux Unified Key Setup 磁盘分区加密规范 不依赖与操作系统的磁盘级 ...
- Apache Kylin的安装和使用
官网 | GitHub | 文档 | 下载 目录 1 概览 1.1 Kylin是什么 1.2 Kylin的特性 1.3 使用 Apache Kylin 的典型 ...
- 开源一款强大的文件服务组件(QJ_FileCenter)(系列二 安装说明)
系列文章 1. 开源一款强大的文件服务组件(QJ_FileCenter)(系列一) 2. 开源一款强大的文件服务组件(QJ_FileCenter)(系列二 安装说明) 3. 开源一款强大的文件服务组件 ...
- kylin linux 安装教程,新手入门必备:kylin安装教程介绍!
1. 背景 最近在学习kylin,在安装的时候遇到一些坑,特意记录起来,也希望同样在学习kylin的人,少踩一些坑(要是连安装都过不去,还怎么学!!!). 2. 环境 我选的kylin版本是1.5.4 ...
最新文章
- linux 打开关闭文件,Linux系统编程-文件打开关闭
- 利用七牛云实现简单的图床
- 如何把安全证书导入到java中的cacerts证书库(转)
- MapReduce程序之序列化原理与Writable案例
- linux英文系统+搜狗输入法
- iOS逆向工程——非越狱调试
- python socket能做什么_[python]初探socket
- 小程序 | 微信小程序实现图片是上传、预览功能
- 进入hadoop_hadoop:伪分布模式参数配置指南
- Vue中ESlint配置文件eslintrc.js文件详解
- 360集团或将推出数字安全免费新品
- Labview之RS485通信
- 单片机---HLK-W801图形框架LVGL下开发(四)
- KDE桌面下konsole打开terminal/tab 并执行命令或脚本
- PipeCAD 简介
- 各移动云测试平台对比
- 论文笔记之:Co-saliency Detection via A Self-paced Multiple-instance Learning Framework
- android七牛短视频sdk源码,七牛短视频sdk,七牛android直播端必须用七牛提供的sdk吗...
- pyton random
- 史上最全面试题汇总,没有之一,不接受反驳