Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

about OAP cluster setup #3159

Closed
makingtime opened this issue Jul 24, 2019 · 1 comment
Closed

about OAP cluster setup #3159

makingtime opened this issue Jul 24, 2019 · 1 comment
Labels
question End user question and discussion.
Milestone

Comments

@makingtime
Copy link
Contributor

Please answer these questions before submitting your issue.

Why do you submit this issue?

  • [×] Question

Question

  • What do you want to know?

Hi, I'm working on deploy an OAP cluster with zookeeper as coordinator, I have read some official documents, and found the changes need to do are:

Backend part

  1. OAP Server instances

    base on backend-cluster.md, change cluster segment of application.yml in each OAP Server instance, add zookeeper nodes info, mainly ip and port.

    eg.

    cluster:
      zookeeper:
        nameSpace: ${SW_NAMESPACE:""}
        hostPort: ${SW_CLUSTER_ZK_HOST_PORT:zk_host1:2181,zk_host2:2181,zk_host3:2181}
        # Retry Policy
        baseSleepTimeMs: 1000 # initial amount of time to wait between retries
        maxRetries: 3 # max number of times to retry
    
  2. UI

    base on ui-setup.md, change webapp/webapp.yml, add all OAP Server instaces' IP:PORT to collector.ribbon.listOfServers

    eg.

    collector:
      path: /graphql
      ribbon:
        ReadTimeout: 10000
        # Point to all backend's restHost:restPort, split by , 
        listOfServers: OAP_SERVER1:12800,OAP_SERVER2:12800
    

Agent part

base on java-agent/README.md, change collector.backend_service, add all OAP Server instaces' IP:PORT to agent/config/agent.config

eg.

collector.backend_service=${SW_AGENT_COLLECTOR_BACKEND_SERVICES:OAP_SERVER1:11800,OAP_SERVER2:11800}

Questions

I'm new to Skywalking, and I'm not quite understand how skywalking OAP cluster works, would appreciate some help to below questions:

  1. could you help confirm if there are anything that I miss? do I need to setup a load balancer for OAP Servers?
  2. if we config multiple OAP servers in agent.config, when a java agent sends out data, which OAP server will it be sent to? or do we need to setup a load balance server, and use it for collector.backend_service in agent.config?
  3. when we config multiple OAP servers in RocketbotUI's webapp/webapp.yml, how does RocketbotUI decide which OAP server to send graphQL request to?

A little suggestion: I think it will be best if we have a complete guide for OAP cluster setup (maybe include UI and agent setup links).

Thanks!

@wu-sheng
Copy link
Member

could you help confirm if there are anything that I miss? do I need to setup a load balancer for OAP Servers?

Yes. If you want the real LB.

if we config multiple OAP servers in agent.config, when a java agent sends out data, which OAP server will it be sent to? or do we need to setup a load balance server, and use it for collector.backend_service in agent.config?

You could do both. If you set up multiple addresses, the agent chooses one randomly.

when we config multiple OAP servers in RocketbotUI's webapp/webapp.yml, how does RocketbotUI decide which OAP server to send graphQL request to?

Route randomly.

A little suggestion: I think it will be best if we have a complete guide for OAP cluster setup (maybe include UI and agent setup links).

We don't have a link and document, because basically, we did nothing. These things used to exist in 5.x, but be removed permanently. Because in real env, k8s/VPC/Zone, the LB could be much better than use client side service discovery and LB.

@wu-sheng wu-sheng added this to the 6.3.0 milestone Jul 24, 2019
@wu-sheng wu-sheng added the question End user question and discussion. label Jul 24, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
question End user question and discussion.
Projects
None yet
Development

No branches or pull requests

2 participants