Comments (13)
Note that OMS-Agent is dependent on Ruby, and I have no idea if Ruby runs on the Rasberry Pi.
Our primary dependencies are Ruby and Fluentd (Fluentd runs on top of Ruby), as well as a little bit of shell code (not much) and OpenSSL dependencies (for security).
If you can get Ruby and Fluentd going, I'll try and help you out the rest of the way!
from oms-agent-for-linux.
I have zero experience with ruby, but this article seems to suggest its possible. If I get some time tonight, I'll see if I can get Ruby installed. Any suggestion for a hello-world-type script that would determine whether I have Ruby running sufficiently?
from oms-agent-for-linux.
Fluentd supports Raspberry Pi devices (at least those running Raspbian). At that point, they're not much different from a normal Debian machine, which means it will have OpenSSL as well.
We actually used Fluentd on a Pi at OneWeek to aggregate sniffed packets of some archaic protocols.
from oms-agent-for-linux.
Great! I'll install Ruby and Fluentd tonight... what would I need to do from there to get OMS installed/running?
from oms-agent-for-linux.
That's a good question. @jeffaco do you know where OMS's build-from-source instructions are? I couldn't find them.
from oms-agent-for-linux.
It turns out that you don't need to install Ruby as such, or Fluentd as such. We build it as part of the OMS build (we own the packages, so we build them and install in our directory). This means that the kits that we provide won't work on the Raspberry Pi, as our kits are based on the PC architecture.
You need to build from source. And, unfortunately, we haven't posted instructions on how to build from source because the bits we need aren't fully open source yet. Project Build-OMS-Agent-for-Linux is actually a superproject to grab all of our dependencies so you can build, but a few of those are still private pending legal approval to open them up.
I've been asking @agup006 about this (he's talking to legal) every few days.
Anurag, what do the lawyers have to say? What do we tell folks that need to be able to build?
If worse comes to worse, you could actually install Ruby and Fluentd, and then take our fluentd plugins and make minor edits (path and stuff) to make them work in that environment. But if you did that, you wouldn't have our machine stats. All you'd really be able to do is log things, I think (no cpu statistics, for example).
What, exactly, would you like to do with the Raspberry Pi? What sort of information do you want to log?
from oms-agent-for-linux.
I'm looking to provision Raspberry Pis as a 'micro-server' in low power/commodity environments, but I still need to ensure the device is online, performant and be able to collate its error messages to somewhere useful. OMS is the first service I turned to for this since I have a heavily Microsoft infrastructure background. Plus, this trial with Raspberry Pi should give me the insight I need to be able to recommend it to my clients at work; or possibly even use it for our Managed Services offering ourselves.
from oms-agent-for-linux.
I'd like to better understand exactly what you're looking for from OMS-Agent on the Raspberry Pi.
You say that you need to ensure that the device:
- Is online
- Is Performant
- Is able to collate its error messages to somewhere useful
By "performant", you mean that do you do want statistical information (memory & cpu statistics) uploaded to OMS? Or were you after something else here?
As far as "is online", OMS won't give real-time information on that. But you could deduce issues in this area by lack of data being collected, but only if you're collecting data at some regular interval (like via performance statistics). Is this what you were looking for, or did you want something different?
The last part (able to collate its error messages), that's much easier, and you wouldn't need to build us from source for that. You could just install our plugins on top of fluentd itself (without installing our version of it).
Let me know the answers to my questions, and I can advise you further. Thanks.
from oms-agent-for-linux.
You're correct on the definition of performant - I need to have historical statistical data showing CPU and memory usage over time.
Deducing that an object is offline simply by a lack of data is enough for now, but ideally 'missed heartbeat' alerts would be useful.
The latter (error messages) is the most useful to me, so if there's a way I can proceed to achieving that first, then I'm all ears 👂
from oms-agent-for-linux.
For the error messages, what I would suggest is compiling both Ruby and fluentd for the Raspberry Pi, and getting both of those running on the platform. The fluentd project has some basic consistency tests that you can run to make sure that it's basically operating correctly. Once that is done, then you'll need to:
- Copy our plugins to the fluentd plugin directory. These are available on GitHub,
- Get a fluentd configuration file in place. Start with something similar to what runs on Linux on our OMS agent, but you'll need to change paths since you'll likely be running out of it's default directories,
- Try running it. I'd expect to see errors, if you did everything properly, because you weren't on-boarded. If you get that far, you're doing great!
- You'll need to manually onboard. This is done via omsadmin.sh. Edit that script due to changes in paths, then run it via the
-w <workspace id> -s <shared key>
qualifiers. You'll need to get the workspace_id and shared_key from the OMS website.
Note that what we provide streamlines all of this into a nice shell bundle that you can install. And we do provide other stuff (performance stats, etc). But for error logging, that's all you need.
I can answer specific questions if you get stuck somewhere and want to spend the time figuring it out. Your work will likely not be in vein, as you may need to deal with some of these issues anyway even if you compile our stuff from source.
@agup006, any progress on open source efforts?
from oms-agent-for-linux.
Have we answered your questions? I'd like to close this issue if we have. You can reopen it later if further questions come up relating to this.
Please let us know, thanks!
from oms-agent-for-linux.
Unfortunately that's a bit more involved than I can be with this at the moment. But I'm hoping to get the agent rolled out on some Windows machines instead soon. I'll come back to the RPi issue specifically when I have some better time to thrash it out. Thanks for your help so far and let's hope you're able to Open Source the other bits that prevent full build/deploy on non AMD64 architectures. :)
from oms-agent-for-linux.
I'm going to close this issue out. If you have time to look into this more closely, and if you need more help, please feel free to re-open this issue with specific questions. Thanks.
from oms-agent-for-linux.
Related Issues (20)
- selinux omsconfig rule does not take effact. HOT 1
- Cisco ASA Logs not parsing correctly
- Troubleshooter connectivity test
- onboard_agent.sh: Permission denied
- Understanding Cisco ASA CEF Flow HOT 1
- 1.14.23-0 installs broken version of omi
- Rate limiting
- How to enable GPU utilization from this agent?
- dsc_host crashing on Red Hat 7.9 HOT 1
- Rubrik syslog message field truncated HOT 1
- OMS agent is not collecting custom log from target path in a Linux folder HOT 1
- Agent cannot onboard
- Where is the new AzureMonitorAgent repository located? HOT 1
- error ejecucion de backup azure | /var/lib/waagent/Microsoft.EnterpriseCloud.Monitoring.OmsAgentForLinux-1.13.40/omsagent_shim.sh -install
- How to disable Azure Portal to automatically install OmsAgentForLinux on my VM?
- Rule ID 448b668a-738c-420b-b332-51ea49922933 logic
- Problems with "/etc/passwd- file permissions should be set to 0600"
- "Ensure default deny firewall policy" ignores nftables, resulting in false positives
- "Ensure lockout for failed password attempts is configured." and "Ensure password reuse is limited." don't recognize how authselect does them
- Omi and nxautomation users being created deleted and recreated weekly #766 HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from oms-agent-for-linux.