by

Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
greavette
@greavette
This is fantastic news! Thank you for your hard work on this project. I look forward to these new additions. Could I ask if your new components section will allow me to keep track of each hard drive in each bay on our server for the following - Make/Model, Serial Number, Size, Drive Bay Location, End of Warranty date and Date of install? Come to think of it...this same detail could be applied to RAM as well (instead of Drive bay DIMM slot). Would reporting be able to give us this new detail on HDD and Ram as well?
greavette
@greavette
This Ralph Asset Management System you've created has so much potential! I have lots of questions though and I don't know where to ask them so I'll add them here for now. If there is another place to confirm Ralph functions that I should post this please let me know. I've now installed Ralph 3 on my virtual machine. I'm reading the documentation and I'm confused by the potentially three types of Ralph's that exist. Ralph 2.x (obviously an older verion), Ralph-NG and Ralph 3. Is Ralph 3 going to be your go forward version to use? Where does Ralph-NG fit in?
Ralph 2.x seems to have some very good features like discovery. I don't see discovery in Ralph 3? Is there a roadmap of what currently exists in Ralph 2.x that will be incorporated into Ralph 3? I would like to test the discovery agent of Ralph but can't find it in my install of Ralph 3.
How can I change the heading of some fields in Ralph 3? I see in Hardware components the item heading of "memories'. I want this to say RAM instead. Is there a way to customize the headings to what I need/want?
I see Ralph 3 allows me to add custom fields...but it's not quite the way I need it. For example, in Memories section I want to add in the DIMM slot used by that RAM stick. Or another example, I want to add in the eth port used by a NIC/IP address. How can I add in extra fields to existing data collection?
greavette
@greavette
I would like to add in details for every physical server disk details. I see that Ram (Memories) is added. I will need to record for my physical servers the Drive Bay used, Disk Size, Make or Model of Disk, Speed, Date the disk was installed and the Date that warranty will end for that disk. How can I add this to the Asset Components for each server?
I have Supermicro servers that have multiple nodes in them. Think of them like a blade system. In my Server I have dual (2) power supplies only so it's just a case. This case has two hot swap nodes that are full servers. In each node I will have the full computer components of a server (RAM, Disk Bays, CPU's, NIC's..etc). So I need to be able to record in Ralph the rack location of this Server Case and give it a name...and I need to assign to this case each Server Node. Racktables allowed me to do something like this using a blade type system. I'm hoping Ralph will allow me the same function.
greavette
@greavette
It would appear that Ralph 2.x was a website (I didn't install it but saw reference within the installation instructions to using Apache). Ralph 3 runs as a service. Is there plans to have Ralph 3 run as a website like Racktables or is this the new method to run it as a service only?
Can Ralph be skinned so we can add in our Office name on the Dashboard?
I know you are all still working on Ralph 3 and more features are coming. I'm really very impressed with what you've done with this Asset Management system and would very much like to understand it better so I can document how our office can use it to our requirements. Thank you.
✪ vi4m Marcin Kliks
@vi4m
@greavette when it comes to autodiscovery, we have now ralph-cli - standalone, separate discovery tool for ralph http://ralph-ng.readthedocs.io/en/latest/user/ralph-cli/
we've implemented only hardware discovery plugins we already own, leaving architecture open for writing custom hardware plugins by 3rd party developers around the world.
Built-in plugins support only IDRAC and ILO at the moment, with the discovering information limited to the: (see example below)
    "model_name": "Dell PowerEdge R620",
    "processors": [
        {
            "model_name": "Intel(R) Xeon(R) CPU E5-2650 v2 @ 2.60GHz",
            "family": "B3", // to be removed
            "label": "Intel(R) Xeon(R) CPU E5-2650 v2 @ 2.60GHz", // to be removed
            "index": 1, // to be removed
            "speed": 3600,
            "cores": 8
        }
    ],
    "fibre_channel_cards": [
        {
            "firmware": "",
            "model": "",
            "speed": "",
            "wwn": "",
            "pwwn": "" // ...and any other "wwn" that can be found (we need them all)
        }
    ],
    "ethernets": [
        {
            "mac_address": "AA:AA:AA:AA:AA:AA",
            "model": "Intel(R) Ethernet 10G 4P X520/I350 rNDC",
            "speed": "", // add if possible
            "firmware_version": "", // add if possible
        }
    ],
    "disks": [
        {
            "model_name": "ATA Samsung SSD 840",
            "family": "ATA", // to be removed
            "label": "ATA Samsung SSD 840", // to be removed
            "size": 476,
            "serial_number": "S1AXNSAD8000000",
            "slot": "", // add if possible
            "firmware_version": "" // add if possible
        },
    ],
    "memory": [
        {
            "label": "Samsung DDR3 DIMM", // should be renamed to "model_name"
            "speed": 1600,
            "size": 16384,
            "index": 1 // to be removed
        },
    ],
    "software": [
        {
            "type": "firmware", // possible types: "firmware" and "os"
            "name": "iLO2",
            "version": "1.77"
        }
    ]
}
Michał Suszko
@msuszko
I've seen your MAC address commit, and wonder why you keep semicolons in database/
contrary to IP MAC has fixed positions for separators
Mateusz Kurek
@mkurek
@msuszko because "storage" is cheap and we want to store mac addresses in one convention - and the chosen standard is the way, which we want to present mac address to the user (so no need to processing this mac every time it's fetched from DB) and how we want it to be dumped to DHCP config (again, no need to processing with every request). Besides that, mac has fixed position for separator only when each octet is "full" (no expanding with 0, ex: "a:bb:cc:d:ee:ff" -> "0a:bb:cc:0d:ee:ff").
defrancesco
@defrancesco
HI I need to an information about ralph support
We are creating a solution for a big project and we want use ralph as CMDB, but we neet to know who provide support
which company or partner because our solution is an enterprise solution
✪ vi4m Marcin Kliks
@vi4m
We are (kind of) non profit organization so we don't provide commercial support apart from community support, at the moment.
But Ralph project is during active development by stable team of at least 8 developers from Allegro group since ~5 years. We share all sources.
defrancesco
@defrancesco
Thanks Marcin
defrancesco
@defrancesco
but let me say in an enterprise solution is important ensure support. My opinion is you have to create dedicated section of ralph team for commercial support in order to assure customers.
Michał Suszko
@msuszko
Looks like we won't be merging your code after #2336 anymore
Mateusz Kurek
@mkurek
why? do you have a lot of merge conflicts? or sth is not "compatible" with your requirements and needs?
Michał Suszko
@msuszko
Trying to keep foreign key from IP to network and automatically generating fake MAC addresses when saving IP are weird to me
Mateusz Kurek
@mkurek
so, how should it look like according to you? :)
(btw we don't generate fake mac addresses - we create Ethernet object without mac)
Mateusz Kurek
@mkurek
and about keeping FK from IP to network - yes - it causes today a bug in deployment, so i'm open to improvement ideas (ex. calculating it dynamically, based on ip/net address)
Michał Suszko
@msuszko
Don't you have interfaces other than ethernet? What about tunnels or IPoIB
I prefer to just link IP to an asset
another problem with IP <--> Ethernet mapping are bonded interfaces
Finding network for IP is easy, just choose smallest network that matches the IP
Michał Suszko
@msuszko
Does MySQL have indexable ranges field?
Mateusz Kurek
@mkurek
starting from the end - if yes, than what's the problem in keeping this info as a FK from ip to network? and mysql afaik does not have such field (and in django it's postgres-specific))
about mapping ip to ethernet, we've considered linking ip to asset directly, but in Ralph2 we had so much troubles because of that. If we link ip to asset, we have to do separate model for DHCPEntry, not linked (or maybe linked?) to any of ethernet or ip - if it will be linked, we have to keep it in valid state (ex. ethernet is pointing to other asset than ip). In our solution everything looks straightforward - one way to set this. About other interfaces - we could create some other inheritance model, like GenericInterface (and IP will link to it), Ethernet could inherit from it and we could create new models for other interfaces (like you said, ex. tunnels etc). For bonding maybe we could create sth similar.
Mateusz Kurek
@mkurek
When ip is not connected to interface (ex. ethernet), how would you know on what iterface what ip is attached? Do you want to create link from interface to ip?
Michał Suszko
@msuszko
Network is abstract, a range with some attributes you can describe
like gateways, segment, VLAN
IP is part of many nested networks, and when you create smaller subnet you have to rewrite foreign keys in thos model, or when you remove subnet
And what is this foreign key for really?
You can find all networks matchong IP address and its segment with simple DB query
Michał Suszko
@msuszko
as of IP and Ethernets addresses. I'd add text field to IP to keep interface name
and link it to an asset
The same for Ethernet addresses
One could create separate model for interfaces to create sth like Asset <-- Interface <-- IPaddress and Asset <-- Interface <-- MACaddress, and keep interface attributes, but this adds yet another link in DB I don't really have use for
Michał Suszko
@msuszko
There is no problem in MySQL finding networks IP address is in, it will just use range index scan using only one boundary
✪ vi4m Marcin Kliks
@vi4m
@msuszko zdzwonimy się pogadać tak będzie łatwiej ;-)
Bryan Taylor
@brylor
Hi all. I have Ralph3 deployed in docker... I'd like to add new "Cluster Status," but I see no option to change Cluster Status?