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