KAA 0.10.0单节点安装


https://kaaproject.github.io/kaa/docs/v0.10.0/Administration-guide/System-installation/Single-node-installation/

单节点安装

本指南介绍如何在单个Linux节点上安装和配置Kaa组件。

如果这是您第一次使用Kaa,或者您不确定是否可以手动安装节点,请使用Kaa SandboxKaa Sandbox模拟已经预先配置的单节点Kaa安装,因此您可以立即开始开发应用程序。

先决条件

Kaa支持以下操作系统系列,并为每个系列提供安装包:

  • Ubuntu和Debian系统
  • Red Hat / CentOS / Oracle系统

注意:本指南经过验证:

  • Ubuntu 14.04 LTS Desktop 64位
  • Ubuntu 16.04 LTS桌面64位
  • CentOS 6.7 64位
  • CentOS 7.2 64位

要使用Kaa,您的系统必须满足以下最低要求:

  • 64位操作系统
  • 4 Gb RAM

Kaa需要安装和配置以下第三方组件:

Kaa已经在MariaDB和PostgreSQL的最新产品版本上进行了测试。

Kaa还需要MongoDB 2.6.9Cassandra 3.5作为NoSQL数据库。

第三方组件的安装将在下一节中介绍。

安装

第三方组件

按照以下说明安装所需的第三方组件。

  1. 下载并安装常用工具:wget,nc,gzip。

    $ sudo yum install wget nc gzip 
  2. 安装Oracle JDK 8下载并安装JDK rpm。

    $ cd ~ $ wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u60-b27/jdk-8u60-linux-x64.rpm" $ sudo yum localinstall jdk-8u60-linux-x64.rpm 

    更新新JDK的Java替代方案。

    $ cd /usr/java/jdk1.8.0_60/ $ sudo alternatives --install /usr/bin/java java /usr/java/jdk1.8.0_60/bin/java 2 $ sudo alternatives --config java There are 2 programs which provide 'java'. Selection Command ----------------------------------------------- * 1 /usr/java/jdk1.8.0_60/jre/bin/java + 2 /usr/java/jdk1.8.0_60/bin/java 

    检查Java版本。

    $ java -version java version "1.8.0_60" Java(TM) SE Runtime Environment (build 1.8.0_60-b27) Java HotSpot(TM) 64-Bit Server VM (build 25.60-b23, mixed mode) 
  3. 安装SQL DB。Kaa需要MariaDB(默认使用)或PostgreSQL。

按照操作系统的说明进行操作。

从默认存储库中排除旧的PostgreSQL,在[base][updates]exclude=postgresql*部分附加一行

$ sudo nano /etc/yum.repos.d/CentOS-Base.repo ... [base] name=CentOS-$releasever - Base mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra #baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 exclude=postgresql* #released updates [updates] name=CentOS-$releasever - Updates mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates&infra=$infra #baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/ gpgcheck=1 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7 exclude=postgresql* ...

安装PostgreSQL 9.4 PGD​​G文件。

$ sudo yum localinstall https://yum.postgresql.org/9.4/redhat/rhel-7.2-x86_64/pgdg-centos94-9.4-3.noarch.rpm 

列出可用的PostgreSQL安装并安装PostgreSQL服务器。

$ sudo yum list postgres* $ sudo yum install postgresql94-server 

初始化PostgreSQL数据库。

$ sudo /usr/pgsql-9.4/bin/postgresql94-setup initdb Initializing database ... OK 

将数据库配置为在OS启动时自动启动。

$ systemctl enable postgresql-9.4 

启动数据库。

$ systemctl start postgresql-9.4 

使用psql实用程序连接到postgresql-server。

$ sudo -u postgres psql 

指定Postgres用户的密码(Kaa配置文件中的默认密码为admin)。

postgres=# \password Enter new password: admin Enter it again: admin 

创建一个Kaa数据库。

CREATE DATABASE "kaa" WITH OWNER "postgres" ENCODING 'UTF8' LC_COLLATE = 'en_US.UTF-8' LC_CTYPE = 'en_US.UTF-8' TEMPLATE template0; 

更新pg\_hba.conf文件以允许本地连接。

$ sudo nano /var/lib/pgsql/9.4/data/pg_hba.conf remove lines: local all all peer host all all 127.0.0.1/32 ident add lines: local all all trust host all all 127.0.0.1/32 trust 

重启数据库。

$ systemctl restart postgresql-9.4 
  1. 安装Zookeeper 3.4.9

    下载并提取Zookeeper包。

    $ cd /opt $ sudo wget http://www.eu.apache.org/dist/zookeeper/zookeeper-3.4.9/zookeeper-3.4.9.tar.gz $ sudo tar zxvf zookeeper-3.4.9.tar.gz $ sudo cp zookeeper-3.4.9/conf/zoo_sample.cfg zookeeper-3.4.9/conf/zoo.cfg 

    创建一个数据目录。

    $ sudo mkdir /var/zookeeper 

    编辑dataDirzookeeper配置文件中属性。

    $ sudo nano /opt/zookeeper-3.4.9/conf/zoo.cfg 
    ...
    dataDir=/var/zookeeper ... 

    安装supervisor实用程序。

    $ sudo rpm -Uvh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-8.noarch.rpm $ sudo yum install supervisor 

    编辑/etc/supervisord.conf文件并向其添加有关ZooKeeper的部分。

    $ sudo nano /etc/supervisord.conf [program:zookeeper] command=/opt/zookeeper-3.4.9/bin/zkServer.sh start-foreground autostart=true autorestart=true startsecs=1
    startretries=999 redirect_stderr=false stdout_logfile=/var/log/zookeeper-out stdout_logfile_maxbytes=10MB stdout_logfile_backups=10 stdout_events_enabled=true stderr_logfile=/var/log/zookeeper-err stderr_logfile_maxbytes=100MB stderr_logfile_backups=10 stderr_events_enabled=true

    将Supervisor配置为在OS启动时自动启动。

    $ systemctl enable supervisord 

    启动Zookeeper。

    $ systemctl start supervisord 

    检查Zookeeper状态。

    $ sudo supervisorctl zookeeper RUNNING pid 15546, uptime 0:00:41 

    检查Zookeeper服务是否正在运行。

    $ sudo netstat -ntlp | grep 2181 tcp6 0 0 :::2181 :::* LISTEN 15546/java 
  1. 安装NoSQL DB。Kaa需要MongoDB(默认使用)或Cassandra。

添加MongoDB yum存储库。

$ sudo nano /etc/yum.repos.d/mongodb.repo [mongodb] name=MongoDB Repository baseurl=http://downloads-distro.mongodb.org/repo/redhat/os/x86_64/ gpgcheck=0 enabled=1 

安装MongoDB 2.6

$ sudo yum install -y mongodb-org 

启动MongoDB。

$ sudo service mongod start
Starting mongod: [ OK ]

验证MongoDB是否已成功启动。

$ sudo cat /var/log/mongodb/mongod.log | grep "waiting for connections on port" 2015-09-23T16:39:35.455+0300 [initandlisten] waiting for connections on port 27017 

将数据库配置为在OS启动时自动启动。

$ sudo chkconfig mongod on

Kaa服务器组件

要安装Kaa,您需要下载预先构建的软件包或从源代码构建它们在本指南中,使用了预构建的包。

  1. Kaa下载页面下载最新的RPM软件包

  2. 解压缩下载的tarball。

    $ tar -xvf kaa-rpm-*.tar.gz 
  3. 安装节点服务。

    $ sudo rpm -i kaa-node.rpm 

组态

SQL数据库

您可以使用MariaDB(默认使用)或PostgreSQL。在配置属性文件模板是locatied在/etc/kaa-node/conf/目录中:maria-dao.properties.templatemariadb-dao.properties.template为MariaDB的数据库和文件postgre-dao.properties.templatepostgresql-dao.properties.template文件对PostgreSQL。

检查PostgreSQL用户名和密码在服务器配置文件中是否有效。

$ cat /etc/kaa-node/conf/admin-dao.properties | grep jdbc_password jdbc_password=admin $ cat /etc/kaa-node/conf/sql-dao.properties | grep jdbc_password jdbc_password=admin 

如果密码或用户名不匹配,请编辑配置文件。

$ sudo nano /etc/kaa-node/conf/admin-dao.properties $ sudo nano /etc/kaa-node/conf/sql-dao.properties 

要从MariaDB切换到PostgreSQL,请将PostgreSQL配置文件的内容复制到Kaa数据库配置文件。

$ sudo bash -c "cat /etc/kaa-node/conf/postgre-dao.properties.template > /etc/kaa-node/conf/sql-dao.properties" $ sudo bash -c "cat /etc/kaa-node/conf/postgresql-dao.properties.template > /etc/kaa-node/conf/admin-dao.properties" 

NoSQL数据库

检查NoSQL数据库名称是否正确。

$ cat /etc/kaa-node/conf/nosql-dao.properties | grep nosql_db_provider_name
nosql_db_provider_name=mongodb

如果使用Cassandra,请运行以下命令。

$ sudo cqlsh -f /etc/kaa-node/conf/cassandra.cql $ sudo nano /etc/kaa-node/conf/nosql-dao.properties nosql_db_provider_name=cassandra 

网络接口

要为OperationsBootstrap服务配置接口,请指定网络中设备可见的主机名或IP地址。这将允许各种设备与服务器组件通信。

$ sudo nano /etc/kaa-node/conf/kaa-node.properties transport_public_interface=localhost=YOUR_PUBLIC_INTERFACE 

火墙

打开管理UI(8080),引导服务(9888,9889)和操作服务(9997,9999)使用的TCP端口。

$ systemctl stop firewalld $ systemctl mask firewalld $ yum install iptables-services $ systemctl enable iptables $ systemctl start iptables $ sudo iptables -I INPUT -p tcp -m tcp --dport 22 -j ACCEPT
$ sudo iptables -I INPUT -p tcp -m tcp --dport 8080 -j ACCEPT $ sudo iptables -I INPUT -p tcp -m tcp --dport 9888 -j ACCEPT $ sudo iptables -I INPUT -p tcp -m tcp --dport 9889 -j ACCEPT $ sudo iptables -I INPUT -p tcp -m tcp --dport 9997 -j ACCEPT $ sudo iptables -I INPUT -p tcp -m tcp --dport 9999 -j ACCEPT $ sudo service iptables save

启动

启动Kaa服务。

$ sudo service kaa-node start 

启动后检查日志。

$ cat /var/log/kaa/* | grep ERROR 

在Web浏览器中打开管理UI:[http:// YOUR_SERVER_HOST:8080 / kaaAdmin]。将打开一个页面,您可以以Kaa管理员身份登录。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM