{"id":11,"date":"2024-11-04T09:00:37","date_gmt":"2024-11-04T09:00:37","guid":{"rendered":"https:\/\/rackware.nl\/?p=11"},"modified":"2024-11-04T09:05:46","modified_gmt":"2024-11-04T09:05:46","slug":"enabling-the-uid-on-a-disk-drive-on-hpe-proliant-gen10-servers","status":"publish","type":"post","link":"https:\/\/rackware.nl\/?p=11","title":{"rendered":"Enabling the UID on a Disk Drive on HPE ProLiant Gen10 Servers"},"content":{"rendered":"<article>\n<h2>How to Identify and Replace a Faulty Disk in an HPE vSAN Node Using the ssacli Tool<\/h2>\n<p>Recently, we encountered a situation where a disk went bad in one of our customer\u2019s HPE vSAN nodes. As part of the troubleshooting and repair process, we needed to physically identify and replace the failed disk. However, without a clear indicator, it can be challenging for an onsite engineer to pinpoint the exact disk that needs replacing, especially in a populated disk array. This blog will walk you through a convenient way to enable the disk identification LED using the <code>ssacli<\/code> tool, which comes in handy given that HPE&#8217;s iLO interface lacks a direct &#8220;Turn on UID&#8221; button.<\/p>\n<h3>The Challenge: No UID Button in iLO<\/h3>\n<p>The HPE iLO (Integrated Lights Out) interface offers a wealth of remote management options, but unfortunately, it doesn\u2019t include a straightforward \u201cTurn on UID\u201d button. This would allow an engineer to activate an LED on the faulty disk, making it easy to spot among other disks in the array. Without this feature, we rely on other methods to ensure the right drive is being replaced.<\/p>\n<h3>Solution: Using <code>ssacli<\/code> with VMware ESXi 7<\/h3>\n<p>Since our HPE node is running VMware ESXi 7 with the HPE vendor addon, we can use the <code>ssacli<\/code> utility to turn on the UID light for a specific drive. Here\u2019s how to do it step-by-step, with thanks to Wes Milliron for his excellent blog on the subject, which served as a key reference in this process. You can find his detailed post <a href=\"https:\/\/blog.wesmilliron.com\/2022\/09\/enabling-the-uid-on-a-disk-drive-on-hpe-proliant-gen10-servers-running-esxi-6-7\/\" target=\"_blank\" rel=\"noopener\">here<\/a>.<\/p>\n<h4>Step 1: Identify the Failed Disk in iLO<\/h4>\n<p>First, log in to the HPE iLO interface to gather details on the failed drive. You need to locate the disk by its controller, port, box, and bay information. For instance, let\u2019s say we\u2019ve identified that the failed disk is in:<\/p>\n<ul>\n<li><strong>Controller Slot:<\/strong> 1<\/li>\n<li><strong>Port:<\/strong> 1I<\/li>\n<li><strong>Box:<\/strong> 2<\/li>\n<li><strong>Bay:<\/strong> 1<\/li>\n<\/ul>\n<p>This information helps us target the exact drive when using <code>ssacli<\/code> to turn on the UID.<\/p>\n<h4>Step 2: Access the <code>ssacli<\/code> Tool on the ESXi Host<\/h4>\n<p>SSH into the ESXi host and navigate to the directory where <code>ssacli<\/code> is located:<\/p>\n<div class=\"code-container\">\n        <button class=\"copy-code-button\" data-code=\"cd \/opt\/smartstorageadmin\/ssacli\/bin\">Copy Code<\/button><\/p>\n<pre><code>cd \/opt\/smartstorageadmin\/ssacli\/bin<\/code><\/pre>\n<\/p><\/div>\n<h4>Step 3: Verify the Disk with <code>ssacli<\/code><\/h4>\n<p>To avoid any mix-ups, verify the drive details by running the following command. This will display information on all drives attached to the controller in slot 1:<\/p>\n<div class=\"code-container\">\n        <button class=\"copy-code-button\" data-code=\".\/ssacli controller slot=1 pd all show detail\">Copy Code<\/button><\/p>\n<pre><code>.\/ssacli controller slot=1 pd all show detail<\/code><\/pre>\n<\/p><\/div>\n<p>You can cross-reference the <strong>Drive Unique ID<\/strong> to confirm you have the correct disk before turning on the UID.<\/p>\n<h4>Step 4: Turn On the UID<\/h4>\n<p>Once you\u2019re sure of the drive\u2019s identity, use <code>ssacli<\/code> to enable the UID light, making it easier for the onsite engineer to locate it. Run the following command, adjusting slot, port, box, and bay as needed:<\/p>\n<div class=\"code-container\">\n        <button class=\"copy-code-button\" data-code=\".\/ssacli controller slot=1 physicaldrive 1I:2:1 modify led=on duration=86400\">Copy Code<\/button><\/p>\n<pre><code>.\/ssacli controller slot=1 physicaldrive 1I:2:1 modify led=on duration=86400<\/code><\/pre>\n<\/p><\/div>\n<p>This command will activate the LED for 24 hours. This should provide ample time for the disk replacement.<\/p>\n<h4>Step 5: Turn Off the UID (Optional)<\/h4>\n<p>If you complete the replacement before the 24-hour timer expires, you can manually turn off the UID by running:<\/p>\n<div class=\"code-container\">\n        <button class=\"copy-code-button\" data-code=\".\/ssacli controller slot=1 physicaldrive 1I:2:1 modify led=off\">Copy Code<\/button><\/p>\n<pre><code>.\/ssacli controller slot=1 physicaldrive 1I:2:1 modify led=off<\/code><\/pre>\n<\/p><\/div>\n<h3>Wrapping Up<\/h3>\n<p>It\u2019s worth noting that you\u2019ll need to adjust the slot, port, box, and bay details based on the specific drive in need of replacement. While an iLO &#8220;Turn on UID&#8221; button would make this process much easier, <code>ssacli<\/code> provides a solid workaround to ensure that the correct drive is identified and replaced.<\/p>\n<p>Thanks to Wes Milliron for his insightful blog post that helped make this process smoother!<\/p>\n<p>    <script>\n        document.addEventListener(\"DOMContentLoaded\", function() {\n            const buttons = document.querySelectorAll(\".copy-code-button\");<\/p>\n<p>            buttons.forEach(button => {\n                button.addEventListener(\"click\", function() {\n                    const code = button.getAttribute(\"data-code\");<\/p>\n<p>                    navigator.clipboard.writeText(code).then(() => {\n                        button.textContent = \"Copied!\";\n                        setTimeout(() => (button.textContent = \"Copy Code\"), 2000);\n                    }).catch(err => console.error(\"Failed to copy code:\", err));\n                });\n            });\n        });\n    <\/script><\/p>\n<style>\n        .code-container {\n            position: relative;\n            background-color: #f4f4f4;\n            border: 1px solid #ddd;\n            padding: 10px;\n            border-radius: 5px;\n            margin-bottom: 20px;\n        }<\/p>\n<p>        .copy-code-button {\n            position: absolute;\n            top: 10px;\n            right: 10px;\n            background-color: #0073aa;\n            color: #fff;\n            border: none;\n            padding: 5px 10px;\n            border-radius: 3px;\n            cursor: pointer;\n            font-size: 0.85em;\n        }<\/p>\n<p>        .copy-code-button:hover {\n            background-color: #005177;\n        }<\/p>\n<p>        pre {\n            margin-top: 20px;\n            overflow-x: auto;\n            white-space: pre-wrap;\n            word-break: break-all;\n        }\n    <\/style>\n<\/article>\n","protected":false},"excerpt":{"rendered":"<p>How to Identify and Replace a Faulty Disk in an HPE vSAN Node Using the ssacli Tool Recently, we encountered a situation where a disk went bad in one of our customer\u2019s HPE vSAN nodes. As part of the troubleshooting and repair process, we needed to physically identify and replace the failed disk. However, without &hellip; <a href=\"https:\/\/rackware.nl\/?p=11\" class=\"more-link\">Continue reading<span class=\"screen-reader-text\"> &#8220;Enabling the UID on a Disk Drive on HPE ProLiant Gen10 Servers&#8221;<\/span><\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-11","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/rackware.nl\/index.php?rest_route=\/wp\/v2\/posts\/11","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rackware.nl\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rackware.nl\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/rackware.nl\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/rackware.nl\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=11"}],"version-history":[{"count":2,"href":"https:\/\/rackware.nl\/index.php?rest_route=\/wp\/v2\/posts\/11\/revisions"}],"predecessor-version":[{"id":13,"href":"https:\/\/rackware.nl\/index.php?rest_route=\/wp\/v2\/posts\/11\/revisions\/13"}],"wp:attachment":[{"href":"https:\/\/rackware.nl\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=11"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rackware.nl\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=11"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rackware.nl\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=11"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}