Commit Graph

195 Commits (73aee004acfa404ce1cf110ef2a672d6dfebf6ff)

Author SHA1 Message Date
Antoine Legrand a642931422
Merge pull request #3019 from holmsten/terraform-ops-worker-groups
[contrib/terraform/openstack] Add supplementary node groups
2018-08-16 16:06:53 +02:00
Sascha Marcel Schmidt 19e2868484
fix path to bootstrap tear down 2018-08-10 13:42:28 +02:00
wikiselev 53aee6dc24 fix glusterfs ppa and glusterfs server command name errors 2018-08-09 10:14:14 +01:00
Sascha Marcel Schmidt 9fba448053
recator to use kube module, finally fix race condition in storage tasks 2018-08-08 14:22:50 +02:00
Magnus Holm fcfe12437c contrib/terraform/terraform.py: fix for Ansible 2.6.2+, issue #3067 2018-08-07 15:22:14 +02:00
Simon Li d284961d47
Change heketi-tear-down to run on nodes instead of localhost delegate_to 2018-08-07 13:52:49 +02:00
Simon Li 8ac57201a7
Prefix heketi kubectl calls with {{ bin_dir }} 2018-08-07 13:48:16 +02:00
Rong Zhang 16bd0d2b5d
Merge pull request #2900 from drekle/configure_openstack_subnet_CIDR
Configure openstack subnet cidr
2018-08-07 17:27:01 +08:00
Rong Zhang 2c38e4e1ac
Merge pull request #3059 from okumin/fix-glusterfs-group_vars
Fix a broken symbolic link for group_vars
2018-08-07 16:55:32 +08:00
Rong Zhang 411d07a4f6
Merge pull request #3047 from rguichard/openstack-az-support
availability zones support for OpenStack
2018-08-07 16:51:41 +08:00
okumin a953f1ca8b Fix a broken symbolic link for group_vars 2018-08-04 23:49:06 +09:00
Rong Zhang 9172150966
Merge pull request #3044 from jerryrelmore/patch-4
Clarify etcd deployment script failure mechanism
2018-08-01 22:57:14 +08:00
rguichard c19643cee2 availability zones support for OpenStack
allow masters, nodes and gluster nodes (within each group) to be scheduled
on differents AZ.
2018-08-01 16:42:58 +02:00
Jerry Elmore 1385091768
Clarify etcd deployment script failure mechanism
Attempting to clarify the language surrounding the etcd node deployment script failure mechanism. I had this error when doing a new cluster deployment last night and, though it should have been, it wasn't immediately apparent to me what was causing the issue (since my default master node hostnames do not specify whether they are also acting as etcd replicas).
2018-07-31 15:15:49 -04:00
rguichard 1a38a9df88 add security groups for traffic to 30000-32767/tcp
This will make NodePort services work out of the box
2018-07-27 14:57:29 +02:00
Sascha Marcel Schmidt 2bd8fbb2dd
add missing templates 2018-07-25 16:46:12 +02:00
Sascha Marcel Schmidt 205ea33b10
"fix" race condition 2018-07-25 16:42:57 +02:00
Sascha Marcel Schmidt c42397d7db
run kubectl on one of the masters 2018-07-25 16:42:30 +02:00
Sascha Marcel Schmidt 306a6a751f
wait for job to complete 2018-07-08 13:16:25 +02:00
Sascha Marcel Schmidt 318c69350e
pin heketi image version 2018-07-08 13:15:54 +02:00
Sascha Marcel Schmidt 6d1804d8a4
also remove storage class 2018-07-05 14:19:18 +02:00
Sascha Marcel Schmidt ee67ece641
suppress unnecessary change 2018-07-05 14:18:27 +02:00
Rong Zhang 4d7426ec95 Fix terraform env Not effective (#2966)
Add TF_VAR_ to terraform env
2018-07-05 12:20:02 +03:00
Sascha Marcel Schmidt f703814561
add tear down playbook 2018-07-05 02:15:05 +02:00
Sascha Marcel Schmidt c39835628d
prevent some race conditions, increase over all time limits 2018-07-05 02:14:36 +02:00
Sascha Marcel Schmidt 1253725975
add necessary chdir 2018-07-04 19:31:25 +02:00
Sascha Marcel Schmidt f4c1d6a5d7
remove unnecessary check for existing artifact 2018-07-04 19:08:02 +02:00
Sascha Marcel Schmidt d7abdced05
fix typo 2018-07-04 18:58:45 +02:00
Sascha Marcel Schmidt 78aeef074e
add hint on how to install heketi-cli 2018-07-04 18:40:48 +02:00
Sascha Marcel Schmidt 0b7aa33bc2
add jmespath as requirement 2018-07-04 18:25:35 +02:00
Andreas Holmsten b900bd6e94
[contrib/terraform/openstack] Add supplementary node groups
* Add supplementary node groups

  To add additional ansible groups to the k8s nodes, such as
  `kube-ingress` for running ingress controller pods. Empty by default.
2018-06-28 16:46:20 +02:00
Sascha Marcel Schmidt 8e275ab2bd
change order and validation of bootstrap and rest tasks as well as
volumes
2018-06-27 12:30:14 +02:00
Sascha Marcel Schmidt b56f465145
fix creation of heketi volumes and storage provisioning validation 2018-06-27 10:12:23 +02:00
Sascha Marcel Schmidt 74cad6b811
pin versions of container images 2018-06-27 10:11:14 +02:00
Sascha Marcel Schmidt 8ef0cf771f
update link 2018-06-25 15:09:22 +02:00
Sascha Marcel Schmidt 9516170ce5
remove unnecessary become flag 2018-06-25 15:09:19 +02:00
Sascha Marcel Schmidt 5aefa847df
add fences 2018-06-25 15:09:16 +02:00
Sascha Marcel Schmidt 831ef7ea2c
add readme 2018-06-25 15:09:13 +02:00
Sascha Marcel Schmidt 9c7e30e4b4
add sample inventory 2018-06-25 15:09:03 +02:00
Sascha Marcel Schmidt 8c5bfc7718
add debian compatibility 2018-06-25 15:08:53 +02:00
Sascha Marcel Schmidt 61046a6923
move heketi playbook 2018-06-25 15:08:35 +02:00
Sascha Marcel Schmidt 9d2fabc9b9
add heketi/glusterfs as additional contributional network storage 2018-06-25 15:08:18 +02:00
Derek Lemon 27d62941b2 Add the subnet_cidr as a required argument to the network module 2018-06-14 17:41:58 +00:00
Derek Lemon ab345c5f69 Change was not picked up 2018-06-14 17:31:04 +00:00
Derek Lemon a06f641b6c Configurable openstack subnet cidr 2018-06-14 16:40:32 +00:00
hvle a2a26755fe docs(azure cli): update links
install and login links
2018-06-07 07:10:33 +02:00
Paul Montero 3f1887316b
Set widely used header for python for different OS 2018-05-17 17:00:49 -05:00
Giri Kuncoro 3a1f6810b7 Remove loadbalancer_apiserver binding on readme 2018-05-08 14:55:52 +05:30
Giri Kuncoro 0fb017b9c1 Rename ansible user env vars 2018-05-02 14:07:54 +07:00
Pablo Moreno df6c5b28a1 [contrib/terraform/openstack] Backward compatibility changes (#2539)
* [terraform/openstack] Restores ability to use existing public nodes and masters as bastion.

* [terraform/openstack] Uses network_id as output

* [terraform/openstack] Fixes link to inventory/local/group_vars

* [terraform/openstack] Adds supplementary master groups

* [terraform/openstack] Updates documentation avoiding manual setups for bastion (as they are not needed now).

* [terraform/openstack] Supplementary master groups in docs.

* [terraform/openstack] Fixes repeated usage of master fips instead of bastion fips

* [terraform/openstack] Missing change for network_id to subnet_id

* [terraform/openstack] Changes conditional to element( concat ) form to avoid type issues with empty lists.
2018-04-30 18:11:07 +03:00
avoidik 26caad4f12 Allow ansible_ssh_private_key_file for Openstack 2018-03-31 02:38:01 +03:00
Andreas Krüger 7e58b96328
Merge pull request #2525 from avoidik/openstack_subnet_fix
Return subnet_id as defined in kubespray.tf
2018-03-30 13:42:12 +02:00
avoidik 076b5c153f Return subnet_id as defined in kubespray.tf 2018-03-27 11:13:36 +03:00
dvazar 9511178666 fixed: creation of an inventory template 2018-03-26 12:00:02 +07:00
Spencer Smith 2132ec0269
Merge pull request #2378 from dleske/reorg-inventory-for-opst
Update OpenStack contrib to use per-cluster inventory layout
2018-03-09 15:21:21 -05:00
RongZhang dada98143c Fix kubespary rpm spec file some requires (#2417)
Fix kubespary rpm spec file some requires
2018-03-05 13:53:51 +03:00
brant 739f6c78ad remove [calico-rr] 2018-03-02 15:41:04 +08:00
brant 40d72d1865 added [calico-rr] 2018-03-02 13:48:11 +08:00
Drew Leske b6698e686a
Update README.md with minor fixes/clarifications 2018-02-23 16:54:13 -08:00
Drew Leske 66bd570584
Update README.md with minor fixes and cleanup 2018-02-23 15:05:29 -08:00
Drew Leske e2c5a3895b Rename sample inventory directory to be less awkward 2018-02-23 14:39:31 -08:00
Drew Leske fe719c1bc1 Update OpenStack contrib to use per-cluster inventory layout
Supports Kubespray workspace with multiple OpenStack-deployed k8s
clusters.

* Create sample inventory directory for template
* Moved broken `group_vars` symlink to sample directory
* Created sample cluster Terraform file
* Updated documentation
2018-02-23 12:08:45 -08:00
Drew Leske 89fe6505f9 Correct use of deprecated argument to TF/OpenStack module
https://www.terraform.io/docs/providers/openstack/r/networking_router_v2.html#external_gateway
2018-02-22 22:41:19 -08:00
Aivars Sterns bfe196236f
Merge pull request #2033 from ArchiFleKs/terraform-fix-cred
Update Terraform docs and authentication method
2018-02-21 12:16:24 +02:00
Wong Hoi Sing Edison 4a36b091f4 Update default CONFIG_FILE for contrib/inventory_builder/inventory.py 2018-02-12 18:01:56 +08:00
Wong Hoi Sing Edison 1a1d154e14 Support multiple inventory files under individual inventory directory 2018-02-08 08:08:15 +08:00
Bogdan Dobrelya c116b8022e
Update rpm spec and pbr setup configs (#2170)
* Update rpm spec and pbr setup configs

* Rename package to kubespray
* Do not break Fedora's FHS and install to /usr/share instead
* Remove the vendor tag
* Update source0 for better artifacts' names
* Fix missing files build errors
* Make version/release to auto match from git and fit PEP 440

Co-authored-by: Matthias Runge <mrunge@redhat.com>
Signed-off-by: Bogdan Dobrelya <bogdando@mail.ru>

* Add package paths to roles search in ansible conf

Signed-off-by: Bogdan Dobrelya <bogdando@mail.ru>

* Poke jinja2 requirements in rpm spec file

Signed-off-by: Bogdan Dobrelya <bogdando@mail.ru>
2018-01-18 16:22:37 +01:00
ArchiFleKs 20779df686 remove kube-node from master node by default 2018-01-17 19:02:02 +01:00
ArchiFleKs ba7b1d74d0 remove user_data which may mess up /etc/hosts 2018-01-17 14:29:23 +01:00
Ronald Rivera 88f9e25f76 Updated with correct syntax to access default_tags variable. 2018-01-07 15:39:58 +00:00
ArchiFleKs 74fd975b57 run terraform FMT for readability 2018-01-05 12:09:04 +01:00
ArchiFleKs 6eb6e806e7 Update Terraform docs and authentication method
Hardcoded variables are removed from variables.tf file because it might
not be suitable for all OpenStack Cloud depending on Identity API
version available (between v2 or v3) and preferred authentication
method.
2018-01-05 11:25:37 +01:00
ArchiFleKs 5e3fd2253f Change OpenStack inventory to python2
For distribution who ship python3 as default python, it breaks the
inventory script as it is not compatible with python3.
2017-12-11 14:25:05 +01:00
BenGalewsky 591ae700ce Update OpenStack Terraform: Modules, Bastions, and New Floating IP config (#1958)
* Adding bastion and private network provisioning for openstack terraform

* Remove usage of floating-ip property

* Combine openstack instances + floating ips

* Fix relating floating IPs to hosts for openstack builds

* Tighten up security groups

Allow ssh into all instances with floating IP

* Add the gluster hosts to the no-floating group

* Break terraform into modules

* Update README and var descriptions to match current config

* Remove volume property in gluster compute def

* Include cluster name in internal network and router names

* Make dns_nameservers a variable
2017-12-05 12:48:47 +00:00
Jan Jungnickel 8766b36144 Make path to generated inventory configurable 2017-12-04 16:41:35 +01:00
Jan Jungnickel b3745f2614 contrib/terraform/aws: Tag instances and remove loadbalancer ip (#2023)
* Properly tag instances and subnets with `kubernetes.io/cluster/$cluster_name`

This is required by kubernetes to support multiple clusters in a single vpc/az

* Get rid of loadbalancer_apiserver_address as it is no longer needed
2017-12-04 14:31:46 +00:00
Jean-Marie F ca8a9c600a Terraform - Remove the need for region specific reference data (#1962)
* Dynamically retrieve aws_bastion_ami latest reference by querying AWS rather than hard coded

* Dynamically retrieve the list of availability_zones instead of needing to have them hard coded

* Limit availability zones to first 2, using slice extrapolation function

* Replace the need for hardcoded variable "aws_cluster_ami" by the data provided by Terraform

* Move ami choosing to vars, so people don't need to edit create infrastructure if they want another vendor image (as suggested by @atoms)

* Make name of the data block agnostic of distribution, given there are more than one distribution supported

* Add documentation about other distros being supported and what to change in which location to make these changes
2017-11-30 15:27:52 +00:00
Aivars Sterns e6c88db0a0 change how terraform generates apiserver variables (#1922) 2017-11-02 12:26:11 +00:00
Aivars Sterns 84cf6fbe83 change ssh_args/bastion configuration (#1883) 2017-10-27 12:18:39 +01:00
Simon Li 74d54946bf Add note that glusterfs is not automatically deployed (#1834) 2017-10-18 13:26:14 +01:00
Aivars Sterns 7ef1e1ef9d update terraform, fix deprecated values add default_tags, fix ansible inventory (#1821) 2017-10-18 11:44:32 +01:00
Pablo Moreno 5fb6b2eaf7 [contrib/network-storage/glusterfs] adds service for glusterfs endpoint (#1800) 2017-10-16 08:48:29 +01:00
Pablo Moreno 404caa111a [contrib/network-storage/glusterfs] bootstrap for glusterfs nodes (#1799) 2017-10-16 08:23:38 +01:00
Pablo Moreno c819238da9 Adds support for separate etcd machines on terraform/openstack deployment (#1674) 2017-09-27 10:59:09 +01:00
Tennis Smith a47aaae078 Add bastion host definitions (#1621)
* Add comment line and documentation for bastion host usage

* Take out unneeded sudo parm

* Remove blank lines

* revert changes

* take out disabling of strict host checking
2017-09-07 23:26:52 +03:00
Tennis Smith 35d48cc88c Point apiserver address to 0.0.0.0 (#1617)
* Point apiserver address to 0.0.0.0
Added loadbalancer api server address
* Update documentation
2017-09-05 18:41:47 +03:00
Yorgos Saslis 82eedbd622 Update ansible inventory file when template changes (#1612)
This trigger ensures the inventory file is kept up-to-date. Otherwise, if the file exists and you've made changes to your terraform-managed infra without having deleted the file, it would never get updated. 

For example, consider the case where you've destroyed and re-applied the terraform resources, none of the IPs would get updated, so ansible would be trying to connect to the old ones.
2017-09-05 14:10:53 +03:00
Bogdan Dobrelya 1b3ced152b Merge pull request #1544 from bogdando/rpm_spec
[WIP] Support pbr builds and prepare for RPM packaging as the ansible-kubespray artifact
2017-08-21 09:13:59 +02:00
Abdelsalam Abbas 01a130273f fix issues with if condition (#1537) 2017-08-20 13:55:13 +03:00
Bogdan Dobrelya 48edf1757b Adjust the rpm spec data
Signed-off-by: Bogdan Dobrelya <bogdando@mail.ru>
2017-08-18 14:09:55 +02:00
Matthew Mosesohn 2645e88b0c Fix vault setup partially (#1531)
This does not address per-node certs and scheduler/proxy/controller-manager
component certs which are now required. This should be handled in a
follow-up patch.
2017-08-18 15:09:45 +03:00
Bogdan Dobrelya db121049b3 Move the spec file
Signed-off-by: Bogdan Dobrelya <bogdando@mail.ru>
2017-08-18 13:59:27 +02:00
Bogdan Dobrelya 4ee77ce026 Add an RPM spec file and customize ansible roles_path
Install roles under /usr/local/share/kubespray/roles,
playbooks - /usr/local/share/kubespray/playbooks/,
ansible.cfg and inventory group vars - into /etc/kubespray.
Ship README and an example inventory as the package docs.
Update the ansible.cfg to consume the roles from the given path,
including virtualenvs prefix, if defined.

Signed-off-by: Bogdan Dobrelya <bogdando@mail.ru>
2017-08-18 11:54:20 +02:00
Abdelsalam Abbas fee3f288c0 update azure contrib to use azure cli 2.0 2017-08-11 20:13:02 +02:00
Brad Beam b0a28b1e80 Merge pull request #1462 from Abdelsalam-Abbas/azure_vars
Add more variables for more clarity
2017-08-10 08:29:09 -05:00
Alexander Chumakov 03572d175f [terraform/openstack] fixed mistake in README.md 2017-07-26 17:42:44 +03:00
Abdelsalam Abbas d6aeb767a0 Add more azure variables for more clarity 2017-07-20 15:29:27 +02:00
Spencer Smith a9f318d523 Merge pull request #1424 from Abdelsalam-Abbas/fix_azure_https_ports
fix azure kubernetes port to 6443
2017-07-11 08:55:30 -04:00
Alexander Chumakov f3165a716a Add more config to README.md
Add resolvconf_mode and cloud_provider config description to README.md
2017-07-11 12:46:19 +03:00
Abdelsalam Abbas ecaa7dad49 add a variable for kube_apiserver at all 2017-07-10 20:16:02 +02:00