1 2 Previous Next 17 Replies Latest reply on Mar 10, 2014 10:49 AM by Bill Robinson

    How to create a custom Property

      Hi Gents!

       

      I am wondering if there is the chance to create a custom property for servers in bladelogic.

       

      Let me explain the purpose:

      a. we have many linux servers with more than 1 network interface, let's say 2 for our example

      b. we'd like to have a property such as "IP_ADDRESS"(usually related to first network interface) listed among properties of a server

      c. the above property should indicate the ip address of the second network interface

       

      Is there a way to get it?

        • 1. Re: How to create a custom Property
          Bill Robinson

          why do you need this created as a property on the server?  what will you do w/ it when it's in a property ?

          • 2. Re: How to create a custom Property

            we should pass as a parameter to a job.

             

            this is an optional request: is there a chance to edit dynamically the content of a property? Such as: execute a command on the content of that property and then pass it to a job?

            • 3. Re: How to create a custom Property
              Sean Berry

              There could be, but this may be better solved via Reporting, depending on what you’re going to use it for (Inventory, vs. parameterization).

              • 4. Re: How to create a custom Property

                what do you mean? Can you provide me an example please? I'm quite new to this environment.

                • 5. Re: How to create a custom Property
                  Bill Robinson

                  So one way to do this would be to create some scripts that gathers the information from the server and then uses the blcli to set the value on each server.

                   

                  there could be a few ways to do this though:

                  1 - a nsh script job (type 1) that runs w/ a high degree of parallelism that gathers the IP info from each server and writes to a file

                  - another nsh job (type 2) that collects the results from the 1st job and then does a bulk set of the property values.

                   

                  2 - a nsh script that does a list of your current servers, then does a nslookup/dig on the alternate hostnames to get the other IPs - for example.  if IP_1 resolves to server1.foo.com, then IP_2 is server1-mgt.foo.com and IP_3 is server1-bak.foo.com you have a script that resolves the other 2 ips and then does the bulk property set (this should be faster than having to reach out to each server)

                   

                  if you just need this for inventory information as sean mentioned, this should be available in the 'hardware info' object in live browse which you can 'snapshot' w/ bladelogic and then generate reports on in the reporting product (bdssa)

                  • 6. Re: How to create a custom Property
                    Sean Berry

                    Can you give us a clearer idea of what you’re trying to do?

                    • 7. Re: How to create a custom Property
                      Joe Piotrowski

                      Do you just need a list of servers and the number of NICs and their IP addresses? Then use Inventory and Reporting to get you that information.

                       

                      Do you need to reference the second IP address for a purpose in BSA? For example, disable the NIC, change the IP address, check the address matches a certain range, etc.

                       

                      If you give us the overall use case, we can point you in the right direction.

                      • 8. Re: How to create a custom Property

                        Maybe Bill Robinson got the question. But I try to be clearer.

                        I have a deploy job with some parameters as input.

                         

                        SnipImage.JPG.jpg

                         

                        Now the question is: as you can see the property "ip" on the left shows a single IP address. On some servers I have more than 1 interface and I would like to pass the second IP address instead of that in the picture.

                         

                        Regarding the additional feature: I have highlighted the properties with "??" because it would be the best solution for my scenario. I mean, I would relate to interface1 or interface2, using a name convention such as "??TARGET.IP_ADDRESS1??" or "??TARGET.IP_ADDRESS2??".

                         

                        Is this something feasible?

                        • 9. Re: How to create a custom Property
                          Joe Piotrowski

                          Off the top of my head, you could create your own custom server property. Like CUSTOM_IP_ADDRESS

                           

                          Then you could populate that property with the IP address you want, then use that property as the parameter in your job.

                           

                          The fun is writing the scripts/BLCLI commands that will populate that field for you automatically. Or you have to do it manually.

                           

                          How many servers are you talking about?

                          • 10. Re: How to create a custom Property

                            Hi Joe, thank you for your answer.

                             

                            Do you know which are the steps to follow in order to get this custom property?

                             

                            The servers are around 3k for now, but we are going to add many more...the number of servers is a limitation or a problem?

                            • 11. Re: How to create a custom Property
                              Bill Robinson

                              the screenshot above looks like it's from a NSH Script Job, not a Deploy job.  anyway - if the IP is already assigned to the nic on the target why are you passing this as a parameter to the job?  why don't you just get the ip as part of your deploy script ?

                               

                              trying to maintain a property value for something that is already on the server seems like a waste of effort. 

                              • 12. Re: How to create a custom Property

                                Hi Bill,


                                yes, you're right it is from a NSH script Job.

                                I have some questions about:


                                1. if the IP is already assigned to the nic on the target why are you passing this as a parameter to the job?

                                     - what do you mean?

                                2. why don't you just get the ip as part of your deploy script ?

                                     - I'm sorry, but I don't get the point.


                                What I need is(second IP address) "123.456.789.0" instead of "195.233.58.151".

                                Better solution would be: a textual reference such as "??TARGET.IP_ADDRESS2??"

                                • 13. Re: How to create a custom Property
                                  Bill Robinson

                                  Your target system currently has multiple network interfaces already right?

                                   

                                  Each network interface already has an IP address assigned to it right?

                                   

                                  why are you passing the IP to the job ?  what is it used for ?

                                   

                                   

                                  my point is that if the ip address is already associated w/ a nic on the server, why do you want to store this in a property value?  when your job runs, can't it read the server's nic info directly ?

                                  • 14. Re: How to create a custom Property

                                    1. yes

                                    2. yes

                                    3. for convenience

                                     

                                    yes, the best(fastest) way is that one you wrote above.

                                    Now, let's suppose there is a need to create a custom property...: based on Joe answer it seems there is a way to do it.

                                     

                                    Do you know which the steps are?

                                    1 2 Previous Next