Browse Source

temp

pull/7/head
fedy95 4 years ago
parent
commit
c9f156822b
  1. 11
      Makefile
  2. 2
      README.md
  3. 0
      inventory/hosts
  4. 5
      playbooks/docker-units/init.yml
  5. 18
      playbooks/k8s/init.yml
  6. 9
      roles/common/tasks/main.yml
  7. 48
      roles/k8s/tasks/01_prepare.yml
  8. 31
      roles/k8s/tasks/main.yml
  9. 3
      roles/k8s/vars/main.yml
  10. 3
      roles/kube-dependencies/vars/main.yml

11
Makefile

@ -10,18 +10,17 @@ LINT-YAML-CMD=docker run --rm -it -v $(PWD):/data ${REGISTRY}/${YAMLLINT_TAG}
lint-yaml:
docker pull ${REGISTRY}/${YAMLLINT_TAG}
$(LINT-YAML-CMD) group_vars/all.yml
$(LINT-YAML-CMD) playbooks/ansible-desktop.yml
$(LINT-YAML-CMD) roles/common/tasks/main.yml
$(LINT-YAML-CMD) roles/docker/defaults/main.yml
$(LINT-YAML-CMD) roles/docker/handlers/main.yml
$(LINT-YAML-CMD) roles/docker/tasks/docker.yml
$(LINT-YAML-CMD) roles/docker/tasks/docker-compose.yml
$(LINT-YAML-CMD) roles/docker/tasks/main.yml
$(LINT-YAML-CMD) roles/docker/vars/main.yml
$(LINT-YAML-CMD) roles/docker-compose/tasks/main.yml
$(LINT-YAML-CMD) roles/docker-compose/vars/main.yml
$(LINT-YAML-CMD) .drone.yml
$(LINT-YAML-CMD) ansible-desktop.yml
run:
ansible-playbook ansible-desktop.yml -i hosts --ask-become-pass
docker-units-init:
ansible-playbook playbooks/docker-units/init.yml -i inventory/hosts --ask-become-pass
ping:
ansible -i hosts all -m ping

2
README.md

@ -4,6 +4,8 @@
### docs
- [ansible](https://www.ansible.com/)
- https://github.com/IBM/ansible-kubernetes-ha-cluster
- https://www.linuxsysadmins.com/install-kubernetes-cluster-with-ansible/
### how to run
- see Makefile

0
hosts → inventory/hosts

5
ansible-desktop.yml → playbooks/docker-units/init.yml

@ -5,9 +5,4 @@
- { role: common, become: true }
- { role: docker, become: true }
- { role: docker-compose, become: true }
- name: k8s playbook
hosts: docker-units
roles:
- { role: common, become: true }
...

18
playbooks/k8s/init.yml

@ -0,0 +1,18 @@
---
- name: k8s-units playbook
hosts: k8s
roles:
- { role: common, become: true }
- { role: docker, become: true }
- { role: k8s, become: true }
- name: k8s playbook
hosts: k8s-master
roles:
- { role: common, become: true }
- name: k8s playbook
hosts: k8s-worker
roles:
- { role: common, become: true }
...

9
roles/common/tasks/main.yml

@ -26,13 +26,4 @@
- name: Upgrade installed packages
apt: upgrade=yes
- name: Disable all swaps from /proc/swaps
shell: |
swapoff --all
- name: Disable SWAP in fstab
lineinfile:
path: /etc/fstab
regexp: 'swap'
state: absent
...

48
roles/k8s/tasks/01_prepare.yml

@ -0,0 +1,48 @@
---
- hosts: k8s
- name: Disable all swaps from /proc/swaps
shell: |
swapoff --all
- name: Disable SWAP in fstab
lineinfile:
path: /etc/fstab
regexp: 'swap'
state: absent
- name: Add Google GPG key
apt_key:
url: https://packages.cloud.google.com/apt/doc/apt-key.gpg
state: present
- name: Add Kubernetes' APT repository
apt_repository:
repo: deb http://apt.kubernetes.io/ kubernetes-xenial main
state: present
filename: 'kubernetes'
mode: 0600
- name: Installing Kubernetes Cluster Packages
apt:
name: "{{ item }}"
state: present
cache_valid_time: "{{ aptcachetime }}"
with_items:
- kubelet-{{kubelet_version}}
- kubeadm
- kubectl
loop: [ 'kubeadm', 'kubectl', 'kubelet' ]
- name: Enable service kubelet persistently
service:
name: kubelet
enabled: yes
# TODO ???
# - name: Reboot all the kubernetes nodes.
# reboot:
# post_reboot_delay: 10
# reboot_timeout: 40
# connect_timeout: 60
# test_command: uptime
...

31
roles/kube-dependencies/tasks/main.yml → roles/k8s/tasks/main.yml

@ -1,26 +1,3 @@
- hosts: k8s
- name: add Kubernetes apt-key
apt_key:
url: https://packages.cloud.google.com/apt/doc/apt-key.gpg
state: present
- name: add Kubernetes' APT repository
apt_repository:
repo: deb http://apt.kubernetes.io/ kubernetes-xenial main
state: present
filename: 'kubernetes'
- name: install kubelet
apt:
name: kubelet={{ kube_version }}
state: present
update_cache: true
- name: install kubeadm
apt:
name: kubeadm={{ kube_version }}
state: present
- hosts: k8s-master
become: yes
tasks:
@ -37,8 +14,6 @@
creates: cluster_initialized.txt
- name: create .kube directory
become: yes
become_user: ubuntu
file:
path: $HOME/.kube
state: directory
@ -47,13 +22,11 @@
- name: copy admin.conf to user's kube config
copy:
src: /etc/kubernetes/admin.conf
dest: /home/ubuntu/.kube/config
dest: $HOME/.kube/config
remote_src: yes
owner: ubuntu
owner: fedy95
- name: install Pod network
become: yes
become_user: ubuntu
shell: kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/a70459be0084506e4ec919aa1c114638878db11b/Documentation/kube-flannel.yml >> pod_network_setup.txt
args:
chdir: $HOME

3
roles/k8s/vars/main.yml

@ -0,0 +1,3 @@
---
kubelet_version: "1.14.0-00"
...

3
roles/kube-dependencies/vars/main.yml

@ -1,3 +0,0 @@
---
kube_version: "1.14.0-00"
...