Giter Club home page Giter Club logo

openchaos's Introduction

logo

Build Status Maven Central Slack chat License

A vendor-neutral open standard for distributed messaging and streaming

OpenMessaging, which includes the establishment of industry guidelines and messaging, streaming specifications to provide a common framework for finance, e-commerce, IoT and big-data area. The design principles are the cloud-oriented, simplicity, flexibility, and language independent in distributed heterogeneous environments. Conformance to these specifications will make it possible to develop a heterogeneous messaging applications across all major platforms and operating systems.

Doc

API Doc.

Powered by Linux Foundation

openchaos's People

Contributors

dependabot[bot] avatar duhenglucky avatar e0c9 avatar fossabot avatar hscarb avatar lgtming avatar pmaynard avatar raving-hash avatar rongtongjin avatar syogin avatar vongosling avatar weibubli avatar yuz10 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

openchaos's Issues

install命令时报了Create chaos topic错误

我电脑上一共有4台机器,配置的节点如下:
192.168.145.130 -nameserver、OpenChaos
192.168.145.131 -broker
192.168.145.132 -broker
192.168.145.133 -broker
使用如下命令时,报了一个创建topic错误

bin/chaos.sh --driver driver-rocketmq/rocketmq.yaml --install
具体错误如下:
RocketMQLog:WARN No appenders could be found for logger (io.netty.util.internal.InternalThreadLocalMap). RocketMQLog:WARN Please initialize the logger system properly. 2021-04-17 03:22:14.961 [main] ERROR - Queue model setupClient fail java.lang.RuntimeException: Failed to create topic [2021-04-17-03-20-08-chaos-topic] to cluster [RaftCluster] at io.openmessaging.chaos.driver.rocketmq.RocketMQChaosDriver.createTopic(RocketMQChaosDriver.java:166) ~[ChaosControl.jar:?] at io.openmessaging.chaos.model.QueueModel.setupClient(QueueModel.java:174) [ChaosControl.jar:?] at io.openmessaging.chaos.ChaosControl.ready(ChaosControl.java:295) [ChaosControl.jar:?] at io.openmessaging.chaos.ChaosControl.main(ChaosControl.java:171) [ChaosControl.jar:?] Caused by: org.apache.rocketmq.remoting.exception.RemotingConnectException: connect to 172.18.0.1:10911 failed at org.apache.rocketmq.remoting.netty.NettyRemotingClient.invokeSync(NettyRemotingClient.java:394) ~[ChaosControl.jar:?] at org.apache.rocketmq.client.impl.MQClientAPIImpl.createTopic(MQClientAPIImpl.java:284) ~[ChaosControl.jar:?] at org.apache.rocketmq.tools.admin.DefaultMQAdminExtImpl.createAndUpdateTopicConfig(DefaultMQAdminExtImpl.java:182) ~[ChaosControl.jar:?] at org.apache.rocketmq.tools.admin.DefaultMQAdminExt.createAndUpdateTopicConfig(DefaultMQAdminExt.java:163) ~[ChaosControl.jar:?] at io.openmessaging.chaos.driver.rocketmq.RocketMQChaosDriver.createTopic(RocketMQChaosDriver.java:163) ~[ChaosControl.jar:?] ... 3 more 2021-04-17 03:22:14.977 [main] ERROR - Failed to ready chaos test. java.lang.RuntimeException: java.lang.RuntimeException: Failed to create topic [2021-04-17-03-20-08-chaos-topic] to cluster [RaftCluster] at io.openmessaging.chaos.model.QueueModel.setupClient(QueueModel.java:190) ~[ChaosControl.jar:?] at io.openmessaging.chaos.ChaosControl.ready(ChaosControl.java:295) [ChaosControl.jar:?] at io.openmessaging.chaos.ChaosControl.main(ChaosControl.java:171) [ChaosControl.jar:?] Caused by: java.lang.RuntimeException: Failed to create topic [2021-04-17-03-20-08-chaos-topic] to cluster [RaftCluster] at io.openmessaging.chaos.driver.rocketmq.RocketMQChaosDriver.createTopic(RocketMQChaosDriver.java:166) ~[ChaosControl.jar:?] at io.openmessaging.chaos.model.QueueModel.setupClient(QueueModel.java:174) ~[ChaosControl.jar:?] ... 2 more Caused by: org.apache.rocketmq.remoting.exception.RemotingConnectException: connect to 172.18.0.1:10911 failed at org.apache.rocketmq.remoting.netty.NettyRemotingClient.invokeSync(NettyRemotingClient.java:394) ~[ChaosControl.jar:?] at org.apache.rocketmq.client.impl.MQClientAPIImpl.createTopic(MQClientAPIImpl.java:284) ~[ChaosControl.jar:?] at org.apache.rocketmq.tools.admin.DefaultMQAdminExtImpl.createAndUpdateTopicConfig(DefaultMQAdminExtImpl.java:182) ~[ChaosControl.jar:?] at org.apache.rocketmq.tools.admin.DefaultMQAdminExt.createAndUpdateTopicConfig(DefaultMQAdminExt.java:163) ~[ChaosControl.jar:?] at io.openmessaging.chaos.driver.rocketmq.RocketMQChaosDriver.createTopic(RocketMQChaosDriver.java:163) ~[ChaosControl.jar:?] at io.openmessaging.chaos.model.QueueModel.setupClient(QueueModel.java:174) ~[ChaosControl.jar:?] ... 2 more

具体看它的描述是说无法连接,然后我查了下这个ip发现是192.168.145.130机器上的,暂时不知道该怎么修改,求各位大佬帮忙看下~~

下面是130机器上的具体ip
`[root@localhost ~]# ifconfig
br-4ce2e007427f: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
inet 172.19.0.1 netmask 255.255.0.0 broadcast 0.0.0.0
ether 02:42:32:e4:fb:8d txqueuelen 0 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

br-5870ce48d0fa: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
inet 172.18.0.1 netmask 255.255.0.0 broadcast 0.0.0.0
ether 02:42:41:1b:2c:aa txqueuelen 0 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

docker0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
inet 172.17.0.1 netmask 255.255.0.0 broadcast 0.0.0.0
ether 02:42:d9:f3:3d:cc txqueuelen 0 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.145.130 netmask 255.255.255.0 broadcast 192.168.145.255
inet6 fe80::bdb0:6e7e:d1ac:de2 prefixlen 64 scopeid 0x20
ether 00:0c:29:14:fe:07 txqueuelen 1000 (Ethernet)
RX packets 137526 bytes 132021121 (125.9 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 77488 bytes 74865524 (71.3 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 1000 (Local Loopback)
RX packets 1393 bytes 191174 (186.6 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 1393 bytes 191174 (186.6 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0`

Reduce the installing nodes time

At present, when using openchaos, if you want to install dledger, you will pull the source code for each node and rebuild it, which takes a long time, and sometimes it may not be successful (network problem).

It can be modified to build first in the controller, and then distribute to each node

Add support for etcd. & Missing Displayed Close Resource Method in ChaosState Interface.

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

Describe the solution you'd like
A clear and concise description of what you want to happen.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
Add any other context or screenshots about the feature request here.

The Driver of Kafka does not have MetaNode implementation.

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

  • OS: [e.g. iOS]
  • Browser [e.g. chrome, safari]
  • Version [e.g. 22]

Smartphone (please complete the following information):

  • Device: [e.g. iPhone6]
  • OS: [e.g. iOS8.1]
  • Browser [e.g. stock browser, safari]
  • Version [e.g. 22]

Additional context
Add any other context about the problem here.

Are you using OpenChaos?

Are you using OpenChaos?

OpenChaos proposes a unified API for vendors to provide solutions to various aspects of performing the principles of chaos engineering in a cloud-native environment. In addition, it integrated existing classical fault models with common distributed systems. With this state-of-the-art off-shelf design, you can build your own platform for stability testing, architecture insight, and disaster Drill. If you are an OpenChaos user, first we would like to Thank You. Here, we sincerely invite you to take a minute to feedback.

The purpose of this issue

We are always interested in finding out who is OpenChaos user, what attracted you to use it, how we can listen to your needs, and if you are interested, help promote your organization.

What we would like from you

Pls. submit a comment in this issue to include the following information:

  • your company, school, or organization
  • your country and city
  • your contact info, such as email, WeChat, and Twitter (optional).
  • usage scenario
  • expectations(optional)

You can refer to the following sample answer for the format:

* Organization: XX Company
* Location: Seoul, South Korea
* Contact: [email protected]
* Version: 1.0.0-preview
* Status: production
* Expectations(optional): Integrated with our CI/CI platform

Thanks again for your participation!
OpenMessaging TSC

support bank module

Requirement

The bank transfer model can easily verify the reliability of the distributed database by checking the total account amount, This will be useful for distributed databases(Tidb) Or distributed transaction framework(Seata)

The getAll method in dirver-dledger is not implemented. And during initialization, unnecessary information may be forcibly loaded.

Describe the bug
A clear and concise description of what the bug is.

To Reproduce
Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

  • OS: [e.g. iOS]
  • Browser [e.g. chrome, safari]
  • Version [e.g. 22]

Smartphone (please complete the following information):

  • Device: [e.g. iPhone6]
  • OS: [e.g. iOS8.1]
  • Browser [e.g. stock browser, safari]
  • Version [e.g. 22]

Additional context
Add any other context about the problem here.

How to support more cloud-native models in OpenChaos

AWS presents 5 Pillars in their Well-Architected Framework, which could help architects build the most secure, high-performing, resilient, and efficient infrastructure possible for their applications. But this is just one little step, OpenChaos extends OpenMessaging Benchmark tools to make more cloud-native principles modelization and automaton. That's one of the reasons we created it. Right now, you could usage the build-in models to measure the reliability. In the latest Open-Source Summer Code, I would like to open up the rest of the work and hope that more students will join in building a chaotic framework for cloud-native infrastructure.

You are expected to do the following:

  1. Complete scalable model design and code implementation, and verify at least one or two distributed systems.
  2. Complete resilient model design and code implementation, and verify at least one or two distributed systems.
  3. Support full-featured integrated for ETCD and ZooKeeper.

Cache client support multiple key

背景

在用cache 模型测试时,put请求希望可以支持多个key,这样可以测试存储的多个主节点处理数据的情况。

The experiment forcibly restarts the programs on all nodes and shuts down the programs at the end of the experiment.

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

Describe the solution you'd like
A clear and concise description of what you want to happen.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
Add any other context or screenshots about the feature request here.

openmessaging-chaos run error!

step: start rocketmq

wget https://archive.apache.org/dist/rocketmq/4.7.1/rocketmq-all-4.7.1-bin-release.zip
unzip rocketmq-all-4.7.1-bin-release.zip
cd rocketmq-all-4.7.1-bin-release
bin/dledger/fast-try.sh start #success!

step2:start openmessaging-chaos

wget https://github.com/openmessaging/openmessaging-chaos/archive/refs/heads/master.zip
unzip master.zip
cd openmessaging-chaos-master
bin/chaos.sh --driver driver-rocketmq/rocketmq.yaml --install #error!
clipboard

The error message:
2021-04-15 00:21:02.850 [main] ERROR - Node n4 setup nameserver node failed
org.apache.sshd.common.SshException: DefaultConnectFuture[root@n4:22]: Failed (UnresolvedAddressException) to execute: null

SOS, I don't know what to do!

请增加交互式shell工具支持

在开发中,我使用了项目内置的非交互式shell工具进行mq安装等功能,然而发现了非交互式shell使用的环境变量通常不会从/etc/profile读取,因此可能造成重复安装mq的结果。因此我希望项目可以增加一个交互式shell开发工具。

License Headers Say Licensed to The ASF but this a Linux Foundation Project

License Headers are copied from the version for an Apache Software Foundation project, but OpenMessaging is a Linux Foundation project.

Header is:

    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-2.0

    Unless required by applicable law or agreed to in writing,
    software distributed under the License is distributed on an
    "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    KIND, either express or implied.  See the License for the
    specific language governing permissions and limitations
    under the License.

Header should look like this:

    Licensed 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-2.0

    Unless required by applicable law or agreed to in writing, software
    distributed under the License is distributed on an "AS IS" BASIS,
    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
    See the License for the specific language governing permissions and
    limitations under the License.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.