1. 程式人生 > >Spark1.2及CDH5.2~CDH5.3安裝和使用(A)

Spark1.2及CDH5.2~CDH5.3安裝和使用(A)

本文主要記錄 Spark 的安裝過程配置過程並測試 Spark 的一些基本使用方法。

安裝環境如下:

  • 作業系統:CentOs 6.5
  • Hadoop 版本:CDH-5.3.0
  • Spark 版本:1.2

關於 yum 源的配置以及 Hadoop 叢集的安裝,請參考 使用yum安裝CDH Hadoop叢集

1. 安裝

選擇一個節點 cdh1 來安裝 Spark ,首先檢視 Spark 相關的包有哪些:

$ yum list |grep spark
spark-core.noarch                 1.2.0+cdh5.3.0+364-1.cdh5.3.0.p0.36.el6 @cdh
spark-history-server.noarch       1.2
.0+cdh5.3.0+364-1.cdh5.3.0.p0.36.el6 @cdh spark-master.noarch 1.2.0+cdh5.3.0+364-1.cdh5.3.0.p0.36.el6 @cdh spark-python.noarch 1.2.0+cdh5.3.0+364-1.cdh5.3.0.p0.36.el6 @cdh spark-worker.noarch 1.2.0+cdh5.3.0+364-1.cdh5.3.0.p0.36.el6 @cdh hue-spark.x86_64 3.7
.0+cdh5.3.0+134-1.cdh5.3.0.p0.24.el6 cdh

以上包作用如下:

  • spark-core: spark 核心功能
  • spark-worker: spark-worker 初始化指令碼
  • spark-master: spark-master 初始化指令碼
  • spark-python: spark 的 Python 客戶端
  • hue-spark: spark 和 hue 整合包
  • spark-history-server

你可以根據你的叢集部署規劃來安裝元件,在 cdh1 上安裝 master,在 cdh1、cdh2、cdh3 上安裝 worker:

# 在 cdh1 節點上執行
$ sudo
yum install spark-core spark-master spark-worker spark-python spark-history-server -y # 在 cdh2、cdh3 上執行 $ sudo yum install spark-core spark-worker spark-python -y

安裝成功後,我的叢集部署如下:

cdh1節點:  spark-master spark-history-server
cdh2節點:  spark-worker 
cdh3節點:  spark-worker 

2. 配置

2.1 修改配置檔案

設定環境變數,在 .bashrc 中加入下面一行,並使其生效:

export SPARK_HOME=/usr/lib/spark

可以修改配置檔案 /etc/spark/conf/spark-env.sh,其內容如下,你可以根據需要做一些修改:修改 master 的主機名稱。

# 設定 master 主機名稱
export STANDALONE_SPARK_MASTER_HOST=cdh1

export SPARK_MASTER_IP=$STANDALONE_SPARK_MASTER_HOST

### Let's run everything with JVM runtime, instead of Scala
export SPARK_LAUNCH_WITH_SCALA=0
export SPARK_LIBRARY_PATH=${SPARK_HOME}/lib
export SCALA_LIBRARY_PATH=${SPARK_HOME}/lib
export SPARK_MASTER_WEBUI_PORT=18080
export SPARK_MASTER_PORT=7077
export SPARK_WORKER_PORT=7078
export SPARK_WORKER_WEBUI_PORT=18081
export SPARK_WORKER_DIR=/var/run/spark/work
export SPARK_LOG_DIR=/var/log/spark

if [ -n "$HADOOP_HOME" ]; then
  export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${HADOOP_HOME}/lib/native
fi

export HIVE_CONF_DIR=${HIVE_CONF_DIR:-/etc/hive/conf}
export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-/etc/hadoop/conf}

### Comment above 2 lines and uncomment the following if
### you want to run with scala version, that is included with the package
#export SCALA_HOME=${SCALA_HOME:-/usr/lib/spark/scala}
#export PATH=$PATH:$SCALA_HOME/bin

如果你和我一樣使用的是虛擬機器執行 spark,則你可能需要修改 spark 程序使用的 jvm 大小(關於 jvm 大小設定的相關邏輯見 /usr/lib/spark/bin/spark-class):

export SPARK_DAEMON_MEMORY=256m

修改完 cdh1 節點上的配置檔案之後,需要同步到其他節點:

scp -r /etc/spark/conf  cdh2:/etc/spark
scp -r /etc/spark/conf  cdh3:/etc/spark

2.2 配置 Spark History Server

執行下面命令:

$ sudo -u hdfs hadoop fs -mkdir /user/spark
$ sudo -u hdfs hadoop fs -mkdir /user/spark/applicationHistory
$ sudo -u hdfs hadoop fs -chown -R spark:spark /user/spark
$ sudo -u hdfs hadoop fs -chmod 1777 /user/spark/applicationHistory

在 Spark 客戶端建立 /etc/spark/conf/spark-defaults.conf

cp /etc/spark/conf/spark-defaults.conf.template /etc/spark/conf/spark-defaults.conf

在 /etc/spark/conf/spark-defaults.conf 新增兩行:

spark.eventLog.dir=/user/spark/applicationHistory
spark.eventLog.enabled=true

如果想 YARN ResourceManager 訪問 Spark History Server ,則新增一行:

spark.yarn.historyServer.address=http://HISTORY_HOST:HISTORY_PORT

最後,spark-defaults.conf 內容如下:

spark.master=spark://cdh1:7077
spark.eventLog.dir=/user/spark/applicationHistory
spark.eventLog.enabled=true

spark.yarn.historyServer.address=http://cdh1:19888

Spark History Server 中的 spark.history.provider 引數預設配置為org.apache.spark.deploy.history.FsHistoryProvider 時,需要配置 spark.history.fs.logDirectory 引數,該引數在 spark-env.sh 中新增 SPARK_HISTORY_OPTS 環境變數:

#這裡配置的是本地目錄,也可以改為 hdfs 上的目錄
export SPARK_HISTORY_OPTS="$SPARK_HISTORY_OPTS -Dspark.history.fs.logDirectory=/var/log/spark"

如果,叢集配置了 kerberos ,則還需要開啟 kerberos 認證,涉及到下面三個引數:

  • spark.history.kerberos.enabled:是否開啟 kerberos 認證
  • spark.history.kerberos.principal:HistoryServer 的 kerberos 主體名稱,注意:這裡直接使用機器的 hostname而不要使用 _HOST
  • spark.history.kerberos.keytab:HistoryServer 的kerberos keytab檔案位置

另外,還開啟了 spark.history.ui.acls.enable (授權使用者檢視應用程式資訊的時候是否檢查acl),在 spark-env.sh 中繼續新增:

export SPARK_HISTORY_OPTS="$SPARK_HISTORY_OPTS -Dspark.history.kerberos.enabled=true -Dspark.history.kerberos.principal=spark/[email protected] -Dspark.history.kerberos.keytab=/etc/spark/conf/spark.keytab -Dspark.history.ui.acls.enable=true"

3. 啟動和停止

使用系統服務管理叢集

啟動指令碼:

# 在 cdh1 節點上執行
$ sudo service spark-master start

# 在 cdh1、cdh2、cdh3 節點上執行
$ sudo service spark-worker start

停止指令碼:

$ sudo service spark-worker stop
$ sudo service spark-master stop

當然,你還可以設定開機啟動:

$ sudo chkconfig spark-worker on
$ sudo chkconfig spark-master on

執行日誌儲存在 /var/log/spark,你可以通過 http://cdh1:18080/ 訪問 spark master 的 web 介面。

spark-master-web-ui

使用 spark 自帶指令碼管理叢集

另外,你也可以使用 spark 自帶的指令碼來啟動和停止,這些指令碼在 /usr/lib/spark/sbin 目錄下:

$ ls /usr/lib/spark/sbin
slaves.sh        spark-daemons.sh  start-master.sh  stop-all.sh
spark-config.sh  spark-executor    start-slave.sh   stop-master.sh
spark-daemon.sh  start-all.sh      start-slaves.sh  stop-slaves.sh

這時候,還需要修改 /etc/spark/conf/slaves 檔案:

# A Spark Worker will be started on each of the machines listed below.
cdh1
cdh2
cdh3

然後,你也可以通過下面指令碼啟動 master:

$ cd /usr/lib/spark/sbin
$ ./start-master.sh

通過下面命令啟動所有節點上的 worker:

$ ./start-slaves.sh

當然,你也可以通過下面方式啟動:

$ ./bin/spark-class org.apache.spark.deploy.worker.Worker spark://cdh1:18080

4. 測試

4.1 執行測試例子

你可以在官方站點檢視官方的例子。 除此之外,Spark 在釋出包的 examples 的資料夾中包含了幾個例子( ScalaJava、Python)。執行 Java 和 Scala 例子時你可以傳遞類名給 Spark 的 bin/run-example指令碼, 例如:

$ ./bin/run-example SparkPi 10

通過 Python API 來執行互動模式:

# 使用2個 Worker 執行緒本地化執行 Spark(理想情況下,該值應該根據執行機器的 CPU 核數設定)
$ ./bin/pyspark --master local[2]

Python 2.6.6 (r266:84292, Nov 22 2013, 12:16:22)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-4)] on linux2
Type "help", "copyright", "credits" or "license" for more information.

Welcome to
      ____              __
     / __/__  ___ _____/ /__
    _\ \/ _ \/ _ `/ __/  `_/
   /__ / .__/\_,_/_/ /_/\_\   version 1.2.0
      /_/

Using Python version 2.6.6 (r266:84292, Nov 22 2013 12:16:22)
SparkContext available as sc.
>>>

你也可以執行 Python 編寫的應用:

$ mkdir -p /usr/lib/spark/examples/python
$ tar zxvf /usr/lib/spark/lib/python.tar.gz -C /usr/lib/spark/examples/python

$ ./bin/spark-submit examples/python/pi.py 10

另外,你還可以執行 spark shell 的互動模式:

# 使用2個 Worker 執行緒本地化執行 Spark(理想情況下,該值應該根據執行機器的 CPU 核數設定)
$ ./bin/spark-shell --master local[2]

Welcome to
      ____              __
     / __/__  ___ _____/ /__
    _\ \/ _ \/ _ `/ __/  `_/
   /___/ .__/\_,_/_/ /_/\_\   version 1.2.0
      /_/

Using Scala version 2.10.4 (Java HotSpot(TM) 64-Bit Server VM, Java 1.7.0_71)
Type in expressions to have them evaluated.
Type :help for more information.

Spark context available as sc.

scala> val lines = sc.textFile("data.txt")
scala> val lineLengths = lines.map(s => s.length)
scala> val totalLength = lineLengths.reduce((a, b) => a + b)

上面是一個 RDD 的示例程式,從一個外部檔案建立了一個基本的 RDD物件。如果想執行這段程式,請確保 data.txt 檔案在當前目錄中存在。

4.2 在叢集上執行

Spark 目前支援三種叢集管理模式:

  • Standalone – Spark自帶的簡單的叢集管理器, 很容易的建立Spark叢集
  • Apache Mesos – 一個通用的叢集管理器,可以執行Hadoop MapReduce和其它服務應用

另外 Spark 的 EC2 launch scripts 可以幫助你容易地在Amazon EC2上啟動standalone cluster.

>

  • 在叢集不是特別大,並且沒有 mapReduce 和 Spark 同時執行的需求的情況下,用 Standalon e模式效率最高。
  • Spark可以在應用間(通過叢集管理器)和應用中(如果一個 SparkContext 中有多項計算任務)進行資源排程。

Standalone 模式

該模式下只需在一個節點上安裝 spark 的相關元件即可。

你可以通過 spark-shel l 執行下面的 wordcount 例子,因為 hdfs 上的輸入和輸出檔案都涉及到使用者的訪問許可權,故這裡使用 hive 使用者來啟動 spark-shell:

讀取 hdfs 的一個例子:

$ echo "hello world" >test.txt
$ hadoop fs -put test.txt /tmp

$ spark-shell
scala> val file = sc.textFile("hdfs://cdh1:8020/tmp/test.txt")
scala> file.count()

如果出現下面異常,可能是因為 系統可用記憶體不夠

/usr/lib/spark/bin/spark-shell: line 48:  5385 Killed                  "$FWDIR"/bin/spark-submit --class org.apache.spark.repl.Main "${SUBMISSION_OPTS[@]}" spark-shell "${APPLICATION_OPTS[@]}"

執行過程中,還可能會出現下面的錯誤:

14/10/24 14:51:40 WARN hdfs.BlockReaderLocal: The short-circuit local reads feature cannot be used because libhadoop cannot be loaded.
14/10/24 14:51:40 ERROR lzo.GPLNativeCodeLoader: Could not load native gpl library
java.lang.UnsatisfiedLinkError: no gplcompression in java.library.path
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1738)
    at java.lang.Runtime.loadLibrary0(Runtime.java:823)
    at java.lang.System.loadLibrary(System.java:1028)
    at com.hadoop.compression.lzo.GPLNativeCodeLoader.<clinit>(GPLNativeCodeLoader.java:32)
    at com.hadoop.compression.lzo.LzoCodec.<clinit>(LzoCodec.java:71)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:249)
    at org.apache.hadoop.conf.Configuration.getClassByNameOrNull(Configuration.java:1836)
    at org.apache.hadoop.conf.Configuration.getClassByName(Configuration.java:1801)
    at org.apache.hadoop.io.compress.CompressionCodecFactory.getCodecClasses(CompressionCodecFactory.java:128)

解決方法:

cp /usr/lib/hadoop/lib/native/libgplcompression.so $JAVA_HOME/jre/lib/amd64/
cp /usr/lib/hadoop/lib/native/libhadoop.so $JAVA_HOME/jre/lib/amd64/
cp /usr/lib/hadoop/lib/native/libsnappy.so $JAVA_HOME/jre/lib/amd64/

更復雜的一個例子,執行 mapreduce 統計單詞數:

$ spark-shell
scala> val file = sc.textFile("hdfs://cdh1:8020/tmp/test.txt")
scala> val counts = file.flatMap(line => line.split(" ")).map(word => (word, 1)).reduceByKey(_ + _)
scala> counts.saveAsTextFile("hdfs://cdh1:8020/tmp/output")

執行完成之後,你可以檢視 hdfs://cdh1:8020/tmp/output 目錄下的檔案內容。

$ hadoop fs -cat /tmp/output/part-00000
(hello,1)
(world,1)

另外,spark-shell 後面還可以加上其他引數,例如:連線指定的 master、執行核數等等:

$ spark-shell --master spark://cdh1:7077 --cores 2
scala>

也可以增加 jar:

$ spark-shell --master spark://cdh1:7077 --cores 2 --jars code.jar
scala>

執行 spark-shell --help 可以檢視更多的引數。

另外,也可以使用 spark-submit 以 Standalone 模式執行 SparkPi 程式:

$ spark-submit --class org.apache.spark.examples.SparkPi --deploy-mode client --master spark://cdh1:7077 /usr/lib/spark/lib/spark-examples-1.2.0-cdh5.3.0-hadoop2.5.0-cdh5.3.0.jar 10

Spark on Yarn

以 YARN 客戶端方式執行 SparkPi 程式:

$ spark-submit --class org.apache.spark.examples.SparkPi --deploy-mode client --master yarn /usr/lib/spark/lib/spark-examples-1.2.0-cdh5.3.0-hadoop2.5.0-cdh5.3.0.jar 10

以 YARN 叢集方式執行 SparkPi 程式:

$ spark-submit --class org.apache.spark.examples.SparkPi --deploy-mode cluster --master yarn usr/lib/spark/lib/spark-examples-1.2.0-cdh5.3.0-hadoop2.5.0-cdh5.3.0.jar 10

執行在 YARN 叢集之上的時候,可以手動把 spark-assembly 相關的 jar 包拷貝到 hdfs 上去,然後設定 SPARK_JAR 環境變數:

$ hdfs dfs -mkdir -p /user/spark/share/lib
$ hdfs dfs -put $SPARK_HOME/lib/spark-assembly.jar  /user/spark/share/lib/spark-assembly.jar

$ SPARK_JAR=hdfs://<nn>:<port>/user/spark/share/lib/spark-assembly.jar

5. Spark-SQL

Spark 安裝包中包括了 Spark-SQL ,執行 spark-sql 命令,在 cdh5.2 中會出現下面異常:

$ cd /usr/lib/spark/bin
$ ./spark-sql
java.lang.ClassNotFoundException: org.apache.spark.sql.hive.thriftserver.SparkSQLCLIDriver
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:247)
    at org.apache.spark.deploy.SparkSubmit$.launch(SparkSubmit.scala:319)
    at org.apache.spark.deploy.SparkSubmit$.main(SparkSubmit.scala:75)
    at org.apache.spark.deploy.SparkSubmit.main(SparkSubmit.scala)

Failed to load Spark SQL CLI main class org.apache.spark.sql.hive.thriftserver.SparkSQLCLIDriver.
You need to build Spark with -Phive.

在 cdh5.3 中會出現下面異常:

Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.hive.cli.CliDriver
  at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
  at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
  at java.security.AccessController.doPrivileged(Native Method)
  at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
  at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
  at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
  at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
  ... 18 more
 ```

從上可以知道  Spark-SQL 編譯時沒有整合 Hive,故需要重新編譯 spark 原始碼。

### 編譯 Spark-SQL

下載程式碼:

```bash
$ git clone git@github.com:cloudera/spark.git
$ cd spark
$ git checkout -b origin/cdh5-1.2.0_5.3.0

編譯程式碼,整合 yarn 和 hive,有三種方式:

$ sbt/sbt -Dhadoop.version=2.5.0-cdh5.3.0 -Pyarn -Phive assembly

等很長很長一段時間,會提示錯誤。

相關推薦

Spark1.2CDH5.2~CDH5.3安裝使用(A)

本文主要記錄 Spark 的安裝過程配置過程並測試 Spark 的一些基本使用方法。 安裝環境如下: 作業系統:CentOs 6.5Hadoop 版本:CDH-5.3.0Spark 版本:1.2 關於 yum 源的配置以及 Hadoop 叢集的安裝,請參考 使用yum安

21.2 memcached介紹;21.2 memcached介紹;21.3 安裝memcached

安裝memcached21.2 memcached介紹什麽是NoSQL?1. 非關系型數據庫就是NoSQL,關系型數據庫代表MySQL2. 對於關系型數據庫來說,是需要把數據存儲到庫、表、行、字段裏,查詢的時候根據條件一行一行地去匹配,當量非常大的時候就很耗費時間和資源,尤其是數據是需要從磁盤裏去檢索3. N

HGDB4.3.2在CentOS 6.x中安裝解除安裝指導手冊

目錄 文件用途 詳細資訊 相關文件 文件用途 介紹HGDB4.3.2在CentOS 6.8系統上的安裝和解除安裝流程。 詳細資訊 1.安裝版本及注意事項 1.1 安裝版本 作業系統 CentOS 6.8 x86_64

Sphinx 2.2.3 安裝配置,英文數字中文搜尋

注:專案中,中文分詞比較少,所以直接使用原版Sphinx 一元分詞 作者:凨.FOX 編譯前, 先要把mysql安裝好。 開始安裝sphinx tar zxvf sphinx-2.2.3-beta.tar.gz cd sphinx-2.2.3-beta ./configu

INVECAS釋出全球首創的HDMI(R)2.1,搭載HDCP2.3晶片IP解決方案,適用於電視、AVR、條形音響機頂盒

INVECAS在拉斯維加斯舉行的2019國際消費電子展(International CES)上(拉斯維加斯會展中心南展廳1,展位#20208)展示搭載HDCP 2.3、適用於HDMI 2.1的晶片和IP解決方案,同時演示聯合三星QLED 8K締造的8K 60Hz家庭影院體驗  

Apache2.2+MySql5.5+PHP5.4的安裝配置(windows)

Apache2.2+MySql5.5+PHP5.4的安裝和配置 phpMyAdmin的安裝和配置 安裝Apache2.2 Win32 Binaryincluding OpenSSL 0.9.8t (MSI Installer): httpd-2.2.22-win3

nutch系列2——nutch2.x的編譯、安裝配置

也可以通過命令的形式直接下載: wget http://mirror.bit.edu.cn/apache/nutch/2.3.1/apache-nutch-2.3.1-src.tar.gz 2、解壓nutch(目錄:/opt/work/)

Qt最新版5.12.2在Win10環境靜態編譯安裝部署的完整過程(VS2017)

一、為什麼要靜態編譯 用QtCreator編譯程式時,使用的是動態編譯。編譯好的程式在執行時需要另外加上相應的Qt庫檔案,一大堆dll檔案。如果想將生成的程式連同所需要的庫一起完整地打包成一個可執行程式,那就需要使用靜態編譯。Qt官方不提供靜態編譯好的安裝包,所以需要我們在自己的電腦上靜態編譯。而且exe檔案

Centos7.3安裝配置Tomcat8

localhost pat 1.10 logs .cn mage port oot -c 第一步:下載Tomcat8壓縮包 進入 http://tomcat.apache.org/download-80.cgi 下載tar.gz壓縮包 第二步:用ftp

Centos7.3安裝配置Mysql5.7

mysql5 logs public mon grant https mysql sta -- 第一步:獲取mysql YUM源 進入mysql官網獲取RPM包下載地址 https://dev.mysql.com/downloads/repo/yum/

Centos7.3安裝配置jre1.8

分享 運行環境 filezilla www 編輯 exp path 解壓 安裝和配置 在正式環境裏 我們可以不安裝jdk ,僅僅安裝Java運行環境 jre即可; 第一步:下載jre 我們去oracle官方下載下jre http://www.oracle

ELK-學習-1:elasticsearch6.3安裝配置

home true 地址 修改配置 iss HA 5.2.1 oop bubuko 安裝elacticsearch: 1,安裝jdk 要求1.8以上 2,安裝elacticsearch rpm –ivh https://artifacts.elastic.co/downl

Centos7.3安裝配置jre1.8轉

    在正式環境裡 我們可以不安裝jdk ,僅僅安裝Java執行環境 jre即可;     第一步:下載jre 我們去oracle官方下載下jre  http://www.oracle.com/techn

【轉載】Centos7.3安裝配置Mysql5.7

Linux安裝mysql aliyun安裝mysql https://blog.csdn.net/qq_35393693/article/details/79994097   遇到問題向下看   (第七步:設定允許遠端登入 Mysql預設不允許遠端登入

centos7.3 安裝配置mysql

1.獲取mysql yum源 點選Download 得到這個  這個就是Yum倉庫的rpm包 其實就是一個下載地址 2.下載和安裝mysql源 -bash: wget: 未找到命令 我們先安裝下wget  yum -y install wg

Qt4Qt5的下載、安裝使用

最近找Qt的安裝方法是真的煩。網上太多版本,Qt官網更新了,找不到下載地方(收錢)。終於找到一個完整版了 http://www.cnblogs.com/lxmwb/p/6352220.html 導語:     Qt是一個跨平臺的C++圖形介面應用程式框架。它提供給開

FD.IO-VPP使用研究心得一(安裝基本使用)

VPP安裝和使用 宿主機要求 安裝方法: 一,通過fd.io官網原始碼下載編譯 二,通過源apt或yum下載 執行過程 1, 設定巨頁 2 ,載入驅動 3 ,修改vpp配置檔案

Hadoop單機模式安裝-(3)安裝配置Hadoop

網路上關於如何單機模式安裝Hadoop的文章很多,按照其步驟走下來多數都失敗,按照其操作彎路走過了不少但終究還是把問題都解決了,所以順便自己詳細記錄下完整的安裝過程。 此篇主要介紹在Ubuntu安裝完畢後,如何進行Hadoop的安裝和配置。 我所記錄的筆記適合沒有Linux基礎的朋友跟我一起操作,同時歡迎

Python: 刪除已安裝的模組或包 python工具pip的安裝使用

Python: 刪除已安裝的模組或包(modules or packages)_王志_新浪部落格  http://blog.sina.com.cn/s/blog_4ddef8f80102v1p8.html 方法一: 使用pip 安裝pip $ wget ht

OpenTSDB 2.3+TCollector 1.3+安裝配置排錯

opentsdb tcollector 數據采集 監控 hbase 其實不太想用opentsdb,一直以來用influxdb+grafana挺方便的,而且tsdb依賴hbase,雖說容量和速度有保證,但是分布式系統對於一個監控平臺來說,終歸還是有些重了,出問題定位更繁瑣,但領導說用那就用吧