Repository navigation
Create/improve netcore initial setup documentation #18
Description
Activity
With regard to that specific error, the way
netcoreknows which zone to place a running instance ofnetcoreis by its hostname. For example for a machine runningnetcorewith a FQDN ofnetcore.seattle.example.com, a set of values need to exist for these keys:/config/netcore.seattle.example.com/dhcpip /config/netcore.seattle.example.com/dhcpnic /config/netcore.seattle.example.com/zoneYou can see here that the instance is therefore defined at
/config/$FQDNHOSTNAME.The
dhcpipvalue would be the IP address that the DHCP service will use (such as192.168.1.1, without a netmask/CIDR). It needs to be an IP that properly routes to the server hostingnetcore.The
dhcpnicvalue would be the name of the network device (such aseth0) that DHCP will listen on for DHCP lease requests. If you don't want this instance to run DHCP service, just omit this key altogether.The
zonevalue would be the name of the zone that thenetcoreinstance is in, such asseattle. You can have many instances within a single zone, though right nownetcoredoesn't automatically handle multiple instances running concurrently within a single zone. That means that DHCP might issue multiple IP addresses per inbound lease request, for example. It is intended to support this use in the future for failover, load balancing, or otherwise. For DNS service, it doesn't matter how many instances you have running.A
zoneis an area that is defined by the DHCP subnet it serves. For example, for theseattlezone, it might be serving addresses out of the192.168.0.0/22subnet (which is192.168.0.1through192.168.3.254), but restricted to a pool of192.168.2.0/23(which is192.168.2.1through192.168.3.254). One would configure it with these keys:/config/seattle/dhcpleaseduration /config/seattle/dhcpsubnet /config/seattle/domain /config/seattle/gateway /config/seattle/ntp /config/seattle/subnetYou can see here that the zone is therefore defined at
/config/$ZONE.dhcpleasedurationis the lease duration value, in seconds.600would be 10 minutes, for example. The default is 12 hours if this is unset.dhcpsubnetis the address pool. This does not need to match the local network's subnet. In the example above, this value would be set to192.168.2.0/23to issue addresses between192.168.2.1through192.168.3.254.domainis the search domain and domain suffix to register in within netcore DNS. I think it can be empty. You might want to set it to something likeseattle.example.com. A machine that claims to beacmewould then get an FQDN (via DHCP) ofacme.seattle.example.comand that name would be automatically registered in netcore DNS as expected.gatewayis the default gateway to advertise. If this is missing, DHCP users won't be able to get out of your subnet. This is just an IP address, no CIDR/netmask. Something like192.168.0.1.ntpis the NTP server you want to advertise. If you don't have one, just omit it. We put an IP address in this value. I don't recall if this can be an FQDN instead.subnetis the network subnet. This doesn't need to match the DHCP address pool (dhcpsubnet) above. In the above example, this would be set to192.168.0.0/22which is a range of192.168.0.1through192.168.3.254.Right now we're in the middle of some pretty serious refactoring to clean up the way the system works as well as how/where values are stored within etcd.
Obviously one of the things we need to deal with is the documentation, or the lack thereof.
- changed the title
[-]Bootstrapping[/-][+]Create/improve netcore initial setup documentation[/+]on Nov 21, 2015 I've renamed the issue to be more correct. I want to leave this issue open until we've improved the state of our documentation. If the above is insufficient to get you going, please let me know so I can help.
Hi,
I have some difficulties bootstrapping service :/
netcoredoesn't seems to create etcd directories if not present.Even If I'm creating this (with
etcdctl) and even if I set with flagssetZoneetc, I always have problem:I really don't know how to initialize etcd...
I may have missed something :)