Difference between revisions of "Talk:Diskless system"

From ArchWiki
Jump to: navigation, search
(Is installation ISO needed ?)
(Bootstrapping installation: Two machines did not work)
(38 intermediate revisions by 6 users not shown)
Line 1: Line 1:
== Diskless_Network_Boot_NBD_Root merge and rewrite ==
 
 
There was a bunch of extraneous stuff that was clogging up the old articles, and most information was duplicated between the two. This is the result of the cleanup effort. That gPXE stuff, for example, deserves its own article in my opinion. Yet-another refactoring/merging of the related [[PXE]] article is also planned--the two should be sub-articles of a larger "PXE" article that describes "PXE" in general, with sub-articles describing booting installation media or an arch installation (minimizing duplicated information yet even more). --[[User:Buhman|Buhman]] ([[User talk:Buhman|talk]]) 14:31, 9 October 2012 (UTC)
 
 
== DNSmasq ==
 
 
If DNSmasq is not appropriate for the job, please write a section explaining why this is the case.  Since I use dnsmasq, I'd be interested to know why exactly you think it's not appropriate.  What definitely is not appropriate, however, is undoing my edits, for which I've gone to pains to explain my reasoning. [[User:Giddie|Giddie]] ([[User talk:Giddie|talk]]) 10:38, 11 December 2012 (UTC)
 
 
: No, we don't write sections explaining why sections don't exist. That's just plain stupid. --[[User:Buhman|Buhman]] ([[User talk:Buhman|talk]]) 10:42, 11 December 2012 (UTC)
 
 
:: We write sections explaining why an obvious choice is actually not a good idea, so others can be informed and avoid the same mistake.  (Assuming they agree that it is actually a mistake.)  Seriously: this wiki is not here to reflect only your own opinions; it's here so that we can '''all''' share our knowledge.  It's all about collaboration and compromise, and I'm seeing very little of that from you right now.  [[User:Giddie|Giddie]] ([[User talk:Giddie|talk]]) 11:34, 11 December 2012 (UTC)
 
 
::: dnsmasq is a problem because it's a little unwieldy primarily due to its crazy amount of scope-creep. What was originally just a dns server got way out of hand. If you say things like listen-address=192.168.0.1, that is only applicable for the DNS part, and not, e.g: DHCP. This becomes problematic if say you want your {{pkg|hostapd}} stuff that also runs isc-dhcp just on wlan0, and then decide you want to PXE boot some stuff off the wired-lan really quick. Nope; have to shut down dhcpd4 to allow dnsmasq to hog all the interfaces and bind wildcard on everything BUT dns. But oh wait, you said port=0? That controls what, just DNS? So DNS is disabled now, and listen-address in this case does absolutely nothing, as well as listen-interface.
 
 
::: It's just a dirty ugly quick "omfg I want dhcp+tftp NAOW" hack, rather than something that should be considered sane to actually systemctl enable. Lots of features, really crappy defaults, and, most importantly, no way to un-configure those defaults (aside from making a fork that would just end up being a less-good isc bind/tftp/dhcp). And compared to bind it's a lousy DNS server anyway. So why it even exists I don't know.
 
 
::: Nothing against you personally; I've, as you can see from the history, reverted dnsmasq edits before. --[[User:Buhman|Buhman]] ([[User talk:Buhman|talk]]) 16:37, 12 December 2012 (UTC)
 
 
:::: I'm content enough with the note, so that people can at least inform themselves and make their own decision.  So I think we've reached a settlement :) [[User:Giddie|Giddie]] ([[User talk:Giddie|talk]]) 09:47, 13 December 2012 (UTC)
 
 
==Moderation==
 
This article seems to be undergoing an edit war between [[User:Buhman]] and [[User:Giddie]], and this is bad for the wiki and its users: I remind both users that the articles of the wiki belong to everybody and can't be treated as personal notebooks. Entering more into the merits of the discussion, I also remind that it's a common policy of the ArchWiki to always explain all the possible ways to achieve a particular result, never hiding anything and always leaving the final choice to the end users; if some methods are working but discouraged for some reasons, they are to be left in the article together with those reasons of discouragement; if some methods are working only under some conditions, these conditions are to be described, possibly adding an appropriate [[:Category:Template#Article_status_templates|article status template]]. Different subsections can be created to keep the various methods separate.
 
 
Furthermore, I invite to always sign with the full signature in discussion pages (<nowiki>~~~~</nowiki>) and to always thoroughly justify the edits with the edit summary, avoiding expressions like "why the fsck was this even created?" or empty summaries (in particular when undoing edits), since these practices don't help in any way. Finally, please avoid expressions like "NFSv3 sucks", "Kthx", "I couldn't care less about your migration woes; it doesn't belong on the wiki, end of discussion", "That's just plain stupid", ... since this '''is''' considered ''flaming'', and flamers are not welcome here, regardless of the effective quality of their edits.
 
 
This section is more of a notice than a real discussion, so replies are not expected, please go on with the other discussions peacefully and constructively: once the situation has calmed down, this section can just be deleted.
 
 
-- [[User:Kynikos|Kynikos]] ([[User talk:Kynikos|talk]]) 14:39, 12 December 2012 (UTC)
 
 
: As you wish, my Lord. --[[User:Buhman|Buhman]] ([[User talk:Buhman|talk]]) 16:39, 12 December 2012 (UTC)
 
 
 
== Per-host mountpoints (was: Separate /var) ==
 
== Per-host mountpoints (was: Separate /var) ==
  
Line 40: Line 9:
 
::: Yeah, in my setup I share {{ic|/var/lib/pacman}} between all clients, and {{ic|/var/cache/pacman}} between all clients and the host.  Some other directories in {{ic|/var/cache}} could probably be safely shared, but my general stance is to opt-in to sharing certain directories in {{ic|/var}} for convenience (or storage space), rather than to determine which directories can't safely be shared.  I have no problem with providing suggestions for both points of view ("share all of /var except for certain dirs" vs "/var is node-specific except for certain dirs"); it's helpful for readers to have a chance to consider both views and decide what fits their usecase best. [[User:Giddie|Giddie]] ([[User talk:Giddie|talk]]) 09:57, 13 December 2012 (UTC)
 
::: Yeah, in my setup I share {{ic|/var/lib/pacman}} between all clients, and {{ic|/var/cache/pacman}} between all clients and the host.  Some other directories in {{ic|/var/cache}} could probably be safely shared, but my general stance is to opt-in to sharing certain directories in {{ic|/var}} for convenience (or storage space), rather than to determine which directories can't safely be shared.  I have no problem with providing suggestions for both points of view ("share all of /var except for certain dirs" vs "/var is node-specific except for certain dirs"); it's helpful for readers to have a chance to consider both views and decide what fits their usecase best. [[User:Giddie|Giddie]] ([[User talk:Giddie|talk]]) 09:57, 13 December 2012 (UTC)
  
== Is installation ISO needed ? ==
+
:::Re: mounting /var in initcpio: the "usr" hook does the same thing for a similar reason. This is a clean and sensible approach to an unusual problem. [[User:Giddie|Giddie]] ([[User talk:Giddie|talk]]) 21:12, 3 July 2013 (UTC)
I am trying to merge [[PXE]] into this article. While I am quite familiar with PXE, I do not know what exactly need to be done in the Network installation guide. Should I download ISO installation media? Where to put/get installation packages? -- [[User:Fengchao|Fengchao]] ([[User talk:Fengchao|talk]]) 04:44, 13 December 2012 (UTC)
+
 
 +
:::: Absolutely not; the usr hook is required because things critical for starting late-boot like init (/usr/lib/systemd/systemd) are in /usr. At the same time, the real problem is that the user separated /usr for absolutely no reason--it's a hack to fix a hack, and certainly not best-practice.
 +
 
 +
::::: Pretty much all of initcpio is a hack, but it's a necessary one: early boot is messy. I've been unable to find a way to make systemd mount /var early enough.  I believe I did manage to make it mount it first, before any other unit, but it still didn't work correctly: there were issues with NFS locks, etc.  Booting from NFS is a corner-case, and I think mounting /var in initcpio is a perfectly valid workaround for this issue. Feel free to search for a pure systemd-based solution. [[User:Giddie|Giddie]] ([[User talk:Giddie|talk]]) 09:39, 4 July 2013 (UTC)
 +
 
 +
== how to organize ==
 +
Heh, we go back to 3+ articles again? :P We're actually agreeing here I think, but I would say "sub-articles" rather than dedicated articles--[[User:Buhman|Buhman]] ([[User talk:Buhman|talk]]) 10:22, 13 December 2012 (UTC)
 +
: Well, sub-articles does imply that the tasks are basically the same, which I don't think they are. I think they are very different tasks with different purposes, but which happen to share some configuration.  No harm in a page that explains which article deals with what, I suppose.  I don't feel too strongly about this, really.  This is just what makes sense to me. [[User:Giddie|Giddie]] ([[User talk:Giddie|talk]]) 10:58, 13 December 2012 (UTC)
 +
 
 +
:: What would be really cool is if the reading went something like: the user reads about each of the ways that this could be done, then selects what he wants to see (whatever combinations), and then gets a tailored-to-order article with just the stuff he's interested in. --[[User:Buhman|Buhman]] ([[User talk:Buhman|talk]]) 10:16, 13 December 2012 (UTC)
  
: [[PXE]] talks about booting installation media via PXE, whereas this article talks about creating an installation from an already-installed system. A proper merge will be highly difficult in my opinion, which is why I have not yet attempted it. --[[User:Buhman|Buhman]] ([[User talk:Buhman|talk]]) 08:16, 13 December 2012 (UTC)
+
::: I don't think that will be possible on this MediaWiki setup without the kind of duplication we're keen to avoid.  Probably best to split out the common stuff into separate articles, and link from an article for each usecase. [[User:Giddie|Giddie]] ([[User talk:Giddie|talk]]) 10:19, 13 December 2012 (UTC)
 +
:::: Here is another idea: Instead of one index page for just [[Network Installation Guide]] and [[PXE]], we can add a index page about all of the different installation methods in [[:Category:Getting and installing Arch]]. There are 49 articles in the category, so a good index page can make them stay organized. -- [[User:Fengchao|Fengchao]] ([[User talk:Fengchao|talk]]) 13:14, 13 December 2012 (UTC)
 +
::::: This sounds like a good idea to me. [[User:Giddie|Giddie]] ([[User talk:Giddie|talk]]) 14:42, 13 December 2012 (UTC)
  
: The article titles are currently very non-helpful in determining what the content of each article is, but I'm not confident on how to fix this. For example "Network Installation" could mean both booting installation media via a network, or, as used in this article, creating an installation that happens to exist on network'ed storage media. In all cases, for example, you end up 1) preparing the TFTP root, whether it be a mounted Archiso, or part of a complete installation 2) actually setting up a TFTP and DHCP server, and the only real difference is 3) what exactly is contained on the root filesystem and how it is delivered to the client. I would love to hear ideas on how to reorganize this sanely. --[[User:Buhman|Buhman]] ([[User talk:Buhman|talk]]) 09:38, 13 December 2012 (UTC)
+
== Bootstrapping installation ==
  
: I think this article should be called something more like "Diskless ArchLinux System", whereas [[PXE]] could maybe be called "Network-booting Installation Media"? [[User:Giddie|Giddie]] ([[User talk:Giddie|talk]]) 10:04, 13 December 2012 (UTC)
+
Hello,
  
:: Well, the goal is to actually merge the two and just have sub-articles for each topic. Historically, this article was called [[Diskless_network_boot_NFS_root]], but in a never-finished attempt to unify all of the duplicated "how to do thus and such with PXE; let me verbatim copy 90% of one article, and then write about a paragraph of original stuff, and call it a new article" efforts, I renamed it to the more-generic "Network Installation Guide". The idea there was to mimic [[Installation Guide]], with the emphasis that the installation media resides on the network. The problem with that is that *clearly* isn't obvious until I explain it. I think there should also be a article named [[PXE]] (for googlers if anything else) if only to redirect to some more-specific article (but optimally the uber-merge that I think would be best). --[[User:Buhman|Buhman]] ([[User talk:Buhman|talk]]) 10:12, 13 December 2012 (UTC)
+
Should we not include that the network drivers for the client machines be in the MODULES section at /etc/mkinitcpio.conf as [https://bbs.archlinux.org/viewtopic.php?pid=1321289#p1321289 SOLVED Diskless - ipconfig: no devices to configure] says?
::: It seems that there's quite a disconnect between the two tasks: installing an Arch root on a server in order to boot diskless clients into a shared installation, and hosting a ISO in order to install Arch disklessly onto the disk of remote clients. It's true that the PXE stuff can be combined, though.  I'd suggest the two article titles I suggested above, as well as a PXE article describing the common setup. [[User:Giddie|Giddie]] ([[User talk:Giddie|talk]]) 10:19, 13 December 2012 (UTC)
+
:::: Well, then I understand what this article is talking about. The resulting system is '''diskless''' here, the title should reflect that. And the introduction should make it clear. -- [[User:Fengchao|Fengchao]] ([[User talk:Fengchao|talk]]) 13:14, 13 December 2012 (UTC)
+
  
=== how to organize ===
+
It worked just like a charm for me after hours trying to troubleshoot the network.  --[[User:Gbc921|Gabriel B. Casella]] ([[User talk:Gbc921|talk]]) 21:36, 24 January 2014 (UTC)
:::: Heh, we go back to 3+ articles again? :P We're actually agreeing here I think, but I would say "sub-articles" rather than dedicated articles--[[User:Buhman|Buhman]] ([[User talk:Buhman|talk]]) 10:22, 13 December 2012 (UTC)
+
::::: Well, sub-articles does imply that the tasks are basically the same, which I don't think they are. I think they are very different tasks with different purposes, but which happen to share some configuration.  No harm in a page that explains which article deals with what, I suppose.  I don't feel too strongly about this, really.  This is just what makes sense to me. [[User:Giddie|Giddie]] ([[User talk:Giddie|talk]]) 10:58, 13 December 2012 (UTC)
+
  
::: What would be really cool is if the reading went something like: the user reads about each of the ways that this could be done, then selects what he wants to see (whatever combinations), and then gets a tailored-to-order article with just the stuff he's interested in. --[[User:Buhman|Buhman]] ([[User talk:Buhman|talk]]) 10:16, 13 December 2012 (UTC)
+
: This isn't something that I ran into, but it sounds very sensible to me, if it is an issue for some. [[User:Giddie|Giddie]] ([[User talk:Giddie|talk]]) 10:27, 27 January 2014 (UTC)
  
:::: I don't think that will be possible on this MediaWiki setup without the kind of duplication we're keen to avoid.  Probably best to split out the common stuff into separate articles, and link from an article for each usecase. [[User:Giddie|Giddie]] ([[User talk:Giddie|talk]]) 10:19, 13 December 2012 (UTC)
+
:: I tested in two different machines, one with intel (e1000e, if I'm not wrong) and one with Broadcom. Neither recognized them automatically. --[[User:Gbc921|Gabriel B. Casella]] ([[User talk:Gbc921|talk]]) 11:39, 27 January 2014 (UTC)
::::: Here is another idea: Instead of one index page for just [[Network Installation Guide]] and [[PXE]], we can add a index page about all of the different installation methods in [[:Category:Getting and installing Arch]]. There are 49 articles in the category, so a good index page can make them stay organized. -- [[User:Fengchao|Fengchao]] ([[User talk:Fengchao|talk]]) 13:14, 13 December 2012 (UTC)
+

Revision as of 11:39, 27 January 2014

Per-host mountpoints (was: Separate /var)

I feel like treating just /var specially isn't fair. I mean, how would /etc feel? In all seriousness, I think this needs to be reorganized into something like "per-host special mountpoints". --Buhman (talk) 15:30, 12 December 2012 (UTC)

That sounds fine to me, if you want to do that. I'm pretty sure that /var contains everything that makes a host unique (or that's the intention), and I'm keen for people to think about it, since it's an added complication that can easily be overlooked when planning the cluster. Giddie (talk) 15:39, 12 December 2012 (UTC)
As I tried to imply somewhat, I still don't think its a good idea to do *all* of var, maybe a few application-specific subdirectories. For example it's actually desirable in a non-diskless scenario like this to put /var/cache/pacman on a NFS share--effectively working like a local repository mirror. Only in this scenario, we get that for free :D --Buhman (talk) 16:41, 12 December 2012 (UTC)
Yeah, in my setup I share /var/lib/pacman between all clients, and /var/cache/pacman between all clients and the host. Some other directories in /var/cache could probably be safely shared, but my general stance is to opt-in to sharing certain directories in /var for convenience (or storage space), rather than to determine which directories can't safely be shared. I have no problem with providing suggestions for both points of view ("share all of /var except for certain dirs" vs "/var is node-specific except for certain dirs"); it's helpful for readers to have a chance to consider both views and decide what fits their usecase best. Giddie (talk) 09:57, 13 December 2012 (UTC)
Re: mounting /var in initcpio: the "usr" hook does the same thing for a similar reason. This is a clean and sensible approach to an unusual problem. Giddie (talk) 21:12, 3 July 2013 (UTC)
Absolutely not; the usr hook is required because things critical for starting late-boot like init (/usr/lib/systemd/systemd) are in /usr. At the same time, the real problem is that the user separated /usr for absolutely no reason--it's a hack to fix a hack, and certainly not best-practice.
Pretty much all of initcpio is a hack, but it's a necessary one: early boot is messy. I've been unable to find a way to make systemd mount /var early enough. I believe I did manage to make it mount it first, before any other unit, but it still didn't work correctly: there were issues with NFS locks, etc. Booting from NFS is a corner-case, and I think mounting /var in initcpio is a perfectly valid workaround for this issue. Feel free to search for a pure systemd-based solution. Giddie (talk) 09:39, 4 July 2013 (UTC)

how to organize

Heh, we go back to 3+ articles again? :P We're actually agreeing here I think, but I would say "sub-articles" rather than dedicated articles--Buhman (talk) 10:22, 13 December 2012 (UTC)

Well, sub-articles does imply that the tasks are basically the same, which I don't think they are. I think they are very different tasks with different purposes, but which happen to share some configuration. No harm in a page that explains which article deals with what, I suppose. I don't feel too strongly about this, really. This is just what makes sense to me. Giddie (talk) 10:58, 13 December 2012 (UTC)
What would be really cool is if the reading went something like: the user reads about each of the ways that this could be done, then selects what he wants to see (whatever combinations), and then gets a tailored-to-order article with just the stuff he's interested in. --Buhman (talk) 10:16, 13 December 2012 (UTC)
I don't think that will be possible on this MediaWiki setup without the kind of duplication we're keen to avoid. Probably best to split out the common stuff into separate articles, and link from an article for each usecase. Giddie (talk) 10:19, 13 December 2012 (UTC)
Here is another idea: Instead of one index page for just Network Installation Guide and PXE, we can add a index page about all of the different installation methods in Category:Getting and installing Arch. There are 49 articles in the category, so a good index page can make them stay organized. -- Fengchao (talk) 13:14, 13 December 2012 (UTC)
This sounds like a good idea to me. Giddie (talk) 14:42, 13 December 2012 (UTC)

Bootstrapping installation

Hello,

Should we not include that the network drivers for the client machines be in the MODULES section at /etc/mkinitcpio.conf as SOLVED Diskless - ipconfig: no devices to configure says?

It worked just like a charm for me after hours trying to troubleshoot the network. --Gabriel B. Casella (talk) 21:36, 24 January 2014 (UTC)

This isn't something that I ran into, but it sounds very sensible to me, if it is an issue for some. Giddie (talk) 10:27, 27 January 2014 (UTC)
I tested in two different machines, one with intel (e1000e, if I'm not wrong) and one with Broadcom. Neither recognized them automatically. --Gabriel B. Casella (talk) 11:39, 27 January 2014 (UTC)