zoukankan      html  css  js  c++  java
  • 物联网平台部署Linux

    记录一下最近学习ThingsBoard(官网)

      首先将项目部署linux,所需准备2台Linux,且都能ping通(一台也可以),一台部署thingsboard平台,一台部署cassandra数据库。

      注:硬件要求取决于所选数据库和连接到系统的设备数量。要在一台机器上运行LeanIoT和PostgreSQL,您将至少需要1Gb RAM在单台计算机上运行LeanIoT和Cassandra,您至少需要8Gb RAM

     1、安装之前,请执行以下命令以安装必要的工具

    sudo yum install -y nano wget
    # 添加最新的EPEL版本
    sudo yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
    

      

     2、安装Java 8(OpenJDK)

    # ThingsBoard平台服务正在Java 8上运行。请按照以下说明安装OpenJDK 8:
    sudo yum install java-1.8.0-openjdk
    
    # 请不要忘记将操作系统配置为默认使用OpenJDK 8。您可以使用以下命令配置哪个版本是默认版本:
    sudo update-alternatives --config java
    
    # 可以使用以下命令检查安装:
    java -version
    
      预期的命令输出为:
        openjdk version "1.8.0_xxx"
        OpenJDK Runtime Environment (...)
        OpenJDK 64-Bit Server VM (build ...)
    # Update your system
    sudo yum update

     3、Cassandra安装

    # 下面列出的说明将帮助您安装Cassandra。
    # Add cassandra repository
    sudo touch /etc/yum.repos.d/datastax.repo
    echo '[datastax]' | sudo tee --append /etc/yum.repos.d/datastax.repo > /dev/null
    echo 'name = DataStax Repo for Apache Cassandra' | sudo tee --append /etc/yum.repos.d/datastax.repo > /dev/null
    echo 'baseurl = http://rpm.datastax.com/community' | sudo tee --append /etc/yum.repos.d/datastax.repo > /dev/null
    echo 'enabled = 1' | sudo tee --append /etc/yum.repos.d/datastax.repo > /dev/null
    echo 'gpgcheck = 0' | sudo tee --append /etc/yum.repos.d/datastax.repo > /dev/null
    
    # Cassandra installation
    sudo yum install dsc30
    # Tools installation
    sudo yum install cassandra30-tools
    # Start Cassandra
    sudo service cassandra start
    # Configure the database to start automatically when OS starts.
    sudo chkconfig cassandra on

    安装完成,编辑:cassandra.yaml文件 (可以根据文件路径修改内容)

    # 文件路径:/etc/cassandra/conf/cassandra.yaml
    # log路径:/var/log/cassandra/***.log
    编辑内容:
    cluster_name: 'Test Cluster' # 名称可以根据自己定义
    rpc_address: 0.0.0.0   # 或直接设置为本地IP (0.0.0.0 代表任何资源可以访问这个数据库)
    broadcast_rpc_address: 1.2.3.4  # 当rpc_address为本地ip则不用把这条放出来

    Cassandra 开启/停止

    # 停止cassandra:
    sudo service cassandra stop
    # 开启cassandra:
    sudo service cassandra start
    

     4、ThingsBoard安装

    # 1.上传leaniot.rpm包到服务器root目录下 (leaniot.rpm 是thingSboard项目打包好的压缩包,我将项目名称修改了)
    
    # 2.将LeanIoT作为服务安装
    sudo rpm -Uvh leaniot.rpm
    
    # 3.安装LeanIoT服务并更新数据库配置后,您可以执行以下脚本:
    # --loadDemo option will load demo data: users, devices, assets, rules, widgets.
    sudo /usr/share/leaniot/bin/install/install.sh --loadDemo
    
    # 4.默认情况下,LeanIoT UI可在8080端口上访问。确保您的8080端口可通过防火墙访问。为了打开8080端口,请执行以下命令:
    # 我的是1088端口,不同端口自行开放
    sudo firewall-cmd --zone=public --add-port=1088/tcp --permanent
    sudo firewall-cmd --reload
    
    # 5.执行以下命令以启动Leaniot:
    systemctl start leaniot.service

    注:因为我修改了Cassandra数据库的名称和ip,所以需要找到配置文件并修改(我的项目名称是leaniot) /etc/leaniot/conf/leaniot.yaml 

     

     

    5、防火墙

    # 查看端口:
    netstat -ntlp
    # 开放9042端口:
    firewall-cmd --zone=public --add-port=9042/tcp --permanent
    # 查看防火墙状态:
    systemctl status firewalld
    # 关闭自动启动防火墙:
    systemctl disable firewalld
    # 关闭防火墙:
    systemctl stop firewalld.service
    

    6.启动后,可以使用以下链接打开Web UI: 

    http://你的IP地址:1088/
    

      

      

  • 相关阅读:
    [Angular] @ContentChild and ngAfterContentInit
    [Angular] Content Projection with ng-content
    [ES2016] Check if an array contains an item using Array.prototype.includes
    [Ramda] Handle Errors in Ramda Pipelines with tryCatch
    [React Native] Installing and Linking Modules with Native Code in React Native
    [Ramda] Refactor to Point Free Functions with Ramda using compose and converge
    [React Native] Writing Platform-Specific Components for iOS and Android in React Native
    [Redux] Avoid action type naming conflicts
    paip.索引优化---sql distict—order by 法
    DL,DT,DD,比传统table更语义,解析更快的table列表方式
  • 原文地址:https://www.cnblogs.com/mmdz/p/12853532.html
Copyright © 2011-2022 走看看