2、skywalking-安装(Docker-Compose方式)

  • Post author:
  • Post category:其他




1、服务器环境介绍

两台服务器均为Centos7.6

172.16.128.129 vm1 装载skywalking(采用es作为数据库)

172.16.128.130 vm2 项目服务器,然后向vm1集成



2、准备工作

2.1、由于安装skywalking是通过docker-compose方式安装在vm1且项目到时候是直接build成镜像然后发布,所以vm1和vm2都需要先安装docker以及docker-compose

2.2、docker 安装可以参考此篇文章:https://blog.csdn.net/weixin_45438044/article/details/121850036

2.3、 docker-compose 安装可以参考此篇文章:https://blog.csdn.net/weixin_45438044/article/details/124595830

2.4、如果对docker以及docker-compose常用命令不熟悉可以在此专栏中进行一下学习https://blog.csdn.net/weixin_45438044/category_11531858.html



3、skywalking安装前服务器配置

3.1、vm1服务器:

前置条件:由于是使用es作为数据库,所以需要先对Linux系统做下配置

3.1.1、文件创建数:修改Linux系统的限制配置,将文件创建数修改为65536个

①修改系统中允许应用最多创建多少文件等的限制权限。Linux默认来说,一般限制应用最多创建的文件是65535个。但是ES至少需要65536的文件创建数的权限。

②修改系统中允许用户启动的进程开启多少个线程。默认的Linux限制root用户开启的进程可以开启任意数量的线程,其他用户开启的进程可以开启1024个线程。必须修改限制数为4096+。因为ES至少需要4096的线程池预备。

vi /etc/security/limits.conf 
#新增如下内容在limits.conf文件中 
es soft nofile 65536 
es hard nofile 65536 
es soft nproc 4096 
es hard nproc 4096 123456

3.1.2、系统控制权限:修改系统控制权限,ElasticSearch需要开辟一个65536字节以上空间的虚拟内存。Linux默认不允许任何用户和应用程序直接开辟这么大的虚拟内存

vi /etc/sysctl.conf 

添加参数:新增如下内容在sysctl.conf文件中,当前用户拥有的内存权限大小 
vm.max_map_count=262144 

重启生效:让系统控制权限配置生效 
sysctl -p



4、skywalking 正式安装



4.1、拉取基础镜像(可以跳过,在后续运行docker-compose脚本时,会自动拉取)

docker pull elasticsearch:7.9.0 
docker pull apache/skywalking-oap-server:8.1.0-es7 
docker pull apache/skywalking-ui:8.1.0 123



4.2、编写docker-compose.yml 文件

sky-ui 默认用的是8080端口,如果8080端口已经被其他服务占用了,则可以自己定义一个端口映射到8080也是一样的

version: '3.3'
services:
  elasticsearch:
    image: elasticsearch:7.9.0
    container_name: elasticsearch
    restart: always
    ports:
      - 9200:9200
    environment:
      discovery.type: single-node
      TZ: Asia/Shanghai
    ulimits:
      memlock:
        soft: -1
        hard: -1
  oap:
    image: apache/skywalking-oap-server:8.1.0-es7
    container_name: oap
    depends_on:
      - elasticsearch
    links:
      - elasticsearch
    restart: always
    ports:
      - 11800:11800
      - 12800:12800
    environment:
      SW_STORAGE: elasticsearch7 # 指定ES版本
      SW_STORAGE_ES_CLUSTER_NODES: elasticsearch:9200
      TZ: Asia/Shanghai
  ui:
    image: apache/skywalking-ui:8.1.0
    container_name: ui
    depends_on:
      - oap
    links:
      - oap
    restart: always
    ports:
      - 8080:8080
    environment:
      SW_OAP_ADDRESS: oap:12800
      TZ: Asia/Shanghai



4.3 运行docker-compose.yml 文件

此例子中,我是直接在创建了一个 /data/sky 文件夹,然后将docker-compose.yml 放在了此文件夹下

另外就是图片中的 vm2 代表的是 vm1 服务器,只不过这是之前在练习时候的截图

在这里插入图片描述

运行命令:
docker-compose up -d

在这里插入图片描述

查看服务是否已启动:
可以直接使用 
	docker-compose ps
也可以使用docker的
	docker ps

在这里插入图片描述

如上图,此时服务都已启动,则可以在浏览器中 IP + 8080 端口号,访问 sky-ui 进行查看。

在这里插入图片描述



版权声明:本文为weixin_45438044原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。