mirror of https://github.com/k3s-io/k3s
Move hostname detection logic to allow replacement
parent
187f7d2534
commit
7c17db672e
|
@ -57,7 +57,13 @@ func main() {
|
|||
log.Fatal("Couldn't connnect to docker.")
|
||||
}
|
||||
|
||||
hostname, err := exec.Command("hostname", "-f").Output()
|
||||
if err != nil {
|
||||
log.Fatalf("Couldn't determine hostname: %v", err)
|
||||
}
|
||||
|
||||
my_kubelet := kubelet.Kubelet{
|
||||
Hostname: hostname,
|
||||
DockerClient: dockerClient,
|
||||
FileCheckFrequency: *fileCheckFrequency,
|
||||
SyncFrequency: *syncFrequency,
|
||||
|
|
|
@ -49,14 +49,14 @@ var (
|
|||
|
||||
// master flags
|
||||
var (
|
||||
master_port = flag.Uint("master_port", 8080, "The port to listen on. Default 8080.")
|
||||
master_address = flag.String("master_address", "127.0.0.1", "The address on the local server to listen to. Default 127.0.0.1")
|
||||
master_port = flag.Uint("master_port", 8080, "The port for the master to listen on. Default 8080.")
|
||||
master_address = flag.String("master_address", "127.0.0.1", "The address for the master to listen to. Default 127.0.0.1")
|
||||
apiPrefix = flag.String("api_prefix", "/api/v1beta1", "The prefix for API requests on the server. Default '/api/v1beta1'")
|
||||
)
|
||||
|
||||
// flags that affect both
|
||||
var (
|
||||
etcd_server = flag.String("etcd_servers", "http://localhost:4001", "Url of local etcd server")
|
||||
etcd_server = flag.String("etcd_server", "http://localhost:4001", "Url of local etcd server")
|
||||
)
|
||||
|
||||
// Starts kubelet services. Never returns.
|
||||
|
@ -68,6 +68,7 @@ func fake_kubelet() {
|
|||
}
|
||||
|
||||
my_kubelet := kubelet.Kubelet{
|
||||
Hostname: *kubelet_address,
|
||||
DockerClient: dockerClient,
|
||||
FileCheckFrequency: *fileCheckFrequency,
|
||||
SyncFrequency: *syncFrequency,
|
||||
|
|
|
@ -60,6 +60,7 @@ type DockerInterface interface {
|
|||
|
||||
// The main kubelet implementation
|
||||
type Kubelet struct {
|
||||
Hostname string
|
||||
Client registry.EtcdClient
|
||||
DockerClient DockerInterface
|
||||
FileCheckFrequency time.Duration
|
||||
|
@ -427,15 +428,10 @@ func (kl *Kubelet) getKubeletStateFromEtcd(key string, changeChannel chan<- []ap
|
|||
// The channel to send new configurations across
|
||||
// This function loops forever and is intended to be run in a go routine.
|
||||
func (kl *Kubelet) SyncAndSetupEtcdWatch(changeChannel chan<- []api.ContainerManifest) {
|
||||
hostname, err := exec.Command("hostname", "-f").Output()
|
||||
if err != nil {
|
||||
log.Printf("Couldn't determine hostname : %v", err)
|
||||
return
|
||||
}
|
||||
key := "/registry/hosts/" + strings.TrimSpace(string(hostname))
|
||||
key := "/registry/hosts/" + strings.TrimSpace(string(kl.Hostname))
|
||||
// First fetch the initial configuration (watch only gives changes...)
|
||||
for {
|
||||
err = kl.getKubeletStateFromEtcd(key, changeChannel)
|
||||
err := kl.getKubeletStateFromEtcd(key, changeChannel)
|
||||
if err == nil {
|
||||
// We got a successful response, etcd is up, set up the watch.
|
||||
break
|
||||
|
|
Loading…
Reference in New Issue