1、 先决条件;
安装:
第三方组件
kaa服务器组件
配置:
SQL数据库
NoSQL数据库
Network接口
firewall防火墙
启动;
本指南介绍如何在单个Linux节点上安装和配置Kaa组件。
如果这是您第一次使用Kaa,或者您不确定是否可以手动安装该节点,请使用Kaa Sandbox。 Kaa Sandbox模拟了一个单节点Kaa安装,它已经预先配置好了,所以您可以立即开始开发应用程序。
2、step1、先决条件
Kaa支持以下操作系统系列,并为每个系列提供安装包:
Ubuntu and Debian systems
Red Hat/CentOS/Oracle systems
NOTE: This guide is verified against:
Ubuntu 14.04 LTS Desktop 64-bit
Ubuntu 16.04 LTS Desktop 64-bit
CentOS 6.7 64-bit
CentOS 7.2 64-bit
要使用Kaa,您的系统必须符合以下最低要求:
64-bit OS
4 Gb RAM
Kaa需要安装和配置以下第三方组件:
Oracle JDK 8PostgreSQL 9.4MariaDB 5.5Zookeeper 3.4.5 or later
Kaa已经在最新的MariaDB和PostgreSQL产品版本上进行了测试。Kaa还需要MongoDB 2.6.9或Cassandra 3.5作为NoSQL数据库。
下一节将介绍第三方组件的安装。
3、安装第三方组件:
按照以下说明安装所需的第三方组件。
Ubuntu14.04/16.04上的第三方组件的安装:
3.1、下载并安装常用实用程序:wget,ca-certificates,curl。
$ sudo apt-get install wget ca-certificates curl
3.2、安装Oracle JDK 8。这不是正式的java库。选择Oracle JDK的安装过程,看到官方网页。
$ sudo add-apt-repository ppa:webupd8team/java
$ sudo apt-get update
$ sudo apt-get install oracle-java8-installer
要检查是否安装了Oracle JDK,请运行以下命令。
$ javac -version
JDK版本将在安装成功后显示。
javac 1.8.0_91
3.3、安装SQL DB。 Kaa需要使用MariaDB(默认使用)或PostgreSQL。
MariaDB:
安装python-software-properties包。
$ sudo apt-get install python-software-properties
添加MariaDB存储库的密钥文件。
$ sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xcbcb082a1bb943db
添加存储库
$ sudo add-apt-repository 'deb http://mirror.jmu.edu/pub/mariadb/repo/5.5/ubuntu trusty main'
使用Galera补丁安装MariaDB 5.5
$ sudo apt-get update
$ sudo apt-get install mariadb-galera-server-5.5 mariadb-client-5.5
如果您的计算机上没有安装rsync,请运行以下命令进行安装。
$ sudo apt-get install rsync
检查MariaDB服务是否正在运行。
$ sudo netstat -ntlp | grep 3306
连接到mysql-server。
$ mysql -u root -p
指定用户名和密码。 默认情况下,使用sqladmin用户名和管理员密码。
CREATE USER 'sqladmin'@'localhost' IDENTIFIED BY 'admin'; GRANT ALL PRIVILEGES ON *.* TO 'sqladmin'@'localhost' WITH GRANT OPTION; FLUSH PRIVILEGES;
创建Kaa数据库。
CREATE DATABASE kaa
CHARACTER SET utf8
COLLATE utf8_general_ci;
4、安装Zookeeper 3.4.8。
$ sudo apt-get install zookeeper
启动Zookeeper。
$ sudo /usr/share/zookeeper/bin/zkServer.sh start
检查Zookeeper服务是否正在运行。
$ netstat -ntlp | grep 2181
5、安装NoSQL DB。 Kaa需要MongoDB(默认使用)或Cassandra。
MongoDB:
如果您安装了较旧版本,请卸载它。
$ sudo dpkg -l | grep mongo
$ sudo apt-get remove mongodb* --purge
按照操作系统的说明进行操作。
16.04:
将MongoDB存储库添加到/etc/apt/sources.list.d/mongodb.list文件中。
$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10
$ echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | sudo tee /etc/apt/sources.list.d/mongodb.list
安装MongoDB 2.6.
$ sudo apt-get update
$ sudo apt-get install -y mongodb-org=2.6.9 mongodb-org-server=2.6.9 mongodb-org-shell=2.6.9 mongodb-org-mongos=2.6.9 mongodb-org-tools=2.6.9
在启动MongoDB之前,请编辑以下文件。
$ sudo nano /etc/systemd/system/mongodb.service
[Unit]
Description=High-performance, schema-free document-oriented database
After=network.target
[Service]
User=mongodb
ExecStart=/usr/bin/mongod --quiet --config /etc/mongod.conf
[Install]
WantedBy=multi-user.target
开启MongoDB.
$ sudo systemctl start mongodb
验证MongoDB是否成功启动。
$ sudo systemctl status mongodb
$ 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
6、Kaa server components
为了安装Kaa,我们需要下载预编译包,或者从源码编译他们。在这个向导中,用的是预编译包。
1、从Kaa下载页面下载最新的Debian软件包。
2、解压下载的压缩包。
$ tar -xvf kaa-deb-*.tar.gz
3、安装Node服务。
$ sudo dpkg -i kaa-node-*.deb
7、配置:
SQL 数据库的配置:
您可以使用MariaDB(默认使用)或PostgreSQL。 配置属性文件的模板位于/ etc / kaa-node / conf /目录中:maria-dao.properties.template,mariadb-
dao.properties.template文件,用于MariaDB数据库和postgre-dao.properties.template,postgresql 用于PostgreSQL的-dao.properties.template文件。
7.1、MariaDB
检查服务器配置文件中的MariaDB用户名和密码是否有效。
$ cat /etc/kaa-node/conf/admin-dao.properties | grep jdbc_username
jdbc_username=sqladmin
$ cat /etc/kaa-node/conf/admin-dao.properties | grep jdbc_password
jdbc_password=admin
$ cat /etc/kaa-node/conf/sql-dao.properties | grep jdbc_username
jdbc_username=sqladmin
$ 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
要从PostgreSQL切换到MariaDB,请将MariaDB配置文件的内容复制到Kaa数据库配置文件。
$ sudo bash -c "cat /etc/kaa-node/conf/maria-dao.properties.template > /etc/kaa-node/conf/sql-dao.properties"
$ sudo bash -c "cat /etc/kaa-node/conf/mariadb-dao.properties.template > /etc/kaa-node/conf/admin-dao.properties"
7.2、NoSQL database
检查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
7.3\Network interface
要为操作和引导服务配置接口,请指定网络中的设备可以看到的主机名或IP地址。 这将允许各种设备与服务器组件进行通信。
$ sudo nano /etc/kaa-node/conf/kaa-node.properties
transport_public_interface=localhost=YOUR_PUBLIC_INTERFACE
7.4、Firewall
Ubuntu 14.04
Ubuntu 16.04
CentOS 6.7
CentOS 7.2
打开要由管理UI(8080),引导服务(9888,9889)和操作服务(9997,9999)使用的TCP端口。
$ 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 apt-get install iptables-persistent
$ sudo service netfilter-persistent start
$ sudo netfilter-persistent save
8、Startup
开始Kaa服务。
$ sudo service kaa-node start
启动后检查日志。
$ cat /var/log/kaa/* | grep ERROR
在Web浏览器中打开管理UI:[http:// YOUR_SERVER_HOST:8080 / kaaAdmin]。 将打开一个页面,您可以以Kaa管理员身份登录。