055. SkyWalking 集群环境搭建

1. 环境准备

1.1. 用于搭建 SkyWalking 的三台服务器

1.1.1. 服务器
  • 10.1.62.78
  • 10.1.62.79
  • 10.1.62.80
1.1.2. 需要端口
  • 11800(gRPC 数据收集和内网节点间通信)
  • 12800(SkyWalking UI 查询和 HTTP 数据收集)
  • 8080(SkyWalking UI 端口)
1.1.3. 需要 JDK
1.1.4. 创建 SkyWalking 用户
  • 三台都要执行
useradd skywalking
passwd skywalking

1.2. Nacos 集群

  • 10.1.62.78:8848
  • 10.1.63.117:8848
  • 10.1.63.118:8848

1.3. ElasticSearch 集群

  • 10.1.63.116:9200
  • 10.1.63.116:9201
  • 10.1.63.117:9200

1.4. Nginx

  • 10.1.62.78

2. 安装过程

  • **之后过程没有明确说明都在 10.1.62.78 上执行,用户为 skywalking **。

2.1. 无密码 ssh 登录其他节点

  • 执行命令 ssh-keygen -t rsa

  • 设置无密码登录。

    ssh-copy-id -p 19222 skywalking@10.1.62.78
    ssh-copy-id -p 19222 skywalking@10.1.62.79
    ssh-copy-id -p 19222 skywalking@10.1.62.80
    

2.2. 配置环境变量

2.2.1 创建环境变量脚本
cd /home/skywalking

cat > environment.sh << EOF
#!/usr/bin/bash

# SkyWalking 集群各机器 IP 数组
export SKYWALKING_NODE_IPS=(10.1.62.78 10.1.62.79 10.1.62.80)
export SKYWALKING_NODES="10.1.62.78:12800,10.1.62.79:12800,10.1.62.80:12800"

# Nacos 集群各机器 IP 及端口
export NACOS_NODE_IPS=(10.1.62.78 10.1.63.117 10.1.63.118)
export NACOS_NODE_PORTS=(8848 8848 8848)
export SW_CLUSTER_NACOS_HOST_PORT="10.1.62.78:8848,10.1.63.117:8848,10.1.63.118:8848"

# ES 集群名
export ELASTICSEARCH_NODE_IPS=(10.1.63.116 10.1.63.116 10.1.63.117)
export ELASTICSEARCH_NODE_PORTS=(9200 9201 9200)
export ELASTICSEARCH_CLUSTER_NAME="elasticsearch-cluster"
# ES 集群各机器 IP 及端口
export ELASTICSEARCH_CLUSTER_NODES="10.1.63.116:9200,10.1.63.116:9201,10.1.63.117:9200"
# ES 用户名
export ELASTICSEARCH_CLUSTER_USER="elastic"
# ES 密码
export ELASTICSEARCH_CLUSTER_PASSWORD="elastic"

EOF
2.2.2. 脚本分发到其他服务器
source /home/skywalking/environment.sh

for node_ip in ${SKYWALKING_NODE_IPS[@]}
  do
    echo ">>> ${node_ip}"
    scp -P 19222 /home/skywalking/environment.sh skywalking@${node_ip}:/home/skywalking/
  done

2.3. 环境检测

2.3.1. Nacos 集群检测
source /home/skywalking/environment.sh

for i in "${!NACOS_NODE_IPS[@]}";
  do
    echo ">>> ${NACOS_NODE_IPS[$i]}"
    echo -e "\n" | telnet ${NACOS_NODE_IPS[$i]} ${NACOS_NODE_PORTS[$i]} | grep Connected
  done
2.3.2. ES 集群检测
source /home/skywalking/environment.sh

for i in "${!ELASTICSEARCH_NODE_IPS[@]}";
  do
    echo ">>> ${ELASTICSEARCH_NODE_IPS[$i]}:${ELASTICSEARCH_NODE_PORTS[$i]}"
    echo -e "\n" | telnet ${ELASTICSEARCH_NODE_IPS[$i]} ${ELASTICSEARCH_NODE_PORTS[$i]} | grep Connected
  done

2.4. 下载并解压 SkyWalking 官方包

2.4.1. 下载
mkdir /home/skywalking/Softwares
cd /home/skywalking/Softwares/
wget https://mirror.bit.edu.cn/apache/skywalking/8.1.0/apache-skywalking-apm-es7-8.1.0.tar.gz
2.4.2. 分发服务器
source /home/skywalking/environment.sh

for node_ip in ${SKYWALKING_NODE_IPS[@]}
  do
    echo ">>> ${node_ip}"
    ssh -p 19222 skywalking@${node_ip} "mkdir /home/skywalking/Softwares"
    scp -P 19222 /home/skywalking/Softwares/apache-skywalking-apm-es7-8.1.0.tar.gz skywalking@${node_ip}:/home/skywalking/Softwares/
  done
2.4.3. 解压
source /home/skywalking/environment.sh

for node_ip in ${SKYWALKING_NODE_IPS[@]}
  do
    echo ">>> ${node_ip}"
    ssh -p 19222 skywalking@${node_ip} "tar zxvf /home/skywalking/Softwares/apache-skywalking-apm-es7-8.1.0.tar.gz -C /home/skywalking/"
  done

2.5. SkyWalking OAP 搭建

2.5.1. 备份 OAP 配置文件
source /home/skywalking/environment.sh

for node_ip in ${SKYWALKING_NODE_IPS[@]}
  do
    echo ">>> ${node_ip}"
    ssh -p 19222 skywalking@${node_ip} "mv /home/skywalking/apache-skywalking-apm-bin-es7/config/application.yml /home/skywalking/apache-skywalking-apm-bin-es7/config/application.yml.bak"
  done
2.5.2. 创建新的 OAP 配置文件
cd /home/skywalking/apache-skywalking-apm-bin-es7/config/
touch application.yml
2.5.3. 使用 vi 命令编辑 application.yml 文件,写入以下内容
  • 如果缩进和注释有问题,配合 :set paste:set nopaste 命令写入。
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements.  See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License.  You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值