Jump to content

agw

Members
  • Posts

    52
  • Joined

  • Last visited

Posts posted by agw

  1. I have a ZFS pool of (2) nvme drives.  Currently used only for docker (7 mundane docker containers installed: pi-hole, homer, paperless-ngx, redis, duplicacy, mealie and stirlingpdf ). 

    If I have the Docker service enabled, and all containers stopped - there are no writes to the nvme drives.

    As soon as I enable any docker app, the number of writes to the nvme drives starts ticking up and never stops.  This happens even if I am not using the app at all.  The more apps that are started, the more quickly the write counter rolls up.  I only noticed this because I was on the Unraid Main page and noticed the drives had something like 1.3M writes - accrued over a couple/few weeks.  Reads were a few thousand, if I recall correctly.  This 'feels' excessive to me.

     

    I see the forum discussions re: how to limit or reduce the size of the log files.  But I don't seem to be finding any discussion about the root cause of the constant writing.  My log files are not large in terms of storage size (largest is 8MB), my concern is just the constant writing to the drives for reasons I don't really understand.

     

    Is this normal?  Should the docker nvme drives just be getting written to constantly anytime a docker app is online?

    Or perhaps I am mis-interpreting the meaning of the "writes" counter for these drives as shown on the Main page?

    Maybe this is perfectly normal behavior for Unraid's docker implementation or for using ZFS (this is my first time diddling around with ZFS)?

     

    Any insight is appreciated!

  2. joikd

    I do intend to someday get back in and update the s3 wiki page with the new and improved script (again, unless someone beats me to it!).  I've recently swapped motherboards in my desktop and server, and have been waiting for 4.5 to go 'final' before I spend the time to try and set the new machine back up with all of the little tweaks like s3.  And I would never try to write a wiki article describing the use of a script that I've not stepped through on my own.

     

    So, that's my excuse.

     

    With respect to your most recent post, it sounds like it might be a good exercise for you to simply test the sleep command and magic packet wake-up function manually for a while.  Until you know that you can reliably put the server to sleep and wake it up back up using the magic packet - you don't really need to concern yourself with the go script, bwm-ng or any of the other details.  Have you done Steps 1-6 from the wiki article?

     

    If so, post back which steps are giving you trouble and the community (most are much smarter than me) can probably get you moving in the right direction.

     

    agw

  3. Very nice ReneV.  I am going to implement and test for a while before updating the S3 wiki page, unless someone beats me to it.  But it looks like you have cleanly rolled in all of the various topics that we've been discussing in this thread.  (I am about to leave for a week - so it may be a while)

     

    One thing, and I hesitate to even mention it yet because I really haven't isolated the problem - but I suspect that some of the issues I've had with my server lately where it would just go unresponsive after moving large files back and forth may be related to operation after wake from S3.  More specifically, I think it might have to do with the forcing of a Gb connection after sleep, when my server would normally only have negotiated a 100Mb connetion.  Originally I thought it was a 4.5b7 issue, but I reproduced the problem quite easily in 4.4.2 which was an otherwise very stable release for me.  I implemented that Gb force line in my S3 script without extensive testing, so I want to make sure it gets due attention . . .

     

    agw

     

  4. Adding the same command  'ethtool -s eth0 speed 1000' to the post-sleep section of the script seems to be working for me also.  I've only done a handful of wake-ups since yesterday, but previously the reduced network speed happened 100% of the time after the first boot.  So it seems to be a good fix.  Good idea Fibblebot.

     

    I've been running 4.5beta7 - it did not fix the s3 problem for me.

  5. I put my notes on getting sleep and wake on lan working in the wiki under the 'How-Tos' section.  This way the smart people can go in and make edits and hopefully make it more useful. 

     

    Link: http://lime-technology.com/wiki/index.php/Setup_Sleep_%28S3%29_and_Wake_on_Lan_%28WOL%29

     

    In the notes, I reference my batch file for sending the magic packet and also my s3.sh file that is called from the 'go' script.  Copies of those files are attached to this post.

     

    Hope there's something useful in there for someone. 

     

    AGW

     

    • Like 1
  6. How long does it take to bring the machine up to an accessible point (login) from an S3 state?

     

    From memory, I'm going to say 8-10 seconds or so?  I definitely remember it being faster than a fresh boot.  But again, I'm only running two drives, so not sure how the numbers might change for some of the large arrays that many are running.

     

    Of course, after several days of glorious S3 / WOL use - I dug back into this to write-up my FB,BB (For Beginners, By Beginners) Guide to S3 / WOL . . . and I somehow got things all goofed up.  So, this weekend I get to wrestle with two things:

    1.  Server is no longer responding to magic packet.  I'm hoping I just made a bad BIOS tweak - I don't remember doing that but I was in the BIOS the other day and it's plausible.

     

    2.  When it is sleeping and waking properly, I noticed that the server no longer negotiates a gigabit connection upon wake-up.  It's 1000Mb/s off of cold-boot, but if I check it after wake from sleep, it seems to be coming back at 100Mb/s.  It's onboard Realtek 8168b NIC, so I suspect a driver issue - which means I probably won't be able to do much about it other than hope a driver update in next unRAID release cleans it up.  Or buy a NIC, but I'm inclined not to go that route if I can help it.

     

    AGW

     

  7. Well, my box currently only has two drives in it - so for me 'all drives spinning up' just means that both spin up.  Although I'm fairly certain that all of them would spin up regardless of how many were installed.  Mine spends most of its time idle, and when it is online I have the drives set to spin for a minimum of one hour of no activity before they spin down - which seems like a reasonable compromise of energy saving vs drive wear.  I'm using an 80+ power supply, integrated video and a 45W processor, and my machine still pulls about 70W idle with both drives spun down, so I really wanted the machine to sleep when it's not in use.

     

    BTW flambot - I haven't forgot about you, I'm still putting together my S3 / WOL step-by-step - but I've not had much time to piece it all together.  I realize you may not even be that interested anymore, but I think it may still be good reference for others.  I'm pretty green at all of this, so I'm even learning quite a bit as I re-visit everything.

  8.  

    This is something I would like to be able to achieve.  Is it possible you could detail exactly how you achieved this?

    When I get home this evening, I will try to put something together.  To automate the sleep process, I essentially copied OMV's script (see beginning of this thread) verbatim and then made a couple of very minor edits. 

     

    Do all the drives spin up when you wake it up?

    Yes.

     

    Can a magic packet be sent by an xbox (Original using xbmc)??

    No idea.  I'm far from an expert (and I don't own an xbox).  Perhaps someone else will chime in.  Ideally I'd like the machine to wake up whenever someone tries to browse to it or access it, but I'm not sure that's currently possible.  May even be a motherboard restriction, not sure.

     

     

  9. OK - it's been a long and frustrating effort, but I've finally got unRaid sending me email alerts if the system goes offline.  AND . . . it's reliably sleeping after spindown and waking up via magic packet!  I consider these two functions to be key to any respectable home server system so I really wanted to get both working.

     

    After it was working, the next challenge was making the WOL function a little more wife friendly.  She couldn't be expected to jump through many hoops to wake the server up if she needed to access her files from her laptop.  I found a windows command line tool called wolcmd that works great from a .bat file to send the magic packet. 

     

    http://www.depicus.com/wake-on-lan/wake-on-lan-cmd.aspx

     

    Instructions for use are on the site.  Basically the .bat file is a two-liner (could be a one-liner probably), first change to the directory where wolcmd.exe is stored, then call it along with your server mac address, ip address, and subnet mask.  Pretty straighforward.

    Now I have an icon on the wife's laptop called "Wake Server" that she can just double-click if the server is not online.

     

    I hope this might help someone.  I'll see if I can add a link to the wiki for the wolcmd tool.

     

    agw

  10. That does help a bit.  Essentially you are using the 'echo' command to "apply" a value of 3 to /proc/acpi/sleep . . . I guess.

     

    What I've done so far is taken OMV's updated bash script that is designed to suspend the machine after a preset period of spindown time, and created a file called s3.sh, using wordpad, that contains OMV's script.  Then I try to call that file from the go script using nohup, but it doesn't work.  I get: "No such file or directory".

     

     

    I suspect that I'm missing something very basic in the process of creating a useable script file.

  11. OK - I'm able to put my server to sleep using the: echo 3 > /proc/acpi/sleep

    Is that the actual command you typed? I've tried all sorts of commands that looked similar, but that exact one doesn't look familiar. Which build of unRAID did you use that with, and do you have and mods to it?

     

    Yes, if I telnet into the tower and type:  echo 3 > /proc/acpi/sleep

    my machine goes to sleep.  Works very well, actually.  I gleaned this command from this thread. 

    I'm not sure WHY it works, of course - which is what makes everything so frustrating.  I do try to understand things as I try to implement them, so that I am learning as opposed to just typing.  But I haven't even been able to decipher the first part of this:  'echo 3' !

     

    Anyway, using unRAID 4.4 on a Foxconn A7GM-S motherboard.

  12. OK - I'm able to put my server to sleep using the: echo 3 > /proc/acpi/sleep command.  Wakes up via magic packet.  So far, so good.

    I've fiddled around with my go script and tried to implement OMV's script to force sleep after a set period of drives being spun down.

     

    This exercise just served to reinforce how little I really know about linux, scripts, etc.

     

    Anybody that has this working successfully willing to share what exactly is in their go script and, if there is a separate script for OMVs routine (or similar), how that is generated, where it is stored, etc? 

     

    Many (many) thanks in advance!

     

     

×
×
  • Create New...