Docker部署

来源:互联网 发布:java第三方服务器ftp 编辑:程序博客网 时间:2024/03/29 14:17

1、部署过程

单节点安装

集群节点安装

2、日志

3、基本镜像配置

一、本指南介绍如何使用Docker容器化平台部署Kaa群集。

部署的群集将包括:

Kaa nodes
One Zookeeper node
One SQL Database node – MariaDB/PostgreSQL
One NoSQL Database node – MongoDB/Cassandra

二、部署过程:

在您的机器上部署一个Kaa群集

1、安装Docker Engine

如果使用Linux,则可以通过运行安装脚本来安装Docker Engine。

 wget -qO- https://get.docker.com/ | sh
重要信息:如果使用Windows,则还必须安装Python。

2、安装DockerСompose。

3、从官方网站下载Kaa debian软件包或在本地构建您的Kaa项目(使用位于server / node / target /中的kaa-node.deb)。

将kaa-node.deb文件放在server / containers / docker /目录中。

4、在server / containers / docker目录下运行以下命令。

docker build --build-arg setupfile=kaa-node.deb -t kaa-node:0.10.1 .

或者,您可以运行以下命令。

 build.sh

三、单个节点的安装

要安装单个节点:

1、通过在server / containers / docker / docker-compose-1-node / kaa-example.env文件中指定TRANSPORT_PUBLIC_INTERFACE参数来获取您的公共主机。

Linux / macOS

 ip route get 8.8.8.8 | awk '{print $NF; exit}'
Windows

netsh interface ip show address "Ethernet" | findstr "IP Address"
2、打开docker-compose-1-node目录中的所有目录。
cd docker-compose-1-node/$SQL-NoSQL/
以下SQL-NoSQL数据库可用:
mariadb-mongodb
mariadb-cassandra
postgresql-mongodb
postgresql-cassandra

3、运行以下命令。

docker-compose up
如果要将Docker容器作为守护程序运行,请运行

docker-compose up -d
集群节点安装

四、要安装群集节点:
1、指定要使用的SQL-NoSQL数据库。 为此,请从server / containers / docker / using-compose目录运行以下命令。

python launch-kaa.py SQL-NoSQL
参见下面的例子。

python launch-kaa.py mariadb-mongodb
以下SQL-NoSQL数据库可用:

mariadb-mongodb
mariadb-cassandra
postgresql-mongodb
postgresql-cassandra

如果要在集群模式下部署Kaa,请使用附加选项运行上一个命令。

docker ps -a

 python launch-kaa.py SQL-NoSQL NODE_COUNT
参见下面的例子。

python launch-kaa.py mariadb-mongodb 3
2、执行以下命令访问正在运行的容器。
docker exec -it usingcompose_KAA_SERVICE_NAME_1 /bin/bash -c "export TERM=xterm; exec bash"
KAA_SERVICE_NAME是kaa-docker-compose.yml文件中指定的Kaa服务名称。
3、等待几秒钟,直到kaa-node服务启动,并在localhost:8080打开浏览器。 请参阅kaa节点容器日志以检查服务是否已启动。


五、logs(日志)

当您将Docker容器作为守护程序运行时,不会显示其输出。 要访问它,运行

docker-compose -f kaa-docker-compose.yml -p usingcompose exec KAA_SERVICE_NAME sh /kaa/tail-node.sh
KAA_SERVICE_NAME是kaa-docker-compose.yml文件中指定的Kaa服务名称。
或者,您可以运行view-kaa-node-logs.sh来获得相同的结果。

您也可以使用下面的命令。

docker logs DOCKER_SERVICE_NAME
要获取所有Docker容器的名称,请运行:

docker ps -a
要获取正在运行的所有Docker容器的名称,请执行以下命令。
docker ps


六、基于镜像配置

使用以下环境变量完成基本映像配置。
VariableDefaultNote / Possible valuesSERVICES_WAIT_TIMEOUT-1 (forever)Seconds (integer) before timeout while waiting for ZK/SQL/NoSQL to be ready, otherwise abort.
10: wait 10 seconds.
0: don’t wait
-1: wait forever.   ZOOKEEPER_NODE_LISTlocalhost:2181comma separated list   SQL_PROVIDER_NAMEmariadbmariadb , postgresqlJDBC_HOSTlocalhost JDBC_PORTif mariadb: 3306
if postgresql: 5432 JDBC_USERNAMEsqladmin JDBC_PASSWORDadmin JDBC_DB_NAMEkaa    CASSANDRA_CLUSTER_NAMEKaa Cluster CASSANDRA_KEYSPACE_NAMEkaa CASSANDRA_NODE_LISTlocalhost:9042comma separated listCASSANDRA_USE_SSLfalse CASSANDRA_USE_JMXtrue CASSANDRA_USE_CREDENTIALSfalse CASSANDRA_USERNAME(empty) CASSANDRA_PASSWORD(empty)    MONGODB_NODE_LISTlocalhost:27017 MONGODB_DB_NAMEkaa MONGODB_WRITE_CONCERNacknowledged    NOSQL_PROVIDER_NAMEmongodbmongodb , cassandra   CONTROL_SERVER_ENABLEDtruetrue/falseBOOTSTRAP_SERVER_ENABLEDtruetrue/falseOPERATIONS_SERVER_ENABLEDtruetrue/falseTHRIFT_HOSTlocalhost THRIFT_PORT9090 ADMIN_PORT8080 SUPPORT_UNENCRYPTED_CONNECTIONtruetrue/falseTRANSPORT_BIND_INTERFACE0.0.0.0 TRANSPORT_PUBLIC_INTERFACEcurrent public host METRICS_ENABLEDtruetrue/false
   
 
 

 

原创粉丝点击