Commit Graph

544 Commits (13a853f3717e64c3519b98dd04dbb867513fe7f9)

Author SHA1 Message Date
Justin Santa Barbara 23a190cd97 Fixes per review
Primarily go style issues; also a TODO that really exponential backoff
is the correct policy for API call retries.
2015-07-26 18:30:02 -04:00
Justin Santa Barbara 092d407a48 AWS: Fix race in security-group read/create
We need to find the ID for a named security group, or create a new one.

We do this by listing the security groups, and then doing a create if we
cannot find one.  This is a race though; against another thread if the
AWS API were consistent, but generally because the AWS API is actually
eventually consistent.

We wrap it in a retry loop.
2015-07-26 18:16:05 -04:00
Justin Santa Barbara d7bace23ff AWS: Fix race-condition in tagging of security group
When we create a security-group in the AWS API, there is sometimes
a delay before we can tag it (the AWS API is eventually consistent).

So we wrap CreateTags in a simple retry loop.
2015-07-26 18:16:05 -04:00
Vish Kannan 2a5a6b99cb Merge pull request #10635 from smarterclayton/cloud_provider_should_err
Cloud provider should return an error
2015-07-23 17:50:45 -07:00
Daniel Smith 15d50f4211 Fix part of #9382 2015-07-23 15:48:45 -07:00
Alex Robinson b0351ff266 Detect if UpdateTCPLoadBalancer left its GCE target pool in an incorrect state. 2015-07-17 19:01:21 +00:00
Alex Robinson e943c47e68 Fix issue of comparing instance URLs with different project ID representations
in GCE target pools.
2015-07-15 21:24:45 +00:00
Brendan Burns a8f02e5472 Automatically open a firewall when creating a GCE load balancer. 2015-07-10 14:35:29 -07:00
Alex Robinson b52c6f673e Increase the rate limiting of GCE's token source. The burst being at 3
means transient errors won't incur such long waits, but repeating
failures shouldn't be retrying every second.
2015-07-09 22:51:23 +00:00
CJ Cullen 53c9f324c2 Add prometheus metrics for altTokenSource. 2015-07-07 15:25:23 -07:00
Yu-Ju Hong 530bff315f Merge pull request #10719 from justinsb/aws_mountpoints
AWS: Some images require volume mounts on /dev/xvdX
2015-07-07 10:48:19 -07:00
Yu-Ju Hong 736b3cb050 Merge pull request #10181 from swagiaal/aws-ebs-name
Use instance availability zone for AWS EBS
2015-07-06 11:39:33 -07:00
Justin Santa Barbara f33df03d50 AWS: Some images require volume mounts on /dev/xvdX
It seems impossible to determine from outside.  Thankfully we're running
the attachment from inside the instance, so can check for /dev/sdX or
/dev/xvdX.

More modern images seem to be moving to /dev/xvdX
2015-07-04 10:45:06 -04:00
Justin Santa Barbara 591a113406 AWS: Return InstanceNotFound from ExternalID when not found
Despite finding and documenting the importance of this, I was still doing it
wrong!
2015-07-04 10:41:38 -04:00
Justin Santa Barbara 5ae7c13ad3 AWS: Use private dns name for node name again
This is a partial reversion of #9728, and should fix #10612.

9728 used the AWS instance id as the node name.  But proxy, logs
and exec all used the node name as the host name for contacting the minion.

It is possible to resolve a host to the IP, and this fixes logs.  But
exec and proxy also require an SSL certificate match on the hostname,
and this is harder to fix.

So the sensible fix seems to be a minimal reversion of the changes in #9728,
and we can revisit this post 1.0.
2015-07-03 01:23:51 -04:00
Clayton Coleman d8bb4552de Cloud provider should return an error
Not fatal - makes cloud provider useful in methods that
can return error.
2015-07-01 14:41:49 -04:00
Sami Wagiaalla 4a6a492281 Use instance availability zone for AWS EBS
Signed-off-by: Sami Wagiaalla <swagiaal@redhat.com>
2015-06-25 16:00:30 -04:00
Justin Santa Barbara 4461daa218 AWS: Enabling resize tests 2015-06-24 19:01:42 -04:00
Justin Santa Barbara 2a5ed2f086 AWS: Use auto-scaling group to run minions
This uses the dynamic CIDR work, and we set source-dest-check to false
when we configure the route (which kind-of makes sense)
2015-06-19 10:22:15 -04:00
Satnam Singh 9f32599bee Merge pull request #9720 from justinsb/aws_routes
Refactor Routes, and dynamically configure minion CIDRs on AWS
2015-06-18 17:16:29 -07:00
Justin Santa Barbara 0ad16a187d Refactor findRouteTable to be less verbose
Thanks for the suggestion @cjcullen
2015-06-18 17:08:32 -07:00
Justin Santa Barbara a4e15cdf3e AWS: Configure minion routes dynamically
We need to implement the Routes interface, and then enable the functionality in the cluster scripts.
2015-06-18 14:59:37 -07:00
Justin Santa Barbara a3b43a36fd Refactor cloud route interface, to avoid assumption that routes are named 2015-06-18 14:59:37 -07:00
Justin Santa Barbara a77bc9cfc4 Document assumption made by node-controller, and fix AWS to match
ExternalID must return "", cloudprovider.InstanceNotFound if the instance
is not found, for nodecontroller to remove nodes corresponding to deleted instances.
2015-06-18 14:55:10 -07:00
Satnam Singh 4c13f8957d Merge pull request #10057 from justinsb/aws_id_as_name_2
Fix of reverted #9728
2015-06-18 14:07:21 -07:00
Justin Santa Barbara bd512ae06d AWS: Use the instance id as the node name
The EC2 instance id is the canonical node name on EC2.
2015-06-18 12:40:10 -07:00
Justin Santa Barbara df87470ecf Allow cloud providers to return a node identifier different from the hostname 2015-06-18 12:40:05 -07:00
Satnam Singh e4f5529a2d Revert "Allow nodename to be != hostname, use AWS instance ID on AWS" 2015-06-18 11:27:55 -07:00
CJ Cullen abf1e768dc Pass through an explicit PROXY_SSH_USER.
Use user@user instead of user@hostname in case hostname is too long.
2015-06-18 10:35:02 -07:00
Satnam Singh 790ca2344f Merge pull request #9728 from justinsb/aws_id_as_name
Allow nodename to be != hostname, use AWS instance ID on AWS
2015-06-18 10:17:39 -07:00
CJ Cullen 15596ede41 Make AddSSHKeys a controller loop. Make sure master's always initializes m.tunnels. 2015-06-17 17:46:27 -07:00
Justin Santa Barbara c89b0cd807 AWS: Use the instance id as the node name
The EC2 instance id is the canonical node name on EC2.
2015-06-17 00:40:43 -04:00
Justin Santa Barbara efaead81dc Allow cloud providers to return a node identifier different from the hostname 2015-06-17 00:40:43 -04:00
Justin Santa Barbara bf7946c326 AWS: Define new m4 instance types 2015-06-17 00:04:05 -04:00
Justin Santa Barbara 1561fce81c servicecontroller: last state applied to LB vs last state seen
We need the last state seen for interpreting the change-stream,
separately we need to track the last state we successfully applied to the
load balancer.
2015-06-16 18:59:03 -04:00
CJ Cullen 4d5d0457ef Fix mislooping in ssh.go. Add retries to AddSSHKeys. 2015-06-16 00:08:37 -07:00
Brendan Burns 99bf48dc2f Merge pull request #9542 from brendandburns/validate
Change the way we test if a disk is already attached.
2015-06-09 22:00:06 -07:00
Brendan Burns 3350eecedf Change the way we test if a disk is already attached.
Validated by manual introspection on a running GCE cluster.
2015-06-09 17:50:52 -07:00
krousey f62a2a1bb6 Merge pull request #9451 from cjcullen/mig
Use Node IP Address instead of Node.Name in minion.ResourceLocation.
2015-06-09 15:52:12 -07:00
krousey 3d803ab7b2 Merge pull request #9410 from cjcullen/ratelimit
Add a RateLimiter for the gce altTokenSource.
2015-06-09 11:11:48 -07:00
CJ Cullen 2d85e4a094 Use Node IP Address instead of Node.Name in minion.ResourceLocation.
Refactor GetNodeHostIP into pkg/util/node (instead of pkg/util to break import cycle).

Include internalIP in gce NodeAddresses.
2015-06-08 16:58:00 -07:00
krousey afb9a7e362 Merge pull request #9373 from justinsb/aws_lb_cleanup
Make deletion of an AWS load balancer clean
2015-06-08 16:49:21 -07:00
CJ Cullen be0d24824d Add a RateLimiter for the gce altTokenSource. 2015-06-08 11:16:52 -07:00
Justin Santa Barbara c2caa3f1da AWS: Fix cleanup of security group
The most reliable way seems to be to deauthorize the LB security group from
other groups, then delete the LB itself, then repeatedly retry to delete the LB
security group.

We can't delete the LB security group until the LB is actually completely
deleted, but the LB is hidden from the API during deletion.  So our only real
option is to retry deletion of the LB security group until the expected error
goes away when the LB is fully deleted.
2015-06-06 23:20:34 -04:00
Justin Santa Barbara 1700259508 AWS: Ignore the UserId when determining whether we can skip revoking a security group
Otherwise we weren't correctly de-authorizing the AWS LB SG from the Node SG
2015-06-06 12:37:01 -04:00
Justin Santa Barbara 8fafefd728 Fix doc for edge-case return from removeSecurityGroupIngress 2015-06-06 12:25:50 -04:00
Justin Santa Barbara e32c66c6f4 Fix typo: Ingess -> Ingress 2015-06-06 12:22:50 -04:00
CJ Cullen cb317604ab Some refactoring. Only selectively use ssh proxy.
Add NetworkName to gce.Config.
Add locking to uses of master.tunnels.
2015-06-05 14:55:16 -07:00
Brendan Burns 7ea533d871 Add the SSHTunnel transport to the kubelet client. 2015-06-05 14:55:15 -07:00
CJ Cullen de9a5f43bc Specify sshUser, sshKeyfile in kube-apiserver manifest.
Trim space on ssh key so GCE doesn't treat it as 2 lines.
A couple other minor fixes.
2015-06-05 14:55:15 -07:00
Brendan Burns 5115fd5703 Add key generation. 2015-06-05 14:55:15 -07:00
Justin Santa Barbara 48e8a8b0ec AWS: Set up security groups, to mirror GCE firewalling
Some slightly fussy code to enable load-balancers to talk to
instances, but otherwise relatively simple.
2015-06-05 16:10:08 -04:00
Justin Santa Barbara 33a3d884f2 AWS: Filter by Cluster tag, rationalize EC2 abstraction
Whenever we do a list we now filter on tags so we only see resources relating
to our cluster.

Also, rationalize all the DescribeX calls:
 * They all take a request object (so that we can pass filters)
 * They do paging if that is required (and return the underlying resources)
 * They wrap any error with a "error while listing X: %v" message
2015-06-05 16:09:01 -04:00
Quinton Hoole f048d0dff7 Merge pull request #9105 from anguslees/openstack-provider
Openstack LB improvements
2015-06-05 12:06:12 -07:00
Angus Lees 75f49b331a Ignore "unspecified" externalIP during LB create
Previously we always passed `Address: externalIP.String()` while
creating a loadbalancer VIP.  This passed "0.0.0.0" when externalIP was
unspecified, effectively making it mandatory to specify an externalIP.

This change correctly leaves `Address` unspecified when externalIP is
unspecified (has a zero value).

(Thanks to @justinsb for the report)
2015-06-05 16:27:45 +10:00
Quinton Hoole b5251de193 Merge pull request #9261 from justinsb/aws_d2_instance_types
AWS: Add d2 instance types
2015-06-04 13:11:43 -07:00
Trevor Pounds 6eea271656 Guard against non AWS errors. 2015-06-04 10:33:36 -07:00
Justin Santa Barbara 41f52546bc AWS: Add d2 instance types
Another family of instance types, I think the next-gen of hs1
2015-06-04 12:57:33 -04:00
Trevor Pounds 7cdf573015 Update aws-sdk-go dependency from awslabs to aws. 2015-06-03 23:07:42 -07:00
Brian Grant f72fa67924 Revert "Use Node IP Address instead of Node.Name in minion.ResourceLocation." 2015-06-03 18:19:22 -07:00
Brian Grant d6d52b41c6 Merge pull request #9189 from justinsb/fix_9123
Avoid nil-pointer dereference panics in AWS
2015-06-03 12:34:34 -07:00
Justin Santa Barbara e3eb23f464 Avoid nil-pointer dereference panics in AWS
These were introduced because the new official AWS SDK uses *string
where the old library used strings.  We now use the helpers much
more (orEmpty and isNilOrEmpty).

Fixes #9123
2015-06-03 12:24:23 -04:00
Angus Lees 9394635cc0 Make EnsureTCPLoadBalancerDeleted idempotent
This change allows EnsureTCPLoadBalancerDeleted to be called repeatedly
to reattempt deleting objects that may have failed on a previous run.

Specifically, if the VIP is already deleted, then an attempt is made to
lookup the pool by name.  Returns success when both the VIP and pool are
not found.

Fixes #8352
2015-06-03 17:21:31 +10:00
feihujiang ebc8eab590 get Events to be logged 2015-06-03 15:05:07 +08:00
CJ Cullen 4e5d0da839 Use Node IP Address instead of Node.Name in minion.ResourceLocation.
Refactor GetNodeHostIP into pkg/util/node (instead of pkg/util to break import cycle).

Include internalIP in gce NodeAddresses. Remove NodeLegacyHostIP
2015-06-02 20:01:49 -07:00
Angus Lees 785a775777 Actually delete LBaaS monitors after disassociating
Partially addresses issue #8352
2015-06-02 15:25:51 +10:00
Angus Lees 6491922562 Catch 404 and return exists=false from GetTCPLoadBalancer
Previouly getVipByName treated 404 like any other unexpected error
return and passed it up the chain.  This caused the "if ErrNotFound then
exists=false" logic in GetTCPLoadBalancer to never fire.

This change teaches getVipByName to return ErrNotFound on a 404 server
response.
2015-06-02 15:25:40 +10:00
Eric Tune 8b498aee4a Merge pull request #8495 from gmarek/fix_ratelimit
Move evicting pods to separate thread to allow for correct ratelimitting.
2015-06-01 10:29:37 -07:00
gmarek 1490543d54 Move evicting pods to separate thread to allow for correct ratelimitting. 2015-06-01 11:39:20 +02:00
Justin Santa Barbara 1e99426d5b Support for AWS ELB 2015-05-29 18:53:35 -04:00
Justin Santa Barbara c741b8f3ae Pass ports as []*api.ServicePort into LoadBalancer provider
Because AWS needs the NodePort; this also paves the way for e.g. UDP balancing
2015-05-29 18:47:05 -04:00
Rohit Jnagal 9184ccf24d Merge pull request #8960 from erictune/nodectrlevent
Add event about Node when cannot assign CIDR.
2015-05-29 14:54:16 -07:00
Rohit Jnagal ae8bc2c47b Merge pull request #8887 from brendandburns/balancer
Add event generation when create/delete of balancers fails.
2015-05-29 13:32:11 -07:00
Prashanth B 6c209ec193 Revert "Revert "Wake up rcs when pods get DeletionFinalStateUnknown tombstones"" 2015-05-29 09:24:39 -07:00
Tim Hockin 32bb3ae8f1 Merge pull request #7775 from simon3z/cloud-provider-id
api: add the ProviderID attribute to NodeSpec
2015-05-28 15:54:00 -07:00
Tim Hockin 081ab3abac Merge pull request #8853 from caesarxuchao/HostToNodeName
update PodSpec.Host to PodSpec.NodeName
2015-05-28 15:50:12 -07:00
Tim Hockin 2cadd4c86e Merge pull request #8906 from justinsb/aws_volume_fixes
Fix AWS volumes
2015-05-28 15:30:33 -07:00
Eric Tune a271b306b0 Add event about Node when cannot assign CIDR. 2015-05-28 14:51:48 -07:00
Chao Xu 9c1153322e update PodSpec.Host to PodSpec.NodeName in /pkg/api/types.go and /pkg/api/v1beta3/types.go 2015-05-28 14:10:06 -07:00
Brendan Burns 9ccd349a7d Add event generation when create/delete of balancers fails. 2015-05-28 13:51:39 -07:00
Tim Hockin b69fad211e Revert "Wake up rcs when pods get DeletionFinalStateUnknown tombstones" 2015-05-28 10:23:55 -07:00
Federico Simoncelli 1a41082ca8 cloudprovider: vagrant InstanceID implementation
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-05-28 13:02:11 -04:00
Federico Simoncelli 154eccefe2 cloudprovider: openstack InstanceID implementation
Signed-off-by: Federico Simoncelli <fsimonce@redhat.com>
2015-05-28 13:02:11 -04:00
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