Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
K
k3s
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Jacklull
k3s
Commits
a2651bfc
Commit
a2651bfc
authored
Dec 19, 2014
by
Deyuan Deng
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Rename minioncontroller to nodecontroller
parent
7bff03fb
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
125 additions
and
124 deletions
+125
-124
integration.go
cmd/integration/integration.go
+3
-3
controller-manager.go
cmd/kube-controller-manager/controller-manager.go
+3
-3
nodecontroller.go
pkg/cloudprovider/controller/nodecontroller.go
+35
-35
nodecontroller_test.go
pkg/cloudprovider/controller/nodecontroller_test.go
+80
-80
standalone.go
pkg/standalone/standalone.go
+4
-3
No files found.
cmd/integration/integration.go
View file @
a2651bfc
...
@@ -37,7 +37,7 @@ import (
...
@@ -37,7 +37,7 @@ import (
"github.com/GoogleCloudPlatform/kubernetes/pkg/api/testapi"
"github.com/GoogleCloudPlatform/kubernetes/pkg/api/testapi"
"github.com/GoogleCloudPlatform/kubernetes/pkg/apiserver"
"github.com/GoogleCloudPlatform/kubernetes/pkg/apiserver"
"github.com/GoogleCloudPlatform/kubernetes/pkg/client"
"github.com/GoogleCloudPlatform/kubernetes/pkg/client"
minion
ControllerPkg
"github.com/GoogleCloudPlatform/kubernetes/pkg/cloudprovider/controller"
node
ControllerPkg
"github.com/GoogleCloudPlatform/kubernetes/pkg/cloudprovider/controller"
replicationControllerPkg
"github.com/GoogleCloudPlatform/kubernetes/pkg/controller"
replicationControllerPkg
"github.com/GoogleCloudPlatform/kubernetes/pkg/controller"
"github.com/GoogleCloudPlatform/kubernetes/pkg/health"
"github.com/GoogleCloudPlatform/kubernetes/pkg/health"
"github.com/GoogleCloudPlatform/kubernetes/pkg/kubelet/dockertools"
"github.com/GoogleCloudPlatform/kubernetes/pkg/kubelet/dockertools"
...
@@ -188,8 +188,8 @@ func startComponents(manifestURL string) (apiServerURL string) {
...
@@ -188,8 +188,8 @@ func startComponents(manifestURL string) (apiServerURL string) {
controllerManager
.
Run
(
10
*
time
.
Minute
)
controllerManager
.
Run
(
10
*
time
.
Minute
)
nodeResources
:=
&
api
.
NodeResources
{}
nodeResources
:=
&
api
.
NodeResources
{}
minionController
:=
minionControllerPkg
.
NewMinion
Controller
(
nil
,
""
,
machineList
,
nodeResources
,
cl
)
nodeController
:=
nodeControllerPkg
.
NewNode
Controller
(
nil
,
""
,
machineList
,
nodeResources
,
cl
)
minion
Controller
.
Run
(
10
*
time
.
Second
)
node
Controller
.
Run
(
10
*
time
.
Second
)
// Kubelet (localhost)
// Kubelet (localhost)
standalone
.
SimpleRunKubelet
(
cl
,
etcdClient
,
&
fakeDocker1
,
machineList
[
0
],
testRootDir
,
manifestURL
,
"127.0.0.1"
,
10250
)
standalone
.
SimpleRunKubelet
(
cl
,
etcdClient
,
&
fakeDocker1
,
machineList
[
0
],
testRootDir
,
manifestURL
,
"127.0.0.1"
,
10250
)
...
...
cmd/kube-controller-manager/controller-manager.go
View file @
a2651bfc
...
@@ -31,7 +31,7 @@ import (
...
@@ -31,7 +31,7 @@ import (
"github.com/GoogleCloudPlatform/kubernetes/pkg/api/resource"
"github.com/GoogleCloudPlatform/kubernetes/pkg/api/resource"
"github.com/GoogleCloudPlatform/kubernetes/pkg/client"
"github.com/GoogleCloudPlatform/kubernetes/pkg/client"
"github.com/GoogleCloudPlatform/kubernetes/pkg/cloudprovider"
"github.com/GoogleCloudPlatform/kubernetes/pkg/cloudprovider"
minion
ControllerPkg
"github.com/GoogleCloudPlatform/kubernetes/pkg/cloudprovider/controller"
node
ControllerPkg
"github.com/GoogleCloudPlatform/kubernetes/pkg/cloudprovider/controller"
replicationControllerPkg
"github.com/GoogleCloudPlatform/kubernetes/pkg/controller"
replicationControllerPkg
"github.com/GoogleCloudPlatform/kubernetes/pkg/controller"
_
"github.com/GoogleCloudPlatform/kubernetes/pkg/healthz"
_
"github.com/GoogleCloudPlatform/kubernetes/pkg/healthz"
"github.com/GoogleCloudPlatform/kubernetes/pkg/master/ports"
"github.com/GoogleCloudPlatform/kubernetes/pkg/master/ports"
...
@@ -105,8 +105,8 @@ func main() {
...
@@ -105,8 +105,8 @@ func main() {
api
.
ResourceMemory
:
*
nodeMemory
,
api
.
ResourceMemory
:
*
nodeMemory
,
},
},
}
}
minionController
:=
minionControllerPkg
.
NewMinion
Controller
(
cloud
,
*
minionRegexp
,
machineList
,
nodeResources
,
kubeClient
)
nodeController
:=
nodeControllerPkg
.
NewNode
Controller
(
cloud
,
*
minionRegexp
,
machineList
,
nodeResources
,
kubeClient
)
minion
Controller
.
Run
(
10
*
time
.
Second
)
node
Controller
.
Run
(
10
*
time
.
Second
)
select
{}
select
{}
}
}
pkg/cloudprovider/controller/
minion
controller.go
→
pkg/cloudprovider/controller/
node
controller.go
View file @
a2651bfc
...
@@ -27,32 +27,32 @@ import (
...
@@ -27,32 +27,32 @@ import (
"github.com/golang/glog"
"github.com/golang/glog"
)
)
type
Minion
Controller
struct
{
type
Node
Controller
struct
{
cloud
cloudprovider
.
Interface
cloud
cloudprovider
.
Interface
matchRE
string
matchRE
string
staticResources
*
api
.
NodeResources
staticResources
*
api
.
NodeResources
minions
[]
string
nodes
[]
string
kubeClient
client
.
Interface
kubeClient
client
.
Interface
}
}
// New
MinionController returns a new minion
controller to sync instances from cloudprovider.
// New
NodeController returns a new node
controller to sync instances from cloudprovider.
func
New
Minion
Controller
(
func
New
Node
Controller
(
cloud
cloudprovider
.
Interface
,
cloud
cloudprovider
.
Interface
,
matchRE
string
,
matchRE
string
,
minion
s
[]
string
,
node
s
[]
string
,
staticResources
*
api
.
NodeResources
,
staticResources
*
api
.
NodeResources
,
kubeClient
client
.
Interface
)
*
Minion
Controller
{
kubeClient
client
.
Interface
)
*
Node
Controller
{
return
&
Minion
Controller
{
return
&
Node
Controller
{
cloud
:
cloud
,
cloud
:
cloud
,
matchRE
:
matchRE
,
matchRE
:
matchRE
,
minions
:
minion
s
,
nodes
:
node
s
,
staticResources
:
staticResources
,
staticResources
:
staticResources
,
kubeClient
:
kubeClient
,
kubeClient
:
kubeClient
,
}
}
}
}
// Run starts syncing instances from cloudprovider periodically, or create initial
minion
list.
// Run starts syncing instances from cloudprovider periodically, or create initial
node
list.
func
(
s
*
Minion
Controller
)
Run
(
period
time
.
Duration
)
{
func
(
s
*
Node
Controller
)
Run
(
period
time
.
Duration
)
{
if
s
.
cloud
!=
nil
&&
len
(
s
.
matchRE
)
>
0
{
if
s
.
cloud
!=
nil
&&
len
(
s
.
matchRE
)
>
0
{
go
util
.
Forever
(
func
()
{
go
util
.
Forever
(
func
()
{
if
err
:=
s
.
SyncCloud
();
err
!=
nil
{
if
err
:=
s
.
SyncCloud
();
err
!=
nil
{
...
@@ -66,24 +66,24 @@ func (s *MinionController) Run(period time.Duration) {
...
@@ -66,24 +66,24 @@ func (s *MinionController) Run(period time.Duration) {
// SyncStatic registers list of machines from command line flag. It returns after successful
// SyncStatic registers list of machines from command line flag. It returns after successful
// registration of all machines.
// registration of all machines.
func
(
s
*
Minion
Controller
)
SyncStatic
(
period
time
.
Duration
)
error
{
func
(
s
*
Node
Controller
)
SyncStatic
(
period
time
.
Duration
)
error
{
registered
:=
util
.
NewStringSet
()
registered
:=
util
.
NewStringSet
()
for
{
for
{
for
_
,
minionID
:=
range
s
.
minion
s
{
for
_
,
nodeID
:=
range
s
.
node
s
{
if
registered
.
Has
(
minion
ID
)
{
if
registered
.
Has
(
node
ID
)
{
continue
continue
}
}
_
,
err
:=
s
.
kubeClient
.
Nodes
()
.
Create
(
&
api
.
Node
{
_
,
err
:=
s
.
kubeClient
.
Nodes
()
.
Create
(
&
api
.
Node
{
ObjectMeta
:
api
.
ObjectMeta
{
Name
:
minion
ID
},
ObjectMeta
:
api
.
ObjectMeta
{
Name
:
node
ID
},
Spec
:
api
.
NodeSpec
{
Spec
:
api
.
NodeSpec
{
Capacity
:
s
.
staticResources
.
Capacity
,
Capacity
:
s
.
staticResources
.
Capacity
,
},
},
})
})
if
err
==
nil
{
if
err
==
nil
{
registered
.
Insert
(
minion
ID
)
registered
.
Insert
(
node
ID
)
}
}
}
}
if
registered
.
Len
()
==
len
(
s
.
minion
s
)
{
if
registered
.
Len
()
==
len
(
s
.
node
s
)
{
return
nil
return
nil
}
}
time
.
Sleep
(
period
)
time
.
Sleep
(
period
)
...
@@ -91,44 +91,44 @@ func (s *MinionController) SyncStatic(period time.Duration) error {
...
@@ -91,44 +91,44 @@ func (s *MinionController) SyncStatic(period time.Duration) error {
}
}
// SyncCloud syncs list of instances from cloudprovider to master etcd registry.
// SyncCloud syncs list of instances from cloudprovider to master etcd registry.
func
(
s
*
Minion
Controller
)
SyncCloud
()
error
{
func
(
s
*
Node
Controller
)
SyncCloud
()
error
{
matches
,
err
:=
s
.
cloud
Minion
s
()
matches
,
err
:=
s
.
cloud
Node
s
()
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
minion
s
,
err
:=
s
.
kubeClient
.
Nodes
()
.
List
()
node
s
,
err
:=
s
.
kubeClient
.
Nodes
()
.
List
()
if
err
!=
nil
{
if
err
!=
nil
{
return
err
return
err
}
}
minion
Map
:=
make
(
map
[
string
]
*
api
.
Node
)
node
Map
:=
make
(
map
[
string
]
*
api
.
Node
)
for
_
,
minion
:=
range
minion
s
.
Items
{
for
_
,
node
:=
range
node
s
.
Items
{
minionMap
[
minion
.
Name
]
=
&
minion
nodeMap
[
node
.
Name
]
=
&
node
}
}
// Create or delete
minion
s from registry.
// Create or delete
node
s from registry.
for
_
,
minion
:=
range
matches
.
Items
{
for
_
,
node
:=
range
matches
.
Items
{
if
_
,
ok
:=
minionMap
[
minion
.
Name
];
!
ok
{
if
_
,
ok
:=
nodeMap
[
node
.
Name
];
!
ok
{
glog
.
Infof
(
"Create
minion in registry: %s"
,
minion
.
Name
)
glog
.
Infof
(
"Create
node in registry: %s"
,
node
.
Name
)
_
,
err
=
s
.
kubeClient
.
Nodes
()
.
Create
(
&
minion
)
_
,
err
=
s
.
kubeClient
.
Nodes
()
.
Create
(
&
node
)
if
err
!=
nil
{
if
err
!=
nil
{
glog
.
Errorf
(
"Create
minion error: %s"
,
minion
.
Name
)
glog
.
Errorf
(
"Create
node error: %s"
,
node
.
Name
)
}
}
}
}
delete
(
minionMap
,
minion
.
Name
)
delete
(
nodeMap
,
node
.
Name
)
}
}
for
minionID
:=
range
minion
Map
{
for
nodeID
:=
range
node
Map
{
glog
.
Infof
(
"Delete
minion from registry: %s"
,
minion
ID
)
glog
.
Infof
(
"Delete
node from registry: %s"
,
node
ID
)
err
=
s
.
kubeClient
.
Nodes
()
.
Delete
(
minion
ID
)
err
=
s
.
kubeClient
.
Nodes
()
.
Delete
(
node
ID
)
if
err
!=
nil
{
if
err
!=
nil
{
glog
.
Errorf
(
"Delete
minion error: %s"
,
minion
ID
)
glog
.
Errorf
(
"Delete
node error: %s"
,
node
ID
)
}
}
}
}
return
nil
return
nil
}
}
// cloud
Minion
s constructs and returns api.NodeList from cloudprovider.
// cloud
Node
s constructs and returns api.NodeList from cloudprovider.
func
(
s
*
MinionController
)
cloudMinion
s
()
(
*
api
.
NodeList
,
error
)
{
func
(
s
*
NodeController
)
cloudNode
s
()
(
*
api
.
NodeList
,
error
)
{
instances
,
ok
:=
s
.
cloud
.
Instances
()
instances
,
ok
:=
s
.
cloud
.
Instances
()
if
!
ok
{
if
!
ok
{
return
nil
,
fmt
.
Errorf
(
"cloud doesn't support instances"
)
return
nil
,
fmt
.
Errorf
(
"cloud doesn't support instances"
)
...
...
pkg/cloudprovider/controller/
minion
controller_test.go
→
pkg/cloudprovider/controller/
node
controller_test.go
View file @
a2651bfc
This diff is collapsed.
Click to expand it.
pkg/standalone/standalone.go
View file @
a2651bfc
...
@@ -26,8 +26,9 @@ import (
...
@@ -26,8 +26,9 @@ import (
"github.com/GoogleCloudPlatform/kubernetes/pkg/api/resource"
"github.com/GoogleCloudPlatform/kubernetes/pkg/api/resource"
"github.com/GoogleCloudPlatform/kubernetes/pkg/apiserver"
"github.com/GoogleCloudPlatform/kubernetes/pkg/apiserver"
"github.com/GoogleCloudPlatform/kubernetes/pkg/client"
"github.com/GoogleCloudPlatform/kubernetes/pkg/client"
"github.com/GoogleCloudPlatform/kubernetes/pkg/clientauth"
"github.com/GoogleCloudPlatform/kubernetes/pkg/clientauth"
minion
ControllerPkg
"github.com/GoogleCloudPlatform/kubernetes/pkg/cloudprovider/controller"
node
ControllerPkg
"github.com/GoogleCloudPlatform/kubernetes/pkg/cloudprovider/controller"
"github.com/GoogleCloudPlatform/kubernetes/pkg/controller"
"github.com/GoogleCloudPlatform/kubernetes/pkg/controller"
"github.com/GoogleCloudPlatform/kubernetes/pkg/kubelet"
"github.com/GoogleCloudPlatform/kubernetes/pkg/kubelet"
"github.com/GoogleCloudPlatform/kubernetes/pkg/kubelet/config"
"github.com/GoogleCloudPlatform/kubernetes/pkg/kubelet/config"
...
@@ -130,8 +131,8 @@ func RunControllerManager(machineList []string, cl *client.Client, nodeMilliCPU,
...
@@ -130,8 +131,8 @@ func RunControllerManager(machineList []string, cl *client.Client, nodeMilliCPU,
api
.
ResourceMemory
:
*
resource
.
NewQuantity
(
nodeMemory
,
resource
.
BinarySI
),
api
.
ResourceMemory
:
*
resource
.
NewQuantity
(
nodeMemory
,
resource
.
BinarySI
),
},
},
}
}
minionController
:=
minionControllerPkg
.
NewMinion
Controller
(
nil
,
""
,
machineList
,
nodeResources
,
cl
)
nodeController
:=
nodeControllerPkg
.
NewNode
Controller
(
nil
,
""
,
machineList
,
nodeResources
,
cl
)
minion
Controller
.
Run
(
10
*
time
.
Second
)
node
Controller
.
Run
(
10
*
time
.
Second
)
endpoints
:=
service
.
NewEndpointController
(
cl
)
endpoints
:=
service
.
NewEndpointController
(
cl
)
go
util
.
Forever
(
func
()
{
endpoints
.
SyncServiceEndpoints
()
},
time
.
Second
*
10
)
go
util
.
Forever
(
func
()
{
endpoints
.
SyncServiceEndpoints
()
},
time
.
Second
*
10
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment