[TOC]
## 一、所需的第三方软件
* 需要服务器`8080`、`11800`、`12800`这3个端口未被占用
* JDK6+(被监控的应用程序运行在jdk6及以上版本)
* JDK8+(SkyWalking collector和WebUI部署在jdk8及以上版本)
* Elasticsearch 5.x(集群模式或不使用)
* Zookeeper 3.4.10
* 被监控应用的宿主服务器系统时间(包含时区)与collectors,UIs部署的宿主服务器时间设置正确且相同
## 二、下载发布版
[http://skywalking.apache.org/downloads/](http://skywalking.apache.org/downloads/)
## 三、部署 Zookeeper
Zookeeper用于collector协作,仅在需要多个collector实例时才需要.
在每个collector实例的`application.yml`中添加Zookeeper集群配置
~~~yaml
cluster:
# zk用于管理collector集群协作.
zookeeper:
# 多个zk连接地址用逗号分隔.
hostPort: localhost:2181
sessionTimeout: 100000
~~~
## 四、修改配置
1、配置 collector:
修改`config`目录下的`application.yml`文件
下面是关于collector连接配置的5种类型方式
1. `naming`:agent使用HTTP协议连接collectors
2. `agent_gRPC`:agent使用gRPC协议连接collectors
3. `remote`:Collector使用gRPC协议连接collector
4. `ui`:使用HTTP协议连接collector,(大多数情况不需要修改)
5. `agent_jetty`:agent使用HTTP协议连接collectors(可选连接)
> 只需修改storage的配置,其他默认就可以了
~~~
# 配置Elasticsearch 集群连接信息
storage:
elasticsearch:
clusterName: CollectorDBCluster
clusterTransportSniffer: true
clusterNodes: localhost:9300
indexShardsNumber: 2
indexReplicasNumber: 0
highPerformanceMode: true
# 设置统计指标数据的失效时间,当指标数据失效时系统将数据自动删除.
traceDataTTL: 90 # 单位为分
minuteMetricDataTTL: 45 # 单位为分
hourMetricDataTTL: 36 # 单位为小时
dayMetricDataTTL: 45 # 单位为天
monthMetricDataTTL: 18 # 单位为月
~~~
2、配置 UI:
配置项保存在`webapp/webapp.yml`中. 参考下面描述,更改`collector.ribbon.listOfServers`并且与`naming.jetty`参数值对应.
| Config | Description |
| --- | --- |
| `server.port` | 默认监听8080端口 |
| `collector.ribbon.listOfServers` | collector的访问服务名称(与`config/application.yml`中`naming.jetty`配置保持相同) 且若是多个 collector 服务名称用','分隔 |
| `collector.path` | Collector 查询uri地址. 默认是/graphql |
| `collector.ribbon.ReadTimeout` | 查询超时时间,默认是10秒 |
| `security.user.*` | 登录用户名/密码. 默认是 admin/admin |
## 五、启动
启动命令在`bin`目录下,需要启动oap和webapp,执行以下命令
~~~
sh startup.sh
~~~
>1. 使用`bin/startup.sh`同时启动collector和UI,若不使用1启动,需要单独启动,参考2,3
>2. 单独启动collector,运行`bin/collectorService.sh`
>3. 单独启动UI,运行`bin/webappService.sh`
## 六、访问
[http://127.0.0.1:8080/](http://127.0.0.1:8080/)
admin/admin
- 微服务介绍
- 软件架构设计
- 系统简介
- 运行环境
- 模块介绍
- 启动部署命令参数
- 打包说明
- 开发说明
- Java8
- 认证理论
- 有网络隔离
- 无网络隔离
- token自动续签设计
- url级权限控制
- 单点登录
- 登录
- 用户名密码(+验证码)登录
- 通过openId获取token
- 通过手机号获取token
- 第三方系统接口对接
- 第三方系统单点登录
- 通用刷新token
- 账号登出接口
- 统一异常处理
- 日志埋点工具
- 审计日志
- yml自定义配置自动提示
- Redis使用
- CacheManager集成
- 搜索中心
- 网关zuul动态路由
- swagger
- 解决开发环境的服务冲突和实例乱窜
- 多租户理论
- 多租户实现
- 分布式锁
- 分布式id生成器
- 分布式事务
- 分库分表sharding-sphere
- 消息队列
- 系统幂等性
- X 实时搜索系统设计
- Spring Cloud性能调优
- 链路跟踪
- JWT的RSA非对称密钥生成
- jdk
- Oracle
- OpenJDK
- Dragonwell
- JVM介绍
- 常见JVM内存错误及解决方案
- JVM分析工具详解
- nexus
- docker
- 安装
- docker-compose安装
- 私有仓库搭建
- 指定数据储存目录
- 添加私有仓库
- 提交拉取镜像
- X 免Dockerfile文件构建项目镜像
- 持续集成部署CI/CD
- Confluence知识管理
- JIRA事务与项目跟踪软件
- Gitlab代码仓库
- Jenkins自动化部署
- SonarQube代码检测
- Rancher容器管理平台
- nacos
- 部署
- Rancher部署nacos
- 注册中心
- 配置中心
- 多环境
- 生产部署方案
- X 通过Nginx来实现环境隔离
- Sentinel详解
- 动态规则扩展
- 在生产环境中使用 Sentinel
- 启动配置项
- X 网关流控
- ELK日志系统和慢查询SQL
- docker安装
- 普通安装
- Filebeat安装部署
- ES数据定期删除
- 没数据问题排查思路
- X Logstash的grok语法调试
- 慢查询sql
- 审计日志
- Elasticsearch性能优化
- APM监控
- SkyWalking介绍
- Zipkin,Pinpoint,SkyWalking三种服务链路监控组件分析
- 服务端部署
- 客户端部署
- 日志清理
- Metrics监控
- 二进制包部署
- docker部署
- docker安装各组件监控
- Grafana仪表盘和告警配置
- JMeter压力测试工具
- 使用说明
- 分布式事务
- TX-LCN(同步)
- X SEATA(同步)
- X RocketMQ(异步)
- 消息队列
- RocketMQ
- RocketMQ安装部署
- RocketMQ常见异常处理
- SpringCloud-Stream
- RabbitMQ
- Redis
- 单机安装
- 主从复制
- 主从复制+哨兵
- cluster集群
- 持久化方案
- MySQL
- 单机安装
- 主从复制
- 主从切换
- 主主复制
- 高可用
- 分表分库
- Canal数据库日志解析消费
- Canal安装
- 实时同步数据到ElasticSearch
- FastDFS
- docker安装
- centos安装
- 项目管理系统
- 禅道
- 111