169 Commits

Author SHA1 Message Date
robbiezhang
10cf53cc9c Use a hash of the subnetID instead of virtual node name to avoid conflict 2018-10-16 20:31:39 +00:00
robbiezhang
c193fbe3c0 Remove the validation on the Subnet IP Configuration Profile
NRP used to add a profile entry when a service association link is added to the subnet

Now, the profile entry is added when a network profile is created

This breaks the current validation
2018-10-16 19:52:23 +00:00
robbiezhang
eb77d5686f Update the network sdk and add more validations 2018-10-13 00:16:19 +00:00
Brian Goff
d710e0391c Merge pull request #369 from robbiezhang/master
Update kubernetes projects version in vendor to 1.12.1
2018-10-11 10:06:20 -07:00
Robbie Zhang
8a5d5b670f Make the metrics test more robust in multi-container case 2018-10-10 18:43:37 -07:00
Robbie Zhang
05595835f1 Make default waiting reason to be Creating (#372) 2018-10-10 10:40:41 -07:00
Robbie Zhang
1d5c1a4d26 Merge branch 'master' into master 2018-10-09 12:32:07 -07:00
shidao-ytt
e6aa80d2c4 Add secret volume (#370)
* add secret volume implement with config map

Signed-off-by: xianwei.zw <xianwei.zw@alibaba-inc.com>
Signed-off-by: shidao-ytt <shidao.ytt@alibaba-inc.com>

* add request log for CreateContainerGroup
2018-10-09 12:30:18 -07:00
robbiezhang
5a00c27b9c Update kubernetes projects version in vendor to 1.12.1 2018-10-06 00:53:39 +00:00
Brian Goff
8e29415bf7 Convert errors to OC status 2018-09-26 13:48:40 -07:00
Brian Goff
682b2bccf8 Add support for tracing via OpenCencus
This adds a few flags for configuring the tracer.
Includes support for jaeger tracing (built into OC).
2018-09-26 13:48:40 -07:00
shidao-ytt
43d32d2301 update Alibaba Cloud ECI Docs (#362) 2018-09-26 13:21:33 -07:00
Brian Goff
083f6dee05 Refactor provider init (#360)
* Refactor provider init

This moves provider init out of vkubelet setup, instead preferring to
initialize vkubelet with a provider.

* Split API server configuration from setup.

This makes sure that configuration (which is done primarily through env
vars) is separate from actually standing up the servers.

This also makes sure to abort daemon initialization if the API servers
are not able to start.
2018-09-26 13:18:02 -07:00
shidao-ytt
7faf07dcc2 Add Alibaba Cloud ECI Documents
Alibaba Cloud ECI(Elastic Container Instance) is a service that allow you
run containers without having to manage servers or clusters.

This commit add ECI documents for virtual kubelet.

Signed-off-by: xianwei.zw <xianwei.zw@alibaba-inc.com>
Signed-off-by: shidao.ytt <shidao.ytt@alibaba-inc.com>
2018-09-23 23:29:06 +08:00
shidao-ytt
e9d17c23d3 Add Alibaba Cloud ECI Provider
Alibaba Cloud ECI(Elastic Container Instance) is a service that allow you
run containers without having to manage servers or clusters.

This commit add ECI provider for virtual kubelet, connects ECI with
kubernetes cluster.

Signed-off-by: xianwei.zw <xianwei.zw@alibaba-inc.com>
Signed-off-by: shidao.ytt <shidao.ytt@alibaba-inc.com>
2018-09-23 23:29:06 +08:00
shidao-ytt
101baecc86 Add Alibaba Cloud ECI SDK
Alibaba Cloud ECI(Elastic Container Instance) is a service that allow you
run containers without having to manage servers or clusters.

This commit add ECI sdk for virtual kubelet.

Signed-off-by: xianwei.zw <xianwei.zw@alibaba-inc.com>
Signed-off-by: shidao.ytt <shidao.ytt@alibaba-inc.com>
2018-09-23 23:29:06 +08:00
Brian Goff
74840defdf Fix NPE panic in ACI client
resp is nil when `Do()` has an error.

Also seems there was some gofmt issues in the file.
2018-09-19 18:18:24 -07:00
Ria Bhatia
b8d0b6eb03 Azure readme work arounds (#346)
* workarounds for errors

* cleaned up
2018-09-18 16:03:30 -07:00
Brian Goff
8091b089a2 Plumb context to providers 2018-09-13 13:49:26 -07:00
robbiezhang
0f54e1ed9c Bug fixes 2018-09-07 18:46:49 -07:00
robbiezhang
8d883dcecd Change default CPU limit to 800 2018-09-07 18:46:49 -07:00
robbiezhang
1ee8847bbe Fix the pod uuid 2018-09-07 18:46:49 -07:00
robbiezhang
df90c71875 Add unit tests 2018-09-07 18:46:49 -07:00
robbiezhang
844d8a71d0 Add LogType and Metadata for Log Analytics 2018-09-07 18:46:49 -07:00
robbiezhang
b41c1fee1a fix the extensions 2018-09-07 18:46:49 -07:00
Robbie Zhang
a0fb67f2c0 Add validation 2018-09-07 18:46:49 -07:00
Robbie Zhang
a8acef31ff Fix unit test 2018-09-07 18:46:49 -07:00
Robbie Zhang
169e733adb Adopt ACI Extension and DNSConfig 2018-09-07 18:46:49 -07:00
Robbie Zhang
3ef512349b Update the network api version (#338) 2018-09-07 18:46:49 -07:00
robbiezhang
c0af40bdbd Update the kube-proxy command 2018-09-07 18:46:49 -07:00
robbiezhang
e445f9235c Update the kube-proxy image and command 2018-09-07 18:46:49 -07:00
Robbie Zhang
24ee86f1bb Merge from master (#328)
* Add default provider taint and taint configuration options

This allows for more specificity when setting taint tolerations for
workloads. Three new env variables are introduced:

VKUBELET_TAINT_KEY (defaults to `virtual-kubelet.io/provider`)
VKUBELET_TAINT_VALUE (defaults to provider name)
VKUBELET_TAINT_EFFECT (defaults to `NoSchedule`)

BREAKING CHANGES:
- The default taint key of `azure.com/aci` is now
  `virtual-kubelet.io/provider`.
- Specifying a custom taint key is now done via an environment variable
  rather than the `--taint` command line flag.

* Add back deprecated taint flag

TODO: Revert this commit

Related to #316

* Add darwin tag to not build for osx

* Darwin specific lookup file without cri and vic

* Fix chart notes template (#317)

Values were moved from env to top level.

* If --taint is specified, set the taint value to empty (#322)

Add the old tolerations the examples to make it backward compatible during the switch

* Use standard logging package (#323)

* Update kubelet vendor to pull in stats API

* Add errgroup dep which will be used for ACI stats

* Add supports for stats in ACI provider

This adds a new, optional, interface for providers that want to provide
stats.

* Don't use globals for API server

Refactors how HTTP servers are started and binds them to objects that
can store the provider rather than relying on a global.

* Fix merge conflict

* Fix couple errors
2018-09-07 18:46:49 -07:00
Robbie Zhang
b364af21ea Add the Kube-Proxy Side Car Container and Volume to the container group (#292)
* Add Kube-Proxy Side Car Container

* Add the Kube-Proxy Side Car Container

* Add test

* Bug fix
2018-09-07 18:46:49 -07:00
Robbie Zhang
bac3a585da Fix several bugs in the VNET (#287)
* Add more support regions

* Add kube-proxy sidecar container

* Kube-proxy

* Fix several bugs

* indent
2018-09-07 18:46:49 -07:00
Jeremy Rickard
f3578bfc9b Adding network policy reference (#269) 2018-09-07 18:46:49 -07:00
Brian Goff
25e454d18f Add API client for Azure custom vnet (#271)
* Update vendor for azure vent support

* Add support for Azure custom vnets.

Use pointers intead of values. This allows the client to pass back
returned data from Azure.
2018-09-07 18:46:49 -07:00
Jeremy Rickard
36eb3db8a9 Adding network policy reference (#269) 2018-09-07 18:46:49 -07:00
Don Bowman
12700633b1 Move 'az provider register' to 'Configure your Azure account' section. (#339)
Regardless of whether you use the quick-start or the manual setup,
you need to run:
`az provider register --namespace 'Microsoft.ContainerInstance'`
on your account. Move up from the 'Manual' section.
2018-09-05 15:09:18 -07:00
Robbie Zhang
55bc0c3f75 Add ContainerID into the ContainerStatus (#337) 2018-08-27 15:38:14 -07:00
Robbie Zhang
b019ec5549 Bug Fixes (#329) 2018-08-27 11:53:59 -07:00
Ria Bhatia
7442189e77 adding the taint format (#334)
adding the new taint format
2018-08-23 14:09:06 -07:00
Brian Goff
e8abca0ac9 Add supports for stats in ACI provider
This adds a new, optional, interface for providers that want to provide
stats.
2018-08-17 17:03:25 -07:00
Brian Goff
1e774a32b3 Use standard logging package (#323) 2018-08-17 16:50:24 -07:00
Jacob LeGrone
d47a0b2fc0 Add default provider taint and taint configuration options
This allows for more specificity when setting taint tolerations for
workloads. Three new env variables are introduced:

VKUBELET_TAINT_KEY (defaults to `virtual-kubelet.io/provider`)
VKUBELET_TAINT_VALUE (defaults to provider name)
VKUBELET_TAINT_EFFECT (defaults to `NoSchedule`)

BREAKING CHANGES:
- The default taint key of `azure.com/aci` is now
  `virtual-kubelet.io/provider`.
- Specifying a custom taint key is now done via an environment variable
  rather than the `--taint` command line flag.
2018-08-14 17:09:44 -07:00
Ameer Deen
9f07768875 Added centralus, eastus2, australiaeast to Azure ACI provide (#310)
* Added centralus, eastus2,  australiaeast to match valid aci regions as [documented](https://azure.microsoft.com/en-gb/global-infrastructure/services/)

* Added ',' to end of array

* Trigger build
2018-08-13 10:27:57 -07:00
Jeremy Rickard
4b3e71ff39 Merge branch 'master' into patch-1 2018-08-07 10:46:45 -06:00
Jeremy Rickard
0929376f9c Merge branch 'master' into patch-1 2018-08-07 08:51:41 -06:00
Jacob LeGrone
c61687bae0 Update installation instructions 2018-08-06 16:03:34 -04:00
Jacob LeGrone
7391e44b48 Consolidate helm charts
CHANGES:
- Added an appVersion and icon to helm Chart.yaml
- Refactored to use `required` in chart manifests rather than
  outputting an error message in notes
- Namespaced `name` and `fullname` template partials to `vk`
- Enabled rbac apiVersion configuration
- Removed role-binding and service-account suffixes from resource
  names
- Fixed bug where virtual-kubelet service account would not be
  bound to cluster role if chart was installed outside the default
  namespace
- Removed hardcoded `azure` provider

BREAKING CHANGES:
- Virtual-Kubelet specific values previously nested under `env` are
  now declared at the top level of the values file.
- Azure provider configuration values previously nested under `env`
  are now at `providers.azure`
2018-08-06 16:03:33 -04:00
Jeremy Rickard
a1677ce5e0 Update ACI provider to handle empty environment variables (#297) 2018-08-06 10:55:40 -07:00