
Implement basic cloud provider functionality to deploy Kubernetes on Azure. SaltStack is used to deploy Kubernetes on top of Ubuntu virtual machines. OpenVpn provides network connectivity. For kubelet authentication, we use basic authentication (username and password). The scripts use the legacy Azure Service Management APIs. We have set up a nightly test job in our Jenkins server for federated testing to run the e2e test suite on Azure. With the cloud provider scripts in this commit, 14 e2e test cases pass in this environment. We plan to implement additional Azure functionality to support more test cases.
65 lines
1.2 KiB
Plaintext
65 lines
1.2 KiB
Plaintext
nginx:
|
|
pkg:
|
|
- installed
|
|
|
|
/etc/nginx/nginx.conf:
|
|
file:
|
|
- managed
|
|
- source: salt://nginx/nginx.conf
|
|
- template: jinja
|
|
- user: root
|
|
- group: root
|
|
- mode: 644
|
|
|
|
/etc/nginx/sites-enabled/default:
|
|
file:
|
|
- managed
|
|
- makedirs: true
|
|
- source: salt://nginx/kubernetes-site
|
|
- user: root
|
|
- group: root
|
|
- mode: 644
|
|
|
|
/usr/share/nginx/htpasswd:
|
|
file:
|
|
- managed
|
|
- source: salt://nginx/htpasswd
|
|
- user: root
|
|
- group: root
|
|
- mode: 644
|
|
|
|
{% if grains.cloud is defined and grains.cloud in ['gce'] %}
|
|
/etc/kubernetes/manifests/nginx.json:
|
|
file:
|
|
- managed
|
|
- source: salt://nginx/nginx.json
|
|
- user: root
|
|
- group: root
|
|
- mode: 644
|
|
- require:
|
|
- file: /etc/nginx/nginx.conf
|
|
- file: /etc/nginx/sites-enabled/default
|
|
- file: /usr/share/nginx/htpasswd
|
|
- cmd: kubernetes-cert
|
|
|
|
|
|
#stop legacy nginx_service
|
|
stop_nginx-service:
|
|
service.dead:
|
|
- name: nginx
|
|
- enable: None
|
|
|
|
{% else %}
|
|
nginx-service:
|
|
service:
|
|
- running
|
|
- name: nginx
|
|
- watch:
|
|
- pkg: nginx
|
|
- file: /etc/nginx/nginx.conf
|
|
- file: /etc/nginx/sites-enabled/default
|
|
- file: /usr/share/nginx/htpasswd
|
|
- cmd: kubernetes-cert
|
|
{% endif %}
|
|
|