当前位置: 首页 > 工具软件 > Kaa > 使用案例 >

kaa服务器安装_KAA 0.10.0单节点安装

江德润
2023-12-01

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

单节点安装

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

如果这是您第一次使用Kaa,或者您不确定是否可以手动安装节点,请使用Kaa Sandbox。Kaa 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的最新产品版本上进行了测试。

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

安装

第三方组件

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

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

$ sudo yum install wget nc gzip

安装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)

安装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* ...

Show less

$ 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

下载并提取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

Show less

将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安装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

$ 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,您需要下载预先构建的软件包或从源代码构建它们。在本指南中,使用了预构建的包。

从Kaa下载页面下载最新的RPM软件包。

解压缩下载的tarball。

$ tar -xvf kaa-rpm-*.tar.gz

安装节点服务。

$ sudo rpm -i kaa-node.rpm

组态

SQL数据库

您可以使用MariaDB(默认使用)或PostgreSQL。在配置属性文件模板是locatied在/etc/kaa-node/conf/目录中:maria-dao.properties.template,mariadb-dao.properties.template为MariaDB的数据库和文件postgre-dao.properties.template,postgresql-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

网络接口

要为Operations和Bootstrap服务配置接口,请指定网络中设备可见的主机名或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

Show less

启动

启动Kaa服务。

$ sudo service kaa-node start

启动后检查日志。

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

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

 类似资料: