OpenDaylight BGP - opendaylight

Version: OpenDaylight Boron SR3 on Ubuntu 16.04 LTS
I started playing with OpenDaylight BGP but I cannot bring up TCP session between ODL and router.
ODL IP: 10.1.1.10
Router IP: 10.1.1.1
I have edited 41-bgp-example.xml as follows:
<module>
<type xmlns:prefix="urn:opendaylight:params:xml:ns:yang:controller:bgp:rib:impl">prefix:bgp-peer-acceptor</type>
<name>bgp-peer-server</name>
<!--Default parameters-->
<binding-address>10.1.1.10</binding-address>
<!--Default binding-port 179-->
<binding-port>179</binding-port>
</module>
<module>
<type xmlns:prefix="urn:opendaylight:params:xml:ns:yang:controller:bgp:rib:impl">prefix:bgp-peer</type>
<name>example-bgp-peer</name>
<host>10.1.1.1</host>
<holdtimer>180</holdtimer>
<retrytimer>10</retrytimer>
<peer-role>ibgp</peer-role>
</module>
<module>
<type xmlns:prefix="urn:opendaylight:params:xml:ns:yang:controller:bgp:rib:impl">prefix:rib-impl</type>
<name>example-bgp-rib</name>
<rib-id>example-bgp-rib</rib-id>
<local-as>100</local-as>
<bgp-rib-id>10.1.1.10</bgp-rib-id>
</module>
Restarted ODL many times. When I run tcpdump, I see ODL is sending a TCP RST to the router when the router attempts to start a TCP session. There is connectivity between ODL and router - ping works. I have disabled IPTables too. Running ODL as root. I have debug enabled for BGP.
log display shows no output for BGP.
opendaylight-user#root>log:display | grep BGP
opendaylight-user#root>
Are there any more changes required?

Actually, it turned out the features were not installed properly.
Re-installed features and it works now.

Related

mosquitto (mqtt broker) is refusing connections over websockets

I've set up a mosquitto broker but it refuses to connect over websockets
here is my conf file:
# Place your local configuration in /etc/mosquitto/conf.d/
#
# A full description of the configuration file is at
# /usr/share/doc/mosquitto/examples/mosquitto.conf.example
pid_file /var/run/mosquitto.pid
persistence true
persistence_location /var/lib/mosquitto/
log_dest file /var/log/mosquitto/mosquitto.log
include_dir /etc/mosquitto/conf.d
listener 1883 0.0.0.0
listener 8008 0.0.0.0
protocol websockets
and I don't have any conf at conf.d
Using the PAHO javascript client I get a ERR_CONNECTION_REFUSED
by the way I'm using debian jessie as OS
-------------------------------------EDIT 1----------------------------------
I've lowered the iptables and it still not working.
The usual way to connect is working (with port 1883)
Here is the output when I start mosquitto
1477788244: mosquitto version 1.4.10 (build date Thu, 25 Aug 2016 10:12:09 +0100) starting
1477788244: Using default config.
1477788244: Opening ipv4 listen socket on port 1883.
1477788244: Opening ipv6 listen socket on port 1883.
The important line in the startup output is here:
1477788244: Using default config.
This says that mosquitto is using it's built in config (only listen on 1883 for native MQTT traffic) and not even reading your config file.
If you just start mosquitto with no command line options this is what is uses, it will not look for a config file in /etc/mosquitto/.
You need to explicitly tell mosquitto where it's config file with the -c option.
mosquitto -c /etc/mosquitto/mosquitto.conf
Depending on how you installed mosquitto you may need to edit the scripts that automatically start it on boot. This is probably in here: /etc/init.d/mosquitto

I can reach from browser "http://localhost:8080/" but not "my_private_ip:8080/"

I am in my homework LAN, the private IP of my Macintosh (Mac OS X El Capitan 10.11.4) is 192.168.1.9 and my Firewall is OFF.
I have run a wildfly 10 web project on "http://localhost:8080/" until I access to that project from the localhost everything works fine, when I try to reach it from http://192.168.1.9:8080/ google chrome tell me:
This site can’t be reached
192.168.1.9 refused to connect.
Search Google for 192 168 8080
ERR_CONNECTION_REFUSED
I need to access it from an external mobile device but if I can not even access it from my own computer from the IP of the computer itself it's hard to thing to pass to the mobile device...
The strange thing is that I also have MAMP Apache port listening on port 80, and in fact both "http://localhost/" and "http://192.168.1.9/" works perfectly fine (showing me the defaul MAMP "www/index.php").
Configure from eclipse
If you want to set the IP from eclipse you should follow these steps (changing the IP in the file standalone.xml doesn't work from eclipse because of the -b option which is set, see more below...)
This are the steps to configure it on eclipse:
Click on your Wildfly Server
Click on Open Launch Configuration
Uncheck the Always update arguments related to the runtime and then change your -b option with your_private_ip (if you remove the option, -b localhost you could configure it directly from the standalone.xml file, see the section below for configuring it)
Or simply, instead of the 2. solution, check the box Listen on all interfaces to allow remote web connections
Configure from standalone.xml
An alternative is configure in standalone.xml the interfaces section.
Change:
<interfaces>
<interface name="management">
<inet-address value="127.0.0.1"/>
</interface>
<interface name="public">
<inet-address value="127.0.0.1"/>
</interface>
</interfaces>
to:
<interfaces>
<interface name="management">
<!-- Use the IPv4 wildcard address -->
<any-ipv4-address/>
</interface>
<interface name="public">
<!-- Use the IPv4 wildcard address -->
<any-ipv4-address/>
</interface>
</interfaces>
Or simply replace 127.0.0.1 with your private IP
Configure from command line (running the server from command line)
Another alternative is running it directly from command line.
By default jboss/wildfly binding to localhost, if you want change this, you can execute:
standalone.sh -b 0.0.0.0
listen on all IP addresses of the machine (if multihomed)
or if you want to listen on your ip:
standalone.sh -b your_private_ip
Ref:
WildFly - Interfaces and ports
WildFly - Command line parameters

Weblogic 12c web application not start properly after server reboot

I have a EJB project build from IntelliJ 14, there are a lots of EJBs (include session Beans and JPA entity Beans) in the ear. This project is business services layer in my project.
My development and staging environments are both as Mac OS X Yosemite (10.10.3), JDK version is 1.8.0.x.
I deployed it in my development environment (WebLogic 12c -12.1.3, downloaded and installed at end of 2015) by using install it on administration console which is working fine, every time I reboot my development machine, it will start deploy it properly and provide services to EJB clients. But when I tried to deploy it in my staging environment (WebLogic 12c -12.1.3, downloaded and installed last week).
I found there is some different between two packages, early 12c was installed folder ~/mywls/wls12130 but the newly downloaded installed in ~/Oracle/Middleware/Oracle_Home. I believe there must have some different, but oracle name it as same version. I don't know why?
The two WebLogics have some different behaviour too, early version works IPv4 address on 7001 port, newer version works in IPv6 address on 7001.
Use same .ear package to deploy it in two machine, early WebLogic shows it works fine after a little and newer version too.
After reboot servers, early version can restart it self, every thing works well, but the newer version some time administration console waiting on 7001 on localhost and nowhere, if I run lsof I got such result:
macmini16g:~ cidylong$ sudo lsof -nP | grep TCP |grep 7001
java 284 xxxx 354u IPv6 0x43c511fce2ab4ac3 0t0 TCP 127.0.0.1:7001 (LISTEN)
java 284 xxxx 355u IPv6 0x43c511fce5646bc3 0t0 TCP [::1]:7001 (LISTEN)
In this situation, we can't connect to administration console from LAN as it only waiting for localhost.
If you restart server again, and run lost again, you may get different result, you probably see three rows as:
macmini16g:~ cidylong$ sudo lsof -nP | grep TCP |grep 7001
java 277 xxxx 354u IPv6 0x20915e23819739 0t0 TCP [::1]:7001 (LISTEN)
java 277 xxxx 355u IPv6 0x20915e263bd239 0t0 TCP 127.0.0.1:7001 (LISTEN)
java 277 xxxx 356u IPv6 0x20915e263bcd39 0t0 TCP [fe80:4::ca2a:14ff:fe58:cd42]:7001 (LISTEN)
This time you can connect through IPv6 in LAN, it is very funny.
There is an other issue with newer version, the same web application .ear not start properly after server reboot.
After we login to administration console, click in my domain -> deployments -> shows a table in the content section with all deployed applications. But the application State column shows Admin instead of Active, no thing shows in Health column instead of a green tick symbol and OK. Which means. If click in Admin linkage in State column, you was brought over to other page shows the detailed status, in last column (Target-Specific State), shows information as: "AdminServer=Failed".
If you tick the application in the list and click start button from the dropdown select, for example, servicing all requests selected, then the application will start and the State shows Active and Health column shows green tick and Ok.
Such means, every time server reboot, the application has to be manually started. Quite annoy!!
Any idea and advice are welcome.
Edit:
I configured in my domain/config/config.xml. but seems not works. nothing different.
<listen-address></listen-address>
I leave it empty or I put
<listen-address>10.0.1.1/24</listen-address>
no different.

Xcode Server is unavailable

I am trying to setup CI on an Xcode Server. I have a Mac running OSX Server with Xcode Services up and running (seems to be working). The Mac is hosted in the cloud.
When I try to add the server to Xcode on my local Mac dev machine, it says "Xcode Server is unavailable". What "server address" do I use. I tried the IP address as well as the machinename.companyname.com address.
Note I have enabled the "file sharing" service and this works fine using machinename.companyname.com.
I configured my router to forward the relevant traffic to the server. This process is called port forwarding.
Opening these ports worked for me
Protocol Port Range ---- Comment
TCP 22 ---- ssh
TCP 80 ---- http
TCP 443 ---- https
TCP+UDP 3690 ---- svn
TCP+UDP 9418 ---- git
TCP+UDP 20300 ---- xcode1
TCP+UDP 20343-20345 ---- xcode2
reference: https://support.apple.com/en-ae/HT202944
I am having the same problem you are. My server is not in the cloud, but it is setup to be accessible outside of my network. I am able to add my server because it is seen by Bonjour. Everything works fine that way. However, I can't add the server by using the IP or the www address.
I've verified that TCP ports 22, 80, and 443 are forwarding correctly. I also have TCP/UDP 3690 and 9418 forwarded correctly.
One thing I wanted to add is that I can add repositories that exist on the server without issue. It is just adding the server that is causing a problem.
I have filed a bug report with Apple and will comment back here as soon as I get a response.
I think I solved my own problem. After upgrading to Xcode6, need to upgrade to Yosemite too. Don't know why but this seemed to fix the issue.

Cloudera Manager installation failed to receive heartbeat from agent - to add new hosts to cluster

I try to install on Ubuntu 12.04.1 LTS the cloudera manager using standard version and when I want to add new host I get the next error:
Installation failed.Failed to receive heartbeat from agent.
Ensure that the host's hostname is configured properly.
Ensure that port 7182 is accesible on the Cloudera Manager server (check firewall rules).
Ensure that ports 9000 an 9001 are free on the host being added.
Check agent logs in /var/log/cloudera-scm-agent/ on the host being added (some of the logs can be found in the installation details).
In the /etc/hosts file I have it configured as:
127.0.0.1 localhost
127.0.0.1 hadoop-ubuntu
192.168.5.xyz hadoop-ubuntu.dana.local hadoop-ubuntu
192.168.3.xyz ro-m81.dana.local ro-m81
192.168.3.abc ro-m41.dana.local ro-m41
The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
The **/var/log/cloudera-scm-agent/cloudera-scm-agent.log** shows the next error::
[09/Oct/2013 16:04:23 +0000] 4532 MainThread agent ERROR Heartbeating to 192.168.5.xyz:7182 failed.
Traceback (most recent call last):
File "/usr/lib64/cmf/agent/src/cmf/agent.py", line 747, in send_heartbeat
response = self.requestor.request('heartbeat', dict(request=heartbeat))
File "/usr/lib64/cmf/agent/build/env/lib/python2.6/site-packages/avro-1.6.3-py2.6.egg/avro/ipc.py", line 145, in request
return self.issue_request(call_request, message_name, request_datum)
File "/usr/lib64/cmf/agent/build/env/lib/python2.6/site-packages/avro-1.6.3-py2.6.egg/avro/ipc.py", line 256, in issue_request
call_response = self.transceiver.transceive(call_request)
File "/usr/lib64/cmf/agent/build/env/lib/python2.6/site-packages/avro-1.6.3-py2.6.egg/avro/ipc.py", line 485, in transceive
result = self.read_framed_message()
File "/usr/lib64/cmf/agent/build/env/lib/python2.6/site-packages/avro-1.6.3-py2.6.egg/avro/ipc.py", line 489, in read_framed_message
response = self.conn.getresponse()
File "/usr/lib64/python2.6/httplib.py", line 990, in getresponse
response.begin()
File "/usr/lib64/python2.6/httplib.py", line 391, in begin
version, status, reason = self._read_status()
File "/usr/lib64/python2.6/httplib.py", line 349, in _read_status
line = self.fp.readline()
File "/usr/lib64/python2.6/socket.py", line 433, in readline
data = recv(1)
error: [Errno 104] Connection reset by peer
Please help me to find why I get this error or what I am missing.
I had the same issue. This is what did the trick for me.
type ifconfig and find your ip address. not 127.0.0.1.
type $hostname and find your hostname
edit /etc/hosts file
add an entry for your ipaddress over there. something like
192.168.8.xxx hostname.test.com hostname
restart cloudera service. Go to sonic.test.com:7180 and try again.
It should work. Even if didn't work, go to http://hostname.test.com:7180/cmf/home check the status of the hosts.
It turned out that, even though I was getting heartbeat error, the host was actually up and running.
I Faced the same problem, then I found a solution.
I used two machines one for master and another one for slave
the master machine having the cloudera-scm-server.
I configured the /etc/hosts in both machines, finally the error gone.
Master Machine Ip is: 192.168.1.10
In Master Machine /etc/hosts
127.0.0.1 localhost
192.168.1.10 <hostname>
Slave Machine Ip is: 192.168.1.8
In Slave Machine /etc/hosts
127.0.0.1 localhost
192.168.1.8 <hostname>
After checking your host files on all the nodes in the cluster, make sure that you open ports 7180 and 7182 on the installer and port 9000 on the cluster nodes (other than the installer).
I was getting the "inspector failed. IO Exception thrown" error from the Cloudera install until I looked in the installer (server) logs and saw that the clients could not communicate on port 9000.
I had the same problem with you, and I fixed it finally.
The problem of me was the version of the agent's cloudera-scm-agentis different with the server's cloudera-scm-server, you could use dpkg or yum to check yourself.
First Check the Cloudera scm agent status whether it is running or not by using "sudo service cloudera-scm-agent status"
2.check the agent log files in this directory in /var/log/cloudera-scm-agent/
Resolution Resource: http://commandstech.com/what-is-heartbeat-in-hadoop-how-to-resolve-heartbeat-lost-in-cloudera-and-hortonworks/

Resources