Commit Graph

461 Commits (cad5f03311afff3907ce1f682c115c7c5451db06)

Author SHA1 Message Date
Federico Simoncelli afcda70190 cloudprovider: gce InstanceID implementation
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-05-28 13:02:11 -04:00
Federico Simoncelli 185d0e19d5 cloudprovider: aws InstanceID implementation
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-05-28 13:02:11 -04:00
Federico Simoncelli 466a7daaa8 cloudprovider: ovirt InstanceID implementation
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-05-28 13:02:11 -04:00
Federico Simoncelli 2a89428d44 api: add the ProviderID attribute to NodeSpec
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-05-28 13:01:58 -04:00
Federico Simoncelli faba12951a cloudprovider: add support for InstanceID method
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-05-28 12:47:50 -04:00
Federico Simoncelli 194343267d cloudprovider: add the ProviderName method
This patch adds the ProviderName method used to identify the cloud
provider.

Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-05-28 12:47:47 -04:00
Quinton Hoole 9b67435cf3 Merge pull request #8899 from roberthbailey/ip-from-metadata
For GCE, compute the external IP by using the local metadata server
2015-05-28 08:29:38 -07:00
Justin Santa Barbara 97a312f72c Fix AWS volume detach 2015-05-28 06:48:19 -04:00
Wojciech Tyczynski 6ffe46a9e0 Merge pull request #8822 from bprashanth/fifo_rc
Wake up rcs when pods get DeletionFinalStateUnknown tombstones
2015-05-28 10:50:28 +02:00
Robert Bailey 1dfaa93ccd For GCE, compute the external IP by using the local metadata
server. This is in many ways a revert of #7530 but after auditing
the code I found that this function is now only used to determine
an address of the node where it is currently running.
2015-05-27 17:41:41 -07:00
Prashanth Balasubramanian 8fa66bd962 Delta fifo includes objects in DeleteFinalStateUnknow, rcs stop faster 2015-05-27 16:45:51 -07:00
Tim Hockin f69eb0af67 Merge pull request #8831 from a-robinson/tp
Adjust the sleep time before tearing down e2e clusters and add a rough formula
2015-05-27 12:42:49 -07:00
derekwaynecarr 2f1dd9228f Fix Vagrant node registration and kube-push 2015-05-27 10:50:57 -04:00
Alex Robinson 9d61a95464 Adjust the sleep time before tearing down e2e clusters and add a rough formula
for determining how long the sleep should be.
2015-05-26 21:09:05 +00:00
Saad Ali c5525ecfdc Merge pull request #8704 from roberthbailey/dead-flags
Deprecate flags for nodecontroller
2015-05-26 09:54:01 -07:00
Justin Santa Barbara bb697cee7e Clear LoadBalancerStatus both on LB delete and on update in the API
Although it takes some time to destroy a load balancer, we hide this complexity
from the user.
2015-05-22 19:14:28 -04:00
Justin Santa Barbara a271771341 Richer errors for validation 2015-05-22 19:14:28 -04:00
Justin Santa Barbara 7346cc8042 Add ServiceType = NodePort; wire everything up 2015-05-22 19:14:28 -04:00
Justin Santa Barbara e49ad95462 Mark PublicIPs as deprecated & rename to DeprecatedPublicIPs in the latest API
We need to keep them in the API so that we can round-trip between versions.
2015-05-22 19:14:27 -04:00
Justin Santa Barbara 973c2e4819 Add Type to ServiceSpec: ClusterIP or LoadBalancer 2015-05-22 19:14:21 -04:00
Justin Santa Barbara 3884d5fc59 Add LoadBalancer status to ServiceStatus
This will replace publicIPs
2015-05-22 18:27:05 -04:00
Robert Bailey d0bcf953e9 Deprecate the following flags for node-controller:
--node-milli-cpu
  --node-memory
  --machines
  --minion-regexp
  --sync-nodes

Remove the following flags from the standalon kubernetes binary:
  --node-milli-cpu
  --node-memory
2015-05-22 15:18:36 -07:00
Dawn Chen 17ac4b1dfc Merge pull request #8297 from iterion/switch-to-aws-sdk-go
AWS: Switch to aws-sdk-go
2015-05-22 12:31:07 -07:00
Dawn Chen 677a4aa1a7 Merge pull request #8164 from cjcullen/cloudprovider
Route creation reconciler loop.
2015-05-22 12:27:50 -07:00
Quinton Hoole 6d8eaa924e Merge pull request #7852 from a-robinson/tp
Prevent stranding of partial load balancers resources
2015-05-22 10:12:30 -07:00
CJ Cullen e6da5b9601 Make routecontroller_test less hacky.
Rename reconcilePodCIDRs to reconcileNodeCIDRs.
Add comments and TODOs about using controller framework.
2015-05-21 18:05:11 -07:00
David Oppenheimer 6b428ef1a8 Merge pull request #7170 from simon3z/node-events
Node events recording fixes
2015-05-21 12:54:38 -07:00
Dawn Chen b5c1098cb6 Merge pull request #8576 from a-robinson/svc
Fix misordered assignment in service controller
2015-05-21 09:38:08 -07:00
Federico Simoncelli 2f503c57a5 nodecontroller: improve node status event recording
This patch substitutes the misleading reason "unknown" for the event
recording. For symmetry with kubelet's message "online" the conditions
Unknown and False are reported as "offline".

Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-05-20 18:46:01 -04:00
Federico Simoncelli 21c57a5633 nodecontroller: remove unused ready event recording
It's not nodecontroller setting the node to Ready so it's impossible to
reach this condition.

Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-05-20 18:45:58 -04:00
CJ Cullen 0d12a15971 Route creation reconciler loop. 2015-05-20 14:21:30 -07:00
CJ Cullen bf646abf8d Revert "Revert "Modify nodes to register directly with the master.""
This reverts commit c53786ab31.
2015-05-20 14:21:03 -07:00
Quinton Hoole c53786ab31 Revert "Modify nodes to register directly with the master." 2015-05-20 13:47:51 -07:00
Alex Robinson 4214b76924 Fix misordered assignment in service controller 2015-05-20 11:51:48 -06:00
Adam Sunderland ad9f2d7a56 Fix Some AWS Issues 2015-05-20 10:42:27 -05:00
Alex Robinson dbf224475d Require DeleteTCPLoadBalancer to be idempotent and change the service
controller to rely on that, so that we won't strand partial resources
from them anymore (target pools in GCE, pools in OpenStack, etc.).
2015-05-19 17:06:54 +00:00
Alex Robinson dc2f10d51b Make openstack's impl of DeleteTCPLoadBalancer idempotent with respect
to load balancers having already been deleted.
2015-05-19 17:06:50 +00:00
Robert Bailey 01467e0bb8 Modify nodes to register directly with the master.
- Delete nodes when they are no longer ready and don't exist in the
cloud provider.
 - Label each node with it's hostname.
 - Add flag to skip node registration.
 - Add a test for registering an existing node.
2015-05-19 09:55:07 -07:00
Brian Grant 2c81050e6f Merge pull request #8457 from davidopp/master
Fix stylistic isues with #5547. Closes #4910.
2015-05-19 07:43:21 -07:00
David Oppenheimer 44b1e1ca0c Fix stylistic isues with #5547. Closes #4910. 2015-05-18 23:32:06 -07:00
Tim Hockin a548d542db Rename AffinityType to ServiceAffinity 2015-05-18 17:21:30 -07:00
Victor Marmol 45874d5f76 Merge pull request #5547 from gmarek/client3
Add a resource specifying number of Pods that are allowed to run on Kubelet.
2015-05-18 11:11:43 -07:00
Victor Marmol 4ba22e713a Merge pull request #8296 from jlowdermilk/gen-analytics
Add ga-beacon analytics to gendocs scripts
2015-05-18 08:40:02 -07:00
Alex Robinson 3cf80e76c8 Properly handle nil cached services in the service controller's node reconciler.
Add a test that catches the former bug.
2015-05-17 22:36:48 -07:00
Jeff Lowdermilk 553f9f822b Add ga-beacon analytics to gendocs scripts
hack/run-gendocs.sh puts ga-beacon analytics link into all md files,
hack/verify-gendocs.sh verifies presence of link.
2015-05-15 18:56:38 -07:00
Alex Robinson edf5a78604 Don't try deleting a target pool if we failed to delete its forwarding rule. 2015-05-15 22:05:23 +00:00
gmarek 27d660d0ac Add a resource specifying number of Pods that are allowed to run on Kubelet. 2015-05-15 10:57:46 +02:00
Adam Sunderland 6f6ca0433f Fixing Tests 2015-05-14 19:24:27 -05:00
Adam Sunderland 9849db7fdf Fixing Many Issues 2015-05-14 18:53:47 -05:00
David Oppenheimer 7a21d7ab1f Merge pull request #8053 from jdef/upstream_mesos_cloud
integrate mesos cloud provider with k8s proper
2015-05-14 13:57:39 -07:00
Adam Sunderland ff9996c100 Use aws-sdk-go 2015-05-14 14:18:25 -05:00
gmarek 8a4717d3f5 Remove unused ClusterName from NodeController 2015-05-14 18:01:23 +02:00
CJ Cullen 5e3d2b9138 Kubelet configure cbr0 instead of configure-vm.sh 2015-05-12 23:00:12 -07:00
James DeFelice 7387a2d0cd address review comments of @davidopp 2015-05-12 17:05:34 +00:00
James DeFelice eca9fd58c7 mesos cloud provider implementation 2015-05-12 16:02:26 +00:00
Prashanth Balasubramanian 4fdd5bc3f3 Ratelimit replica creation 2015-05-08 14:24:25 -07:00
CJ Cullen fbd125e4e2 Remove restriction that cluster-cidr be a class-b 2015-05-06 15:01:13 -07:00
CJ Cullen 292d33e33c Add synchronization around nodeMap 2015-05-05 17:11:38 -07:00
Jerzy Szczepkowski e967ffd522 Added flag to set cluster class B network address for pods, add flag to disable allocation CIDRs for Pods. Fixed synchornization bug in NodeController registerNodes(). 2015-05-05 16:10:43 -07:00
Tomek Kulczynski 290c7b94ef Make nodecontroller configure nodes' pod IP ranges 2015-05-05 16:10:42 -07:00
Alex Robinson 5be3a5a9dc Merge pull request #7783 from GoogleCloudPlatform/revert-7609-lb
Revert "Truncate GCE load balancer names to 63 chars"
2015-05-05 15:23:35 -07:00
Quinton Hoole 8bc481d65c Merge pull request #7669 from a-robinson/lb
Change the cloud provider TCPLoadBalancerExists function to GetTCPLoadBalancer...
2015-05-05 11:42:06 -07:00
Quinton Hoole 1c7f6b82c7 Revert "Truncate GCE load balancer names to 63 chars" 2015-05-05 11:02:18 -07:00
Quinton Hoole 83b70c4411 Revert "Revert #7145 now that #7609 is in, and fix the tests that were relying on it" 2015-05-02 23:32:21 -07:00
Jeff Lowdermilk b447dc0c54 Merge pull request #7635 from a-robinson/length
Revert #7145 now that #7609 is in, and fix the tests that were relying on it
2015-05-01 17:48:41 -07:00
Alex Robinson a047250b53 Change the cloud provider TCPLoadBalancerExists function to GetTCPLoadBalancer,
which returns the IP/DNS address of the load balancer, enabling more
intelligent reconciliation in the service controller.
2015-05-01 17:42:23 -07:00
Eric Paris 6b3a6e6b98 Make copyright ownership statement generic
Instead of saying "Google Inc." (which is not always correct) say "The
Kubernetes Authors", which is generic.
2015-05-01 17:49:56 -04:00
Alex Robinson 890ff7b4aa Revert #7145 now that #7609 is in, and fix the tests that were relying on it. 2015-05-01 10:49:23 -07:00
Brendan Burns 40549dc083 Truncate GCE load balancer names to 63 chars 2015-04-30 17:54:11 -07:00
Brian Grant 2d37650c65 Merge pull request #7530 from mbforbes/nodeExternal
Make nodes report their external IP rather than the master's.
2015-04-30 12:29:45 -07:00
Piotr Szczesniak 11a2dc496f Added TerminationGracePeriod field to PodSpec and grace-period flag to kubectl stop
Those are changes which touch users required by Termination Notice

Addresses #6804
2015-04-30 18:00:33 +02:00
Max Forbes e1c2e6b4b1 Make nodes report their external IP rather than the master's. 2015-04-29 15:44:25 -07:00
Wojciech Tyczynski 534a2fd27c Merge pull request #7171 from ravigadde/master
Node controller change to use field selector
2015-04-28 13:14:11 +02:00
Marek Grabowski 7a122a42d4 Merge pull request #7040 from justinsb/aws_nodeaddresses
AWS: Return public & private addresses in GetNodeAddresses
2015-04-28 10:56:50 +02:00
Ravi Gadde 4b5f851520 Node controller change to use field selector 2015-04-27 12:12:13 -07:00
Robert Bailey 0f22b6fc4d Merge pull request #7251 from a-robinson/tp
Move load balancer host / target pool reconciliation to the service controller
2015-04-24 13:17:54 -07:00
Alex Robinson 5d9564b1cc Improve GCE's implementation of UpdateTCPLoadBalancer to only make the
update calls if anything has changed.
2015-04-24 18:44:19 +00:00
Alex Robinson 6ae8e40d3d Move the logic for reconciling the host targets of external load balancers
from the node controller to the service controller before impending changes
to the node controller make it not fit there anymore.
2015-04-24 18:44:04 +00:00
Angus Lees 8818966d1f OpenStack: lb_method required when creating LbaaS pool
This change takes lb-method from [LoadBalancer] section of cloud
provider config file, defaulting to ROUND_ROBIN.

Fixes #7199
2015-04-23 15:19:14 +10:00
Brian Grant 15c2986a07 Merge pull request #7067 from ravigadde/master
Added field selector for listing pods
2015-04-22 07:12:21 -07:00
Brian Grant 1a9c179271 Merge pull request #7145 from caesarxuchao/6812
Resolve #6812, limit length of load balancer names
2015-04-22 07:09:23 -07:00
caesarxuchao e9c5e44767 Use service UID as the ELB name 2015-04-21 12:20:42 -07:00
Justin Santa Barbara 5efd1e717f Add FakeEC2 Instances support for matching by instance id 2015-04-21 06:51:43 -07:00
Ravi Gadde bf8f258471 Added field selector for listing pods. 2015-04-21 06:33:28 -07:00
Dawn Chen 28e0c68d65 Register node with nodename only. 2015-04-20 14:16:21 -07:00
Kenjiro Nakayama 2e702b0c61 Replace hostname -f with uname -n 2015-04-20 14:16:21 -07:00
Justin Santa Barbara 335f42b38c AWS: Return public & private addresses in GetNodeAddresses 2015-04-19 21:10:44 -07:00
Masahiro Sano b2d68c79b7 use auto reauth when access token is expired 2015-04-18 18:41:54 +09:00
Robert Bailey f633ac0ab5 Restrict functions and structs that aren't used outside of the
nodecontroller to have package private scope. This makes reasoning
about the code in this package much simpler.
2015-04-15 20:56:07 -07:00
Alex Robinson fc08a0a71b Do service creation/update/deletion work in a pool of goroutines, protecting
each service with a lock to ensure that no two goroutines will process a
service at the same time. This is needed to avoid weird race conditions.
2015-04-15 00:30:18 +00:00
Alex Robinson 9a351e3670 Move validation of load balancers only supporting TCP ports to validation.go. 2015-04-14 18:56:51 +00:00
Alex Robinson ccc300289f Implement a ServiceController that watches services and handles keeping
external load balancers up-to-date based on the service's specs, using
the new DeltaFIFO watch queue class. Remove the old registry REST
handler code for creating/updating/deleting load balancers.

Also clean up a bunch of the GCE cloudprovider code related to load balancers.
2015-04-14 18:56:24 +00:00
Alex Robinson a11106edd3 Put the node controller in its own package rather than in the generic
cloudprovider/controller package.
2015-04-14 18:34:59 +00:00
Deyuan Deng 236db3c252 Remove kubelet dependency on nodecontroller 2015-04-13 16:59:45 -04:00
Wojciech Tyczynski 59ab41c8f7 Merge pull request #6292 from jszczepkowski/scale-pool
Updating target pools on cloud nodes change.
2015-04-13 10:58:49 +02:00
Dawn Chen c19437395b Merge pull request #6702 from ddysher/remove-nodeinfo
Remove nodeinfo endpoint from kubelet
2015-04-10 14:54:16 -07:00
Justin Santa Barbara 9462471bcd Fix some mistaken volumeId -> volumeID changes 2015-04-10 13:25:44 -07:00
Justin Santa Barbara 933cf60af7 Style: volumeId -> volumeID 2015-04-10 13:25:44 -07:00
Justin Santa Barbara 98c9ebbc50 Style: Aws -> AWS 2015-04-10 13:25:44 -07:00
Justin Santa Barbara 2afc1840b6 Style: awsId -> awsID 2015-04-10 13:25:44 -07:00
Justin Santa Barbara 46f9c2cc3c Style: Ebs -> EBS 2015-04-10 13:25:44 -07:00
Justin Santa Barbara 5a887e83e7 Remove now-unused instanceId parameter from newAwsCloud 2015-04-10 13:25:43 -07:00
Justin Santa Barbara 4e176771b6 Make fetching the aws instance id optional, so we can use it on e2e 2015-04-10 13:25:43 -07:00
Justin Santa Barbara aa6051026e Add comment about EBS status being a bit slow through API 2015-04-10 13:25:43 -07:00
Justin Santa Barbara 0101bf2081 Fix detached-check logic, warn on multiple attachments 2015-04-10 13:25:43 -07:00
Justin Santa Barbara 21beabd0a7 Default attachment status to detached
So no-attachments = status detached
2015-04-10 13:25:43 -07:00
Justin Santa Barbara 6c823dbdab Small clean-ups 2015-04-10 13:25:42 -07:00
Justin Santa Barbara f2184e0860 Fix comment 2015-04-10 13:25:42 -07:00
Justin Santa Barbara ee72fa4d61 Tolerate volume being already-attached 2015-04-10 13:25:42 -07:00
Justin Santa Barbara 86ddc0f96a Fix mountpoint values 2015-04-10 13:25:42 -07:00
Justin Santa Barbara e56e2ee46a Strip leading slash from url path when parsing aws volume 2015-04-10 13:25:42 -07:00
Justin Santa Barbara 743f2edb56 Fix tests 2015-04-10 13:25:42 -07:00
Justin Santa Barbara 89089900d7 Fix merge problems 2015-04-10 13:25:42 -07:00
Justin Santa Barbara 2812936d34 Simplify logic of pd.go 2015-04-10 13:25:42 -07:00
Justin Santa Barbara 6a4153fc0a Always create volumes in the active k8s zone 2015-04-10 13:25:42 -07:00
Justin Santa Barbara ffadd5533a Fix AWS region vs zone
We were specifying a region, but naming it as a zone in util.sh

The zone matters just as much as the region, e.g. for EBS volumes.

We also change the config to require a Zone, not a Region.
But we fallback to get the information from the metadata service.
2015-04-10 13:25:42 -07:00
Justin Santa Barbara 8fde691aa7 Fix tests 2015-04-10 13:25:42 -07:00
Justin Santa Barbara edf0292d4a Add initial support for Volumes to AWS 2015-04-10 13:25:42 -07:00
Deyuan Deng 868e05ce96 Remove nodeinfo endpoint from kubelet 2015-04-10 15:47:32 -04:00
Jerzy Szczepkowski 1c042208c7 Added retrying update of balancers in case some of updates failed. 2015-04-10 16:06:56 +02:00
Jerzy Szczepkowski eb253a694e Updating target pools on cloud nodes change.
Implemented updating target pools for external services on chage of cloud nodes. Related to #5241.
2015-04-10 16:06:56 +02:00
Wojciech Tyczynski 88eb0b0295 FieldSelector for node List() 2015-04-10 12:53:16 +02:00
Daniel Smith 629d94657e Merge pull request #6624 from gmarek/status_to_subresource
Update NodeStatus use subresources.
2015-04-09 16:00:15 -07:00
gmarek ccc56d3c3c Update NodeStatus use subresources. 2015-04-09 14:07:40 +02:00
Piotr Szczesniak c1dd881f48 Added events back to Node Controller
It reverts @davidopp temp fix #6443.
Fixes #6199.
2015-04-09 10:37:07 +02:00
Masahiro Sano d04cc5ced4 List in NodesInterface takes label selector 2015-04-08 23:41:27 +09:00
gmarek 72182735b9 Remove Node Controllers ability to pull status from Kubelet 2015-04-08 09:44:42 +02:00
David Oppenheimer 8599564c96 Merge pull request #6535 from davidopp/master
Change default Kubelet NodeStatusUpdateFrequency from 2s to 10s.
2015-04-07 13:37:03 -07:00
David Oppenheimer d8aa57872a Change default Kubelet NodeStatusUpdateFrequency from 2s to 10s. 2015-04-07 12:36:09 -07:00
Clayton Coleman 51db3bd654 Create a new testclient package that can be backed by disk files
Standardize how our fakes are used so that a test case can use a
simpler mechanism for providing large, complex data sets, as well
as represent queries over time.
2015-04-07 14:56:15 -04:00
David Oppenheimer 402bf60366 Merge pull request #6214 from gmarek/move_consts_to_flags
Move NodeController constants to flags
2015-04-07 11:31:11 -07:00
gmarek ef56dca6b6 Remove ConditionSchedulable 2015-04-07 17:01:07 +02:00
gmarek 321a81047c Move NodeController constants to flags 2015-04-07 12:33:03 +02:00
gmarek 751d1d25ff Add timestamp cache to NodeController 2015-04-07 09:15:35 +02:00
Rohit Jnagal f2f3da15e1 Merge pull request #6370 from justinsb/aws_config_optional
Make AWS configuration file optional (fall-back to metadata service)
2015-04-06 14:29:28 -07:00
David Oppenheimer c4a595aa7f Remove use of events from NodeController, to temporarily fix #6199 2015-04-04 11:56:43 -07:00
Justin Santa Barbara b61fc222bb Make AWS configuration file optional (fall-back to metadata service) 2015-04-03 13:42:31 -07:00
James DeFelice 4d3a9e2203 fixes #6416 2015-04-03 19:13:25 +00:00
Piotr Szczesniak 8bc9f5fef7 Added rate limiting to pod deletion
Fixes #6228
2015-04-03 06:58:59 +02:00
Federico Simoncelli f78301c5ab kubelet: log offline event message recording
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-04-02 09:07:32 -04:00
Piotr Szczesniak 5c6439d449 Removed PodStatus.Host
Fixes #6165
2015-04-02 16:38:45 +02:00
CJ Cullen 5e6e67ba59 Add an alternative TokenSource to the GCE CloudProvider. 2015-04-01 17:52:30 -07:00
Piotr Szczesniak 81683441b9 Merge pull request #6156 from gmarek/retry_loop
Add a retry loop to UpdateStatus in NodeController
2015-04-01 09:16:11 +02:00
Victor Marmol 44fda1fcd1 Merge pull request #6161 from justinsb/populate_addresses_new_nodes
Make sure we have addresses for newly discovered nodes
2015-03-31 14:46:06 -07:00
Victor Marmol c93cd4a0d1 Merge pull request #6225 from cjcullen/cloudprovider
Fix typed-nil passing in cloudprovider/plugins
2015-03-31 13:04:11 -07:00
Justin Santa Barbara 72ee90494e Add unit test 2015-03-31 12:58:29 -07:00
Brian Grant 3354cffbf0 Merge pull request #6182 from thockin/plural_services_20
Implement multi-port Services
2015-03-31 12:55:21 -07:00
Zach Loafman fc8ba8d77b Merge pull request #6011 from justinsb/aws_specify_zone
Fix AWS region vs zone
2015-03-31 12:26:05 -07:00
CJ Cullen aa91bde375 Fix typed-nil passing in cloudprovider/plugins 2015-03-31 10:32:02 -07:00
gmarek fa6d5e259f Add a retry loop to UpdateStatus in NodeController 2015-03-31 11:22:02 +02:00
Tim Hockin eeff1b74fb Fixes from feedback and testing 2015-03-30 23:52:37 -07:00
Tim Hockin 186818d787 WIP: Implement multi-port Services 2015-03-30 19:28:11 -07:00
saadali e0f71cb21f Make each new instance of kubelet generate a new event channel (instead of reusing existing). 2015-03-30 14:22:16 -07:00
Federico Simoncelli 0e60374346 nodes: record an event on NodeReady changes
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-03-30 12:01:09 -04:00
Justin Santa Barbara 527d3f1f99 Make sure we have addresses for newly discovered nodes 2015-03-30 08:51:33 -07:00
Victor Marmol d5ce931f0b Merge pull request #6069 from simon3z/kubelet-reboot-logic
node: move the reboot detection logic to kubelet
2015-03-30 08:45:37 -07:00
Justin Santa Barbara 63f63aa9de Don't list AWS instances until they are actually ready 2015-03-30 08:06:18 -07:00
Federico Simoncelli fe2d1f6762 node: move the reboot detection logic to kubelet
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-03-30 09:33:07 -04:00
Justin Santa Barbara c1337cbaeb Make some of the more repetitive AWS tests table-driven 2015-03-27 07:31:16 -07:00
Justin Santa Barbara 583892da2d Fix AWS region vs zone
We were specifying a region, but naming it as a zone in util.sh

The zone matters just as much as the region, e.g. for EBS volumes.

We also change the config to require a Zone, not a Region.
But we fallback to get the information from the metadata service.
2015-03-26 15:11:05 -07:00
gmarek 5a11748018 Move Capacity from NodeSpec to NodeStatus 2015-03-26 15:28:48 +01:00
Rohit Jnagal 49ff04765b Add validation for node creation. 2015-03-25 21:55:03 +00:00
Federico Simoncelli 2db64d3f90 nodecontroller: record node reboot event
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-03-25 15:06:53 -04:00
Federico Simoncelli 5b3056cdb7 nodecontroller: add event recorder support
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-03-25 15:06:53 -04:00
Brendan Burns bfceb21007 Add support for grabbing the externalIP in the GCE cloud provider. 2015-03-24 21:21:50 -07:00
Deyuan Deng ca68f4a9d1 Rename ConditionFull->ConditionTrue, ConditionNone->ConditionFalse 2015-03-24 17:28:59 -04:00
Deyuan Deng c5675b8924 Use fake time in nodecontroller unittest; rename receiver 's' to 'nc' 2015-03-24 14:23:48 -04:00
Deyuan Deng b51d491f05 Delete all pods based on condition transition time. 2015-03-24 14:23:48 -04:00
Deyuan Deng cf548765c9 Change kubelet update frequency to 2s, and make it a constant. 2015-03-24 14:23:48 -04:00
Deyuan Deng 0d5f8dfde1 Node controller monitor node status 2015-03-24 14:19:56 -04:00
Jordan Liggitt a75b501821 Improve ResourceLocation API, allow proxy to use authenticated transport 2015-03-24 11:11:34 -04:00
Jerzy Szczepkowski 34a8a3a844 Running node selector predicate on kubelet.
Added checking on kubelet if scheduled pods have matching node selector. This is the last step to fix #5207.
2015-03-23 08:21:58 +01:00
Brendan Burns 5fb18c6f33 Merge pull request #5101 from justinsb/aws_getnoderesources
Add support for GetNodeResources to AWS
2015-03-17 07:30:34 -07:00
Angus Lees 1437e6b7ca OpenStack: Return multiple private+public NodeAddresses
Add better support for the new NodeAddresses call.  Note the returned
list may include IPv6 addresses (as strings) on many OpenStack clouds.
2015-03-16 17:11:36 +11:00
Angus Lees 8f5064bfea nodecontroller: Include error in error messages
Makes debugging node creation failures far easier...
2015-03-16 15:36:45 +11:00
Angus Lees 437853b8cd Keep resources as numeric values
Previously, this code converted to a string and reparsed back to a
numeric Quantity.  Keeping it numeric avoids the overhead, but also
removes a (theoretical) run-time panic if the re-parse failed.

In addition, since Quantity can now store quantities <1, convert
openstack.org/rxTxFactor back to its original ratio, rather than
arbitrarily scaling it up by 1000.
2015-03-16 15:35:45 +11:00
Angus Lees e14b73bd30 Reauthenticate to OpenStack periodically
It appears that gophercloud's "AllowReauth" AuthOption doesn't actually
do anything, and the keystone/auth token is never refreshed.  Eventually
it expires and all OpenStack calls receive HTTP 401 responses.

This change reauthenticates every time the Instances() or
TCPLoadBalancer() API object is requested.  This is more frequently than
required, but exposing token expiry information will require gophercloud
surgery.
2015-03-16 15:35:45 +11:00
Angus Lees 762225ed47 OpenStack: Align logging levels with devel/logging.md 2015-03-16 15:35:43 +11:00
Angus Lees 4ff292a65e OpenStack: Support loadbalancer client IP affinity 2015-03-16 15:33:54 +11:00
Justin Santa Barbara 51aded0661 Add support for GetNodeResources to AWS 2015-03-13 22:59:28 -04:00
Alex Robinson 579edee4c2 Merge pull request #5346 from justinsb/cloudprovider_multiple_addresses
Let CloudProvider return list of NodeAddress, not just one net.IP
2015-03-13 15:45:11 -07:00
Justin Santa Barbara c3a6d00099 Rename TestIPAddress -> TestNodeAddresses 2015-03-13 18:09:31 -04:00
Justin Santa Barbara 99da56fb06 Fix problems identified in review 2015-03-13 18:07:08 -04:00
Brendan Burns cf68593fc2 Merge pull request #5228 from justinsb/aws_lb_string
Change cloud provider CreateTCPLoadBalancer to return endpoint as string
2015-03-13 12:16:26 -07:00
Deyuan Deng 97e12957e6 Merge pull request #5257 from deads2k/deads-eliminate-wait-for-no-nodes
eliminate wait with no nodes
2015-03-13 13:48:49 -04:00
Ravi Sankar Penta f6ecec5880 Allow admin user to explicitly unschedule the node
Setting Unschedulable on the node will not touch any existing pods
on the node but will block scheduling of new pods on the node.
2015-03-12 14:27:27 -07:00
Prashanth Balasubramanian 4849f33cc5 Don't check status of a failed delete operation 2015-03-12 08:52:18 -07:00
Justin Santa Barbara bc16d83a51 Let CloudProvider return list of NodeAddress, not just one net.IP
This lets cloud providers populate the NodeAddress array
2015-03-11 16:50:26 -07:00
Brian Grant 9aa744925e Merge pull request #5030 from simon3z/nodeinfo
Add support for fetching node collected information
2015-03-10 14:05:41 -07:00
deads2k 91b92eba2f eliminate wait with no nodes 2015-03-10 14:22:43 -04:00
Dawn Chen 56cbe6c59f Merge pull request #5231 from mikedanese/no-more-globals
Move global func into NodeController
2015-03-10 11:12:45 -07:00
Brian Grant b3d3db08ef Merge pull request #5064 from justinsb/ignore_stopped_aws_instances
Ignore EC2 instances that are stopped
2015-03-10 11:03:34 -07:00
Federico Simoncelli 644d775bc1 kubelet: retport system info in node information
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-03-10 10:11:02 -04:00
Federico Simoncelli 1b18440f35 kubelet: add GetNodeInfo implementation
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-03-10 10:11:01 -04:00
Justin Santa Barbara 3eab40cabd AWS support for Zones 2015-03-10 05:49:26 -07:00
Mike Danese 14f705c74c move global func into NodeController 2015-03-09 21:25:19 -07:00
Justin Santa Barbara 5d36d3cdbe Change cloud provider CreateTCPLoadBalancer to return endpoint as string
Some load balancers (particularly AWS ELB) define the public endpoint
as a hostname (instead of using IP addresses).

This is a partial fix for #5224; there will also be some proxy work.
2015-03-09 20:35:13 -07:00
Justin Santa Barbara a3ae480acc Ignore EC2 instances that are stopped
Otherwise we pick up previous cluster instances (in EC2, stopped instances hang around for
a while - maybe 30 minutes?)
2015-03-09 19:03:46 -07:00
Brendan Burns 8dd61e25fa Merge pull request #5137 from ddysher/gce-externalid
Use FormatInt instead of string for external id.
2015-03-09 13:47:24 -07:00
Daniel Smith 2a7be5619a Merge pull request #5116 from justinsb/skip_duplicate_node_address
Don't allow duplicate values in NodeAddresses
2015-03-09 11:59:54 -07:00