1. 程式人生 > 實用技巧 >安裝Ruby和logstash外掛

安裝Ruby和logstash外掛

現在的logstash版本,外掛都是自帶的,所以不需要安裝ruby和logstash,如果需要的外掛沒有在安裝

安裝配置Ruby

  1. 我的CentOS的版本比較低,是CentOS6.6的,直接通過yum安裝的Ruby的版本比較低,導致安裝的時候會出現很多問題(網上的很多解決方案寫的很高檔,但是都沒有解決我的問題)
  2. 檢視是否安裝gem:gem
  3. 安裝gem:yum install gem
    1. 檢視gem版本:gem -v (我的gem版本是1.3.7,比較低,會導致出現問題)
    2. 檢視gem sources:gem sources -l
  4. 替換ruby映象庫為國內的庫,因為國外的庫,國內是訪問不到的
    1. 替換成ruby-china的庫:gem sources --add https://gems.ruby-china.com/ --remove https://rubygems.org/
    2. 檢視是否成功:gem sources -l

遇到的坑

yum install gem失敗

  1. 錯誤:No package gem available
  2. 查詢到gem:yum search gem
  3. 下載rubygems.noarch:yum install rubygems.noarch

ruby版本比較低導致的問題

  1. 問題:hostname was not match with the server certificate (https://gems.ruby-china.com/specs.4.8.gz)
  2. 解決方案:更換 yum源安裝,ruby版本太低了(由於ruby版本比價低導致的問題都可以這麼解決)
    1. 第一步:ruby -v(檢視安裝版本)
    2. 第二步: yum install centos-release-scl-rh(會在/etc/yum.repos.d/目錄下多出一個CentOS-SCLo-scl-rh.repo源)
    3. 第三步: yum install rh-ruby23 -y(安裝yum安裝)
    4. 第四步 :scl enable rh-ruby23 bash(啟用)
    5. 第五步 :ruby -v(檢視安裝版本)
    6. 第六步:gem -v (檢視gem版本)

時間設定導致的問題

  1. 問題:SSL_connect returned=1 errno=0 ..........
  2. 解決方案:
    1. 檢視是不是時間問題:date
    2. ntpdate time.windows.com
    3. 再次檢視時間沒問題了:date
    4. 替換成功了

安裝logstash-input-jdbc外掛

  1. 進入logstash-5.5.2,修改Gemfile檔案裡面的資料來源:vi Gemfile
    source "https://gems.ruby-china.com"
  2. 安裝logstash-input-jdbc外掛:./logstash-plugin install logstash-input-jdbc