安裝步驟

目錄結構

確保目錄包含以下安裝檔案:

installation/
├── bimap-ipoc-backend-*.deb
├── bimap-ipoc-frontend-*.deb
├── keycloak.deb
├── db_init.sql
├── influxdb2-2.7.1-amd64.deb
├── influxdb2-client-2.7.3-linux-amd64.tar.gz
└── install.sh

1. 下載安裝包

將所有安裝包下載並放置在 installation 目錄下。

2. 解壓安裝包並執行安裝腳本

installation 目錄下,創建 install.sh 並將以下內容複製進去:

#!/bin/bash

USERNAME="bimap"
PASSWORD="1qaz2wsx"
CONFIG_FILE="/etc/bimap-ipoc/config.yml"
UPLOAD_PATH="/home/sftpuser/"
IP=$(hostname -I | awk '{print $1}')

# 檢查是否有足夠權限執行腳本
if [ "$EUID" -ne 0 ]; then
  echo "請使用 root 權限執行此腳本"
  exit 1
fi

# 安裝相依套件
echo 'start => 安裝相依套件 (要等一下)'
sudo apt-get update
sudo apt-get install -y mysql-server nginx openjdk-17-jdk zip ssh sysstat nmon jq &> /dev/null

# 初始化 MySQL 資料庫
echo 'start => 初始化 MySQL 資料庫'
if [ -f "db_init.sql" ]; then
  sudo mysql < db_init.sql
else
  echo "錯誤:找不到 db_init.sql 文件"
  exit 1
fi

# 安裝 Keycloak 模組包
echo 'start => 安裝 keycloak 模組包'
if ls ./bimap-keycloak-*.deb 1> /dev/null 2>&1; then
  sudo dpkg -i ./bimap-keycloak-*.deb
else
  echo "錯誤:找不到 bimap-keycloak 安裝包"
  exit 1
fi

# 更新 Keycloak IP
echo 'start => 更新 keycloak IP'
sudo sed -i "s/change_me/$IP/" /usr/bin/keycloak/conf/keycloak.conf
sudo systemctl restart keycloak

# 安裝 BiMAP 模組包
echo 'start => 安裝 bimap 模組包'
if ls ./bimap-ipoc-backend-*.deb 1> /dev/null 2>&1 && ls ./bimap-ipoc-frontend-*.deb 1> /dev/null 2>&1; then
  sudo dpkg -i ./bimap-ipoc-backend-*.deb
  sudo dpkg -i ./bimap-ipoc-frontend-*.deb
else
  echo "錯誤:找不到 bimap-ipoc 安裝包"
  exit 1
fi

# 更新 ipoc yaml 的 host IP
echo 'start => 更新 ipoc yaml 的 host IP'
sudo sed -i "s/{{change_to_host_ip}}/$IP/" $CONFIG_FILE

# 安裝 InfluxDB 和 InfluxDB CLI
echo 'start => 安裝 InfluxDB 和 InfluxDB CLI'
if ls influxdb2_2*.deb 1> /dev/null 2>&1 && ls influxdb2-client-2.*.deb 1> /dev/null 2>&1; then
  sudo dpkg -i influxdb2_2*.deb
  sudo dpkg -i influxdb2-client-2.*.deb
  sudo systemctl restart influxdb
else
  echo "錯誤:找不到 InfluxDB 安裝包"
  exit 1
fi

# 初始化 InfluxDB
echo 'start => 初始化 InfluxDB'
influx setup --org master --bucket oss_metrics --username $USERNAME --password $PASSWORD --force

# 列出 InfluxDB token
echo 'start => 列出 InfluxDB token'
INFLUX_TOKEN=$(influx auth list --json | jq -r '.[0].token')
if [ -n "$INFLUX_TOKEN" ]; then
  sudo sed -i "s/{{change_influxdb_token}}/$INFLUX_TOKEN/" $CONFIG_FILE
else
  echo "錯誤:無法獲取 InfluxDB token"
  exit 1
fi

# 啟動 ipoc 前端
echo 'start => 啟動 ipoc 前端'
sudo systemctl restart nginx

# 更新 upload_path 並設置權限
echo 'start => 更新 upload_path 並設置權限'
sudo sed -i "s|upload_path: \".*\"|upload_path: \"$UPLOAD_PATH\"|" $CONFIG_FILE
sudo mkdir -p ${UPLOAD_PATH}master
sudo chown -R $USERNAME:$USERNAME $UPLOAD_PATH

# 啟動 bimap-ipoc 服務
echo 'start => 啟動 bimap-ipoc 服務'
sudo systemctl restart bimap-ipoc

# 設定 Keycloak
echo 'keycloak 預設帳號:bimap 預設密碼:1qaz2wsx'
echo '確認 bimap-ipoc 服務啟動正常後,設定 Keycloak'
if ! curl -X GET http://localhost:8700/api/v1/set-sso-by-ipoc; then
  echo "錯誤:設定 Keycloak 失敗,請依照手動執行以下指令 (可能需要重複步驟幾次)"
  echo '1. 停止 Keycloak 服務 => sudo systemctl stop keycloak'
  echo '2. 啟動 Keycloak 服務 => sudo systemctl start keycloak'
  echo '3. 等待至少 10 秒再確認服務 =>  curl -k https://localhost:8443'
  echo '4. 有回應 html 後執行 API 設定 Keycloak => curl -X GET http://localhost:8700/api/v1/set-sso-by-ipoc'
  exit 1     
fi

echo "腳本執行完成"

執行安裝腳本:

cd installation
chmod +x install.sh
sudo ./install.sh

3. 配置系統所需的參數和環境變數

4. 驗證配置

  1. 確認設定:確保所有基本和進階設定已正確配置並保存。
  2. 測試連接:測試伺服器和數據源的連接,確保所有數據能夠正常上傳和解析。
  3. 檢查儀表板:進入儀表板頁面,確認數據顯示正確,所有指標和圖表都能夠正常工作。

results matching ""

    No results matching ""