From 91b2ee46b2124a7c07fe4846a5af6283951a0387 Mon Sep 17 00:00:00 2001 From: dotbalo Date: Fri, 12 Jul 2019 10:18:02 +0800 Subject: [PATCH 01/16] Update README.md --- README.md | 1113 +---------------------------------------------------- 1 file changed, 1 insertion(+), 1112 deletions(-) diff --git a/README.md b/README.md index 5f6fd48..eea5e02 100644 --- a/README.md +++ b/README.md @@ -1,1117 +1,6 @@ ``` - 安装过程请:https://www.cnblogs.com/dukuan/p/9856269.html + 安装过程:https://www.cnblogs.com/dukuan/p/9856269.html ``` -# kubeadm-highavailiability - kubernetes high availiability deployment based on kubeadm, for Kubernetes version v1.11.x/v1.9.x/v1.7.x/v1.6.x -![k8s logo](images/Kubernetes.png) - -- [中文文档(for v1.11.x版本)](README_CN.md) -- [English document(for v1.11.x version)](README.md) -- [中文文档(for v1.9.x版本)](v1.9/README_CN.md) -- [English document(for v1.9.x version)](v1.9/README.md) -- [中文文档(for v1.7.x版本)](v1.7/README_CN.md) -- [English document(for v1.7.x version)](v1.7/README.md) -- [中文文档(for v1.6.x版本)](v1.6/README_CN.md) -- [English document(for v1.6.x version)](v1.6/README.md) - ---- - -- [GitHub project URL](https://github.com/cookeem/kubeadm-ha/) -- [OSChina project URL](https://git.oschina.net/cookeem/kubeadm-ha/) - ---- - -- This operation instruction is for version v1.11.x kubernetes cluster - -> v1.11.x version now support deploy tls etcd cluster in control plane - -### category - -1. [deployment architecture](#deployment-architecture) - 1. [deployment architecture summary](#deployment-architecture-summary) - 1. [detail deployment architecture](#detail-deployment-architecture) - 1. [hosts list](#hosts-list) -1. [prerequisites](#prerequisites) - 1. [version info](#version-info) - 1. [required docker images](#required-docker-images) - 1. [system configuration](#system-configuration) -1. [kubernetes installation](#kubernetes-installation) - 1. [firewalld and iptables settings](#firewalld-and-iptables-settings) - 1. [kubernetes and related services installation](#kubernetes-and-related-services-installation) - 1. [master hosts mutual trust](#master-hosts-mutual-trust) -1. [masters high availiability installation](#masters-high-availiability-installation) - 1. [create configuration files](#create-configuration-files) - 1. [kubeadm initialization](#kubeadm-initialization) - 1. [high availiability configuration](#high-availiability-configuration) -1. [masters load balance settings](#masters-load-balance-settings) - 1. [keepalived installation](#keepalived-installation) - 1. [nginx load balance settings](#nginx-load-balance-settings) - 1. [kube-proxy HA settings](#kube-proxy-ha-settings) - 1. [high availiability verify](#high-availiability-verify) - 1. [kubernetes addons installation](#kubernetes-addons-installation) -1. [workers join kubernetes cluster](#workers-join-kubernetes-cluster) - 1. [workers join HA cluster](#workers-join-ha-cluster) -1. [verify kubernetes cluster installation](#verify-kubernetes-cluster-installation) - 1. [verify kubernetes cluster high availiablity installation](#verify-kubernetes-cluster-high-availiablity-installation) - -### deployment architecture - -#### deployment architecture summary - -![ha logo](images/ha.png) - ---- -[category](#category) - -#### detail deployment architecture - -![k8s ha](images/k8s-ha.png) - -- kubernetes components: - -> kube-apiserver: exposes the Kubernetes API. It is the front-end for the Kubernetes control plane. It is designed to scale horizontally – that is, it scales by deploying more instances. -> etcd: is used as Kubernetes’ backing store. All cluster data is stored here. Always have a backup plan for etcd’s data for your Kubernetes cluster. -> kube-scheduler: watches newly created pods that have no node assigned, and selects a node for them to run on. -> kube-controller-manager: runs controllers, which are the background threads that handle routine tasks in the cluster. Logically, each controller is a separate process, but to reduce complexity, they are all compiled into a single binary and run in a single process. -> kubelet: is the primary node agent. It watches for pods that have been assigned to its node (either by apiserver or via local configuration file) -> kube-proxy: enables the Kubernetes service abstraction by maintaining network rules on the host and performing connection forwarding. - -- load balancer - -> keepalived cluster config a virtual IP address (192.168.20.10), this virtual IP address point to k8s-master01, k8s-master02, k8s-master03. -> nginx service as the load balancer of k8s-master01, k8s-master02, k8s-master03's apiserver. The other nodes kubernetes services connect the keepalived virtual ip address (192.168.20.10) and nginx exposed port (16443) to communicate with the master cluster's apiservers. - ---- - -[category](#category) - -#### hosts list - -HostName | IPAddress | Notes | Components -:--- | :--- | :--- | :--- -k8s-master01 ~ 03 | 192.168.20.20 ~ 22 | master nodes * 3 | keepalived, nginx, etcd, kubelet, kube-apiserver -k8s-master-lb | 192.168.20.10 | keepalived virtual IP | N/A -k8s-node01 ~ 08 | 192.168.20.30 ~ 37 | worker nodes * 8 | kubelet - ---- - -[category](#category) - -### prerequisites - -#### version info - -- Linux version: CentOS 7.4.1708 - -- Core version: 4.6.4-1.el7.elrepo.x86_64 - -```sh -$ cat /etc/redhat-release -CentOS Linux release 7.4.1708 (Core) - -$ uname -r -4.6.4-1.el7.elrepo.x86_64 -``` - -- docker version: 17.12.0-ce-rc2 - -```sh -$ docker version -Client: - Version: 17.12.0-ce-rc2 - API version: 1.35 - Go version: go1.9.2 - Git commit: f9cde63 - Built: Tue Dec 12 06:42:20 2017 - OS/Arch: linux/amd64 - -Server: - Engine: - Version: 17.12.0-ce-rc2 - API version: 1.35 (minimum version 1.12) - Go version: go1.9.2 - Git commit: f9cde63 - Built: Tue Dec 12 06:44:50 2017 - OS/Arch: linux/amd64 - Experimental: false -``` - -- kubeadm version: v1.11.1 - -```sh -$ kubeadm version -kubeadm version: &version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.1", GitCommit:"b1b29978270dc22fecc592ac55d903350454310a", GitTreeState:"clean", BuildDate:"2018-07-17T18:50:16Z", GoVersion:"go1.10.3", Compiler:"gc", Platform:"linux/amd64"} -``` - -- kubelet version: v1.11.1 - -```sh -$ kubelet --version -Kubernetes v1.11.1 -``` - -- networks addons - -> calico - ---- - -[category](#category) - -#### required docker images - -- required docker images and tags - -```sh -# kuberentes basic components - -# use kubeadm to list all required docker images -$ kubeadm config images list --kubernetes-version=v1.11.1 -k8s.gcr.io/kube-apiserver-amd64:v1.11.1 -k8s.gcr.io/kube-controller-manager-amd64:v1.11.1 -k8s.gcr.io/kube-scheduler-amd64:v1.11.1 -k8s.gcr.io/kube-proxy-amd64:v1.11.1 -k8s.gcr.io/pause:3.1 -k8s.gcr.io/etcd-amd64:3.2.18 -k8s.gcr.io/coredns:1.1.3 - -# use kubeadm to pull all required docker images -$ kubeadm config images pull --kubernetes-version=v1.11.1 - -# kubernetes networks addons -$ docker pull quay.io/calico/typha:v0.7.4 -$ docker pull quay.io/calico/node:v3.1.3 -$ docker pull quay.io/calico/cni:v3.1.3 - -# kubernetes metrics server -$ docker pull gcr.io/google_containers/metrics-server-amd64:v0.2.1 - -# kubernetes dashboard -$ docker pull gcr.io/google_containers/kubernetes-dashboard-amd64:v1.8.3 - -# kubernetes heapster -$ docker pull k8s.gcr.io/heapster-amd64:v1.5.4 -$ docker pull k8s.gcr.io/heapster-influxdb-amd64:v1.5.2 -$ docker pull k8s.gcr.io/heapster-grafana-amd64:v5.0.4 - -# kubernetes apiserver load balancer -$ docker pull nginx:latest - -# prometheus -$ docker pull prom/prometheus:v2.3.1 - -# traefik -$ docker pull traefik:v1.6.3 - -# istio -$ docker pull docker.io/jaegertracing/all-in-one:1.5 -$ docker pull docker.io/prom/prometheus:v2.3.1 -$ docker pull docker.io/prom/statsd-exporter:v0.6.0 -$ docker pull gcr.io/istio-release/citadel:1.0.0 -$ docker pull gcr.io/istio-release/galley:1.0.0 -$ docker pull gcr.io/istio-release/grafana:1.0.0 -$ docker pull gcr.io/istio-release/mixer:1.0.0 -$ docker pull gcr.io/istio-release/pilot:1.0.0 -$ docker pull gcr.io/istio-release/proxy_init:1.0.0 -$ docker pull gcr.io/istio-release/proxyv2:1.0.0 -$ docker pull gcr.io/istio-release/servicegraph:1.0.0 -$ docker pull gcr.io/istio-release/sidecar_injector:1.0.0 -$ docker pull quay.io/coreos/hyperkube:v1.7.6_coreos.0 -``` - ---- - -[category](#category) - -#### system configuration - -- on all kubernetes nodes: add kubernetes' repository - -```sh -$ cat < /etc/yum.repos.d/kubernetes.repo -[kubernetes] -name=Kubernetes -baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64 -enabled=1 -gpgcheck=1 -repo_gpgcheck=1 -gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg -exclude=kube* -EOF -``` - -- on all kubernetes nodes: update system - -```sh -$ yum update -y -``` - -- on all kubernetes nodes: set SELINUX to permissive mode - -```sh -$ vi /etc/selinux/config -SELINUX=permissive - -$ setenforce 0 -``` - -- on all kubernetes nodes: set iptables parameters - -```sh -$ cat < /etc/sysctl.d/k8s.conf -net.bridge.bridge-nf-call-ip6tables = 1 -net.bridge.bridge-nf-call-iptables = 1 -net.ipv4.ip_forward = 1 -EOF - -$ sysctl --system -``` - -- on all kubernetes nodes: disable swap - -```sh -$ swapoff -a - -# disable swap mount point in /etc/fstab -$ vi /etc/fstab -#/dev/mapper/centos-swap swap swap defaults 0 0 - -# check swap is disabled -$ cat /proc/swaps -Filename Type Size Used Priority -``` - -- on all kubernetes nodes: reboot hosts - -```sh -# reboot hosts -$ reboot -``` - ---- - -[category](#category) - -### kubernetes installation - -#### firewalld and iptables settings - -- on all kubernetes nodes: enable firewalld - -```sh -# restart firewalld service -$ systemctl enable firewalld -$ systemctl restart firewalld -$ systemctl status firewalld -``` - -- master ports list - -Protocol | Direction | Port | Comment -:--- | :--- | :--- | :--- -TCP | Inbound | 16443* | Load balancer Kubernetes API server port -TCP | Inbound | 6443* | Kubernetes API server -TCP | Inbound | 4001 | etcd listen client port -TCP | Inbound | 2379-2380 | etcd server client API -TCP | Inbound | 10250 | Kubelet API -TCP | Inbound | 10251 | kube-scheduler -TCP | Inbound | 10252 | kube-controller-manager -TCP | Inbound | 10255 | Read-only Kubelet API (Deprecated) -TCP | Inbound | 30000-32767 | NodePort Services - -- on all master nodes: set firewalld policy - -```sh -$ firewall-cmd --zone=public --add-port=16443/tcp --permanent -$ firewall-cmd --zone=public --add-port=6443/tcp --permanent -$ firewall-cmd --zone=public --add-port=4001/tcp --permanent -$ firewall-cmd --zone=public --add-port=2379-2380/tcp --permanent -$ firewall-cmd --zone=public --add-port=10250/tcp --permanent -$ firewall-cmd --zone=public --add-port=10251/tcp --permanent -$ firewall-cmd --zone=public --add-port=10252/tcp --permanent -$ firewall-cmd --zone=public --add-port=30000-32767/tcp --permanent - -$ firewall-cmd --reload - -$ firewall-cmd --list-all --zone=public -public (active) - target: default - icmp-block-inversion: no - interfaces: ens2f1 ens1f0 nm-bond - sources: - services: ssh dhcpv6-client - ports: 4001/tcp 6443/tcp 2379-2380/tcp 10250/tcp 10251/tcp 10252/tcp 30000-32767/tcp - protocols: - masquerade: no - forward-ports: - source-ports: - icmp-blocks: - rich rules: -``` - -- worker ports list - -Protocol | Direction | Port | Comment -:--- | :--- | :--- | :--- -TCP | Inbound | 10250 | Kubelet API -TCP | Inbound | 30000-32767 | NodePort Services - -- on all worker nodes: set firewalld policy - -```sh -$ firewall-cmd --zone=public --add-port=10250/tcp --permanent -$ firewall-cmd --zone=public --add-port=30000-32767/tcp --permanent - -$ firewall-cmd --reload - -$ firewall-cmd --list-all --zone=public -public (active) - target: default - icmp-block-inversion: no - interfaces: ens2f1 ens1f0 nm-bond - sources: - services: ssh dhcpv6-client - ports: 10250/tcp 30000-32767/tcp - protocols: - masquerade: no - forward-ports: - source-ports: - icmp-blocks: - rich rules: -``` - -- on all kubernetes nodes: set firewalld to enable kube-proxy port forward - -```sh -$ firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 1 -i docker0 -j ACCEPT -m comment --comment "kube-proxy redirects" -$ firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 1 -o docker0 -j ACCEPT -m comment --comment "docker subnet" -$ firewall-cmd --reload - -$ firewall-cmd --direct --get-all-rules -ipv4 filter INPUT 1 -i docker0 -j ACCEPT -m comment --comment 'kube-proxy redirects' -ipv4 filter FORWARD 1 -o docker0 -j ACCEPT -m comment --comment 'docker subnet' - -# restart firewalld service -$ systemctl restart firewalld -``` - -- on all kubernetes nodes: remove this iptables chains, this settings will prevent kube-proxy node port forward. ( Notice: please run this command each time you restart firewalld ) Let's set the crontab. - -```sh -$ crontab -e -0,5,10,15,20,25,30,35,40,45,50,55 * * * * /usr/sbin/iptables -D INPUT -j REJECT --reject-with icmp-host-prohibited -``` - ---- - -[category](#category) - -#### kubernetes and related services installation - -- on all kubernetes nodes: install kubernetes and related services, then start up kubelet and docker daemon - -```sh -$ yum install -y docker-ce-17.12.0.ce-0.2.rc2.el7.centos.x86_64 -$ yum install -y docker-compose-1.9.0-5.el7.noarch -$ systemctl enable docker && systemctl start docker - -$ yum install -y kubelet-1.11.1-0.x86_64 kubeadm-1.11.1-0.x86_64 kubectl-1.11.1-0.x86_64 -$ systemctl enable kubelet && systemctl start kubelet -``` - -- on all master nodes: install and start keepalived service - -```sh -$ yum install -y keepalived -$ systemctl enable keepalived && systemctl restart keepalived -``` - -#### master hosts mutual trust - -- on k8s-master01: set hosts mutual trust - -```sh -$ rm -rf /root/.ssh/* -$ ssh k8s-master01 pwd -$ ssh k8s-master02 rm -rf /root/.ssh/* -$ ssh k8s-master03 rm -rf /root/.ssh/* -$ ssh k8s-master02 mkdir -p /root/.ssh/ -$ ssh k8s-master03 mkdir -p /root/.ssh/ - -$ scp /root/.ssh/known_hosts root@k8s-master02:/root/.ssh/ -$ scp /root/.ssh/known_hosts root@k8s-master03:/root/.ssh/ - -$ ssh-keygen -t rsa -P '' -f /root/.ssh/id_rsa -$ cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys -$ scp /root/.ssh/authorized_keys root@k8s-master02:/root/.ssh/ -``` - -- on k8s-master02: set hosts mutual trust - -```sh -$ ssh-keygen -t rsa -P '' -f /root/.ssh/id_rsa -$ cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys -$ scp /root/.ssh/authorized_keys root@k8s-master03:/root/.ssh/ -``` - -- on k8s-master03: set hosts mutual trust - -```sh -$ ssh-keygen -t rsa -P '' -f /root/.ssh/id_rsa -$ cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys -$ scp /root/.ssh/authorized_keys root@k8s-master01:/root/.ssh/ -$ scp /root/.ssh/authorized_keys root@k8s-master02:/root/.ssh/ -``` - ---- - -[category](#category) - -### masters high availiability installation - -#### create configuration files - -- on k8s-master01: clone kubeadm-ha project source code - -```sh -$ git clone https://github.com/cookeem/kubeadm-ha -``` - -- on k8s-master01: use `create-config.sh` to create relative config files, this script will create all configuration files, follow the setting comment and make sure you set the parameters correctly. - -```sh -$ cd kubeadm-ha - -$ vi create-config.sh -# master keepalived virtual ip address -export K8SHA_VIP=192.168.60.79 -# master01 ip address -export K8SHA_IP1=192.168.60.72 -# master02 ip address -export K8SHA_IP2=192.168.60.77 -# master03 ip address -export K8SHA_IP3=192.168.60.78 -# master keepalived virtual ip hostname -export K8SHA_VHOST=k8s-master-lb -# master01 hostname -export K8SHA_HOST1=k8s-master01 -# master02 hostname -export K8SHA_HOST2=k8s-master02 -# master03 hostname -export K8SHA_HOST3=k8s-master03 -# master01 network interface name -export K8SHA_NETINF1=nm-bond -# master02 network interface name -export K8SHA_NETINF2=nm-bond -# master03 network interface name -export K8SHA_NETINF3=nm-bond -# keepalived auth_pass config -export K8SHA_KEEPALIVED_AUTH=412f7dc3bfed32194d1600c483e10ad1d -# calico reachable ip address -export K8SHA_CALICO_REACHABLE_IP=192.168.60.1 -# kubernetes CIDR pod subnet, if CIDR pod subnet is "172.168.0.0/16" please set to "172.168.0.0" -export K8SHA_CIDR=172.168.0.0 - -# run the shell, it will create 3 masters' kubeadm config files, keepalived config files, nginx load balance config files, and calico config files. -$ ./create-config.sh -create kubeadm-config.yaml files success. config/k8s-master01/kubeadm-config.yaml -create kubeadm-config.yaml files success. config/k8s-master02/kubeadm-config.yaml -create kubeadm-config.yaml files success. config/k8s-master03/kubeadm-config.yaml -create keepalived files success. config/k8s-master01/keepalived/ -create keepalived files success. config/k8s-master02/keepalived/ -create keepalived files success. config/k8s-master03/keepalived/ -create nginx-lb files success. config/k8s-master01/nginx-lb/ -create nginx-lb files success. config/k8s-master02/nginx-lb/ -create nginx-lb files success. config/k8s-master03/nginx-lb/ -create calico.yaml file success. calico/calico.yaml - -# set hostname environment variables -$ export HOST1=k8s-master01 -$ export HOST2=k8s-master02 -$ export HOST3=k8s-master03 - -# copy kubeadm config files to all master nodes, path is /root/ -$ scp -r config/$HOST1/kubeadm-config.yaml $HOST1:/root/ -$ scp -r config/$HOST2/kubeadm-config.yaml $HOST2:/root/ -$ scp -r config/$HOST3/kubeadm-config.yaml $HOST3:/root/ - -# copy keepalived config files to all master nodes, path is /etc/keepalived/category/ -$ scp -r config/$HOST1/keepalived/* $HOST1:/etc/keepalived/ -$ scp -r config/$HOST2/keepalived/* $HOST2:/etc/keepalived/ -$ scp -r config/$HOST3/keepalived/* $HOST3:/etc/keepalived/ - -# copy nginx load balance config files to all master nodes, path is /root/ -$ scp -r config/$HOST1/nginx-lb $HOST1:/root/ -$ scp -r config/$HOST2/nginx-lb $HOST2:/root/ -$ scp -r config/$HOST3/nginx-lb $HOST3:/root/ -``` - ---- - -[category](#category) - -#### kubeadm initialization - -- on k8s-master01: use kubeadm to init a kubernetes cluster - -```sh -# notice: you must save the following output message: kubeadm join --token ${YOUR_TOKEN} --discovery-token-ca-cert-hash ${YOUR_DISCOVERY_TOKEN_CA_CERT_HASH} , this command will use lately. -$ kubeadm init --config /root/kubeadm-config.yaml -kubeadm join 192.168.20.20:6443 --token ${YOUR_TOKEN} --discovery-token-ca-cert-hash sha256:${YOUR_DISCOVERY_TOKEN_CA_CERT_HASH} -``` - -- on all master nodes: set kubectl client environment variable - -```sh -$ cat <> ~/.bashrc -export KUBECONFIG=/etc/kubernetes/admin.conf -EOF - -$ source ~/.bashrc - -# kubectl now can connect the kubernetes cluster -$ kubectl get nodes -``` - -- on k8s-master01: wait until etcd, kube-apiserver, kube-controller-manager, kube-scheduler startup - -```sh -$ kubectl get pods -n kube-system -o wide -NAME READY STATUS RESTARTS AGE IP NODE -... -etcd-k8s-master01 1/1 Running 0 18m 192.168.20.20 k8s-master01 -kube-apiserver-k8s-master01 1/1 Running 0 18m 192.168.20.20 k8s-master01 -kube-controller-manager-k8s-master01 1/1 Running 0 18m 192.168.20.20 k8s-master01 -kube-scheduler-k8s-master01 1/1 Running 1 18m 192.168.20.20 k8s-master01 -... -``` - ---- - -[category](#category) - -#### high availiability configuration - -- on k8s-master01: copy certificates to other master nodes - -```sh -# set master nodes hostname -$ export CONTROL_PLANE_IPS="k8s-master02 k8s-master03" - -# copy certificates to other master nodes -$ for host in ${CONTROL_PLANE_IPS}; do - scp /etc/kubernetes/pki/ca.crt $host:/etc/kubernetes/pki/ca.crt - scp /etc/kubernetes/pki/ca.key $host:/etc/kubernetes/pki/ca.key - scp /etc/kubernetes/pki/sa.key $host:/etc/kubernetes/pki/sa.key - scp /etc/kubernetes/pki/sa.pub $host:/etc/kubernetes/pki/sa.pub - scp /etc/kubernetes/pki/front-proxy-ca.crt $host:/etc/kubernetes/pki/front-proxy-ca.crt - scp /etc/kubernetes/pki/front-proxy-ca.key $host:/etc/kubernetes/pki/front-proxy-ca.key - scp /etc/kubernetes/pki/etcd/ca.crt $host:/etc/kubernetes/pki/etcd/ca.crt - scp /etc/kubernetes/pki/etcd/ca.key $host:/etc/kubernetes/pki/etcd/ca.key - scp /etc/kubernetes/admin.conf $host:/etc/kubernetes/admin.conf -done -``` - -- on k8s-master02: master node join the cluster - -```sh -# create all certificates and kubelet config files -$ kubeadm alpha phase certs all --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubeconfig controller-manager --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubeconfig scheduler --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubelet config write-to-disk --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubelet write-env-file --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubeconfig kubelet --config /root/kubeadm-config.yaml -$ systemctl restart kubelet - -# set k8s-master01 and k8s-master02 HOSTNAME and ip address -$ export CP0_IP=192.168.20.20 -$ export CP0_HOSTNAME=k8s-master01 -$ export CP1_IP=192.168.20.21 -$ export CP1_HOSTNAME=k8s-master02 - -# add etcd member to the cluster -$ kubectl exec -n kube-system etcd-${CP0_HOSTNAME} -- etcdctl --ca-file /etc/kubernetes/pki/etcd/ca.crt --cert-file /etc/kubernetes/pki/etcd/peer.crt --key-file /etc/kubernetes/pki/etcd/peer.key --endpoints=https://${CP0_IP}:2379 member add ${CP1_HOSTNAME} https://${CP1_IP}:2380 -$ kubeadm alpha phase etcd local --config /root/kubeadm-config.yaml - -# prepare to start master -$ kubeadm alpha phase kubeconfig all --config /root/kubeadm-config.yaml -$ kubeadm alpha phase controlplane all --config /root/kubeadm-config.yaml -$ kubeadm alpha phase mark-master --config /root/kubeadm-config.yaml - -# modify /etc/kubernetes/admin.conf server settings -$ sed -i "s/192.168.20.20:6443/192.168.20.21:6443/g" /etc/kubernetes/admin.conf -``` - -- on k8s-master03: master node join the cluster - -```sh -# create all certificates and kubelet config files -$ kubeadm alpha phase certs all --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubeconfig controller-manager --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubeconfig scheduler --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubelet config write-to-disk --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubelet write-env-file --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubeconfig kubelet --config /root/kubeadm-config.yaml -$ systemctl restart kubelet - -# set k8s-master01 and k8s-master03 HOSTNAME and ip address -$ export CP0_IP=192.168.20.20 -$ export CP0_HOSTNAME=k8s-master01 -$ export CP2_IP=192.168.20.22 -$ export CP2_HOSTNAME=k8s-master03 - -# add etcd member to the cluster -$ kubectl exec -n kube-system etcd-${CP0_HOSTNAME} -- etcdctl --ca-file /etc/kubernetes/pki/etcd/ca.crt --cert-file /etc/kubernetes/pki/etcd/peer.crt --key-file /etc/kubernetes/pki/etcd/peer.key --endpoints=https://${CP0_IP}:2379 member add ${CP2_HOSTNAME} https://${CP2_IP}:2380 -$ kubeadm alpha phase etcd local --config /root/kubeadm-config.yaml - -# prepare to start master -$ kubeadm alpha phase kubeconfig all --config /root/kubeadm-config.yaml -$ kubeadm alpha phase controlplane all --config /root/kubeadm-config.yaml -$ kubeadm alpha phase mark-master --config /root/kubeadm-config.yaml - -# modify /etc/kubernetes/admin.conf server settings -$ sed -i "s/192.168.20.20:6443/192.168.20.22:6443/g" /etc/kubernetes/admin.conf -``` - -- on all master nodes: enable hpa to collect performance data form apiserver, add config below in file `/etc/kubernetes/manifests/kube-controller-manager.yaml` - -```sh -$ vi /etc/kubernetes/manifests/kube-controller-manager.yaml - - --horizontal-pod-autoscaler-use-rest-clients=false -``` - -- on all master nodes: enable istio auto-injection, add config below in file `/etc/kubernetes/manifests/kube-apiserver.yaml` - -```sh -$ vi /etc/kubernetes/manifests/kube-apiserver.yaml - - --enable-admission-plugins=NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota - -# restart kubelet service -systemctl restart kubelet -``` - -- on any master nodes: install calico network addon, after network addon installed the cluster nodes status will be `READY` - -```sh -$ kubectl apply -f calico/ -``` - ---- - -[category](#category) - -### masters load balance settings - -#### keepalived installation - -- on all master nodes: restart keepalived service - -```sh -$ systemctl restart keepalived -$ systemctl status keepalived - -# check keepalived vip -$ curl -k https://k8s-master-lb:6443 -``` - ---- - -[category](#category) - -#### nginx load balance settings - -- on all master nodes: start up nginx load balance - -```sh -# use docker-compose to start up nginx load balance -$ docker-compose --file=/root/nginx-lb/docker-compose.yaml up -d -$ docker-compose --file=/root/nginx-lb/docker-compose.yaml ps - -# check nginx load balance -$ curl -k https://k8s-master-lb:16443 -``` - ---- - -[category](#category) - -#### kube-proxy HA settings - -- on any master nodes: set kube-proxy server settings, make sure this settings use the keepalived virtual IP and nginx load balancer port (here is: https://192.168.20.10:16443) - -```sh -$ kubectl edit -n kube-system configmap/kube-proxy - server: https://192.168.20.10:16443 -``` - -- on any master nodes: restart kube-proxy pods - -```sh -# find all kube-proxy pods -$ kubectl get pods --all-namespaces -o wide | grep proxy - -# delete and restart all kube-proxy pods -$ kubectl delete pod -n kube-system kube-proxy-XXX -``` - ---- - -[category](#category) - -#### high availiability verify - -- on any master nodes: check cluster running status - -```sh -# check kubernetes nodes status -$ kubectl get nodes -NAME STATUS ROLES AGE VERSION -k8s-master01 Ready master 1h v1.11.1 -k8s-master02 Ready master 58m v1.11.1 -k8s-master03 Ready master 55m v1.11.1 - -# check kube-system pods running status -$ kubectl get pods -n kube-system -o wide -NAME READY STATUS RESTARTS AGE IP NODE -calico-node-nxskr 2/2 Running 0 46m 192.168.20.22 k8s-master03 -calico-node-xv5xt 2/2 Running 0 46m 192.168.20.20 k8s-master01 -calico-node-zsmgp 2/2 Running 0 46m 192.168.20.21 k8s-master02 -coredns-78fcdf6894-kfzc7 1/1 Running 0 1h 172.168.2.3 k8s-master03 -coredns-78fcdf6894-t957l 1/1 Running 0 46m 172.168.1.2 k8s-master02 -etcd-k8s-master01 1/1 Running 0 1h 192.168.20.20 k8s-master01 -etcd-k8s-master02 1/1 Running 0 58m 192.168.20.21 k8s-master02 -etcd-k8s-master03 1/1 Running 0 54m 192.168.20.22 k8s-master03 -kube-apiserver-k8s-master01 1/1 Running 0 52m 192.168.20.20 k8s-master01 -kube-apiserver-k8s-master02 1/1 Running 0 52m 192.168.20.21 k8s-master02 -kube-apiserver-k8s-master03 1/1 Running 0 51m 192.168.20.22 k8s-master03 -kube-controller-manager-k8s-master01 1/1 Running 0 34m 192.168.20.20 k8s-master01 -kube-controller-manager-k8s-master02 1/1 Running 0 33m 192.168.20.21 k8s-master02 -kube-controller-manager-k8s-master03 1/1 Running 0 33m 192.168.20.22 k8s-master03 -kube-proxy-g9749 1/1 Running 0 36m 192.168.20.22 k8s-master03 -kube-proxy-lhzhb 1/1 Running 0 35m 192.168.20.20 k8s-master01 -kube-proxy-x8jwt 1/1 Running 0 36m 192.168.20.21 k8s-master02 -kube-scheduler-k8s-master01 1/1 Running 1 1h 192.168.20.20 k8s-master01 -kube-scheduler-k8s-master02 1/1 Running 0 57m 192.168.20.21 k8s-master02 -kube-scheduler-k8s-master03 1/1 Running 1 54m 192.168.20.22 k8s-master03 -``` - ---- - -[category](#category) - -#### kubernetes addons installation - -- on any master nodes: enable master node pod schedulable - -```sh -$ kubectl taint nodes --all node-role.kubernetes.io/master- -``` - -- on any master nodes: install metrics-server, after v1.11.0 heapster is deprecated for performance data collection, it use metrics-server - -```sh -$ kubectl apply -f metrics-server/ - -# wait for 5 minutes, use kubectl top to check the pod performance usage -$ kubectl top pods -n kube-system -NAME CPU(cores) MEMORY(bytes) -calico-node-wkstv 47m 113Mi -calico-node-x2sn5 36m 104Mi -calico-node-xnh6s 32m 106Mi -coredns-78fcdf6894-2xc6s 14m 30Mi -coredns-78fcdf6894-rk6ch 10m 22Mi -kube-apiserver-k8s-master01 163m 816Mi -kube-apiserver-k8s-master02 79m 617Mi -kube-apiserver-k8s-master03 73m 614Mi -kube-controller-manager-k8s-master01 52m 141Mi -kube-controller-manager-k8s-master02 0m 14Mi -kube-controller-manager-k8s-master03 0m 13Mi -kube-proxy-269t2 4m 21Mi -kube-proxy-6jc8n 9m 37Mi -kube-proxy-7n8xb 9m 39Mi -kube-scheduler-k8s-master01 20m 25Mi -kube-scheduler-k8s-master02 15m 19Mi -kube-scheduler-k8s-master03 15m 19Mi -metrics-server-77b77f5fc6-jm8t6 3m 43Mi -``` - -- on any master nodes: install heapster, after v1.11.0 heapster is deprecated for performance data collection, it use metrics-server. But kube-dashboard use heapster to display performance info, so we install it. - -```sh -# install heapster, wait for 5 minutes -$ kubectl apply -f heapster/ -``` - -- on any master nodes: install kube-dashboard - -```sh -# install kube-dashboard -$ kubectl apply -f dashboard/ -``` - -> after install, open kube-dashboard in web browser, it need to login with token: https://k8s-master-lb:30000/ - -![dashboard-login](images/dashboard-login.png) - -- on any master nodes: get kube-dashboard login token - -```sh -# get kube-dashboard login token -$ kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep admin-user | awk '{print $1}') -``` - -> login to kube-dashboard, you can see all pods performance metrics - -![dashboard](images/dashboard.png) - -- on any master nodes: install traefik - -```sh -# create k8s-master-lb domain certificate -$ openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout tls.key -out tls.crt -subj "/CN=k8s-master-lb" - -# create kubernetes secret -kubectl -n kube-system create secret generic traefik-cert --from-file=tls.key --from-file=tls.crt - -# install traefik -$ kubectl apply -f traefik/ -``` - -> after install use web browser to open traefik admin webUI: http://k8s-master-lb:30011/ - -![traefik](images/traefik.png) - -- on any master nodes: install istio - -```sh -# install istio -$ kubectl apply -f istio/ - -# check all istio pods -$ kubectl get pods -n istio-system -NAME READY STATUS RESTARTS AGE -grafana-69c856fc69-jbx49 1/1 Running 1 21m -istio-citadel-7c4fc8957b-vdbhp 1/1 Running 1 21m -istio-cleanup-secrets-5g95n 0/1 Completed 0 21m -istio-egressgateway-64674bd988-44fg8 1/1 Running 0 18m -istio-egressgateway-64674bd988-dgvfm 1/1 Running 1 16m -istio-egressgateway-64674bd988-fprtc 1/1 Running 0 18m -istio-egressgateway-64674bd988-kl6pw 1/1 Running 3 16m -istio-egressgateway-64674bd988-nphpk 1/1 Running 3 16m -istio-galley-595b94cddf-c5ctw 1/1 Running 70 21m -istio-grafana-post-install-nhs47 0/1 Completed 0 21m -istio-ingressgateway-4vtk5 1/1 Running 2 21m -istio-ingressgateway-5rscp 1/1 Running 3 21m -istio-ingressgateway-6z95f 1/1 Running 3 21m -istio-policy-589977bff5-jx5fd 2/2 Running 3 21m -istio-policy-589977bff5-n74q8 2/2 Running 3 21m -istio-sidecar-injector-86c4d57d56-mfnbp 1/1 Running 39 21m -istio-statsd-prom-bridge-5698d5798c-xdpp6 1/1 Running 1 21m -istio-telemetry-85d6475bfd-8lvsm 2/2 Running 2 21m -istio-telemetry-85d6475bfd-bfjsn 2/2 Running 2 21m -istio-telemetry-85d6475bfd-d9ld9 2/2 Running 2 21m -istio-tracing-bd5765b5b-cmszp 1/1 Running 1 21m -prometheus-77c5fc7cd-zf7zr 1/1 Running 1 21m -servicegraph-6b99c87849-l6zm6 1/1 Running 1 21m -``` - -- on any master nodes: install prometheus - -```sh -# install prometheus -$ kubectl apply -f prometheus/ -``` - -> after install, open prometheus admin webUI: http://k8s-master-lb:30013/ - -![prometheus](images/prometheus.png) - -> open grafana admin webUI (user and password is`admin`): http://k8s-master-lb:30006/ -> after login, add prometheus datasource: http://k8s-master-lb:30006/datasources - -![grafana-datasource](images/grafana-datasource.png) - -> import dashboard: http://k8s-master-lb:30006/dashboard/import import all files under `heapster/grafana-dashboard` directory, dashboard `Kubernetes App Metrics`, `Kubernetes cluster monitoring (via Prometheus)` - -![grafana-import](images/grafana-import.png) - -> dashboard you imported: - -![grafana-cluster](images/grafana-cluster.png) - -![grafana-app](images/grafana-app.png) - ---- - -[category](#category) - -### workers join kubernetes cluster - -#### workers join HA cluster - -- on all worker nodes: join kubernetes cluster - -```sh -$ kubeadm reset - -# use kubeadm to join the cluster, here we use the k8s-master01 apiserver address and port. -$ kubeadm join 192.168.20.20:6443 --token ${YOUR_TOKEN} --discovery-token-ca-cert-hash sha256:${YOUR_DISCOVERY_TOKEN_CA_CERT_HASH} - - -# set the `/etc/kubernetes/*.conf` server settings, make sure this settings use the keepalived virtual IP and nginx load balancer port (here is: https://192.168.20.10:16443) -$ sed -i "s/192.168.20.20:6443/192.168.20.10:16443/g" /etc/kubernetes/bootstrap-kubelet.conf -$ sed -i "s/192.168.20.20:6443/192.168.20.10:16443/g" /etc/kubernetes/kubelet.conf - -# restart docker and kubelet service -$ systemctl restart docker kubelet -``` - -- on any master nodes: check all nodes status - -```sh -$ kubectl get nodes -NAME STATUS ROLES AGE VERSION -k8s-master01 Ready master 1h v1.11.1 -k8s-master02 Ready master 58m v1.11.1 -k8s-master03 Ready master 55m v1.11.1 -k8s-node01 Ready 30m v1.11.1 -k8s-node02 Ready 24m v1.11.1 -k8s-node03 Ready 22m v1.11.1 -k8s-node04 Ready 22m v1.11.1 -k8s-node05 Ready 16m v1.11.1 -k8s-node06 Ready 13m v1.11.1 -k8s-node07 Ready 11m v1.11.1 -k8s-node08 Ready 10m v1.11.1 -``` - ---- - -[category](#category) - -### verify kubernetes cluster installation - -#### verify kubernetes cluster high availiablity installation - -- NodePort testing - -```sh -# create a nginx deployment, replicas=3 -$ kubectl run nginx --image=nginx --replicas=3 --port=80 -deployment "nginx" created - -# check nginx pods status -$ kubectl get pods -l=run=nginx -o wide -NAME READY STATUS RESTARTS AGE IP NODE -nginx-58b94844fd-jvlqh 1/1 Running 0 9s 172.168.7.2 k8s-node05 -nginx-58b94844fd-mkt72 1/1 Running 0 9s 172.168.9.2 k8s-node07 -nginx-58b94844fd-xhb8x 1/1 Running 0 9s 172.168.11.2 k8s-node09 - -# create nginx NodePort service -$ kubectl expose deployment nginx --type=NodePort --port=80 -service "nginx" exposed - -# check nginx service status -$ kubectl get svc -l=run=nginx -o wide -NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE SELECTOR -nginx NodePort 10.106.129.121 80:31443/TCP 7s run=nginx - -# check nginx NodePort service accessibility -$ curl k8s-master-lb:31443 - - - -Welcome to nginx! - - - -

Welcome to nginx!

-

If you see this page, the nginx web server is successfully installed and -working. Further configuration is required.

- -

For online documentation and support please refer to -nginx.org.
-Commercial support is available at -nginx.com.

- -

Thank you for using nginx.

- - -``` - -- pods connectivity testing - -```sh -kubectl run nginx-client -ti --rm --image=alpine -- ash -/ # wget -O - nginx -Connecting to nginx (10.102.101.78:80) -index.html 100% |*****************************************| 612 0:00:00 ETA - - - - -Welcome to nginx! - - - -

Welcome to nginx!

-

If you see this page, the nginx web server is successfully installed and -working. Further configuration is required.

- -

For online documentation and support please refer to -nginx.org.
-Commercial support is available at -nginx.com.

- -

Thank you for using nginx.

- - - -# remove all test nginx deployment and service -kubectl delete deploy,svc nginx -``` - -- HPA testing - -```sh -# create test nginx-server -kubectl run nginx-server --requests=cpu=10m --image=nginx --port=80 -kubectl expose deployment nginx-server --port=80 - -# create hpa -kubectl autoscale deployment nginx-server --cpu-percent=10 --min=1 --max=10 -kubectl get hpa -kubectl describe hpa nginx-server - -# increase nginx-server load -kubectl run -ti --rm load-generator --image=busybox -- ash -wget -q -O- http://nginx-server.default.svc.cluster.local > /dev/null -while true; do wget -q -O- http://nginx-server.default.svc.cluster.local > /dev/null; done - -# it may take a few minutes to stabilize the number of replicas. Since the amount of load is not controlled in any way it may happen that the final number of replicas will differ from this example. - -kubectl get hpa -w - -# remove all test deployment service and HPA -kubectl delete deploy,svc,hpa nginx-server -``` - ---- - -[category](#category) - -- now kubernetes high availiability cluster setup successfully 😃 From 694113457e5084caa87b620c86b450ef5a740204 Mon Sep 17 00:00:00 2001 From: dotbalo Date: Fri, 12 Jul 2019 10:18:35 +0800 Subject: [PATCH 02/16] Update README_CN.md --- README_CN.md | 1118 -------------------------------------------------- 1 file changed, 1118 deletions(-) diff --git a/README_CN.md b/README_CN.md index be75207..e645694 100644 --- a/README_CN.md +++ b/README_CN.md @@ -3,1121 +3,3 @@ 安装过程请:https://www.cnblogs.com/dukuan/p/9856269.html ``` - -# kubeadm-highavailiability - 基于kubeadm的kubernetes高可用集群部署,支持v1.11.x v1.9.x v1.7.x v1.6.x版本 - -![k8s logo](images/Kubernetes.png) - -- [中文文档(for v1.11.x版本)](README_CN.md) -- [English document(for v1.11.x version)](README.md) -- [中文文档(for v1.9.x版本)](v1.9/README_CN.md) -- [English document(for v1.9.x version)](v1.9/README.md) -- [中文文档(for v1.7.x版本)](v1.7/README_CN.md) -- [English document(for v1.7.x version)](v1.7/README.md) -- [中文文档(for v1.6.x版本)](v1.6/README_CN.md) -- [English document(for v1.6.x version)](v1.6/README.md) - ---- - -- [GitHub项目地址](https://github.com/cookeem/kubeadm-ha/) -- [OSChina项目地址](https://git.oschina.net/cookeem/kubeadm-ha/) - ---- - -- 该指引适用于v1.11.x版本的kubernetes集群 - -> v1.11.x版本支持在control plane上启动TLS的etcd高可用集群。 - -### 目录 - -1. [部署架构](#部署架构) - 1. [概要部署架构](#概要部署架构) - 1. [详细部署架构](#详细部署架构) - 1. [主机节点清单](#主机节点清单) -1. [安装前准备](#安装前准备) - 1. [版本信息](#版本信息) - 1. [所需docker镜像](#所需docker镜像) - 1. [系统设置](#系统设置) -1. [kubernetes安装](#kubernetes安装) - 1. [firewalld和iptables相关端口设置](#firewalld和iptables相关端口设置) - 1. [kubernetes相关服务安装](#kubernetes相关服务安装) - 1. [master节点互信设置](#master节点互信设置) -1. [master高可用安装](#master高可用安装) - 1. [配置文件初始化](#配置文件初始化) - 1. [kubeadm初始化](#kubeadm初始化) - 1. [高可用配置](#高可用配置) -1. [master负载均衡设置](#master负载均衡设置) - 1. [keepalived安装配置](#keepalived安装配置) - 1. [nginx负载均衡配置](#nginx负载均衡配置) - 1. [kube-proxy高可用设置](#kube-proxy高可用设置) - 1. [验证高可用状态](#验证高可用状态) - 1. [基础组件安装](#基础组件安装) -1. [worker节点设置](#worker节点设置) - 1. [worker加入高可用集群](#worker加入高可用集群) -1. [集群验证](#集群验证) - 1. [验证集群高可用设置](#验证集群高可用设置) - -### 部署架构 - -#### 概要部署架构 - -![ha logo](images/ha.png) - -- kubernetes高可用的核心架构是master的高可用,kubectl、客户端以及nodes访问load balancer实现高可用。 - ---- -[返回目录](#目录) - -#### 详细部署架构 - -![k8s ha](images/k8s-ha.png) - -- kubernetes组件说明 - -> kube-apiserver:集群核心,集群API接口、集群各个组件通信的中枢;集群安全控制; -> etcd:集群的数据中心,用于存放集群的配置以及状态信息,非常重要,如果数据丢失那么集群将无法恢复;因此高可用集群部署首先就是etcd是高可用集群; -> kube-scheduler:集群Pod的调度中心;默认kubeadm安装情况下--leader-elect参数已经设置为true,保证master集群中只有一个kube-scheduler处于活跃状态; -> kube-controller-manager:集群状态管理器,当集群状态与期望不同时,kcm会努力让集群恢复期望状态,比如:当一个pod死掉,kcm会努力新建一个pod来恢复对应replicas set期望的状态;默认kubeadm安装情况下--leader-elect参数已经设置为true,保证master集群中只有一个kube-controller-manager处于活跃状态; -> kubelet: kubernetes node agent,负责与node上的docker engine打交道; -> kube-proxy: 每个node上一个,负责service vip到endpoint pod的流量转发,当前主要通过设置iptables规则实现。 - -- 负载均衡 - -> keepalived集群设置一个虚拟ip地址,虚拟ip地址指向k8s-master01、k8s-master02、k8s-master03。 -> nginx用于k8s-master01、k8s-master02、k8s-master03的apiserver的负载均衡。外部kubectl以及nodes访问apiserver的时候就可以用过keepalived的虚拟ip(192.168.20.10)以及nginx端口(16443)访问master集群的apiserver。 - ---- - -[返回目录](#目录) - -#### 主机节点清单 - -主机名 | IP地址 | 说明 | 组件 -:--- | :--- | :--- | :--- -k8s-master01 ~ 03 | 192.168.20.20 ~ 22 | master节点 * 3 | keepalived、nginx、etcd、kubelet、kube-apiserver -k8s-master-lb | 192.168.20.10 | keepalived虚拟IP | 无 -k8s-node01 ~ 08 | 192.168.20.30 ~ 37 | worker节点 * 8 | kubelet - ---- - -[返回目录](#目录) - -### 安装前准备 - -#### 版本信息 - -- Linux版本:CentOS 7.4.1708 - -- 内核版本: 4.6.4-1.el7.elrepo.x86_64 - -```sh -$ cat /etc/redhat-release -CentOS Linux release 7.4.1708 (Core) - -$ uname -r -4.6.4-1.el7.elrepo.x86_64 -``` - -- docker版本:17.12.0-ce-rc2 - -```sh -$ docker version -Client: - Version: 17.12.0-ce-rc2 - API version: 1.35 - Go version: go1.9.2 - Git commit: f9cde63 - Built: Tue Dec 12 06:42:20 2017 - OS/Arch: linux/amd64 - -Server: - Engine: - Version: 17.12.0-ce-rc2 - API version: 1.35 (minimum version 1.12) - Go version: go1.9.2 - Git commit: f9cde63 - Built: Tue Dec 12 06:44:50 2017 - OS/Arch: linux/amd64 - Experimental: false -``` - -- kubeadm版本:v1.11.1 - -```sh -$ kubeadm version -kubeadm version: &version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.1", GitCommit:"b1b29978270dc22fecc592ac55d903350454310a", GitTreeState:"clean", BuildDate:"2018-07-17T18:50:16Z", GoVersion:"go1.10.3", Compiler:"gc", Platform:"linux/amd64"} -``` - -- kubelet版本:v1.11.1 - -```sh -$ kubelet --version -Kubernetes v1.11.1 -``` - -- 网络组件 - -> calico - ---- - -[返回目录](#目录) - -#### 所需docker镜像 - -- 相关docker镜像以及版本 - -```sh -# kuberentes basic components - -# 通过kubeadm 获取基础组件镜像清单 -$ kubeadm config images list --kubernetes-version=v1.11.1 -k8s.gcr.io/kube-apiserver-amd64:v1.11.1 -k8s.gcr.io/kube-controller-manager-amd64:v1.11.1 -k8s.gcr.io/kube-scheduler-amd64:v1.11.1 -k8s.gcr.io/kube-proxy-amd64:v1.11.1 -k8s.gcr.io/pause:3.1 -k8s.gcr.io/etcd-amd64:3.2.18 -k8s.gcr.io/coredns:1.1.3 - -# 通过kubeadm 拉取基础镜像 -$ kubeadm config images pull --kubernetes-version=v1.11.1 - -# kubernetes networks add ons -$ docker pull quay.io/calico/typha:v0.7.4 -$ docker pull quay.io/calico/node:v3.1.3 -$ docker pull quay.io/calico/cni:v3.1.3 - -# kubernetes metrics server -$ docker pull gcr.io/google_containers/metrics-server-amd64:v0.2.1 - -# kubernetes dashboard -$ docker pull gcr.io/google_containers/kubernetes-dashboard-amd64:v1.8.3 - -# kubernetes heapster -$ docker pull k8s.gcr.io/heapster-amd64:v1.5.4 -$ docker pull k8s.gcr.io/heapster-influxdb-amd64:v1.5.2 -$ docker pull k8s.gcr.io/heapster-grafana-amd64:v5.0.4 - -# kubernetes apiserver load balancer -$ docker pull nginx:latest - -# prometheus -$ docker pull prom/prometheus:v2.3.1 - -# traefik -$ docker pull traefik:v1.6.3 - -# istio -$ docker pull docker.io/jaegertracing/all-in-one:1.5 -$ docker pull docker.io/prom/prometheus:v2.3.1 -$ docker pull docker.io/prom/statsd-exporter:v0.6.0 -$ docker pull gcr.io/istio-release/citadel:1.0.0 -$ docker pull gcr.io/istio-release/galley:1.0.0 -$ docker pull gcr.io/istio-release/grafana:1.0.0 -$ docker pull gcr.io/istio-release/mixer:1.0.0 -$ docker pull gcr.io/istio-release/pilot:1.0.0 -$ docker pull gcr.io/istio-release/proxy_init:1.0.0 -$ docker pull gcr.io/istio-release/proxyv2:1.0.0 -$ docker pull gcr.io/istio-release/servicegraph:1.0.0 -$ docker pull gcr.io/istio-release/sidecar_injector:1.0.0 -$ docker pull quay.io/coreos/hyperkube:v1.7.6_coreos.0 -``` - ---- - -[返回目录](#目录) - -#### 系统设置 - -- 在所有kubernetes节点上增加kubernetes仓库 - -```sh -$ cat < /etc/yum.repos.d/kubernetes.repo -[kubernetes] -name=Kubernetes -baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64 -enabled=1 -gpgcheck=1 -repo_gpgcheck=1 -gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg -exclude=kube* -EOF -``` - -- 在所有kubernetes节点上进行系统更新 - -```sh -$ yum update -y -``` - -- 在所有kubernetes节点上设置SELINUX为permissive模式 - -```sh -$ vi /etc/selinux/config -SELINUX=permissive - -$ setenforce 0 -``` - -- 在所有kubernetes节点上设置iptables参数 - -```sh -$ cat < /etc/sysctl.d/k8s.conf -net.bridge.bridge-nf-call-ip6tables = 1 -net.bridge.bridge-nf-call-iptables = 1 -net.ipv4.ip_forward = 1 -EOF - -$ sysctl --system -``` - -- 在所有kubernetes节点上禁用swap - -```sh -$ swapoff -a - -# 禁用fstab中的swap项目 -$ vi /etc/fstab -#/dev/mapper/centos-swap swap swap defaults 0 0 - -# 确认swap已经被禁用 -$ cat /proc/swaps -Filename Type Size Used Priority -``` - -- 在所有kubernetes节点上重启主机 - -```sh -# 重启主机 -$ reboot -``` - ---- - -[返回目录](#目录) - -### kubernetes安装 - -#### firewalld和iptables相关端口设置 - -- 所有节点开启防火墙 - -```sh -# 重启防火墙 -$ systemctl enable firewalld -$ systemctl restart firewalld -$ systemctl status firewalld -``` - -- 相关端口(master) - -协议 | 方向 | 端口 | 说明 -:--- | :--- | :--- | :--- -TCP | Inbound | 16443* | Load balancer Kubernetes API server port -TCP | Inbound | 6443* | Kubernetes API server -TCP | Inbound | 4001 | etcd listen client port -TCP | Inbound | 2379-2380 | etcd server client API -TCP | Inbound | 10250 | Kubelet API -TCP | Inbound | 10251 | kube-scheduler -TCP | Inbound | 10252 | kube-controller-manager -TCP | Inbound | 10255 | Read-only Kubelet API (Deprecated) -TCP | Inbound | 30000-32767 | NodePort Services - -- 设置防火墙策略 - -```sh -$ firewall-cmd --zone=public --add-port=16443/tcp --permanent -$ firewall-cmd --zone=public --add-port=6443/tcp --permanent -$ firewall-cmd --zone=public --add-port=4001/tcp --permanent -$ firewall-cmd --zone=public --add-port=2379-2380/tcp --permanent -$ firewall-cmd --zone=public --add-port=10250/tcp --permanent -$ firewall-cmd --zone=public --add-port=10251/tcp --permanent -$ firewall-cmd --zone=public --add-port=10252/tcp --permanent -$ firewall-cmd --zone=public --add-port=30000-32767/tcp --permanent - -$ firewall-cmd --reload - -$ firewall-cmd --list-all --zone=public -public (active) - target: default - icmp-block-inversion: no - interfaces: ens2f1 ens1f0 nm-bond - sources: - services: ssh dhcpv6-client - ports: 4001/tcp 6443/tcp 2379-2380/tcp 10250/tcp 10251/tcp 10252/tcp 30000-32767/tcp - protocols: - masquerade: no - forward-ports: - source-ports: - icmp-blocks: - rich rules: -``` - -- 相关端口(worker) - -协议 | 方向 | 端口 | 说明 -:--- | :--- | :--- | :--- -TCP | Inbound | 10250 | Kubelet API -TCP | Inbound | 30000-32767 | NodePort Services - -- 设置防火墙策略 - -```sh -$ firewall-cmd --zone=public --add-port=10250/tcp --permanent -$ firewall-cmd --zone=public --add-port=30000-32767/tcp --permanent - -$ firewall-cmd --reload - -$ firewall-cmd --list-all --zone=public -public (active) - target: default - icmp-block-inversion: no - interfaces: ens2f1 ens1f0 nm-bond - sources: - services: ssh dhcpv6-client - ports: 10250/tcp 30000-32767/tcp - protocols: - masquerade: no - forward-ports: - source-ports: - icmp-blocks: - rich rules: -``` - -- 在所有kubernetes节点上允许kube-proxy的forward - -```sh -$ firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 1 -i docker0 -j ACCEPT -m comment --comment "kube-proxy redirects" -$ firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 1 -o docker0 -j ACCEPT -m comment --comment "docker subnet" -$ firewall-cmd --reload - -$ firewall-cmd --direct --get-all-rules -ipv4 filter INPUT 1 -i docker0 -j ACCEPT -m comment --comment 'kube-proxy redirects' -ipv4 filter FORWARD 1 -o docker0 -j ACCEPT -m comment --comment 'docker subnet' - -# 重启防火墙 -$ systemctl restart firewalld -``` - -- 解决kube-proxy无法启用nodePort,重启firewalld必须执行以下命令,在所有节点设置定时任务 - -```sh -$ crontab -e -0,5,10,15,20,25,30,35,40,45,50,55 * * * * /usr/sbin/iptables -D INPUT -j REJECT --reject-with icmp-host-prohibited -``` - ---- - -[返回目录](#目录) - -#### kubernetes相关服务安装 - -- 在所有kubernetes节点上安装并启动kubernetes - -```sh -$ yum install -y docker-ce-17.12.0.ce-0.2.rc2.el7.centos.x86_64 -$ yum install -y docker-compose-1.9.0-5.el7.noarch -$ systemctl enable docker && systemctl start docker - -$ yum install -y kubelet-1.11.1-0.x86_64 kubeadm-1.11.1-0.x86_64 kubectl-1.11.1-0.x86_64 -$ systemctl enable kubelet && systemctl start kubelet -``` - -- 在所有master节点安装并启动keepalived - -```sh -$ yum install -y keepalived -$ systemctl enable keepalived && systemctl restart keepalived -``` - -#### master节点互信设置 - -- 在k8s-master01节点上设置节点互信 - -```sh -$ rm -rf /root/.ssh/* -$ ssh k8s-master01 pwd -$ ssh k8s-master02 rm -rf /root/.ssh/* -$ ssh k8s-master03 rm -rf /root/.ssh/* -$ ssh k8s-master02 mkdir -p /root/.ssh/ -$ ssh k8s-master03 mkdir -p /root/.ssh/ - -$ scp /root/.ssh/known_hosts root@k8s-master02:/root/.ssh/ -$ scp /root/.ssh/known_hosts root@k8s-master03:/root/.ssh/ - -$ ssh-keygen -t rsa -P '' -f /root/.ssh/id_rsa -$ cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys -$ scp /root/.ssh/authorized_keys root@k8s-master02:/root/.ssh/ -``` - -- 在k8s-master02节点上设置节点互信 - -```sh -$ ssh-keygen -t rsa -P '' -f /root/.ssh/id_rsa -$ cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys -$ scp /root/.ssh/authorized_keys root@k8s-master03:/root/.ssh/ -``` - -- 在k8s-master03节点上设置节点互信 - -```sh -$ ssh-keygen -t rsa -P '' -f /root/.ssh/id_rsa -$ cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys -$ scp /root/.ssh/authorized_keys root@k8s-master01:/root/.ssh/ -$ scp /root/.ssh/authorized_keys root@k8s-master02:/root/.ssh/ -``` - ---- - -[返回目录](#目录) - -### master高可用安装 - -#### 配置文件初始化 - -- 在k8s-master01上克隆kubeadm-ha项目源码 - -```sh -$ git clone https://github.com/cookeem/kubeadm-ha -``` - -- 在k8s-master01上通过`create-config.sh`脚本创建相关配置文件 - -```sh -$ cd kubeadm-ha - -# 根据create-config.sh的提示,修改以下配置信息 -$ vi create-config.sh -# master keepalived virtual ip address -export K8SHA_VIP=192.168.60.79 -# master01 ip address -export K8SHA_IP1=192.168.60.72 -# master02 ip address -export K8SHA_IP2=192.168.60.77 -# master03 ip address -export K8SHA_IP3=192.168.60.78 -# master keepalived virtual ip hostname -export K8SHA_VHOST=k8s-master-lb -# master01 hostname -export K8SHA_HOST1=k8s-master01 -# master02 hostname -export K8SHA_HOST2=k8s-master02 -# master03 hostname -export K8SHA_HOST3=k8s-master03 -# master01 network interface name -export K8SHA_NETINF1=nm-bond -# master02 network interface name -export K8SHA_NETINF2=nm-bond -# master03 network interface name -export K8SHA_NETINF3=nm-bond -# keepalived auth_pass config -export K8SHA_KEEPALIVED_AUTH=412f7dc3bfed32194d1600c483e10ad1d -# calico reachable ip address -export K8SHA_CALICO_REACHABLE_IP=192.168.60.1 -# kubernetes CIDR pod subnet, if CIDR pod subnet is "172.168.0.0/16" please set to "172.168.0.0" -export K8SHA_CIDR=172.168.0.0 - -# 以下脚本会创建3个master节点的kubeadm配置文件,keepalived配置文件,nginx负载均衡配置文件,以及calico配置文件 -$ ./create-config.sh -create kubeadm-config.yaml files success. config/k8s-master01/kubeadm-config.yaml -create kubeadm-config.yaml files success. config/k8s-master02/kubeadm-config.yaml -create kubeadm-config.yaml files success. config/k8s-master03/kubeadm-config.yaml -create keepalived files success. config/k8s-master01/keepalived/ -create keepalived files success. config/k8s-master02/keepalived/ -create keepalived files success. config/k8s-master03/keepalived/ -create nginx-lb files success. config/k8s-master01/nginx-lb/ -create nginx-lb files success. config/k8s-master02/nginx-lb/ -create nginx-lb files success. config/k8s-master03/nginx-lb/ -create calico.yaml file success. calico/calico.yaml - -# 设置相关hostname变量 -$ export HOST1=k8s-master01 -$ export HOST2=k8s-master02 -$ export HOST3=k8s-master03 - -# 把kubeadm配置文件放到各个master节点的/root/目录 -$ scp -r config/$HOST1/kubeadm-config.yaml $HOST1:/root/ -$ scp -r config/$HOST2/kubeadm-config.yaml $HOST2:/root/ -$ scp -r config/$HOST3/kubeadm-config.yaml $HOST3:/root/ - -# 把keepalived配置文件放到各个master节点的/etc/keepalived/目录 -$ scp -r config/$HOST1/keepalived/* $HOST1:/etc/keepalived/ -$ scp -r config/$HOST2/keepalived/* $HOST2:/etc/keepalived/ -$ scp -r config/$HOST3/keepalived/* $HOST3:/etc/keepalived/ - -# 把nginx负载均衡配置文件放到各个master节点的/root/目录 -$ scp -r config/$HOST1/nginx-lb $HOST1:/root/ -$ scp -r config/$HOST2/nginx-lb $HOST2:/root/ -$ scp -r config/$HOST3/nginx-lb $HOST3:/root/ -``` - ---- - -[返回目录](#目录) - -#### kubeadm初始化 - -- 在k8s-master01节点上使用kubeadm进行kubernetes集群初始化 - -```sh -# 执行kubeadm init之后务必记录执行结果输出的${YOUR_TOKEN}以及${YOUR_DISCOVERY_TOKEN_CA_CERT_HASH} -$ kubeadm init --config /root/kubeadm-config.yaml -kubeadm join 192.168.20.20:6443 --token ${YOUR_TOKEN} --discovery-token-ca-cert-hash sha256:${YOUR_DISCOVERY_TOKEN_CA_CERT_HASH} -``` - -- 在所有master节点上设置kubectl的配置文件变量 - -```sh -$ cat <> ~/.bashrc -export KUBECONFIG=/etc/kubernetes/admin.conf -EOF - -$ source ~/.bashrc - -# 验证是否可以使用kubectl客户端连接集群 -$ kubectl get nodes -``` - -- 在k8s-master01节点上等待 etcd / kube-apiserver / kube-controller-manager / kube-scheduler 启动 - -```sh -$ kubectl get pods -n kube-system -o wide -NAME READY STATUS RESTARTS AGE IP NODE -... -etcd-k8s-master01 1/1 Running 0 18m 192.168.20.20 k8s-master01 -kube-apiserver-k8s-master01 1/1 Running 0 18m 192.168.20.20 k8s-master01 -kube-controller-manager-k8s-master01 1/1 Running 0 18m 192.168.20.20 k8s-master01 -kube-scheduler-k8s-master01 1/1 Running 1 18m 192.168.20.20 k8s-master01 -... -``` - ---- - -[返回目录](#目录) - -#### 高可用配置 - -- 在k8s-master01上把证书复制到其他master - -```sh -# 根据实际情况修改以下HOSTNAMES变量 -$ export CONTROL_PLANE_IPS="k8s-master02 k8s-master03" - -# 把证书复制到其他master节点 -$ for host in ${CONTROL_PLANE_IPS}; do - scp /etc/kubernetes/pki/ca.crt $host:/etc/kubernetes/pki/ca.crt - scp /etc/kubernetes/pki/ca.key $host:/etc/kubernetes/pki/ca.key - scp /etc/kubernetes/pki/sa.key $host:/etc/kubernetes/pki/sa.key - scp /etc/kubernetes/pki/sa.pub $host:/etc/kubernetes/pki/sa.pub - scp /etc/kubernetes/pki/front-proxy-ca.crt $host:/etc/kubernetes/pki/front-proxy-ca.crt - scp /etc/kubernetes/pki/front-proxy-ca.key $host:/etc/kubernetes/pki/front-proxy-ca.key - scp /etc/kubernetes/pki/etcd/ca.crt $host:/etc/kubernetes/pki/etcd/ca.crt - scp /etc/kubernetes/pki/etcd/ca.key $host:/etc/kubernetes/pki/etcd/ca.key - scp /etc/kubernetes/admin.conf $host:/etc/kubernetes/admin.conf -done -``` - -- 在k8s-master02上把节点加入集群 - -```sh -# 创建相关的证书以及kubelet配置文件 -$ kubeadm alpha phase certs all --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubeconfig controller-manager --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubeconfig scheduler --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubelet config write-to-disk --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubelet write-env-file --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubeconfig kubelet --config /root/kubeadm-config.yaml -$ systemctl restart kubelet - -# 设置k8s-master01以及k8s-master02的HOSTNAME以及地址 -$ export CP0_IP=192.168.20.20 -$ export CP0_HOSTNAME=k8s-master01 -$ export CP1_IP=192.168.20.21 -$ export CP1_HOSTNAME=k8s-master02 - -# etcd集群添加节点 -$ kubectl exec -n kube-system etcd-${CP0_HOSTNAME} -- etcdctl --ca-file /etc/kubernetes/pki/etcd/ca.crt --cert-file /etc/kubernetes/pki/etcd/peer.crt --key-file /etc/kubernetes/pki/etcd/peer.key --endpoints=https://${CP0_IP}:2379 member add ${CP1_HOSTNAME} https://${CP1_IP}:2380 -$ kubeadm alpha phase etcd local --config /root/kubeadm-config.yaml - -# 启动master节点 -$ kubeadm alpha phase kubeconfig all --config /root/kubeadm-config.yaml -$ kubeadm alpha phase controlplane all --config /root/kubeadm-config.yaml -$ kubeadm alpha phase mark-master --config /root/kubeadm-config.yaml - -# 修改/etc/kubernetes/admin.conf的服务地址指向本机 -$ sed -i "s/192.168.20.20:6443/192.168.20.21:6443/g" /etc/kubernetes/admin.conf -``` - -- 在k8s-master03上把节点加入集群 - -```sh -# 创建相关的证书以及kubelet配置文件 -$ kubeadm alpha phase certs all --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubeconfig controller-manager --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubeconfig scheduler --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubelet config write-to-disk --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubelet write-env-file --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubeconfig kubelet --config /root/kubeadm-config.yaml -$ systemctl restart kubelet - -# 设置k8s-master01以及k8s-master03的HOSTNAME以及地址 -$ export CP0_IP=192.168.20.20 -$ export CP0_HOSTNAME=k8s-master01 -$ export CP2_IP=192.168.20.22 -$ export CP2_HOSTNAME=k8s-master03 - -# etcd集群添加节点 -$ kubectl exec -n kube-system etcd-${CP0_HOSTNAME} -- etcdctl --ca-file /etc/kubernetes/pki/etcd/ca.crt --cert-file /etc/kubernetes/pki/etcd/peer.crt --key-file /etc/kubernetes/pki/etcd/peer.key --endpoints=https://${CP0_IP}:2379 member add ${CP2_HOSTNAME} https://${CP2_IP}:2380 -$ kubeadm alpha phase etcd local --config /root/kubeadm-config.yaml - -# 启动master节点 -$ kubeadm alpha phase kubeconfig all --config /root/kubeadm-config.yaml -$ kubeadm alpha phase controlplane all --config /root/kubeadm-config.yaml -$ kubeadm alpha phase mark-master --config /root/kubeadm-config.yaml - -# 修改/etc/kubernetes/admin.conf的服务地址指向本机 -$ sed -i "s/192.168.20.20:6443/192.168.20.22:6443/g" /etc/kubernetes/admin.conf -``` - -- 在所有master节点上允许hpa通过接口采集数据,修改`/etc/kubernetes/manifests/kube-controller-manager.yaml` - -```sh -$ vi /etc/kubernetes/manifests/kube-controller-manager.yaml - - --horizontal-pod-autoscaler-use-rest-clients=false -``` - -- 在所有master上允许istio的自动注入,修改`/etc/kubernetes/manifests/kube-apiserver.yaml` - -```sh -$ vi /etc/kubernetes/manifests/kube-apiserver.yaml - - --enable-admission-plugins=NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota - -# 重启服务 -systemctl restart kubelet -``` - -- 在任意master节点上安装calico,安装calico网络组件后,nodes状态才会恢复正常 - -```sh -$ kubectl apply -f calico/ -``` - ---- - -[返回目录](#目录) - -### master负载均衡设置 - -#### keepalived安装配置 - -- 在所有master节点上重启keepalived - -```sh -$ systemctl restart keepalived -$ systemctl status keepalived - -# 检查keepalived的vip是否生效 -$ curl -k https://k8s-master-lb:6443 -``` - ---- - -[返回目录](#目录) - -#### nginx负载均衡配置 - -- 在所有master节点上启动nginx-lb - -```sh -# 使用docker-compose启动nginx负载均衡 -$ docker-compose --file=/root/nginx-lb/docker-compose.yaml up -d -$ docker-compose --file=/root/nginx-lb/docker-compose.yaml ps - -# 验证负载均衡的16443端口是否生效 -$ curl -k https://k8s-master-lb:16443 -``` - ---- - -[返回目录](#目录) - -#### kube-proxy高可用设置 - -- 在任意master节点上设置kube-proxy高可用 - -```sh -# 修改kube-proxy的configmap,把server指向load-balance地址和端口 -$ kubectl edit -n kube-system configmap/kube-proxy - server: https://192.168.20.10:16443 -``` - -- 在任意master节点上重启kube-proxy - -```sh -# 查找对应的kube-proxy pods -$ kubectl get pods --all-namespaces -o wide | grep proxy - -# 删除并重启对应的kube-proxy pods -$ kubectl delete pod -n kube-system kube-proxy-XXX -``` - ---- - -[返回目录](#目录) - -#### 验证高可用状态 - -- 在任意master节点上验证服务启动情况 - -```sh -# 检查节点情况 -$ kubectl get nodes -NAME STATUS ROLES AGE VERSION -k8s-master01 Ready master 1h v1.11.1 -k8s-master02 Ready master 58m v1.11.1 -k8s-master03 Ready master 55m v1.11.1 - -# 检查pods运行情况 -$ kubectl get pods -n kube-system -o wide -NAME READY STATUS RESTARTS AGE IP NODE -calico-node-nxskr 2/2 Running 0 46m 192.168.20.22 k8s-master03 -calico-node-xv5xt 2/2 Running 0 46m 192.168.20.20 k8s-master01 -calico-node-zsmgp 2/2 Running 0 46m 192.168.20.21 k8s-master02 -coredns-78fcdf6894-kfzc7 1/1 Running 0 1h 172.168.2.3 k8s-master03 -coredns-78fcdf6894-t957l 1/1 Running 0 46m 172.168.1.2 k8s-master02 -etcd-k8s-master01 1/1 Running 0 1h 192.168.20.20 k8s-master01 -etcd-k8s-master02 1/1 Running 0 58m 192.168.20.21 k8s-master02 -etcd-k8s-master03 1/1 Running 0 54m 192.168.20.22 k8s-master03 -kube-apiserver-k8s-master01 1/1 Running 0 52m 192.168.20.20 k8s-master01 -kube-apiserver-k8s-master02 1/1 Running 0 52m 192.168.20.21 k8s-master02 -kube-apiserver-k8s-master03 1/1 Running 0 51m 192.168.20.22 k8s-master03 -kube-controller-manager-k8s-master01 1/1 Running 0 34m 192.168.20.20 k8s-master01 -kube-controller-manager-k8s-master02 1/1 Running 0 33m 192.168.20.21 k8s-master02 -kube-controller-manager-k8s-master03 1/1 Running 0 33m 192.168.20.22 k8s-master03 -kube-proxy-g9749 1/1 Running 0 36m 192.168.20.22 k8s-master03 -kube-proxy-lhzhb 1/1 Running 0 35m 192.168.20.20 k8s-master01 -kube-proxy-x8jwt 1/1 Running 0 36m 192.168.20.21 k8s-master02 -kube-scheduler-k8s-master01 1/1 Running 1 1h 192.168.20.20 k8s-master01 -kube-scheduler-k8s-master02 1/1 Running 0 57m 192.168.20.21 k8s-master02 -kube-scheduler-k8s-master03 1/1 Running 1 54m 192.168.20.22 k8s-master03 -``` - ---- - -[返回目录](#目录) - -#### 基础组件安装 - -- 在任意master节点上允许master上部署pod - -```sh -$ kubectl taint nodes --all node-role.kubernetes.io/master- -``` - -- 在任意master节点上安装metrics-server,从v1.11.0开始,性能采集不再采用heapster采集pod性能数据,而是使用metrics-server - -```sh -$ kubectl apply -f metrics-server/ - -# 等待5分钟,查看性能数据是否正常收集 -$ kubectl top pods -n kube-system -NAME CPU(cores) MEMORY(bytes) -calico-node-wkstv 47m 113Mi -calico-node-x2sn5 36m 104Mi -calico-node-xnh6s 32m 106Mi -coredns-78fcdf6894-2xc6s 14m 30Mi -coredns-78fcdf6894-rk6ch 10m 22Mi -kube-apiserver-k8s-master01 163m 816Mi -kube-apiserver-k8s-master02 79m 617Mi -kube-apiserver-k8s-master03 73m 614Mi -kube-controller-manager-k8s-master01 52m 141Mi -kube-controller-manager-k8s-master02 0m 14Mi -kube-controller-manager-k8s-master03 0m 13Mi -kube-proxy-269t2 4m 21Mi -kube-proxy-6jc8n 9m 37Mi -kube-proxy-7n8xb 9m 39Mi -kube-scheduler-k8s-master01 20m 25Mi -kube-scheduler-k8s-master02 15m 19Mi -kube-scheduler-k8s-master03 15m 19Mi -metrics-server-77b77f5fc6-jm8t6 3m 43Mi -``` - -- 在任意master节点上安装heapster,从v1.11.0开始,性能采集不再采用heapster采集pod性能数据,而是使用metrics-server,但是dashboard依然使用heapster呈现性能数据 - -```sh -# 安装heapster,需要等待5分钟,等待性能数据采集 -$ kubectl apply -f heapster/ -``` - -- 在任意master节点上安装dashboard - -```sh -# 安装dashboard -$ kubectl apply -f dashboard/ -``` - -> 成功安装后访问以下网址打开dashboard的登录界面,该界面提示需要登录token: https://k8s-master-lb:30000/ - -![dashboard-login](images/dashboard-login.png) - -- 在任意master节点上获取dashboard的登录token - -```sh -# 获取dashboard的登录token -$ kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep admin-user | awk '{print $1}') -``` - -> 使用token进行登录,进入后可以看到heapster采集的各个pod以及节点的性能数据 - -![dashboard](images/dashboard.png) - -- 在任意master节点上安装traefik - -```sh -# 创建k8s-master-lb域名的证书 -$ openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout tls.key -out tls.crt -subj "/CN=k8s-master-lb" - -# 把证书写入到secret -kubectl -n kube-system create secret generic traefik-cert --from-file=tls.key --from-file=tls.crt - -# 安装traefik -$ kubectl apply -f traefik/ -``` - -> 成功安装后访问以下网址打开traefik管理界面: http://k8s-master-lb:30011/ - -![traefik](images/traefik.png) - -- 在任意master节点上安装istio - -```sh -# 安装istio -$ kubectl apply -f istio/ - -# 检查istio服务相关pods -$ kubectl get pods -n istio-system -NAME READY STATUS RESTARTS AGE -grafana-69c856fc69-jbx49 1/1 Running 1 21m -istio-citadel-7c4fc8957b-vdbhp 1/1 Running 1 21m -istio-cleanup-secrets-5g95n 0/1 Completed 0 21m -istio-egressgateway-64674bd988-44fg8 1/1 Running 0 18m -istio-egressgateway-64674bd988-dgvfm 1/1 Running 1 16m -istio-egressgateway-64674bd988-fprtc 1/1 Running 0 18m -istio-egressgateway-64674bd988-kl6pw 1/1 Running 3 16m -istio-egressgateway-64674bd988-nphpk 1/1 Running 3 16m -istio-galley-595b94cddf-c5ctw 1/1 Running 70 21m -istio-grafana-post-install-nhs47 0/1 Completed 0 21m -istio-ingressgateway-4vtk5 1/1 Running 2 21m -istio-ingressgateway-5rscp 1/1 Running 3 21m -istio-ingressgateway-6z95f 1/1 Running 3 21m -istio-policy-589977bff5-jx5fd 2/2 Running 3 21m -istio-policy-589977bff5-n74q8 2/2 Running 3 21m -istio-sidecar-injector-86c4d57d56-mfnbp 1/1 Running 39 21m -istio-statsd-prom-bridge-5698d5798c-xdpp6 1/1 Running 1 21m -istio-telemetry-85d6475bfd-8lvsm 2/2 Running 2 21m -istio-telemetry-85d6475bfd-bfjsn 2/2 Running 2 21m -istio-telemetry-85d6475bfd-d9ld9 2/2 Running 2 21m -istio-tracing-bd5765b5b-cmszp 1/1 Running 1 21m -prometheus-77c5fc7cd-zf7zr 1/1 Running 1 21m -servicegraph-6b99c87849-l6zm6 1/1 Running 1 21m -``` - -- 在任意master节点上安装prometheus - -```sh -# 安装prometheus -$ kubectl apply -f prometheus/ -``` - -> 成功安装后访问以下网址打开prometheus管理界面,查看相关性能采集数据: http://k8s-master-lb:30013/ - -![prometheus](images/prometheus.png) - -> 成功安装后访问以下网址打开grafana管理界面(账号密码都是`admin`),查看相关性能采集数据: http://k8s-master-lb:30006/ -> 登录后,进入datasource设置界面,增加prometheus数据源,http://k8s-master-lb:30006/datasources - -![grafana-datasource](images/grafana-datasource.png) - -> 进入导入dashboard界面: http://k8s-master-lb:30006/dashboard/import 导入`heapster/grafana-dashboard`目录下的dashboard `Kubernetes App Metrics`和`Kubernetes cluster monitoring (via Prometheus)` - -![grafana-import](images/grafana-import.png) - -> 导入的dashboard性能呈现如下图: - -![grafana-cluster](images/grafana-cluster.png) - -![grafana-app](images/grafana-app.png) - ---- - -[返回目录](#目录) - -### worker节点设置 - -#### worker加入高可用集群 - -- 在所有workers节点上,使用kubeadm join加入kubernetes集群 - -```sh -# 清理节点上的kubernetes配置信息 -$ kubeadm reset - -# 使用之前kubeadm init执行结果记录的${YOUR_TOKEN}以及${YOUR_DISCOVERY_TOKEN_CA_CERT_HASH},把worker节点加入到集群 -$ kubeadm join 192.168.20.20:6443 --token ${YOUR_TOKEN} --discovery-token-ca-cert-hash sha256:${YOUR_DISCOVERY_TOKEN_CA_CERT_HASH} - - -# 在workers上修改kubernetes集群设置,让server指向nginx负载均衡的ip和端口 -$ sed -i "s/192.168.20.20:6443/192.168.20.10:16443/g" /etc/kubernetes/bootstrap-kubelet.conf -$ sed -i "s/192.168.20.20:6443/192.168.20.10:16443/g" /etc/kubernetes/kubelet.conf - -# 重启本节点 -$ systemctl restart docker kubelet -``` - -- 在任意master节点上验证节点状态 - -```sh -$ kubectl get nodes -NAME STATUS ROLES AGE VERSION -k8s-master01 Ready master 1h v1.11.1 -k8s-master02 Ready master 58m v1.11.1 -k8s-master03 Ready master 55m v1.11.1 -k8s-node01 Ready 30m v1.11.1 -k8s-node02 Ready 24m v1.11.1 -k8s-node03 Ready 22m v1.11.1 -k8s-node04 Ready 22m v1.11.1 -k8s-node05 Ready 16m v1.11.1 -k8s-node06 Ready 13m v1.11.1 -k8s-node07 Ready 11m v1.11.1 -k8s-node08 Ready 10m v1.11.1 -``` - ---- - -[返回目录](#目录) - -### 集群验证 - -#### 验证集群高可用设置 - -- 验证集群高可用 - -```sh -# 创建一个replicas=3的nginx deployment -$ kubectl run nginx --image=nginx --replicas=3 --port=80 -deployment "nginx" created - -# 检查nginx pod的创建情况 -$ kubectl get pods -l=run=nginx -o wide -NAME READY STATUS RESTARTS AGE IP NODE -nginx-58b94844fd-jvlqh 1/1 Running 0 9s 172.168.7.2 k8s-node05 -nginx-58b94844fd-mkt72 1/1 Running 0 9s 172.168.9.2 k8s-node07 -nginx-58b94844fd-xhb8x 1/1 Running 0 9s 172.168.11.2 k8s-node09 - -# 创建nginx的NodePort service -$ kubectl expose deployment nginx --type=NodePort --port=80 -service "nginx" exposed - -# 检查nginx service的创建情况 -$ kubectl get svc -l=run=nginx -o wide -NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE SELECTOR -nginx NodePort 10.106.129.121 80:31443/TCP 7s run=nginx - -# 检查nginx NodePort service是否正常提供服务 -$ curl k8s-master-lb:31443 - - - -Welcome to nginx! - - - -

Welcome to nginx!

-

If you see this page, the nginx web server is successfully installed and -working. Further configuration is required.

- -

For online documentation and support please refer to -nginx.org.
-Commercial support is available at -nginx.com.

- -

Thank you for using nginx.

- - -``` - -- pod之间互访测试 - -```sh -# 启动一个client测试nginx是否可以访问 -kubectl run nginx-client -ti --rm --image=alpine -- ash -/ # wget -O - nginx -Connecting to nginx (10.102.101.78:80) -index.html 100% |*****************************************| 612 0:00:00 ETA - - - - -Welcome to nginx! - - - -

Welcome to nginx!

-

If you see this page, the nginx web server is successfully installed and -working. Further configuration is required.

- -

For online documentation and support please refer to -nginx.org.
-Commercial support is available at -nginx.com.

- -

Thank you for using nginx.

- - - -# 清除nginx的deployment以及service -kubectl delete deploy,svc nginx -``` - -- 测试HPA自动扩展 - -```sh -# 创建测试服务 -kubectl run nginx-server --requests=cpu=10m --image=nginx --port=80 -kubectl expose deployment nginx-server --port=80 - -# 创建hpa -kubectl autoscale deployment nginx-server --cpu-percent=10 --min=1 --max=10 -kubectl get hpa -kubectl describe hpa nginx-server - -# 给测试服务增加负载 -kubectl run -ti --rm load-generator --image=busybox -- ash -wget -q -O- http://nginx-server.default.svc.cluster.local > /dev/null -while true; do wget -q -O- http://nginx-server.default.svc.cluster.local > /dev/null; done - -# 检查hpa自动扩展情况,一般需要等待几分钟。结束增加负载后,pod自动缩容(自动缩容需要大概10-15分钟) -kubectl get hpa -w - -# 删除测试数据 -kubectl delete deploy,svc,hpa nginx-server -``` - ---- - -[返回目录](#目录) - -- 至此kubernetes高可用集群完成部署,并测试通过 😃 From fdda42676685c53bb56cde28f6bc6c85081b1d35 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=9C=E5=AE=BD?= Date: Fri, 12 Jul 2019 10:23:25 +0800 Subject: [PATCH 03/16] deleted useless configuration --- README_CN.md | 5 - v1.6/README.md | 1226 ---------------- v1.6/README_CN.md | 1237 ----------------- v1.6/images/dashboard.png | Bin 67268 -> 0 bytes v1.6/images/heapster.png | Bin 81718 -> 0 bytes .../kubernetes-dashboard-1.6.1.yaml | 98 -- .../step1-kube-flannel-rbac-v0.7.1.yml | 42 - .../step2-kube-flannel-v0.7.1.yml | 93 -- v1.6/kube-heapster/grafana.yaml | 66 - v1.6/kube-heapster/heapster-rbac.yaml | 67 - v1.6/kube-heapster/influxdb.yaml | 40 - v1.6/kubeadm-init-v1.6.x.yaml | 10 - v1.6/nginx-default.conf | 47 - v1.7/README.md | 1141 --------------- v1.7/README_CN.md | 1152 --------------- v1.7/images/dashboard.png | Bin 67268 -> 0 bytes v1.7/images/heapster.png | Bin 81718 -> 0 bytes .../kubernetes-dashboard-1.6.1.yaml | 98 -- .../step1-kube-flannel-rbac-v0.7.1.yml | 42 - .../step2-kube-flannel-v0.7.1.yml | 93 -- v1.7/kube-heapster/grafana.yaml | 66 - v1.7/kube-heapster/heapster-rbac.yaml | 67 - v1.7/kube-heapster/influxdb.yaml | 40 - v1.7/kubeadm-init-v1.7.x.yaml | 18 - v1.7/nginx-default.conf | 47 - v1.9/README.md | 1028 -------------- v1.9/README_CN.md | 1036 -------------- v1.9/create-config.sh | 121 -- v1.9/etcd/docker-compose.yaml.tpl | 25 - v1.9/images/dashboard-login.png | Bin 95853 -> 0 bytes v1.9/images/dashboard.png | Bin 124715 -> 0 bytes v1.9/images/heapster-dashboard.png | Bin 104799 -> 0 bytes v1.9/images/heapster.png | Bin 126660 -> 0 bytes v1.9/keepalived/check_apiserver.sh | 24 - v1.9/keepalived/keepalived.conf.tpl | 29 - v1.9/kube-canal/canal.yaml.tpl | 357 ----- v1.9/kube-canal/rbac.yaml | 129 -- v1.9/kube-dashboard/kubernetes-dashboard.yaml | 192 --- v1.9/kube-heapster/influxdb/grafana.yaml | 75 - v1.9/kube-heapster/influxdb/heapster.yaml | 48 - v1.9/kube-heapster/influxdb/influxdb.yaml | 43 - v1.9/kube-heapster/rbac/heapster-rbac.yaml | 12 - v1.9/kube-ingress/configmap.yaml | 7 - v1.9/kube-ingress/default-backend.yaml | 55 - v1.9/kube-ingress/ingress-demo.yaml | 49 - v1.9/kube-ingress/namespace.yaml | 4 - v1.9/kube-ingress/rbac.yaml | 133 -- v1.9/kube-ingress/tcp-services-configmap.yaml | 5 - v1.9/kube-ingress/udp-services-configmap.yaml | 5 - v1.9/kube-ingress/with-rbac.yaml | 75 - v1.9/kubeadm-init.yaml.tpl | 22 - v1.9/nginx-lb/docker-compose.yaml | 11 - v1.9/nginx-lb/nginx-lb.conf.tpl | 46 - 53 files changed, 9226 deletions(-) delete mode 100644 README_CN.md delete mode 100644 v1.6/README.md delete mode 100644 v1.6/README_CN.md delete mode 100644 v1.6/images/dashboard.png delete mode 100644 v1.6/images/heapster.png delete mode 100644 v1.6/kube-dashboard/kubernetes-dashboard-1.6.1.yaml delete mode 100644 v1.6/kube-flannel/step1-kube-flannel-rbac-v0.7.1.yml delete mode 100644 v1.6/kube-flannel/step2-kube-flannel-v0.7.1.yml delete mode 100644 v1.6/kube-heapster/grafana.yaml delete mode 100644 v1.6/kube-heapster/heapster-rbac.yaml delete mode 100644 v1.6/kube-heapster/influxdb.yaml delete mode 100644 v1.6/kubeadm-init-v1.6.x.yaml delete mode 100644 v1.6/nginx-default.conf delete mode 100644 v1.7/README.md delete mode 100644 v1.7/README_CN.md delete mode 100644 v1.7/images/dashboard.png delete mode 100644 v1.7/images/heapster.png delete mode 100644 v1.7/kube-dashboard/kubernetes-dashboard-1.6.1.yaml delete mode 100644 v1.7/kube-flannel/step1-kube-flannel-rbac-v0.7.1.yml delete mode 100644 v1.7/kube-flannel/step2-kube-flannel-v0.7.1.yml delete mode 100644 v1.7/kube-heapster/grafana.yaml delete mode 100644 v1.7/kube-heapster/heapster-rbac.yaml delete mode 100644 v1.7/kube-heapster/influxdb.yaml delete mode 100644 v1.7/kubeadm-init-v1.7.x.yaml delete mode 100644 v1.7/nginx-default.conf delete mode 100644 v1.9/README.md delete mode 100644 v1.9/README_CN.md delete mode 100755 v1.9/create-config.sh delete mode 100644 v1.9/etcd/docker-compose.yaml.tpl delete mode 100644 v1.9/images/dashboard-login.png delete mode 100644 v1.9/images/dashboard.png delete mode 100644 v1.9/images/heapster-dashboard.png delete mode 100644 v1.9/images/heapster.png delete mode 100755 v1.9/keepalived/check_apiserver.sh delete mode 100644 v1.9/keepalived/keepalived.conf.tpl delete mode 100644 v1.9/kube-canal/canal.yaml.tpl delete mode 100644 v1.9/kube-canal/rbac.yaml delete mode 100644 v1.9/kube-dashboard/kubernetes-dashboard.yaml delete mode 100644 v1.9/kube-heapster/influxdb/grafana.yaml delete mode 100644 v1.9/kube-heapster/influxdb/heapster.yaml delete mode 100644 v1.9/kube-heapster/influxdb/influxdb.yaml delete mode 100644 v1.9/kube-heapster/rbac/heapster-rbac.yaml delete mode 100644 v1.9/kube-ingress/configmap.yaml delete mode 100644 v1.9/kube-ingress/default-backend.yaml delete mode 100644 v1.9/kube-ingress/ingress-demo.yaml delete mode 100644 v1.9/kube-ingress/namespace.yaml delete mode 100644 v1.9/kube-ingress/rbac.yaml delete mode 100644 v1.9/kube-ingress/tcp-services-configmap.yaml delete mode 100644 v1.9/kube-ingress/udp-services-configmap.yaml delete mode 100644 v1.9/kube-ingress/with-rbac.yaml delete mode 100644 v1.9/kubeadm-init.yaml.tpl delete mode 100644 v1.9/nginx-lb/docker-compose.yaml delete mode 100644 v1.9/nginx-lb/nginx-lb.conf.tpl diff --git a/README_CN.md b/README_CN.md deleted file mode 100644 index e645694..0000000 --- a/README_CN.md +++ /dev/null @@ -1,5 +0,0 @@ -``` - - 安装过程请:https://www.cnblogs.com/dukuan/p/9856269.html - -``` diff --git a/v1.6/README.md b/v1.6/README.md deleted file mode 100644 index c98ca8b..0000000 --- a/v1.6/README.md +++ /dev/null @@ -1,1226 +0,0 @@ -# kubeadm-highavailiability - kubernetes high availiability deployment based on kubeadm, for Kubernetes version v1.11.x/v1.9.x/v1.7.x/v1.6.x - -![k8s logo](../images/Kubernetes.png) - -- [中文文档(for v1.11.x版本)](../README_CN.md) -- [English document(for v1.11.x version)](../README.md) -- [中文文档(for v1.9.x版本)](../v1.9/README_CN.md) -- [English document(for v1.9.x version)](../v1.9/README.md) -- [中文文档(for v1.7.x版本)](../v1.7/README_CN.md) -- [English document(for v1.7.x version)](../v1.7/README.md) -- [中文文档(for v1.6.x版本)](../v1.6/README_CN.md) -- [English document(for v1.6.x version)](../v1.6/README.md) - ---- - -- [GitHub project URL](https://github.com/cookeem/kubeadm-ha/) -- [OSChina project URL](https://git.oschina.net/cookeem/kubeadm-ha/) - ---- - -- This operation instruction is for version v1.6.x kubernetes cluster - -### category - -1. [deployment architecture](#deployment-architecture) - 1. [deployment architecture summary](#deployment-architecture-summary) - 1. [detail deployment architecture](#detail-deployment-architecture) - 1. [hosts list](#hosts-list) -1. [prerequisites](#prerequisites) - 1. [version info](#version-info) - 1. [required docker images](#required-docker-images) - 1. [system configuration](#system-configuration) -1. [kubernetes installation](#kubernetes-installation) - 1. [kubernetes and related services installation](#kubernetes-and-related-services-installation) - 1. [load docker images](#load-docker-images) -1. [use kubeadm to init first master](#use-kubeadm-to-init-first-master) - 1. [deploy independent etcd tls cluster](#deploy-independent-etcd-tls-cluster) - 1. [kubeadm init](#kubeadm-init) - 1. [install flannel networks addon](#install-flannel-networks-addon) - 1. [install dashboard addon](#install-dashboard-addon) - 1. [install heapster addon](#install-heapster-addon) -1. [kubernetes masters high avialiability configuration](#kubernetes-masters-high-avialiability-configuration) - 1. [copy configuration files](#copy-configuration-files) - 1. [create certificatie](#create-certificatie) - 1. [edit configuration files](#edit-configuration-files) - 1. [verify master high avialiability](#verify-master-high-avialiability) - 1. [keepalived installation](#keepalived-installation) - 1. [nginx load balancer configuration](#nginx-load-balancer-configuration) - 1. [kube-proxy configuration](#kube-proxy-configuration) - 1. [verfify master high avialiability with keepalived](#verfify-master-high-avialiability-with-keepalived) -1. [k8s-nodes join the kubernetes cluster](#k8s-nodes-join-the-kubernetes-cluster) - 1. [use kubeadm to join the cluster](#use-kubeadm-to-join-the-cluster) - 1. [deploy nginx application to verify installation](#deploy-nginx-application-to-verify-installation) - - -### deployment architecture - -#### deployment architecture summary - -![ha logo](../images/ha.png) - ---- -[category](#category) - -#### detail deployment architecture - -![k8s ha](../images/k8s-ha.png) - -* kubernetes components: - -> kube-apiserver: exposes the Kubernetes API. It is the front-end for the Kubernetes control plane. It is designed to scale horizontally – that is, it scales by deploying more instances. - -> etcd: is used as Kubernetes’ backing store. All cluster data is stored here. Always have a backup plan for etcd’s data for your Kubernetes cluster. - - -> kube-scheduler: watches newly created pods that have no node assigned, and selects a node for them to run on. - - -> kube-controller-manager: runs controllers, which are the background threads that handle routine tasks in the cluster. Logically, each controller is a separate process, but to reduce complexity, they are all compiled into a single binary and run in a single process. - -> kubelet: is the primary node agent. It watches for pods that have been assigned to its node (either by apiserver or via local configuration file) - -> kube-proxy: enables the Kubernetes service abstraction by maintaining network rules on the host and performing connection forwarding. - - -* load balancer - -> keepalived cluster config a virtual IP address (192.168.60.80), this virtual IP address point to k8s-master1, k8s-master2, k8s-master3. - -> nginx service as the load balancer of k8s-master1, k8s-master2, k8s-master3's apiserver. The other nodes kubernetes services connect the keepalived virtual ip address (192.168.60.80) and nginx exposed port (8443) to communicate with the master cluster's apiservers. - ---- -[category](#category) - -#### hosts list - - HostName | IPAddress | Notes | Components - :--- | :--- | :--- | :--- - k8s-master1 | 192.168.60.71 | master node 1 | keepalived, nginx, etcd, kubelet, kube-apiserver, kube-scheduler, kube-proxy, kube-dashboard, heapster - k8s-master2 | 192.168.60.72 | master node 2 | keepalived, nginx, etcd, kubelet, kube-apiserver, kube-scheduler, kube-proxy, kube-dashboard, heapster - k8s-master3 | 192.168.60.73 | master node 3 | keepalived, nginx, etcd, kubelet, kube-apiserver, kube-scheduler, kube-proxy, kube-dashboard, heapster - N/A | 192.168.60.80 | keepalived virtual IP | N/A - k8s-node1 ~ 8 | 192.168.60.81 ~ 88 | 8 worker nodes | kubelet, kube-proxy - ---- -[category](#category) - -### prerequisites - -#### version info - -* Linux version: CentOS 7.3.1611 - -``` -cat /etc/redhat-release -CentOS Linux release 7.3.1611 (Core) -``` - -* docker version: 1.12.6 - -``` -$ docker version -Client: - Version: 1.12.6 - API version: 1.24 - Go version: go1.6.4 - Git commit: 78d1802 - Built: Tue Jan 10 20:20:01 2017 - OS/Arch: linux/amd64 - -Server: - Version: 1.12.6 - API version: 1.24 - Go version: go1.6.4 - Git commit: 78d1802 - Built: Tue Jan 10 20:20:01 2017 - OS/Arch: linux/amd64 -``` - -* kubeadm version: v1.6.4 - -``` -$ kubeadm version -kubeadm version: version.Info{Major:"1", Minor:"6", GitVersion:"v1.6.4", GitCommit:"d6f433224538d4f9ca2f7ae19b252e6fcb66a3ae", GitTreeState:"clean", BuildDate:"2017-05-19T18:33:17Z", GoVersion:"go1.7.5", Compiler:"gc", Platform:"linux/amd64"} -``` - -* kubelet version: v1.6.4 - -``` -$ kubelet --version -Kubernetes v1.6.4 -``` - ---- - -[category](#category) - -#### required docker images - -* on your local laptop MacOSX: pull related docker images - -``` -$ docker pull gcr.io/google_containers/kube-apiserver-amd64:v1.6.4 -$ docker pull gcr.io/google_containers/kube-proxy-amd64:v1.6.4 -$ docker pull gcr.io/google_containers/kube-controller-manager-amd64:v1.6.4 -$ docker pull gcr.io/google_containers/kube-scheduler-amd64:v1.6.4 -$ docker pull gcr.io/google_containers/kubernetes-dashboard-amd64:v1.6.1 -$ docker pull quay.io/coreos/flannel:v0.7.1-amd64 -$ docker pull gcr.io/google_containers/heapster-amd64:v1.3.0 -$ docker pull gcr.io/google_containers/k8s-dns-sidecar-amd64:1.14.1 -$ docker pull gcr.io/google_containers/k8s-dns-kube-dns-amd64:1.14.1 -$ docker pull gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64:1.14.1 -$ docker pull gcr.io/google_containers/etcd-amd64:3.0.17 -$ docker pull gcr.io/google_containers/heapster-grafana-amd64:v4.0.2 -$ docker pull gcr.io/google_containers/heapster-influxdb-amd64:v1.1.1 -$ docker pull nginx:latest -$ docker pull gcr.io/google_containers/pause-amd64:3.0 -``` - -* on your local laptop MacOSX: clone codes from git and change working directory in codes - -``` -$ git clone https://github.com/cookeem/kubeadm-ha -$ cd kubeadm-ha -``` - -* on your local laptop MacOSX: save related docker images in docker-images directory - -``` -$ mkdir -p docker-images -$ docker save -o docker-images/kube-apiserver-amd64 gcr.io/google_containers/kube-apiserver-amd64:v1.6.4 -$ docker save -o docker-images/kube-proxy-amd64 gcr.io/google_containers/kube-proxy-amd64:v1.6.4 -$ docker save -o docker-images/kube-controller-manager-amd64 gcr.io/google_containers/kube-controller-manager-amd64:v1.6.4 -$ docker save -o docker-images/kube-scheduler-amd64 gcr.io/google_containers/kube-scheduler-amd64:v1.6.4 -$ docker save -o docker-images/kubernetes-dashboard-amd64 gcr.io/google_containers/kubernetes-dashboard-amd64:v1.6.1 -$ docker save -o docker-images/flannel quay.io/coreos/flannel:v0.7.1-amd64 -$ docker save -o docker-images/heapster-amd64 gcr.io/google_containers/heapster-amd64:v1.3.0 -$ docker save -o docker-images/k8s-dns-sidecar-amd64 gcr.io/google_containers/k8s-dns-sidecar-amd64:1.14.1 -$ docker save -o docker-images/k8s-dns-kube-dns-amd64 gcr.io/google_containers/k8s-dns-kube-dns-amd64:1.14.1 -$ docker save -o docker-images/k8s-dns-dnsmasq-nanny-amd64 gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64:1.14.1 -$ docker save -o docker-images/etcd-amd64 gcr.io/google_containers/etcd-amd64:3.0.17 -$ docker save -o docker-images/heapster-grafana-amd64 gcr.io/google_containers/heapster-grafana-amd64:v4.0.2 -$ docker save -o docker-images/heapster-influxdb-amd64 gcr.io/google_containers/heapster-influxdb-amd64:v1.1.1 -$ docker save -o docker-images/pause-amd64 gcr.io/google_containers/pause-amd64:3.0 -$ docker save -o docker-images/nginx nginx:latest -``` - -* on your local laptop MacOSX: copy all codes and docker images directory to all kubernetes nodes - -``` -$ scp -r * root@k8s-master1:/root/kubeadm-ha -$ scp -r * root@k8s-master2:/root/kubeadm-ha -$ scp -r * root@k8s-master3:/root/kubeadm-ha -$ scp -r * root@k8s-node1:/root/kubeadm-ha -$ scp -r * root@k8s-node2:/root/kubeadm-ha -$ scp -r * root@k8s-node3:/root/kubeadm-ha -$ scp -r * root@k8s-node4:/root/kubeadm-ha -$ scp -r * root@k8s-node5:/root/kubeadm-ha -$ scp -r * root@k8s-node6:/root/kubeadm-ha -$ scp -r * root@k8s-node7:/root/kubeadm-ha -$ scp -r * root@k8s-node8:/root/kubeadm-ha -``` - ---- -[category](#category) - -#### system configuration - -* on all kubernetes nodes: add kubernetes' repository - -``` -$ cat < /etc/yum.repos.d/kubernetes.repo -[kubernetes] -name=Kubernetes -baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64 -enabled=1 -gpgcheck=1 -repo_gpgcheck=1 -gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg - https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg -EOF -``` - -* on all kubernetes nodes: use yum to update system - -``` -$ yum update -y -``` - -* on all kubernetes nodes: turn off firewalld service - -``` -$ systemctl disable firewalld && systemctl stop firewalld && systemctl status firewalld -``` - -* on all kubernetes nodes: set SELINUX to permissive mode - -``` -$ vi /etc/selinux/config -SELINUX=permissive -``` - -* on all kubernetes nodes: set iptables parameters - -``` -$ vi /etc/sysctl.d/k8s.conf -net.bridge.bridge-nf-call-iptables = 1 -net.bridge.bridge-nf-call-ip6tables = 1 -``` - -* on all kubernetes nodes: reboot host - -``` -$ reboot -``` - ---- -[category](#category) - -### kubernetes installation - -#### kubernetes and related services installation - -* on all kubernetes nodes: check SELINUX mode must set as permissive mode - -``` -$ getenforce -Permissive -``` - -* on all kubernetes nodes: install kubernetes and related services, then start up kubelet and docker daemon - -``` -$ yum search docker --showduplicates -$ yum install docker-1.12.6-16.el7.centos.x86_64 - -$ yum search kubelet --showduplicates -$ yum install kubelet-1.6.4-0.x86_64 - -$ yum search kubeadm --showduplicates -$ yum install kubeadm-1.6.4-0.x86_64 - -$ yum search kubernetes-cni --showduplicates -$ yum install kubernetes-cni-0.5.1-0.x86_64 - -$ systemctl enable docker && systemctl start docker -$ systemctl enable kubelet && systemctl start kubelet -``` - ---- -[category](#category) - -#### load docker images - -* on all kubernetes nodes: load docker images - -``` -$ docker load -i /root/kubeadm-ha/docker-images/etcd-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/flannel -$ docker load -i /root/kubeadm-ha/docker-images/heapster-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/heapster-grafana-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/heapster-influxdb-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/k8s-dns-dnsmasq-nanny-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/k8s-dns-kube-dns-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/k8s-dns-sidecar-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/kube-apiserver-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/kube-controller-manager-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/kube-proxy-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/kubernetes-dashboard-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/kube-scheduler-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/pause-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/nginx - -$ docker images -REPOSITORY TAG IMAGE ID CREATED SIZE -gcr.io/google_containers/kube-apiserver-amd64 v1.6.4 4e3810a19a64 5 weeks ago 150.6 MB -gcr.io/google_containers/kube-proxy-amd64 v1.6.4 e073a55c288b 5 weeks ago 109.2 MB -gcr.io/google_containers/kube-controller-manager-amd64 v1.6.4 0ea16a85ac34 5 weeks ago 132.8 MB -gcr.io/google_containers/kube-scheduler-amd64 v1.6.4 1fab9be555e1 5 weeks ago 76.75 MB -gcr.io/google_containers/kubernetes-dashboard-amd64 v1.6.1 71dfe833ce74 6 weeks ago 134.4 MB -quay.io/coreos/flannel v0.7.1-amd64 cd4ae0be5e1b 10 weeks ago 77.76 MB -gcr.io/google_containers/heapster-amd64 v1.3.0 f9d33bedfed3 3 months ago 68.11 MB -gcr.io/google_containers/k8s-dns-sidecar-amd64 1.14.1 fc5e302d8309 4 months ago 44.52 MB -gcr.io/google_containers/k8s-dns-kube-dns-amd64 1.14.1 f8363dbf447b 4 months ago 52.36 MB -gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64 1.14.1 1091847716ec 4 months ago 44.84 MB -gcr.io/google_containers/etcd-amd64 3.0.17 243830dae7dd 4 months ago 168.9 MB -gcr.io/google_containers/heapster-grafana-amd64 v4.0.2 a1956d2a1a16 5 months ago 131.5 MB -gcr.io/google_containers/heapster-influxdb-amd64 v1.1.1 d3fccbedd180 5 months ago 11.59 MB -nginx latest 01f818af747d 6 months ago 181.6 MB -gcr.io/google_containers/pause-amd64 3.0 99e59f495ffa 14 months ago 746.9 kB -``` - ---- -[category](#category) - -### use kubeadm to init first master - -#### deploy independent etcd tls cluster - -* on k8s-master1: use docker to start independent etcd tls cluster - -``` -$ docker stop etcd && docker rm etcd -$ rm -rf /var/lib/etcd-cluster -$ mkdir -p /var/lib/etcd-cluster -$ docker run -d \ ---restart always \ --v /etc/ssl/certs:/etc/ssl/certs \ --v /var/lib/etcd-cluster:/var/lib/etcd \ --p 4001:4001 \ --p 2380:2380 \ --p 2379:2379 \ ---name etcd \ -gcr.io/google_containers/etcd-amd64:3.0.17 \ -etcd --name=etcd0 \ ---advertise-client-urls=http://192.168.60.71:2379,http://192.168.60.71:4001 \ ---listen-client-urls=http://0.0.0.0:2379,http://0.0.0.0:4001 \ ---initial-advertise-peer-urls=http://192.168.60.71:2380 \ ---listen-peer-urls=http://0.0.0.0:2380 \ ---initial-cluster-token=9477af68bbee1b9ae037d6fd9e7efefd \ ---initial-cluster=etcd0=http://192.168.60.71:2380,etcd1=http://192.168.60.72:2380,etcd2=http://192.168.60.73:2380 \ ---initial-cluster-state=new \ ---auto-tls \ ---peer-auto-tls \ ---data-dir=/var/lib/etcd -``` - -* on k8s-master2: use docker to start independent etcd tls cluster - -``` -$ docker stop etcd && docker rm etcd -$ rm -rf /var/lib/etcd-cluster -$ mkdir -p /var/lib/etcd-cluster -$ docker run -d \ ---restart always \ --v /etc/ssl/certs:/etc/ssl/certs \ --v /var/lib/etcd-cluster:/var/lib/etcd \ --p 4001:4001 \ --p 2380:2380 \ --p 2379:2379 \ ---name etcd \ -gcr.io/google_containers/etcd-amd64:3.0.17 \ -etcd --name=etcd1 \ ---advertise-client-urls=http://192.168.60.72:2379,http://192.168.60.72:4001 \ ---listen-client-urls=http://0.0.0.0:2379,http://0.0.0.0:4001 \ ---initial-advertise-peer-urls=http://192.168.60.72:2380 \ ---listen-peer-urls=http://0.0.0.0:2380 \ ---initial-cluster-token=9477af68bbee1b9ae037d6fd9e7efefd \ ---initial-cluster=etcd0=http://192.168.60.71:2380,etcd1=http://192.168.60.72:2380,etcd2=http://192.168.60.73:2380 \ ---initial-cluster-state=new \ ---auto-tls \ ---peer-auto-tls \ ---data-dir=/var/lib/etcd -``` - -* on k8s-master3: use docker to start independent etcd tls cluster - -``` -$ docker stop etcd && docker rm etcd -$ rm -rf /var/lib/etcd-cluster -$ mkdir -p /var/lib/etcd-cluster -$ docker run -d \ ---restart always \ --v /etc/ssl/certs:/etc/ssl/certs \ --v /var/lib/etcd-cluster:/var/lib/etcd \ --p 4001:4001 \ --p 2380:2380 \ --p 2379:2379 \ ---name etcd \ -gcr.io/google_containers/etcd-amd64:3.0.17 \ -etcd --name=etcd2 \ ---advertise-client-urls=http://192.168.60.73:2379,http://192.168.60.73:4001 \ ---listen-client-urls=http://0.0.0.0:2379,http://0.0.0.0:4001 \ ---initial-advertise-peer-urls=http://192.168.60.73:2380 \ ---listen-peer-urls=http://0.0.0.0:2380 \ ---initial-cluster-token=9477af68bbee1b9ae037d6fd9e7efefd \ ---initial-cluster=etcd0=http://192.168.60.71:2380,etcd1=http://192.168.60.72:2380,etcd2=http://192.168.60.73:2380 \ ---initial-cluster-state=new \ ---auto-tls \ ---peer-auto-tls \ ---data-dir=/var/lib/etcd -``` - -* on k8s-master1, k8s-master2, k8s-master3: check etcd cluster health - -``` -$ docker exec -ti etcd ash - -$ etcdctl member list -1a32c2d3f1abcad0: name=etcd2 peerURLs=http://192.168.60.73:2380 clientURLs=http://192.168.60.73:2379,http://192.168.60.73:4001 isLeader=false -1da4f4e8b839cb79: name=etcd1 peerURLs=http://192.168.60.72:2380 clientURLs=http://192.168.60.72:2379,http://192.168.60.72:4001 isLeader=false -4238bcb92d7f2617: name=etcd0 peerURLs=http://192.168.60.71:2380 clientURLs=http://192.168.60.71:2379,http://192.168.60.71:4001 isLeader=true - -$ etcdctl cluster-health -member 1a32c2d3f1abcad0 is healthy: got healthy result from http://192.168.60.73:2379 -member 1da4f4e8b839cb79 is healthy: got healthy result from http://192.168.60.72:2379 -member 4238bcb92d7f2617 is healthy: got healthy result from http://192.168.60.71:2379 -cluster is healthy - -$ exit -``` - ---- -[category](#category) - -#### kubeadm init - -* on k8s-master1: edit kubeadm-init-v1.6.x.yaml file, set etcd.endpoints.${HOST_IP} to k8s-master1, k8s-master2, k8s-master3's IP address - -``` -$ vi /root/kubeadm-ha/kubeadm-init-v1.6.x.yaml -apiVersion: kubeadm.k8s.io/v1alpha1 -kind: MasterConfiguration -kubernetesVersion: v1.6.4 -networking: - podSubnet: 10.244.0.0/16 -etcd: - endpoints: - - http://192.168.60.71:2379 - - http://192.168.60.72:2379 - - http://192.168.60.73:2379 -``` - -* if kubeadm init stuck at tips below, that may because cgroup-driver parameters different with your docker service's setting -* [apiclient] Created API client, waiting for the control plane to become ready -* use "journalctl -t kubelet -S '2017-06-08'" to check logs, and you will find error below: -* error: failed to run Kubelet: failed to create kubelet: misconfiguration: kubelet cgroup driver: "systemd" -* you must change "KUBELET_CGROUP_ARGS=--cgroup-driver=systemd" to "KUBELET_CGROUP_ARGS=--cgroup-driver=cgroupfs" - -``` -$ vi /etc/systemd/system/kubelet.service.d/10-kubeadm.conf -#Environment="KUBELET_CGROUP_ARGS=--cgroup-driver=systemd" -Environment="KUBELET_CGROUP_ARGS=--cgroup-driver=cgroupfs" - -$ systemctl daemon-reload && systemctl restart kubelet -``` - -* on k8s-master1: use kubeadm to init kubernetes cluster and connect external etcd cluster - -``` -$ kubeadm init --config=/root/kubeadm-ha/kubeadm-init-v1.6.x.yaml -``` - -* on k8s-master1: set environment variables $KUBECONFIG, make kubectl connect kubelet - -``` -$ vi ~/.bashrc -export KUBECONFIG=/etc/kubernetes/admin.conf - -$ source ~/.bashrc -``` - ---- -[category](#category) - -#### install flannel networks addon - -* on k8s-master1: install flannel networks addon, otherwise kube-dns pod will keep status at ContainerCreating - -``` -$ kubectl create -f /root/kubeadm-ha/kube-flannel -clusterrole "flannel" created -clusterrolebinding "flannel" created -serviceaccount "flannel" created -configmap "kube-flannel-cfg" created -daemonset "kube-flannel-ds" created -``` - -* on k8s-master1: after flannel networks addon installed, wait about 3 minutes, then all pods status are Running - -``` -$ kubectl get pods --all-namespaces -o wide -NAMESPACE NAME READY STATUS RESTARTS AGE IP NODE -kube-system kube-apiserver-k8s-master1 1/1 Running 0 3m 192.168.60.71 k8s-master1 -kube-system kube-controller-manager-k8s-master1 1/1 Running 0 3m 192.168.60.71 k8s-master1 -kube-system kube-dns-3913472980-k9mt6 3/3 Running 0 4m 10.244.0.104 k8s-master1 -kube-system kube-flannel-ds-3hhjd 2/2 Running 0 1m 192.168.60.71 k8s-master1 -kube-system kube-proxy-rzq3t 1/1 Running 0 4m 192.168.60.71 k8s-master1 -kube-system kube-scheduler-k8s-master1 1/1 Running 0 3m 192.168.60.71 k8s-master1 -``` - ---- -[category](#category) - -#### install dashboard addon - -* on k8s-master1: install dashboard webUI addon - -``` -$ kubectl create -f /root/kubeadm-ha/kube-dashboard/ -serviceaccount "kubernetes-dashboard" created -clusterrolebinding "kubernetes-dashboard" created -deployment "kubernetes-dashboard" created -service "kubernetes-dashboard" created -``` - -* on k8s-master1: start up proxy - -``` -$ kubectl proxy --address='0.0.0.0' & -``` - -* on your local laptop MacOSX: use browser to check dashboard work correctly - -``` -http://k8s-master1:30000 -``` - -![dashboard](images/dashboard.png) - ---- -[category](#category) - -#### install heapster addon - -* on k8s-master1: make master be able to schedule pods - -``` -$ kubectl taint nodes --all node-role.kubernetes.io/master- -node "k8s-master1" tainted -``` - -* on k8s-master1: install heapster addon, the performance monitor addon - -``` -$ kubectl create -f /root/kubeadm-ha/kube-heapster -``` - -* on k8s-master1: restart docker and kubelet service, to make heapster work immediately - -``` -$ systemctl restart docker kubelet -``` - -* on k8s-master1: check pods status - -``` -$ kubectl get all --all-namespaces -o wide -NAMESPACE NAME READY STATUS RESTARTS AGE IP NODE -kube-system heapster-783524908-kn6jd 1/1 Running 1 9m 10.244.0.111 k8s-master1 -kube-system kube-apiserver-k8s-master1 1/1 Running 1 15m 192.168.60.71 k8s-master1 -kube-system kube-controller-manager-k8s-master1 1/1 Running 1 15m 192.168.60.71 k8s-master1 -kube-system kube-dns-3913472980-k9mt6 3/3 Running 3 16m 10.244.0.110 k8s-master1 -kube-system kube-flannel-ds-3hhjd 2/2 Running 3 13m 192.168.60.71 k8s-master1 -kube-system kube-proxy-rzq3t 1/1 Running 1 16m 192.168.60.71 k8s-master1 -kube-system kube-scheduler-k8s-master1 1/1 Running 1 15m 192.168.60.71 k8s-master1 -kube-system kubernetes-dashboard-2039414953-d46vw 1/1 Running 1 11m 10.244.0.109 k8s-master1 -kube-system monitoring-grafana-3975459543-8l94z 1/1 Running 1 9m 10.244.0.112 k8s-master1 -kube-system monitoring-influxdb-3480804314-72ltf 1/1 Running 1 9m 10.244.0.113 k8s-master1 -``` - -* on your local laptop MacOSX: use browser to check dashboard, if it show CPU and Memory Usage info, then heapster work! - -``` -http://k8s-master1:30000 -``` - -![heapster](images/heapster.png) - -* now we finish the first kubernetes master installation, and flannel dashboard heapster work on master correctly - ---- -[category](#category) - -### kubernetes masters high avialiability configuration - -#### copy configuration files - -* on k8s-master1: copy /etc/kubernetes/ directory to k8s-master2 and k8s-master3 - -``` -scp -r /etc/kubernetes/ k8s-master2:/etc/ -scp -r /etc/kubernetes/ k8s-master3:/etc/ -``` - -* on k8s-master2, k8s-master3: restart kubelet service, and make sure kubelet status is active (running) - -``` -$ systemctl daemon-reload && systemctl restart kubelet - -$ systemctl status kubelet -● kubelet.service - kubelet: The Kubernetes Node Agent - Loaded: loaded (/etc/systemd/system/kubelet.service; enabled; vendor preset: disabled) - Drop-In: /etc/systemd/system/kubelet.service.d - └─10-kubeadm.conf - Active: active (running) since Tue 2017-06-27 16:24:22 CST; 1 day 17h ago - Docs: http://kubernetes.io/docs/ - Main PID: 2780 (kubelet) - Memory: 92.9M - CGroup: /system.slice/kubelet.service - ├─2780 /usr/bin/kubelet --kubeconfig=/etc/kubernetes/kubelet.conf --require-... - └─2811 journalctl -k -f -``` - -* on k8s-master2, k8s-master3: set environment variables $KUBECONFIG, make kubectl connect kubelet - -``` -$ vi ~/.bashrc -export KUBECONFIG=/etc/kubernetes/admin.conf - -$ source ~/.bashrc -``` - -* on k8s-master2, k8s-master3: check nodes status, you will found that k8s-master2 and k8s-master3 are joined - -``` -$ kubectl get nodes -o wide -NAME STATUS AGE VERSION EXTERNAL-IP OS-IMAGE KERNEL-VERSION -k8s-master1 Ready 26m v1.6.4 CentOS Linux 7 (Core) 3.10.0-514.6.1.el7.x86_64 -k8s-master2 Ready 2m v1.6.4 CentOS Linux 7 (Core) 3.10.0-514.21.1.el7.x86_64 -k8s-master3 Ready 2m v1.6.4 CentOS Linux 7 (Core) 3.10.0-514.21.1.el7.x86_64 -``` - -* on k8s-master2, k8s-master3: edit kube-apiserver.yaml file, replace ${HOST_IP} to current host's IP address - -``` -$ vi /etc/kubernetes/manifests/kube-apiserver.yaml - - --advertise-address=${HOST_IP} -``` - -* on k8s-master2, k8s-master3: edit kubelet.conf file, replace ${HOST_IP} to current host's IP address - -``` -$ vi /etc/kubernetes/kubelet.conf -server: https://${HOST_IP}:6443 -``` - -* on k8s-master2, k8s-master3: restart docker and kubelet services - -``` -$ systemctl daemon-reload && systemctl restart docker kubelet -``` - ---- -[category](#category) - -#### create certificatie - -* on k8s-master2, k8s-master3: after kubelet.conf modified, because IP address in apiserver.crt and apiserver.key file are different from kubelet.conf, kubelet service will stop, you must use ca.crt and ca.key to re-sign your certificates, check apiserver.crt cerfificate info: - -``` -openssl x509 -noout -text -in /etc/kubernetes/pki/apiserver.crt -Certificate: - Data: - Version: 3 (0x2) - Serial Number: 9486057293403496063 (0x83a53ed95c519e7f) - Signature Algorithm: sha1WithRSAEncryption - Issuer: CN=kubernetes - Validity - Not Before: Jun 22 16:22:44 2017 GMT - Not After : Jun 22 16:22:44 2018 GMT - Subject: CN=kube-apiserver, - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - Public-Key: (2048 bit) - Modulus: - d0:10:4a:3b:c4:62:5d:ae:f8:f1:16:48:b3:77:6b: - 53:4b - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Alternative Name: - DNS:k8s-master1, DNS:kubernetes, DNS:kubernetes.default, DNS:kubernetes.default.svc, DNS:kubernetes.default.svc.cluster.local, IP Address:10.96.0.1, IP Address:192.168.60.71 - Signature Algorithm: sha1WithRSAEncryption - dd:68:16:f9:11:be:c3:3c:be:89:9f:14:60:6b:e0:47:c7:91: - 9e:78:ab:ce -``` - -* on k8s-master1, k8s-master2, k8s-master3: use ca.key and ca.crt to create apiserver.crt and apiserver.key - -``` -$ mkdir -p /etc/kubernetes/pki-local - -$ cd /etc/kubernetes/pki-local -``` - -* on k8s-master1, k8s-master2, k8s-master3: create a new apiserver.key - -``` -$ openssl genrsa -out apiserver.key 2048 -``` - -* on k8s-master1, k8s-master2, k8s-master3: create a new apiserver.csr file - -``` -$ openssl req -new -key apiserver.key -subj "/CN=kube-apiserver," -out apiserver.csr -``` - -* on k8s-master1, k8s-master2, k8s-master3: edit apiserver.ext file, replace ${HOST_IP} to current host's IP address, replace ${VIRTUAL_IP} to keepalived virtual IP(192.168.60.80) - -``` -$ vi apiserver.ext -subjectAltName = DNS:${HOST_NAME},DNS:kubernetes,DNS:kubernetes.default,DNS:kubernetes.default.svc, DNS:kubernetes.default.svc.cluster.local, IP:10.96.0.1, IP:${HOST_IP}, IP:${VIRTUAL_IP} -``` - -* on k8s-master1, k8s-master2, k8s-master3: use ca.key and ca.crt to create apiserver.crt file - -``` -$ openssl x509 -req -in apiserver.csr -CA /etc/kubernetes/pki/ca.crt -CAkey /etc/kubernetes/pki/ca.key -CAcreateserial -out apiserver.crt -days 365 -extfile /etc/kubernetes/pki-local/apiserver.ext -``` - -* on k8s-master1, k8s-master2, k8s-master3: check the new certificate: - -``` -$ openssl x509 -noout -text -in apiserver.crt -Certificate: - Data: - Version: 3 (0x2) - Serial Number: 9486057293403496063 (0x83a53ed95c519e7f) - Signature Algorithm: sha1WithRSAEncryption - Issuer: CN=kubernetes - Validity - Not Before: Jun 22 16:22:44 2017 GMT - Not After : Jun 22 16:22:44 2018 GMT - Subject: CN=kube-apiserver, - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - Public-Key: (2048 bit) - Modulus: - d0:10:4a:3b:c4:62:5d:ae:f8:f1:16:48:b3:77:6b: - 53:4b - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Alternative Name: - DNS:k8s-master3, DNS:kubernetes, DNS:kubernetes.default, DNS:kubernetes.default.svc, DNS:kubernetes.default.svc.cluster.local, IP Address:10.96.0.1, IP Address:192.168.60.73, IP Address:192.168.60.80 - Signature Algorithm: sha1WithRSAEncryption - dd:68:16:f9:11:be:c3:3c:be:89:9f:14:60:6b:e0:47:c7:91: - 9e:78:ab:ce -``` - -* on k8s-master1, k8s-master2, k8s-master3: copy apiserver.crt and apiserver.key to /etc/kubernetes/pki directory - -``` -$ cp apiserver.crt apiserver.key /etc/kubernetes/pki/ -``` - ---- -[category](#category) - -#### edit configuration files - -* on k8s-master2, k8s-master3: edit admin.conf file, replace ${HOST_IP} to current host's IP address - -``` -$ vi /etc/kubernetes/admin.conf - server: https://${HOST_IP}:6443 -``` - -* on k8s-master2, k8s-master3: edit controller-manager.conf file, replace ${HOST_IP} to current host's IP address - -``` -$ vi /etc/kubernetes/controller-manager.conf - server: https://${HOST_IP}:6443 -``` - -* on k8s-master2, k8s-master3: edit scheduler.conf file, replace ${HOST_IP} to current host's IP address - -``` -$ vi /etc/kubernetes/scheduler.conf - server: https://${HOST_IP}:6443 -``` - -* on k8s-master1, k8s-master2, k8s-master3: restart docker and kubelet services - -``` -$ systemctl daemon-reload && systemctl restart docker kubelet -``` - ---- -[category](#category) - -#### verify master high avialiability - -* on k8s-master1 or k8s-master2 or k8s-master3: check all master nodes pods startup status. apiserver controller-manager kube-scheduler proxy flannel running at k8s-master1, k8s-master2, k8s-master3 successfully. - -``` -$ kubectl get pod --all-namespaces -o wide | grep k8s-master2 -kube-system kube-apiserver-k8s-master2 1/1 Running 1 55s 192.168.60.72 k8s-master2 -kube-system kube-controller-manager-k8s-master2 1/1 Running 2 18m 192.168.60.72 k8s-master2 -kube-system kube-flannel-ds-t8gkh 2/2 Running 4 18m 192.168.60.72 k8s-master2 -kube-system kube-proxy-bpgqw 1/1 Running 1 18m 192.168.60.72 k8s-master2 -kube-system kube-scheduler-k8s-master2 1/1 Running 2 18m 192.168.60.72 k8s-master2 - -$ kubectl get pod --all-namespaces -o wide | grep k8s-master3 -kube-system kube-apiserver-k8s-master3 1/1 Running 1 1m 192.168.60.73 k8s-master3 -kube-system kube-controller-manager-k8s-master3 1/1 Running 2 18m 192.168.60.73 k8s-master3 -kube-system kube-flannel-ds-tmqmx 2/2 Running 4 18m 192.168.60.73 k8s-master3 -kube-system kube-proxy-4stg3 1/1 Running 1 18m 192.168.60.73 k8s-master3 -kube-system kube-scheduler-k8s-master3 1/1 Running 2 18m 192.168.60.73 k8s-master3 -``` - -* on k8s-master1 or k8s-master2 or k8s-master3: use kubectl logs to check controller-manager and scheduler's leader election result, only one is working - -``` -$ kubectl logs -n kube-system kube-controller-manager-k8s-master1 -$ kubectl logs -n kube-system kube-controller-manager-k8s-master2 -$ kubectl logs -n kube-system kube-controller-manager-k8s-master3 - -$ kubectl logs -n kube-system kube-scheduler-k8s-master1 -$ kubectl logs -n kube-system kube-scheduler-k8s-master2 -$ kubectl logs -n kube-system kube-scheduler-k8s-master3 -``` - -* on k8s-master1 or k8s-master2 or k8s-master3: check deployment - -``` -$ kubectl get deploy --all-namespaces -NAMESPACE NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE -kube-system heapster 1 1 1 1 41m -kube-system kube-dns 1 1 1 1 48m -kube-system kubernetes-dashboard 1 1 1 1 43m -kube-system monitoring-grafana 1 1 1 1 41m -kube-system monitoring-influxdb 1 1 1 1 41m -``` - -* on k8s-master1 or k8s-master2 or k8s-master3: scale up kubernetes-dashboard and kube-dns replicas to 3, make all master running kubernetes-dashboard and kube-dns - -``` -$ kubectl scale --replicas=3 -n kube-system deployment/kube-dns -$ kubectl get pods --all-namespaces -o wide| grep kube-dns - -$ kubectl scale --replicas=3 -n kube-system deployment/kubernetes-dashboard -$ kubectl get pods --all-namespaces -o wide| grep kubernetes-dashboard - -$ kubectl scale --replicas=3 -n kube-system deployment/heapster -$ kubectl get pods --all-namespaces -o wide| grep heapster - -$ kubectl scale --replicas=3 -n kube-system deployment/monitoring-grafana -$ kubectl get pods --all-namespaces -o wide| grep monitoring-grafana - -$ kubectl scale --replicas=3 -n kube-system deployment/monitoring-influxdb -$ kubectl get pods --all-namespaces -o wide| grep monitoring-influxdb -``` ---- -[category](#category) - -#### keepalived installation - -* on k8s-master1, k8s-master2, k8s-master3: install keepalived service - -``` -$ yum install -y keepalived - -$ systemctl enable keepalived && systemctl restart keepalived -``` - -* on k8s-master1, k8s-master2, k8s-master3: backup keepalived config file - -``` -$ mv /etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf.bak -``` - -* on k8s-master1, k8s-master2, k8s-master3: create apiserver monitoring script, when apiserver failed keepalived will stop and virtual IP address will transfer to the other node - -``` -$ vi /etc/keepalived/check_apiserver.sh -#!/bin/bash -err=0 -for k in $( seq 1 10 ) -do - check_code=$(ps -ef|grep kube-apiserver | wc -l) - if [ "$check_code" = "1" ]; then - err=$(expr $err + 1) - sleep 5 - continue - else - err=0 - break - fi -done -if [ "$err" != "0" ]; then - echo "systemctl stop keepalived" - /usr/bin/systemctl stop keepalived - exit 1 -else - exit 0 -fi - -chmod a+x /etc/keepalived/check_apiserver.sh -``` - -* on k8s-master1, k8s-master2, k8s-master3: check the network interface name - -``` -$ ip a | grep 192.168.60 -``` - -* on k8s-master1, k8s-master2, k8s-master3: edit keepalived settings: -* state ${STATE}: is MASTER or BACKUP, only one node can set to MASTER -* interface ${INTERFACE_NAME}: which network interfaces will virtual IP address bind on -* mcast_src_ip ${HOST_IP}: current host IP address -* priority ${PRIORITY}: for example (102 or 101 or 100) -* ${VIRTUAL_IP}: the virtual IP address, here we set to 192.168.60.80 - -``` -$ vi /etc/keepalived/keepalived.conf -! Configuration File for keepalived -global_defs { - router_id LVS_DEVEL -} -vrrp_script chk_apiserver { - script "/etc/keepalived/check_apiserver.sh" - interval 2 - weight -5 - fall 3 - rise 2 -} -vrrp_instance VI_1 { - state ${STATE} - interface ${INTERFACE_NAME} - mcast_src_ip ${HOST_IP} - virtual_router_id 51 - priority ${PRIORITY} - advert_int 2 - authentication { - auth_type PASS - auth_pass 4be37dc3b4c90194d1600c483e10ad1d - } - virtual_ipaddress { - ${VIRTUAL_IP} - } - track_script { - chk_apiserver - } -} -``` - -* on k8s-master1, k8s-master2, k8s-master3: reboot keepalived service, and check virtual IP address work or not - -``` -$ systemctl restart keepalived -$ ping 192.168.60.80 -``` - ---- -[category](#category) - -#### nginx load balancer configuration - -* on k8s-master1, k8s-master2, k8s-master3: edit nginx-default.conf settings, replace ${HOST_IP} with k8s-master1, k8s-master2, k8s-master3's IP address. - -``` -$ vi /root/kubeadm-ha/nginx-default.conf -stream { - upstream apiserver { - server ${HOST_IP}:6443 weight=5 max_fails=3 fail_timeout=30s; - server ${HOST_IP}:6443 weight=5 max_fails=3 fail_timeout=30s; - server ${HOST_IP}:6443 weight=5 max_fails=3 fail_timeout=30s; - } - - server { - listen 8443; - proxy_connect_timeout 1s; - proxy_timeout 3s; - proxy_pass apiserver; - } -} -``` - -* on k8s-master1, k8s-master2, k8s-master3: use docker to start up nginx - -``` -$ docker run -d -p 8443:8443 \ ---name nginx-lb \ ---restart always \ --v /root/kubeadm-ha/nginx-default.conf:/etc/nginx/nginx.conf \ -nginx -``` - -* on k8s-master1, k8s-master2, k8s-master3: check keepalived and nginx - -``` -$ curl -L 192.168.60.80:8443 | wc -l - % Total % Received % Xferd Average Speed Time Time Time Current - Dload Upload Total Spent Left Speed -100 14 0 14 0 0 18324 0 --:--:-- --:--:-- --:--:-- 14000 -1 -``` - -* on k8s-master1, k8s-master2, k8s-master3: check keeplived logs, if it show logs below it means that virtual IP address bind on this host - -``` -$ systemctl status keepalived -l -VRRP_Instance(VI_1) Sending gratuitous ARPs on ens160 for 192.168.60.80 -``` - ---- -[category](#category) - -#### kube-proxy configuration - -* on k8s-master1: edit kube-proxy settings to use keepalived virtual IP address - -``` -$ kubectl get -n kube-system configmap -NAME DATA AGE -extension-apiserver-authentication 6 4h -kube-flannel-cfg 2 4h -kube-proxy 1 4h -``` - -* on k8s-master1: edit configmap/kube-proxy settings, replaces the IP address to keepalived's virtual IP address - -``` -$ kubectl edit -n kube-system configmap/kube-proxy - server: https://192.168.60.80:8443 -``` - -* on k8s-master1: check configmap/kube-proxy settings - -``` -$ kubectl get -n kube-system configmap/kube-proxy -o yaml -``` - -* on k8s-master1: delete all kube-proxy pods, kube-proxy pods will re-create automatically - -``` -kubectl get pods --all-namespaces -o wide | grep proxy -``` - -* on k8s-master1, k8s-master2, k8s-master3: restart docker kubelet keepalived services - -``` -$ systemctl restart docker kubelet keepalived -``` - ---- -[category](#category) - -#### verfify master high avialiability with keepalived - -* on k8s-master1: check each master nodes pods status - -``` -$ kubectl get pods --all-namespaces -o wide | grep k8s-master1 - -$ kubectl get pods --all-namespaces -o wide | grep k8s-master2 - -$ kubectl get pods --all-namespaces -o wide | grep k8s-master3 -``` - ---- -[category](#category) - -### k8s-nodes join the kubernetes cluster - -#### use kubeadm to join the cluster -* on k8s-master1: make master nodes scheduling pods disabled - -``` -$ kubectl patch node k8s-master1 -p '{"spec":{"unschedulable":true}}' - -$ kubectl patch node k8s-master2 -p '{"spec":{"unschedulable":true}}' - -$ kubectl patch node k8s-master3 -p '{"spec":{"unschedulable":true}}' -``` - -* on k8s-master1: list kubeadm token - -``` -$ kubeadm token list -TOKEN TTL EXPIRES USAGES DESCRIPTION -xxxxxx.yyyyyy authentication,signing The default bootstrap token generated by 'kubeadm init' -``` - -* on k8s-node1 ~ k8s-node8: use kubeadm to join the kubernetes cluster, replace ${TOKEN} with token show ahead, replace ${VIRTUAL_IP} with keepalived's virtual IP address (192.168.60.80) - -``` -$ kubeadm join --token ${TOKEN} ${VIRTUAL_IP}:8443 -``` - ---- -[category](#category) - -#### deploy nginx application to verify installation - -* on k8s-node1 ~ k8s-node8: check kubelet status - -``` -$ systemctl status kubelet -● kubelet.service - kubelet: The Kubernetes Node Agent - Loaded: loaded (/etc/systemd/system/kubelet.service; enabled; vendor preset: disabled) - Drop-In: /etc/systemd/system/kubelet.service.d - └─10-kubeadm.conf - Active: active (running) since Tue 2017-06-27 16:23:43 CST; 1 day 18h ago - Docs: http://kubernetes.io/docs/ - Main PID: 1146 (kubelet) - Memory: 204.9M - CGroup: /system.slice/kubelet.service - ├─ 1146 /usr/bin/kubelet --kubeconfig=/etc/kubernetes/kubelet.conf --require... - ├─ 2553 journalctl -k -f - ├─ 4988 /usr/sbin/glusterfs --log-level=ERROR --log-file=/var/lib/kubelet/pl... - └─14720 /usr/sbin/glusterfs --log-level=ERROR --log-file=/var/lib/kubelet/pl... -``` - -* on k8s-master1: list nodes status - -``` -$ kubectl get nodes -o wide -NAME STATUS AGE VERSION -k8s-master1 Ready,SchedulingDisabled 5h v1.6.4 -k8s-master2 Ready,SchedulingDisabled 4h v1.6.4 -k8s-master3 Ready,SchedulingDisabled 4h v1.6.4 -k8s-node1 Ready 6m v1.6.4 -k8s-node2 Ready 4m v1.6.4 -k8s-node3 Ready 4m v1.6.4 -k8s-node4 Ready 3m v1.6.4 -k8s-node5 Ready 3m v1.6.4 -k8s-node6 Ready 3m v1.6.4 -k8s-node7 Ready 3m v1.6.4 -k8s-node8 Ready 3m v1.6.4 -``` - -* on k8s-master1: deploy nginx service on kubernetes, it show that nginx service deploy on k8s-node5 - -``` -$ kubectl run nginx --image=nginx --port=80 -deployment "nginx" created - -$ kubectl get pod -o wide -l=run=nginx -NAME READY STATUS RESTARTS AGE IP NODE -nginx-2662403697-pbmwt 1/1 Running 0 5m 10.244.7.6 k8s-node5 -``` - -* on k8s-master1: expose nginx services port - -``` -$ kubectl expose deployment nginx --port=80 --target-port=80 --type=NodePort -service "nginx" exposed - -$ kubectl get svc -l=run=nginx -NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE -nginx 10.105.151.69 80:31639/TCP 43s - -$ curl k8s-master2:31639 - - - -Welcome to nginx! - - - -

Welcome to nginx!

-

If you see this page, the nginx web server is successfully installed and -working. Further configuration is required.

- -

For online documentation and support please refer to -nginx.org.
-Commercial support is available at -nginx.com.

- -

Thank you for using nginx.

- - - -``` - -* congratulation! kubernetes high availiability cluster deploy successfully 😀 ---- -[category](#category) - diff --git a/v1.6/README_CN.md b/v1.6/README_CN.md deleted file mode 100644 index 8ddcad4..0000000 --- a/v1.6/README_CN.md +++ /dev/null @@ -1,1237 +0,0 @@ -# kubeadm-highavailiability - 基于kubeadm的kubernetes高可用集群部署,支持v1.11.x v1.9.x v1.7.x v1.6.x版本 - -![k8s logo](../images/Kubernetes.png) - -- [中文文档(for v1.11.x版本)](../README_CN.md) -- [English document(for v1.11.x version)](../README.md) -- [中文文档(for v1.9.x版本)](../v1.9/README_CN.md) -- [English document(for v1.9.x version)](../v1.9/README.md) -- [中文文档(for v1.7.x版本)](../v1.7/README_CN.md) -- [English document(for v1.7.x version)](../v1.7/README.md) -- [中文文档(for v1.6.x版本)](../v1.6/README_CN.md) -- [English document(for v1.6.x version)](../v1.6/README.md) - ---- - -- [GitHub项目地址](https://github.com/cookeem/kubeadm-ha/) -- [OSChina项目地址](https://git.oschina.net/cookeem/kubeadm-ha/) - ---- - -- 该指引适用于v1.6.x版本的kubernetes集群 - -### 目录 - -1. [部署架构](#部署架构) - 1. [概要部署架构](#概要部署架构) - 1. [详细部署架构](#详细部署架构) - 1. [主机节点清单](#主机节点清单) -1. [安装前准备](#安装前准备) - 1. [版本信息](#版本信息) - 1. [所需docker镜像](#所需docker镜像) - 1. [系统设置](#系统设置) -1. [kubernetes安装](#kubernetes安装) - 1. [kubernetes相关服务安装](#kubernetes相关服务安装) - 1. [docker镜像导入](#docker镜像导入) -1. [第一台master初始化](#第一台master初始化) - 1. [独立etcd集群部署](#独立etcd集群部署) - 1. [kubeadm初始化](#kubeadm初始化) - 1. [flannel网络组件安装](#flannel网络组件安装) - 1. [dashboard组件安装](#dashboard组件安装) - 1. [heapster组件安装](#heapster组件安装) -1. [master集群高可用设置](#master集群高可用设置) - 1. [复制配置](#复制配置) - 1. [创建证书](#创建证书) - 1. [修改配置](#修改配置) - 1. [验证高可用安装](#验证高可用安装) - 1. [keepalived安装配置](#keepalived安装配置) - 1. [nginx负载均衡配置](#nginx负载均衡配置) - 1. [kube-proxy配置](#kube-proxy配置) - 1. [验证master集群高可用](#验证master集群高可用) -1. [node节点加入高可用集群设置](#node节点加入高可用集群设置) - 1. [kubeadm加入高可用集群](#kubeadm加入高可用集群) - 1. [部署应用验证集群](#部署应用验证集群) - - -### 部署架构 - -#### 概要部署架构 - -![ha logo](../images/ha.png) - -* kubernetes高可用的核心架构是master的高可用,kubectl、客户端以及nodes访问load balancer实现高可用。 - ---- -[返回目录](#目录) - -#### 详细部署架构 - -![k8s ha](../images/k8s-ha.png) - -* kubernetes组件说明 - -> kube-apiserver:集群核心,集群API接口、集群各个组件通信的中枢;集群安全控制; - -> etcd:集群的数据中心,用于存放集群的配置以及状态信息,非常重要,如果数据丢失那么集群将无法恢复;因此高可用集群部署首先就是etcd是高可用集群; - -> kube-scheduler:集群Pod的调度中心;默认kubeadm安装情况下--leader-elect参数已经设置为true,保证master集群中只有一个kube-scheduler处于活跃状态; - -> kube-controller-manager:集群状态管理器,当集群状态与期望不同时,kcm会努力让集群恢复期望状态,比如:当一个pod死掉,kcm会努力新建一个pod来恢复对应replicas set期望的状态;默认kubeadm安装情况下--leader-elect参数已经设置为true,保证master集群中只有一个kube-controller-manager处于活跃状态; - -> kubelet: kubernetes node agent,负责与node上的docker engine打交道; - -> kube-proxy: 每个node上一个,负责service vip到endpoint pod的流量转发,当前主要通过设置iptables规则实现。 - -* 负载均衡 - -> keepalived集群设置一个虚拟ip地址,虚拟ip地址指向k8s-master1、k8s-master2、k8s-master3。 - -> nginx用于k8s-master1、k8s-master2、k8s-master3的apiserver的负载均衡。外部kubectl以及nodes访问apiserver的时候就可以用过keepalived的虚拟ip(192.168.60.80)以及nginx端口(8443)访问master集群的apiserver。 - ---- -[返回目录](#目录) - -#### 主机节点清单 - - 主机名 | IP地址 | 说明 | 组件 - :--- | :--- | :--- | :--- - k8s-master1 | 192.168.60.71 | master节点1 | keepalived、nginx、etcd、kubelet、kube-apiserver、kube-scheduler、kube-proxy、kube-dashboard、heapster - k8s-master2 | 192.168.60.72 | master节点2 | keepalived、nginx、etcd、kubelet、kube-apiserver、kube-scheduler、kube-proxy、kube-dashboard、heapster - k8s-master3 | 192.168.60.73 | master节点3 | keepalived、nginx、etcd、kubelet、kube-apiserver、kube-scheduler、kube-proxy、kube-dashboard、heapster - 无 | 192.168.60.80 | keepalived虚拟IP | 无 - k8s-node1 ~ 8 | 192.168.60.81 ~ 88 | 8个node节点 | kubelet、kube-proxy - ---- -[返回目录](#目录) - -### 安装前准备 - -#### 版本信息 - -* Linux版本:CentOS 7.3.1611 - -``` -cat /etc/redhat-release -CentOS Linux release 7.3.1611 (Core) -``` - -* docker版本:1.12.6 - -``` -$ docker version -Client: - Version: 1.12.6 - API version: 1.24 - Go version: go1.6.4 - Git commit: 78d1802 - Built: Tue Jan 10 20:20:01 2017 - OS/Arch: linux/amd64 - -Server: - Version: 1.12.6 - API version: 1.24 - Go version: go1.6.4 - Git commit: 78d1802 - Built: Tue Jan 10 20:20:01 2017 - OS/Arch: linux/amd64 -``` - -* kubeadm版本:v1.6.4 - -``` -$ kubeadm version -kubeadm version: version.Info{Major:"1", Minor:"6", GitVersion:"v1.6.4", GitCommit:"d6f433224538d4f9ca2f7ae19b252e6fcb66a3ae", GitTreeState:"clean", BuildDate:"2017-05-19T18:33:17Z", GoVersion:"go1.7.5", Compiler:"gc", Platform:"linux/amd64"} -``` - -* kubelet版本:v1.6.4 - -``` -$ kubelet --version -Kubernetes v1.6.4 -``` - ---- - -[返回目录](#目录) - -#### 所需docker镜像 - -* 国内可以使用daocloud加速器下载相关镜像,然后通过docker save、docker load把本地下载的镜像放到kubernetes集群的所在机器上,daocloud加速器链接如下: - -[https://www.daocloud.io/mirror#accelerator-doc](https://www.daocloud.io/mirror#accelerator-doc) - -* 在本机MacOSX上pull相关docker镜像 - -``` -$ docker pull gcr.io/google_containers/kube-apiserver-amd64:v1.6.4 -$ docker pull gcr.io/google_containers/kube-proxy-amd64:v1.6.4 -$ docker pull gcr.io/google_containers/kube-controller-manager-amd64:v1.6.4 -$ docker pull gcr.io/google_containers/kube-scheduler-amd64:v1.6.4 -$ docker pull gcr.io/google_containers/kubernetes-dashboard-amd64:v1.6.1 -$ docker pull quay.io/coreos/flannel:v0.7.1-amd64 -$ docker pull gcr.io/google_containers/heapster-amd64:v1.3.0 -$ docker pull gcr.io/google_containers/k8s-dns-sidecar-amd64:1.14.1 -$ docker pull gcr.io/google_containers/k8s-dns-kube-dns-amd64:1.14.1 -$ docker pull gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64:1.14.1 -$ docker pull gcr.io/google_containers/etcd-amd64:3.0.17 -$ docker pull gcr.io/google_containers/heapster-grafana-amd64:v4.0.2 -$ docker pull gcr.io/google_containers/heapster-influxdb-amd64:v1.1.1 -$ docker pull nginx:latest -$ docker pull gcr.io/google_containers/pause-amd64:3.0 -``` - -* 在本机MacOSX上获取代码,并进入代码目录 - -``` -$ git clone https://github.com/cookeem/kubeadm-ha -$ cd kubeadm-ha -``` - -* 在本机MacOSX上把相关docker镜像保存成文件 - -``` -$ mkdir -p docker-images -$ docker save -o docker-images/kube-apiserver-amd64 gcr.io/google_containers/kube-apiserver-amd64:v1.6.4 -$ docker save -o docker-images/kube-proxy-amd64 gcr.io/google_containers/kube-proxy-amd64:v1.6.4 -$ docker save -o docker-images/kube-controller-manager-amd64 gcr.io/google_containers/kube-controller-manager-amd64:v1.6.4 -$ docker save -o docker-images/kube-scheduler-amd64 gcr.io/google_containers/kube-scheduler-amd64:v1.6.4 -$ docker save -o docker-images/kubernetes-dashboard-amd64 gcr.io/google_containers/kubernetes-dashboard-amd64:v1.6.1 -$ docker save -o docker-images/flannel quay.io/coreos/flannel:v0.7.1-amd64 -$ docker save -o docker-images/heapster-amd64 gcr.io/google_containers/heapster-amd64:v1.3.0 -$ docker save -o docker-images/k8s-dns-sidecar-amd64 gcr.io/google_containers/k8s-dns-sidecar-amd64:1.14.1 -$ docker save -o docker-images/k8s-dns-kube-dns-amd64 gcr.io/google_containers/k8s-dns-kube-dns-amd64:1.14.1 -$ docker save -o docker-images/k8s-dns-dnsmasq-nanny-amd64 gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64:1.14.1 -$ docker save -o docker-images/etcd-amd64 gcr.io/google_containers/etcd-amd64:3.0.17 -$ docker save -o docker-images/heapster-grafana-amd64 gcr.io/google_containers/heapster-grafana-amd64:v4.0.2 -$ docker save -o docker-images/heapster-influxdb-amd64 gcr.io/google_containers/heapster-influxdb-amd64:v1.1.1 -$ docker save -o docker-images/pause-amd64 gcr.io/google_containers/pause-amd64:3.0 -$ docker save -o docker-images/nginx nginx:latest -``` - -* 在本机MacOSX上把代码以及docker镜像复制到所有节点上 - -``` -$ scp -r * root@k8s-master1:/root/kubeadm-ha -$ scp -r * root@k8s-master2:/root/kubeadm-ha -$ scp -r * root@k8s-master3:/root/kubeadm-ha -$ scp -r * root@k8s-node1:/root/kubeadm-ha -$ scp -r * root@k8s-node2:/root/kubeadm-ha -$ scp -r * root@k8s-node3:/root/kubeadm-ha -$ scp -r * root@k8s-node4:/root/kubeadm-ha -$ scp -r * root@k8s-node5:/root/kubeadm-ha -$ scp -r * root@k8s-node6:/root/kubeadm-ha -$ scp -r * root@k8s-node7:/root/kubeadm-ha -$ scp -r * root@k8s-node8:/root/kubeadm-ha -``` - ---- -[返回目录](#目录) - -#### 系统设置 - -* 以下在kubernetes所有节点上都是使用root用户进行操作 - -* 在kubernetes所有节点上增加kubernetes仓库 - -``` -$ cat < /etc/yum.repos.d/kubernetes.repo -[kubernetes] -name=Kubernetes -baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64 -enabled=1 -gpgcheck=1 -repo_gpgcheck=1 -gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg - https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg -EOF -``` - -* 在kubernetes所有节点上进行系统更新 - -``` -$ yum update -y -``` - -* 在kubernetes所有节点上关闭防火墙 - -``` -$ systemctl disable firewalld && systemctl stop firewalld && systemctl status firewalld -``` - -* 在kubernetes所有节点上设置SELINUX为permissive模式 - -``` -$ vi /etc/selinux/config -SELINUX=permissive -``` - -* 在kubernetes所有节点上设置iptables参数,否则kubeadm init会提示错误 - -``` -$ vi /etc/sysctl.d/k8s.conf -net.bridge.bridge-nf-call-iptables = 1 -net.bridge.bridge-nf-call-ip6tables = 1 -``` - -* 在kubernetes所有节点上重启主机 - -``` -$ reboot -``` - ---- -[返回目录](#目录) - -### kubernetes安装 - -#### kubernetes相关服务安装 - -* 在kubernetes所有节点上验证SELINUX模式,必须保证SELINUX为permissive模式,否则kubernetes启动会出现各种异常 - -``` -$ getenforce -Permissive -``` - -* 在kubernetes所有节点上安装并启动kubernetes - -``` -$ yum search docker --showduplicates -$ yum install docker-1.12.6-16.el7.centos.x86_64 - -$ yum search kubelet --showduplicates -$ yum install kubelet-1.6.4-0.x86_64 - -$ yum search kubeadm --showduplicates -$ yum install kubeadm-1.6.4-0.x86_64 - -$ yum search kubernetes-cni --showduplicates -$ yum install kubernetes-cni-0.5.1-0.x86_64 - -$ systemctl enable docker && systemctl start docker -$ systemctl enable kubelet && systemctl start kubelet -``` - ---- -[返回目录](#目录) - -#### docker镜像导入 - -* 在kubernetes所有节点上导入docker镜像 - -``` -$ docker load -i /root/kubeadm-ha/docker-images/etcd-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/flannel -$ docker load -i /root/kubeadm-ha/docker-images/heapster-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/heapster-grafana-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/heapster-influxdb-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/k8s-dns-dnsmasq-nanny-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/k8s-dns-kube-dns-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/k8s-dns-sidecar-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/kube-apiserver-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/kube-controller-manager-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/kube-proxy-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/kubernetes-dashboard-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/kube-scheduler-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/pause-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/nginx - -$ docker images -REPOSITORY TAG IMAGE ID CREATED SIZE -gcr.io/google_containers/kube-apiserver-amd64 v1.6.4 4e3810a19a64 5 weeks ago 150.6 MB -gcr.io/google_containers/kube-proxy-amd64 v1.6.4 e073a55c288b 5 weeks ago 109.2 MB -gcr.io/google_containers/kube-controller-manager-amd64 v1.6.4 0ea16a85ac34 5 weeks ago 132.8 MB -gcr.io/google_containers/kube-scheduler-amd64 v1.6.4 1fab9be555e1 5 weeks ago 76.75 MB -gcr.io/google_containers/kubernetes-dashboard-amd64 v1.6.1 71dfe833ce74 6 weeks ago 134.4 MB -quay.io/coreos/flannel v0.7.1-amd64 cd4ae0be5e1b 10 weeks ago 77.76 MB -gcr.io/google_containers/heapster-amd64 v1.3.0 f9d33bedfed3 3 months ago 68.11 MB -gcr.io/google_containers/k8s-dns-sidecar-amd64 1.14.1 fc5e302d8309 4 months ago 44.52 MB -gcr.io/google_containers/k8s-dns-kube-dns-amd64 1.14.1 f8363dbf447b 4 months ago 52.36 MB -gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64 1.14.1 1091847716ec 4 months ago 44.84 MB -gcr.io/google_containers/etcd-amd64 3.0.17 243830dae7dd 4 months ago 168.9 MB -gcr.io/google_containers/heapster-grafana-amd64 v4.0.2 a1956d2a1a16 5 months ago 131.5 MB -gcr.io/google_containers/heapster-influxdb-amd64 v1.1.1 d3fccbedd180 5 months ago 11.59 MB -nginx latest 01f818af747d 6 months ago 181.6 MB -gcr.io/google_containers/pause-amd64 3.0 99e59f495ffa 14 months ago 746.9 kB -``` - ---- -[返回目录](#目录) - -### 第一台master初始化 - -#### 独立etcd集群部署 - -* 在k8s-master1节点上以docker方式启动etcd集群 - -``` -$ docker stop etcd && docker rm etcd -$ rm -rf /var/lib/etcd-cluster -$ mkdir -p /var/lib/etcd-cluster -$ docker run -d \ ---restart always \ --v /etc/ssl/certs:/etc/ssl/certs \ --v /var/lib/etcd-cluster:/var/lib/etcd \ --p 4001:4001 \ --p 2380:2380 \ --p 2379:2379 \ ---name etcd \ -gcr.io/google_containers/etcd-amd64:3.0.17 \ -etcd --name=etcd0 \ ---advertise-client-urls=http://192.168.60.71:2379,http://192.168.60.71:4001 \ ---listen-client-urls=http://0.0.0.0:2379,http://0.0.0.0:4001 \ ---initial-advertise-peer-urls=http://192.168.60.71:2380 \ ---listen-peer-urls=http://0.0.0.0:2380 \ ---initial-cluster-token=9477af68bbee1b9ae037d6fd9e7efefd \ ---initial-cluster=etcd0=http://192.168.60.71:2380,etcd1=http://192.168.60.72:2380,etcd2=http://192.168.60.73:2380 \ ---initial-cluster-state=new \ ---auto-tls \ ---peer-auto-tls \ ---data-dir=/var/lib/etcd -``` - -* 在k8s-master2节点上以docker方式启动etcd集群 - -``` -$ docker stop etcd && docker rm etcd -$ rm -rf /var/lib/etcd-cluster -$ mkdir -p /var/lib/etcd-cluster -$ docker run -d \ ---restart always \ --v /etc/ssl/certs:/etc/ssl/certs \ --v /var/lib/etcd-cluster:/var/lib/etcd \ --p 4001:4001 \ --p 2380:2380 \ --p 2379:2379 \ ---name etcd \ -gcr.io/google_containers/etcd-amd64:3.0.17 \ -etcd --name=etcd1 \ ---advertise-client-urls=http://192.168.60.72:2379,http://192.168.60.72:4001 \ ---listen-client-urls=http://0.0.0.0:2379,http://0.0.0.0:4001 \ ---initial-advertise-peer-urls=http://192.168.60.72:2380 \ ---listen-peer-urls=http://0.0.0.0:2380 \ ---initial-cluster-token=9477af68bbee1b9ae037d6fd9e7efefd \ ---initial-cluster=etcd0=http://192.168.60.71:2380,etcd1=http://192.168.60.72:2380,etcd2=http://192.168.60.73:2380 \ ---initial-cluster-state=new \ ---auto-tls \ ---peer-auto-tls \ ---data-dir=/var/lib/etcd -``` - -* 在k8s-master3节点上以docker方式启动etcd集群 - -``` -$ docker stop etcd && docker rm etcd -$ rm -rf /var/lib/etcd-cluster -$ mkdir -p /var/lib/etcd-cluster -$ docker run -d \ ---restart always \ --v /etc/ssl/certs:/etc/ssl/certs \ --v /var/lib/etcd-cluster:/var/lib/etcd \ --p 4001:4001 \ --p 2380:2380 \ --p 2379:2379 \ ---name etcd \ -gcr.io/google_containers/etcd-amd64:3.0.17 \ -etcd --name=etcd2 \ ---advertise-client-urls=http://192.168.60.73:2379,http://192.168.60.73:4001 \ ---listen-client-urls=http://0.0.0.0:2379,http://0.0.0.0:4001 \ ---initial-advertise-peer-urls=http://192.168.60.73:2380 \ ---listen-peer-urls=http://0.0.0.0:2380 \ ---initial-cluster-token=9477af68bbee1b9ae037d6fd9e7efefd \ ---initial-cluster=etcd0=http://192.168.60.71:2380,etcd1=http://192.168.60.72:2380,etcd2=http://192.168.60.73:2380 \ ---initial-cluster-state=new \ ---auto-tls \ ---peer-auto-tls \ ---data-dir=/var/lib/etcd -``` - -* 在k8s-master1、k8s-master2、k8s-master3上检查etcd启动状态 - -``` -$ docker exec -ti etcd ash - -$ etcdctl member list -1a32c2d3f1abcad0: name=etcd2 peerURLs=http://192.168.60.73:2380 clientURLs=http://192.168.60.73:2379,http://192.168.60.73:4001 isLeader=false -1da4f4e8b839cb79: name=etcd1 peerURLs=http://192.168.60.72:2380 clientURLs=http://192.168.60.72:2379,http://192.168.60.72:4001 isLeader=false -4238bcb92d7f2617: name=etcd0 peerURLs=http://192.168.60.71:2380 clientURLs=http://192.168.60.71:2379,http://192.168.60.71:4001 isLeader=true - -$ etcdctl cluster-health -member 1a32c2d3f1abcad0 is healthy: got healthy result from http://192.168.60.73:2379 -member 1da4f4e8b839cb79 is healthy: got healthy result from http://192.168.60.72:2379 -member 4238bcb92d7f2617 is healthy: got healthy result from http://192.168.60.71:2379 -cluster is healthy - -$ exit -``` - ---- -[返回目录](#目录) - -#### kubeadm初始化 - -* 在k8s-master1上修改kubeadm-init-v1.6.x.yaml文件,设置etcd.endpoints的${HOST_IP}为k8s-master1、k8s-master2、k8s-master3的IP地址 - -``` -$ vi /root/kubeadm-ha/kubeadm-init-v1.6.x.yaml -apiVersion: kubeadm.k8s.io/v1alpha1 -kind: MasterConfiguration -kubernetesVersion: v1.6.4 -networking: - podSubnet: 10.244.0.0/16 -etcd: - endpoints: - - http://192.168.60.71:2379 - - http://192.168.60.72:2379 - - http://192.168.60.73:2379 -``` - -* 如果使用kubeadm初始化集群,启动过程可能会卡在以下位置,那么可能是因为cgroup-driver参数与docker的不一致引起 -* [apiclient] Created API client, waiting for the control plane to become ready -* journalctl -t kubelet -S '2017-06-08'查看日志,发现如下错误 -* error: failed to run Kubelet: failed to create kubelet: misconfiguration: kubelet cgroup driver: "systemd" -* 需要修改KUBELET_CGROUP_ARGS=--cgroup-driver=systemd为KUBELET_CGROUP_ARGS=--cgroup-driver=cgroupfs - -``` -$ vi /etc/systemd/system/kubelet.service.d/10-kubeadm.conf -#Environment="KUBELET_CGROUP_ARGS=--cgroup-driver=systemd" -Environment="KUBELET_CGROUP_ARGS=--cgroup-driver=cgroupfs" - -$ systemctl daemon-reload && systemctl restart kubelet -``` - -* 在k8s-master1上使用kubeadm初始化kubernetes集群,连接外部etcd集群 - -``` -$ kubeadm init --config=/root/kubeadm-ha/kubeadm-init-v1.6.x.yaml -``` - -* 在k8s-master1上设置kubectl的环境变量KUBECONFIG,连接kubelet - -``` -$ vi ~/.bashrc -export KUBECONFIG=/etc/kubernetes/admin.conf - -$ source ~/.bashrc -``` - ---- -[返回目录](#目录) - -#### flannel网络组件安装 - -* 在k8s-master1上安装flannel pod网络组件,必须安装网络组件,否则kube-dns pod会一直处于ContainerCreating - -``` -$ kubectl create -f /root/kubeadm-ha/kube-flannel -clusterrole "flannel" created -clusterrolebinding "flannel" created -serviceaccount "flannel" created -configmap "kube-flannel-cfg" created -daemonset "kube-flannel-ds" created -``` - -* 在k8s-master1上验证kube-dns成功启动,大概等待3分钟,验证所有pods的状态为Running - -``` -$ kubectl get pods --all-namespaces -o wide -NAMESPACE NAME READY STATUS RESTARTS AGE IP NODE -kube-system kube-apiserver-k8s-master1 1/1 Running 0 3m 192.168.60.71 k8s-master1 -kube-system kube-controller-manager-k8s-master1 1/1 Running 0 3m 192.168.60.71 k8s-master1 -kube-system kube-dns-3913472980-k9mt6 3/3 Running 0 4m 10.244.0.104 k8s-master1 -kube-system kube-flannel-ds-3hhjd 2/2 Running 0 1m 192.168.60.71 k8s-master1 -kube-system kube-proxy-rzq3t 1/1 Running 0 4m 192.168.60.71 k8s-master1 -kube-system kube-scheduler-k8s-master1 1/1 Running 0 3m 192.168.60.71 k8s-master1 -``` - ---- -[返回目录](#目录) - -#### dashboard组件安装 - -* 在k8s-master1上安装dashboard组件 - -``` -$ kubectl create -f /root/kubeadm-ha/kube-dashboard/ -serviceaccount "kubernetes-dashboard" created -clusterrolebinding "kubernetes-dashboard" created -deployment "kubernetes-dashboard" created -service "kubernetes-dashboard" created -``` - -* 在k8s-master1上启动proxy,映射地址到0.0.0.0 - -``` -$ kubectl proxy --address='0.0.0.0' & -``` - -* 在本机MacOSX上访问dashboard地址,验证dashboard成功启动 - -``` -http://k8s-master1:30000 -``` - -![dashboard](images/dashboard.png) - ---- -[返回目录](#目录) - -#### heapster组件安装 - -* 在k8s-master1上允许在master上部署pod,否则heapster会无法部署 - -``` -$ kubectl taint nodes --all node-role.kubernetes.io/master- -node "k8s-master1" tainted -``` - -* 在k8s-master1上安装heapster组件,监控性能 - -``` -$ kubectl create -f /root/kubeadm-ha/kube-heapster -``` - -* 在k8s-master1上重启docker以及kubelet服务,让heapster在dashboard上生效显示 - -``` -$ systemctl restart docker kubelet -``` - -* 在k8s-master上检查pods状态 - -``` -$ kubectl get all --all-namespaces -o wide -NAMESPACE NAME READY STATUS RESTARTS AGE IP NODE -kube-system heapster-783524908-kn6jd 1/1 Running 1 9m 10.244.0.111 k8s-master1 -kube-system kube-apiserver-k8s-master1 1/1 Running 1 15m 192.168.60.71 k8s-master1 -kube-system kube-controller-manager-k8s-master1 1/1 Running 1 15m 192.168.60.71 k8s-master1 -kube-system kube-dns-3913472980-k9mt6 3/3 Running 3 16m 10.244.0.110 k8s-master1 -kube-system kube-flannel-ds-3hhjd 2/2 Running 3 13m 192.168.60.71 k8s-master1 -kube-system kube-proxy-rzq3t 1/1 Running 1 16m 192.168.60.71 k8s-master1 -kube-system kube-scheduler-k8s-master1 1/1 Running 1 15m 192.168.60.71 k8s-master1 -kube-system kubernetes-dashboard-2039414953-d46vw 1/1 Running 1 11m 10.244.0.109 k8s-master1 -kube-system monitoring-grafana-3975459543-8l94z 1/1 Running 1 9m 10.244.0.112 k8s-master1 -kube-system monitoring-influxdb-3480804314-72ltf 1/1 Running 1 9m 10.244.0.113 k8s-master1 -``` - -* 在本机MacOSX上访问dashboard地址,验证heapster成功启动,查看Pods的CPU以及Memory信息是否正常呈现 - -``` -http://k8s-master1:30000 -``` - -![heapster](images/heapster.png) - -* 至此,第一台master成功安装,并已经完成flannel、dashboard、heapster的部署 - ---- -[返回目录](#目录) - -### master集群高可用设置 - -#### 复制配置 - -* 在k8s-master1上把/etc/kubernetes/复制到k8s-master2、k8s-master3 - -``` -scp -r /etc/kubernetes/ k8s-master2:/etc/ -scp -r /etc/kubernetes/ k8s-master3:/etc/ -``` - -* 在k8s-master2、k8s-master3上重启kubelet服务,并检查kubelet服务状态为active (running) - -``` -$ systemctl daemon-reload && systemctl restart kubelet - -$ systemctl status kubelet -● kubelet.service - kubelet: The Kubernetes Node Agent - Loaded: loaded (/etc/systemd/system/kubelet.service; enabled; vendor preset: disabled) - Drop-In: /etc/systemd/system/kubelet.service.d - └─10-kubeadm.conf - Active: active (running) since Tue 2017-06-27 16:24:22 CST; 1 day 17h ago - Docs: http://kubernetes.io/docs/ - Main PID: 2780 (kubelet) - Memory: 92.9M - CGroup: /system.slice/kubelet.service - ├─2780 /usr/bin/kubelet --kubeconfig=/etc/kubernetes/kubelet.conf --require-... - └─2811 journalctl -k -f -``` - -* 在k8s-master2、k8s-master3上设置kubectl的环境变量KUBECONFIG,连接kubelet - -``` -$ vi ~/.bashrc -export KUBECONFIG=/etc/kubernetes/admin.conf - -$ source ~/.bashrc -``` - -* 在k8s-master2、k8s-master3检测节点状态,发现节点已经加进来 - -``` -$ kubectl get nodes -o wide -NAME STATUS AGE VERSION EXTERNAL-IP OS-IMAGE KERNEL-VERSION -k8s-master1 Ready 26m v1.6.4 CentOS Linux 7 (Core) 3.10.0-514.6.1.el7.x86_64 -k8s-master2 Ready 2m v1.6.4 CentOS Linux 7 (Core) 3.10.0-514.21.1.el7.x86_64 -k8s-master3 Ready 2m v1.6.4 CentOS Linux 7 (Core) 3.10.0-514.21.1.el7.x86_64 -``` - -* 在k8s-master2、k8s-master3上修改kube-apiserver.yaml的配置,${HOST_IP}改为本机IP - -``` -$ vi /etc/kubernetes/manifests/kube-apiserver.yaml - - --advertise-address=${HOST_IP} -``` - -* 在k8s-master2和k8s-master3上的修改kubelet.conf设置,${HOST_IP}改为本机IP - -``` -$ vi /etc/kubernetes/kubelet.conf -server: https://${HOST_IP}:6443 -``` - -* 在k8s-master2和k8s-master3上的重启服务 - -``` -$ systemctl daemon-reload && systemctl restart docker kubelet -``` - ---- -[返回目录](#目录) - -#### 创建证书 - -* 在k8s-master2和k8s-master3上修改kubelet.conf后,由于kubelet.conf配置的crt和key与本机IP地址不一致的情况,kubelet服务会异常退出,crt和key必须重新制作。查看apiserver.crt的签名信息,发现IP Address以及DNS绑定了k8s-master1,必须进行相应修改。 - -``` -openssl x509 -noout -text -in /etc/kubernetes/pki/apiserver.crt -Certificate: - Data: - Version: 3 (0x2) - Serial Number: 9486057293403496063 (0x83a53ed95c519e7f) - Signature Algorithm: sha1WithRSAEncryption - Issuer: CN=kubernetes - Validity - Not Before: Jun 22 16:22:44 2017 GMT - Not After : Jun 22 16:22:44 2018 GMT - Subject: CN=kube-apiserver, - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - Public-Key: (2048 bit) - Modulus: - d0:10:4a:3b:c4:62:5d:ae:f8:f1:16:48:b3:77:6b: - 53:4b - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Alternative Name: - DNS:k8s-master1, DNS:kubernetes, DNS:kubernetes.default, DNS:kubernetes.default.svc, DNS:kubernetes.default.svc.cluster.local, IP Address:10.96.0.1, IP Address:192.168.60.71 - Signature Algorithm: sha1WithRSAEncryption - dd:68:16:f9:11:be:c3:3c:be:89:9f:14:60:6b:e0:47:c7:91: - 9e:78:ab:ce -``` - -* 在k8s-master1、k8s-master2、k8s-master3上使用ca.key和ca.crt制作apiserver.crt和apiserver.key - -``` -$ mkdir -p /etc/kubernetes/pki-local - -$ cd /etc/kubernetes/pki-local -``` - -* 在k8s-master1、k8s-master2、k8s-master3上生成2048位的密钥对 - -``` -$ openssl genrsa -out apiserver.key 2048 -``` - -* 在k8s-master1、k8s-master2、k8s-master3上生成证书签署请求文件 - -``` -$ openssl req -new -key apiserver.key -subj "/CN=kube-apiserver," -out apiserver.csr -``` - -* 在k8s-master1、k8s-master2、k8s-master3上编辑apiserver.ext文件,${HOST_NAME}修改为本机主机名,${HOST_IP}修改为本机IP地址,${VIRTUAL_IP}修改为keepalived的虚拟IP(192.168.60.80) - -``` -$ vi apiserver.ext -subjectAltName = DNS:${HOST_NAME},DNS:kubernetes,DNS:kubernetes.default,DNS:kubernetes.default.svc, DNS:kubernetes.default.svc.cluster.local, IP:10.96.0.1, IP:${HOST_IP}, IP:${VIRTUAL_IP} -``` - -* 在k8s-master1、k8s-master2、k8s-master3上使用ca.key和ca.crt签署上述请求 - -``` -$ openssl x509 -req -in apiserver.csr -CA /etc/kubernetes/pki/ca.crt -CAkey /etc/kubernetes/pki/ca.key -CAcreateserial -out apiserver.crt -days 365 -extfile /etc/kubernetes/pki-local/apiserver.ext -``` - -* 在k8s-master1、k8s-master2、k8s-master3上查看新生成的证书: - -``` -$ openssl x509 -noout -text -in apiserver.crt -Certificate: - Data: - Version: 3 (0x2) - Serial Number: 9486057293403496063 (0x83a53ed95c519e7f) - Signature Algorithm: sha1WithRSAEncryption - Issuer: CN=kubernetes - Validity - Not Before: Jun 22 16:22:44 2017 GMT - Not After : Jun 22 16:22:44 2018 GMT - Subject: CN=kube-apiserver, - Subject Public Key Info: - Public Key Algorithm: rsaEncryption - Public-Key: (2048 bit) - Modulus: - d0:10:4a:3b:c4:62:5d:ae:f8:f1:16:48:b3:77:6b: - 53:4b - Exponent: 65537 (0x10001) - X509v3 extensions: - X509v3 Subject Alternative Name: - DNS:k8s-master3, DNS:kubernetes, DNS:kubernetes.default, DNS:kubernetes.default.svc, DNS:kubernetes.default.svc.cluster.local, IP Address:10.96.0.1, IP Address:192.168.60.73, IP Address:192.168.60.80 - Signature Algorithm: sha1WithRSAEncryption - dd:68:16:f9:11:be:c3:3c:be:89:9f:14:60:6b:e0:47:c7:91: - 9e:78:ab:ce -``` - -* 在k8s-master1、k8s-master2、k8s-master3上把apiserver.crt和apiserver.key文件复制到/etc/kubernetes/pki目录 - -``` -$ cp apiserver.crt apiserver.key /etc/kubernetes/pki/ -``` - ---- -[返回目录](#目录) - -#### 修改配置 - -* 在k8s-master2和k8s-master3上修改admin.conf,${HOST_IP}修改为本机IP地址 - -``` -$ vi /etc/kubernetes/admin.conf - server: https://${HOST_IP}:6443 -``` - -* 在k8s-master2和k8s-master3上修改controller-manager.conf,${HOST_IP}修改为本机IP地址 - -``` -$ vi /etc/kubernetes/controller-manager.conf - server: https://${HOST_IP}:6443 -``` - -* 在k8s-master2和k8s-master3上修改scheduler.conf,${HOST_IP}修改为本机IP地址 - -``` -$ vi /etc/kubernetes/scheduler.conf - server: https://${HOST_IP}:6443 -``` - -* 在k8s-master1、k8s-master2、k8s-master3上重启所有服务 - -``` -$ systemctl daemon-reload && systemctl restart docker kubelet -``` - ---- -[返回目录](#目录) - -#### 验证高可用安装 - -* 在k8s-master1、k8s-master2、k8s-master3任意节点上检测服务启动情况,发现apiserver、controller-manager、kube-scheduler、proxy、flannel已经在k8s-master1、k8s-master2、k8s-master3成功启动 - -``` -$ kubectl get pod --all-namespaces -o wide | grep k8s-master2 -kube-system kube-apiserver-k8s-master2 1/1 Running 1 55s 192.168.60.72 k8s-master2 -kube-system kube-controller-manager-k8s-master2 1/1 Running 2 18m 192.168.60.72 k8s-master2 -kube-system kube-flannel-ds-t8gkh 2/2 Running 4 18m 192.168.60.72 k8s-master2 -kube-system kube-proxy-bpgqw 1/1 Running 1 18m 192.168.60.72 k8s-master2 -kube-system kube-scheduler-k8s-master2 1/1 Running 2 18m 192.168.60.72 k8s-master2 - -$ kubectl get pod --all-namespaces -o wide | grep k8s-master3 -kube-system kube-apiserver-k8s-master3 1/1 Running 1 1m 192.168.60.73 k8s-master3 -kube-system kube-controller-manager-k8s-master3 1/1 Running 2 18m 192.168.60.73 k8s-master3 -kube-system kube-flannel-ds-tmqmx 2/2 Running 4 18m 192.168.60.73 k8s-master3 -kube-system kube-proxy-4stg3 1/1 Running 1 18m 192.168.60.73 k8s-master3 -kube-system kube-scheduler-k8s-master3 1/1 Running 2 18m 192.168.60.73 k8s-master3 -``` - -* 在k8s-master1、k8s-master2、k8s-master3任意节点上通过kubectl logs检查各个controller-manager和scheduler的leader election结果,可以发现只有一个节点有效表示选举正常 - -``` -$ kubectl logs -n kube-system kube-controller-manager-k8s-master1 -$ kubectl logs -n kube-system kube-controller-manager-k8s-master2 -$ kubectl logs -n kube-system kube-controller-manager-k8s-master3 - -$ kubectl logs -n kube-system kube-scheduler-k8s-master1 -$ kubectl logs -n kube-system kube-scheduler-k8s-master2 -$ kubectl logs -n kube-system kube-scheduler-k8s-master3 -``` - -* 在k8s-master1、k8s-master2、k8s-master3任意节点上查看deployment的情况 - -``` -$ kubectl get deploy --all-namespaces -NAMESPACE NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE -kube-system heapster 1 1 1 1 41m -kube-system kube-dns 1 1 1 1 48m -kube-system kubernetes-dashboard 1 1 1 1 43m -kube-system monitoring-grafana 1 1 1 1 41m -kube-system monitoring-influxdb 1 1 1 1 41m -``` - -* 在k8s-master1、k8s-master2、k8s-master3任意节点上把kubernetes-dashboard、kube-dns、 scale up成replicas=3,保证各个master节点上都有运行 - -``` -$ kubectl scale --replicas=3 -n kube-system deployment/kube-dns -$ kubectl get pods --all-namespaces -o wide| grep kube-dns - -$ kubectl scale --replicas=3 -n kube-system deployment/kubernetes-dashboard -$ kubectl get pods --all-namespaces -o wide| grep kubernetes-dashboard - -$ kubectl scale --replicas=3 -n kube-system deployment/heapster -$ kubectl get pods --all-namespaces -o wide| grep heapster - -$ kubectl scale --replicas=3 -n kube-system deployment/monitoring-grafana -$ kubectl get pods --all-namespaces -o wide| grep monitoring-grafana - -$ kubectl scale --replicas=3 -n kube-system deployment/monitoring-influxdb -$ kubectl get pods --all-namespaces -o wide| grep monitoring-influxdb -``` ---- -[返回目录](#目录) - -#### keepalived安装配置 - -* 在k8s-master、k8s-master2、k8s-master3上安装keepalived - -``` -$ yum install -y keepalived - -$ systemctl enable keepalived && systemctl restart keepalived -``` - -* 在k8s-master1、k8s-master2、k8s-master3上备份keepalived配置文件 - -``` -$ mv /etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf.bak -``` - -* 在k8s-master1、k8s-master2、k8s-master3上设置apiserver监控脚本,当apiserver检测失败的时候关闭keepalived服务,转移虚拟IP地址 - -``` -$ vi /etc/keepalived/check_apiserver.sh -#!/bin/bash -err=0 -for k in $( seq 1 10 ) -do - check_code=$(ps -ef|grep kube-apiserver | wc -l) - if [ "$check_code" = "1" ]; then - err=$(expr $err + 1) - sleep 5 - continue - else - err=0 - break - fi -done -if [ "$err" != "0" ]; then - echo "systemctl stop keepalived" - /usr/bin/systemctl stop keepalived - exit 1 -else - exit 0 -fi - -chmod a+x /etc/keepalived/check_apiserver.sh -``` - -* 在k8s-master1、k8s-master2、k8s-master3上查看接口名字 - -``` -$ ip a | grep 192.168.60 -``` - -* 在k8s-master1、k8s-master2、k8s-master3上设置keepalived,参数说明如下: -* state ${STATE}:为MASTER或者BACKUP,只能有一个MASTER -* interface ${INTERFACE_NAME}:为本机的需要绑定的接口名字(通过上边的```ip a```命令查看) -* mcast_src_ip ${HOST_IP}:为本机的IP地址 -* priority ${PRIORITY}:为优先级,例如102、101、100,优先级越高越容易选择为MASTER,优先级不能一样 -* ${VIRTUAL_IP}:为虚拟的IP地址,这里设置为192.168.60.80 - -``` -$ vi /etc/keepalived/keepalived.conf -! Configuration File for keepalived -global_defs { - router_id LVS_DEVEL -} -vrrp_script chk_apiserver { - script "/etc/keepalived/check_apiserver.sh" - interval 2 - weight -5 - fall 3 - rise 2 -} -vrrp_instance VI_1 { - state ${STATE} - interface ${INTERFACE_NAME} - mcast_src_ip ${HOST_IP} - virtual_router_id 51 - priority ${PRIORITY} - advert_int 2 - authentication { - auth_type PASS - auth_pass 4be37dc3b4c90194d1600c483e10ad1d - } - virtual_ipaddress { - ${VIRTUAL_IP} - } - track_script { - chk_apiserver - } -} -``` - -* 在k8s-master1、k8s-master2、k8s-master3上重启keepalived服务,检测虚拟IP地址是否生效 - -``` -$ systemctl restart keepalived -$ ping 192.168.60.80 -``` - ---- -[返回目录](#目录) - -#### nginx负载均衡配置 - -* 在k8s-master1、k8s-master2、k8s-master3上修改nginx-default.conf设置,${HOST_IP}对应k8s-master1、k8s-master2、k8s-master3的地址。通过nginx把访问apiserver的6443端口负载均衡到8433端口上 - -``` -$ vi /root/kubeadm-ha/nginx-default.conf -stream { - upstream apiserver { - server ${HOST_IP}:6443 weight=5 max_fails=3 fail_timeout=30s; - server ${HOST_IP}:6443 weight=5 max_fails=3 fail_timeout=30s; - server ${HOST_IP}:6443 weight=5 max_fails=3 fail_timeout=30s; - } - - server { - listen 8443; - proxy_connect_timeout 1s; - proxy_timeout 3s; - proxy_pass apiserver; - } -} -``` - -* 在k8s-master1、k8s-master2、k8s-master3上启动nginx容器 - -``` -$ docker run -d -p 8443:8443 \ ---name nginx-lb \ ---restart always \ --v /root/kubeadm-ha/nginx-default.conf:/etc/nginx/nginx.conf \ -nginx -``` - -* 在k8s-master1、k8s-master2、k8s-master3上检测keepalived服务的虚拟IP地址指向 - -``` -$ curl -L 192.168.60.80:8443 | wc -l - % Total % Received % Xferd Average Speed Time Time Time Current - Dload Upload Total Spent Left Speed -100 14 0 14 0 0 18324 0 --:--:-- --:--:-- --:--:-- 14000 -1 -``` - -* 业务恢复后务必重启keepalived,否则keepalived会处于关闭状态 - -``` -$ systemctl restart keepalived -``` - -* 在k8s-master1、k8s-master2、k8s-master3上查看keeplived日志,有以下输出表示当前虚拟IP地址绑定的主机 - -``` -$ systemctl status keepalived -l -VRRP_Instance(VI_1) Sending gratuitous ARPs on ens160 for 192.168.60.80 -``` - ---- -[返回目录](#目录) - -#### kube-proxy配置 - -* 在k8s-master1上设置kube-proxy使用keepalived的虚拟IP地址,避免k8s-master1异常的时候所有节点的kube-proxy连接不上 - -``` -$ kubectl get -n kube-system configmap -NAME DATA AGE -extension-apiserver-authentication 6 4h -kube-flannel-cfg 2 4h -kube-proxy 1 4h -``` - -* 在k8s-master1上修改configmap/kube-proxy的server指向keepalived的虚拟IP地址 - -``` -$ kubectl edit -n kube-system configmap/kube-proxy - server: https://192.168.60.80:8443 -``` - -* 在k8s-master1上查看configmap/kube-proxy设置情况 - -``` -$ kubectl get -n kube-system configmap/kube-proxy -o yaml -``` - -* 在k8s-master1上删除所有kube-proxy的pod,让proxy重建 - -``` -kubectl get pods --all-namespaces -o wide | grep proxy -``` - -* 在k8s-master1、k8s-master2、k8s-master3上重启docker kubelet keepalived服务 - -``` -$ systemctl restart docker kubelet keepalived -``` - ---- -[返回目录](#目录) - -#### 验证master集群高可用 - -* 在k8s-master1上检查各个节点pod的启动状态,每个上都成功启动heapster、kube-apiserver、kube-controller-manager、kube-dns、kube-flannel、kube-proxy、kube-scheduler、kubernetes-dashboard、monitoring-grafana、monitoring-influxdb。并且所有pod都处于Running状态表示正常 - -``` -$ kubectl get pods --all-namespaces -o wide | grep k8s-master1 - -$ kubectl get pods --all-namespaces -o wide | grep k8s-master2 - -$ kubectl get pods --all-namespaces -o wide | grep k8s-master3 -``` - ---- -[返回目录](#目录) - -### node节点加入高可用集群设置 - -#### kubeadm加入高可用集群 -* 在k8s-master1上禁止在所有master节点上发布应用 - -``` -$ kubectl patch node k8s-master1 -p '{"spec":{"unschedulable":true}}' - -$ kubectl patch node k8s-master2 -p '{"spec":{"unschedulable":true}}' - -$ kubectl patch node k8s-master3 -p '{"spec":{"unschedulable":true}}' -``` - -* 在k8s-master1上查看集群的token - -``` -$ kubeadm token list -TOKEN TTL EXPIRES USAGES DESCRIPTION -xxxxxx.yyyyyy authentication,signing The default bootstrap token generated by 'kubeadm init' -``` - -* 在k8s-node1 ~ k8s-node8上,${TOKEN}为k8s-master1上显示的token,${VIRTUAL_IP}为keepalived的虚拟IP地址192.168.60.80 - -``` -$ kubeadm join --token ${TOKEN} ${VIRTUAL_IP}:8443 -``` - ---- -[返回目录](#目录) - -#### 部署应用验证集群 - -* 在k8s-node1 ~ k8s-node8上查看kubelet状态,kubelet状态为active (running)表示kubelet服务正常启动 - -``` -$ systemctl status kubelet -● kubelet.service - kubelet: The Kubernetes Node Agent - Loaded: loaded (/etc/systemd/system/kubelet.service; enabled; vendor preset: disabled) - Drop-In: /etc/systemd/system/kubelet.service.d - └─10-kubeadm.conf - Active: active (running) since Tue 2017-06-27 16:23:43 CST; 1 day 18h ago - Docs: http://kubernetes.io/docs/ - Main PID: 1146 (kubelet) - Memory: 204.9M - CGroup: /system.slice/kubelet.service - ├─ 1146 /usr/bin/kubelet --kubeconfig=/etc/kubernetes/kubelet.conf --require... - ├─ 2553 journalctl -k -f - ├─ 4988 /usr/sbin/glusterfs --log-level=ERROR --log-file=/var/lib/kubelet/pl... - └─14720 /usr/sbin/glusterfs --log-level=ERROR --log-file=/var/lib/kubelet/pl... -``` - -* 在k8s-master1上检查各个节点状态,发现所有k8s-nodes节点成功加入 - -``` -$ kubectl get nodes -o wide -NAME STATUS AGE VERSION -k8s-master1 Ready,SchedulingDisabled 5h v1.6.4 -k8s-master2 Ready,SchedulingDisabled 4h v1.6.4 -k8s-master3 Ready,SchedulingDisabled 4h v1.6.4 -k8s-node1 Ready 6m v1.6.4 -k8s-node2 Ready 4m v1.6.4 -k8s-node3 Ready 4m v1.6.4 -k8s-node4 Ready 3m v1.6.4 -k8s-node5 Ready 3m v1.6.4 -k8s-node6 Ready 3m v1.6.4 -k8s-node7 Ready 3m v1.6.4 -k8s-node8 Ready 3m v1.6.4 -``` - -* 在k8s-master1上测试部署nginx服务,nginx服务成功部署到k8s-node5上 - -``` -$ kubectl run nginx --image=nginx --port=80 -deployment "nginx" created - -$ kubectl get pod -o wide -l=run=nginx -NAME READY STATUS RESTARTS AGE IP NODE -nginx-2662403697-pbmwt 1/1 Running 0 5m 10.244.7.6 k8s-node5 -``` - -* 在k8s-master1让nginx服务外部可见 - -``` -$ kubectl expose deployment nginx --port=80 --target-port=80 --type=NodePort -service "nginx" exposed - -$ kubectl get svc -l=run=nginx -NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE -nginx 10.105.151.69 80:31639/TCP 43s - -$ curl k8s-master2:31639 - - - -Welcome to nginx! - - - -

Welcome to nginx!

-

If you see this page, the nginx web server is successfully installed and -working. Further configuration is required.

- -

For online documentation and support please refer to -nginx.org.
-Commercial support is available at -nginx.com.

- -

Thank you for using nginx.

- - - -``` - -* 至此,kubernetes高可用集群成功部署 ---- -[返回目录](#目录) - diff --git a/v1.6/images/dashboard.png b/v1.6/images/dashboard.png deleted file mode 100644 index f86f497559d0db84e7166a398e899cc5c6e0bb4c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 67268 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

X~a>Ng6SawIC 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%0D1w{fyA@gx86vrNUs?21q?kPfEL4LdM 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�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

?=w?e7l_ISOwQl;4RpZvBz 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 Ax&QzG diff --git a/v1.6/kube-dashboard/kubernetes-dashboard-1.6.1.yaml b/v1.6/kube-dashboard/kubernetes-dashboard-1.6.1.yaml deleted file mode 100644 index ca8df50..0000000 --- a/v1.6/kube-dashboard/kubernetes-dashboard-1.6.1.yaml +++ /dev/null @@ -1,98 +0,0 @@ -# Copyright 2015 Google Inc. All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Configuration to deploy release version of the Dashboard UI compatible with -# Kubernetes 1.6 (RBAC enabled). -# -# Example usage: kubectl create -f - -apiVersion: v1 -kind: ServiceAccount -metadata: - labels: - k8s-app: kubernetes-dashboard - name: kubernetes-dashboard - namespace: kube-system ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: kubernetes-dashboard - labels: - k8s-app: kubernetes-dashboard -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: cluster-admin -subjects: -- kind: ServiceAccount - name: kubernetes-dashboard - namespace: kube-system ---- -kind: Deployment -apiVersion: extensions/v1beta1 -metadata: - labels: - k8s-app: kubernetes-dashboard - name: kubernetes-dashboard - namespace: kube-system -spec: - replicas: 1 - revisionHistoryLimit: 10 - selector: - matchLabels: - k8s-app: kubernetes-dashboard - template: - metadata: - labels: - k8s-app: kubernetes-dashboard - spec: - containers: - - name: kubernetes-dashboard - image: gcr.io/google_containers/kubernetes-dashboard-amd64:v1.6.1 - ports: - - containerPort: 9090 - protocol: TCP - args: - # Uncomment the following line to manually specify Kubernetes API server Host - # If not specified, Dashboard will attempt to auto discover the API server and connect - # to it. Uncomment only if the default does not work. - # - --apiserver-host=http://my-address:port - livenessProbe: - httpGet: - path: / - port: 9090 - initialDelaySeconds: 30 - timeoutSeconds: 30 - serviceAccountName: kubernetes-dashboard - # Comment the following tolerations if Dashboard must not be deployed on master - tolerations: - - key: node-role.kubernetes.io/master - effect: NoSchedule ---- -kind: Service -apiVersion: v1 -metadata: - labels: - k8s-app: kubernetes-dashboard - name: kubernetes-dashboard - namespace: kube-system -spec: - type: NodePort - ports: - - port: 80 - targetPort: 9090 - nodePort: 30000 - selector: - k8s-app: kubernetes-dashboard diff --git a/v1.6/kube-flannel/step1-kube-flannel-rbac-v0.7.1.yml b/v1.6/kube-flannel/step1-kube-flannel-rbac-v0.7.1.yml deleted file mode 100644 index d66465c..0000000 --- a/v1.6/kube-flannel/step1-kube-flannel-rbac-v0.7.1.yml +++ /dev/null @@ -1,42 +0,0 @@ -# Create the clusterrole and clusterrolebinding: -# $ kubectl create -f kube-flannel-rbac.yml -# Create the pod using the same namespace used by the flannel serviceaccount: -# $ kubectl create --namespace kube-system -f kube-flannel.yml ---- -kind: ClusterRole -apiVersion: rbac.authorization.k8s.io/v1beta1 -metadata: - name: flannel -rules: - - apiGroups: - - "" - resources: - - pods - verbs: - - get - - apiGroups: - - "" - resources: - - nodes - verbs: - - list - - watch - - apiGroups: - - "" - resources: - - nodes/status - verbs: - - patch ---- -kind: ClusterRoleBinding -apiVersion: rbac.authorization.k8s.io/v1beta1 -metadata: - name: flannel -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: flannel -subjects: -- kind: ServiceAccount - name: flannel - namespace: kube-system diff --git a/v1.6/kube-flannel/step2-kube-flannel-v0.7.1.yml b/v1.6/kube-flannel/step2-kube-flannel-v0.7.1.yml deleted file mode 100644 index 09dfe53..0000000 --- a/v1.6/kube-flannel/step2-kube-flannel-v0.7.1.yml +++ /dev/null @@ -1,93 +0,0 @@ ---- -apiVersion: v1 -kind: ServiceAccount -metadata: - name: flannel - namespace: kube-system ---- -kind: ConfigMap -apiVersion: v1 -metadata: - name: kube-flannel-cfg - namespace: kube-system - labels: - tier: node - app: flannel -data: - cni-conf.json: | - { - "name": "cbr0", - "type": "flannel", - "delegate": { - "isDefaultGateway": true - } - } - net-conf.json: | - { - "Network": "10.244.0.0/16", - "Backend": { - "Type": "vxlan" - } - } ---- -apiVersion: extensions/v1beta1 -kind: DaemonSet -metadata: - name: kube-flannel-ds - namespace: kube-system - labels: - tier: node - app: flannel -spec: - template: - metadata: - labels: - tier: node - app: flannel - spec: - hostNetwork: true - nodeSelector: - beta.kubernetes.io/arch: amd64 - tolerations: - - key: node-role.kubernetes.io/master - operator: Exists - effect: NoSchedule - serviceAccountName: flannel - containers: - - name: kube-flannel - image: quay.io/coreos/flannel:v0.7.1-amd64 - command: [ "/opt/bin/flanneld", "--ip-masq", "--kube-subnet-mgr" ] - securityContext: - privileged: true - env: - - name: POD_NAME - valueFrom: - fieldRef: - fieldPath: metadata.name - - name: POD_NAMESPACE - valueFrom: - fieldRef: - fieldPath: metadata.namespace - volumeMounts: - - name: run - mountPath: /run - - name: flannel-cfg - mountPath: /etc/kube-flannel/ - - name: install-cni - image: quay.io/coreos/flannel:v0.7.1-amd64 - command: [ "/bin/sh", "-c", "set -e -x; cp -f /etc/kube-flannel/cni-conf.json /etc/cni/net.d/10-flannel.conf; while true; do sleep 3600; done" ] - volumeMounts: - - name: cni - mountPath: /etc/cni/net.d - - name: flannel-cfg - mountPath: /etc/kube-flannel/ - volumes: - - name: run - hostPath: - path: /run - - name: cni - hostPath: - path: /etc/cni/net.d - - name: flannel-cfg - configMap: - name: kube-flannel-cfg diff --git a/v1.6/kube-heapster/grafana.yaml b/v1.6/kube-heapster/grafana.yaml deleted file mode 100644 index 4bdce05..0000000 --- a/v1.6/kube-heapster/grafana.yaml +++ /dev/null @@ -1,66 +0,0 @@ -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: monitoring-grafana - namespace: kube-system -spec: - replicas: 1 - template: - metadata: - labels: - task: monitoring - k8s-app: grafana - spec: - containers: - - name: grafana - image: gcr.io/google_containers/heapster-grafana-amd64:v4.0.2 - ports: - - containerPort: 3000 - protocol: TCP - volumeMounts: - - mountPath: /var - name: grafana-storage - env: - - name: INFLUXDB_HOST - value: monitoring-influxdb - - name: GRAFANA_PORT - value: "3000" - # The following env variables are required to make Grafana accessible via - # the kubernetes api-server proxy. On production clusters, we recommend - # removing these env variables, setup auth for grafana, and expose the grafana - # service using a LoadBalancer or a public IP. - - name: GF_AUTH_BASIC_ENABLED - value: "false" - - name: GF_AUTH_ANONYMOUS_ENABLED - value: "true" - - name: GF_AUTH_ANONYMOUS_ORG_ROLE - value: Admin - - name: GF_SERVER_ROOT_URL - # If you're only using the API Server proxy, set this value instead: - # value: /api/v1/proxy/namespaces/kube-system/services/monitoring-grafana/ - value: / - volumes: - - name: grafana-storage - emptyDir: {} ---- -apiVersion: v1 -kind: Service -metadata: - labels: - # For use as a Cluster add-on (https://github.com/kubernetes/kubernetes/tree/master/cluster/addons) - # If you are NOT using this as an addon, you should comment out this line. - kubernetes.io/cluster-service: 'true' - kubernetes.io/name: monitoring-grafana - name: monitoring-grafana - namespace: kube-system -spec: - # In a production setup, we recommend accessing Grafana through an external Loadbalancer - # or through a public IP. - # type: LoadBalancer - # You could also use NodePort to expose the service at a randomly-generated port - # type: NodePort - ports: - - port: 80 - targetPort: 3000 - selector: - k8s-app: grafana diff --git a/v1.6/kube-heapster/heapster-rbac.yaml b/v1.6/kube-heapster/heapster-rbac.yaml deleted file mode 100644 index 74df610..0000000 --- a/v1.6/kube-heapster/heapster-rbac.yaml +++ /dev/null @@ -1,67 +0,0 @@ -apiVersion: v1 -kind: ServiceAccount -metadata: - name: heapster - namespace: kube-system ---- -kind: ClusterRoleBinding -apiVersion: rbac.authorization.k8s.io/v1beta1 -metadata: - name: heapster -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: system:heapster -subjects: -- kind: ServiceAccount - name: heapster - namespace: kube-system ---- -apiVersion: apps/v1beta1 -kind: Deployment -metadata: - name: heapster - labels: - k8s-app: heapster - task: monitoring - namespace: kube-system -spec: - replicas: 1 - template: - metadata: - labels: - k8s-app: heapster - task: monitoring - spec: - tolerations: - - key: beta.kubernetes.io/arch - value: arm - effect: NoSchedule - - key: beta.kubernetes.io/arch - value: arm64 - effect: NoSchedule - serviceAccountName: heapster - containers: - - name: heapster - image: gcr.io/google_containers/heapster-amd64:v1.3.0 - command: - - /heapster - - --source=kubernetes:https://kubernetes.default - - --sink=influxdb:http://monitoring-influxdb.kube-system.svc:8086 ---- -apiVersion: v1 -kind: Service -metadata: - labels: - task: monitoring - k8s-app: heapster - kubernetes.io/cluster-service: "true" - kubernetes.io/name: Heapster - name: heapster - namespace: kube-system -spec: - ports: - - port: 80 - targetPort: 8082 - selector: - k8s-app: heapster diff --git a/v1.6/kube-heapster/influxdb.yaml b/v1.6/kube-heapster/influxdb.yaml deleted file mode 100644 index 9afdf55..0000000 --- a/v1.6/kube-heapster/influxdb.yaml +++ /dev/null @@ -1,40 +0,0 @@ -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: monitoring-influxdb - namespace: kube-system -spec: - replicas: 1 - template: - metadata: - labels: - task: monitoring - k8s-app: influxdb - spec: - containers: - - name: influxdb - image: gcr.io/google_containers/heapster-influxdb-amd64:v1.1.1 - volumeMounts: - - mountPath: /data - name: influxdb-storage - volumes: - - name: influxdb-storage - emptyDir: {} ---- -apiVersion: v1 -kind: Service -metadata: - labels: - task: monitoring - # For use as a Cluster add-on (https://github.com/kubernetes/kubernetes/tree/master/cluster/addons) - # If you are NOT using this as an addon, you should comment out this line. - kubernetes.io/cluster-service: 'true' - kubernetes.io/name: monitoring-influxdb - name: monitoring-influxdb - namespace: kube-system -spec: - ports: - - port: 8086 - targetPort: 8086 - selector: - k8s-app: influxdb diff --git a/v1.6/kubeadm-init-v1.6.x.yaml b/v1.6/kubeadm-init-v1.6.x.yaml deleted file mode 100644 index 69a5ad8..0000000 --- a/v1.6/kubeadm-init-v1.6.x.yaml +++ /dev/null @@ -1,10 +0,0 @@ -apiVersion: kubeadm.k8s.io/v1alpha1 -kind: MasterConfiguration -kubernetesVersion: v1.6.4 -networking: - podSubnet: 10.244.0.0/16 -etcd: - endpoints: - - http://${HOST_IP}:2379 - - http://${HOST_IP}:2379 - - http://${HOST_IP}:2379 diff --git a/v1.6/nginx-default.conf b/v1.6/nginx-default.conf deleted file mode 100644 index b330c0b..0000000 --- a/v1.6/nginx-default.conf +++ /dev/null @@ -1,47 +0,0 @@ - -user nginx; -worker_processes 1; - -error_log /var/log/nginx/error.log warn; -pid /var/run/nginx.pid; - - -events { - worker_connections 1024; -} - - -http { - include /etc/nginx/mime.types; - default_type application/octet-stream; - - log_format main '$remote_addr - $remote_user [$time_local] "$request" ' - '$status $body_bytes_sent "$http_referer" ' - '"$http_user_agent" "$http_x_forwarded_for"'; - - access_log /var/log/nginx/access.log main; - - sendfile on; - #tcp_nopush on; - - keepalive_timeout 65; - - #gzip on; - - include /etc/nginx/conf.d/*.conf; -} - -stream { - upstream apiserver { - server ${HOST_IP}:6443 weight=5 max_fails=3 fail_timeout=30s; - server ${HOST_IP}:6443 weight=5 max_fails=3 fail_timeout=30s; - server ${HOST_IP}:6443 weight=5 max_fails=3 fail_timeout=30s; - } - - server { - listen 8443; - proxy_connect_timeout 1s; - proxy_timeout 3s; - proxy_pass apiserver; - } -} diff --git a/v1.7/README.md b/v1.7/README.md deleted file mode 100644 index a8c23f1..0000000 --- a/v1.7/README.md +++ /dev/null @@ -1,1141 +0,0 @@ -# kubeadm-highavailiability - kubernetes high availiability deployment based on kubeadm, for Kubernetes version v1.11.x/v1.9.x/v1.7.x/v1.6.x - -![k8s logo](../images/Kubernetes.png) - -- [中文文档(for v1.11.x版本)](../README_CN.md) -- [English document(for v1.11.x version)](../README.md) -- [中文文档(for v1.9.x版本)](../v1.9/README_CN.md) -- [English document(for v1.9.x version)](../v1.9/README.md) -- [中文文档(for v1.7.x版本)](../v1.7/README_CN.md) -- [English document(for v1.7.x version)](../v1.7/README.md) -- [中文文档(for v1.6.x版本)](../v1.6/README_CN.md) -- [English document(for v1.6.x version)](../v1.6/README.md) - ---- - -- [GitHub project URL](https://github.com/cookeem/kubeadm-ha/) -- [OSChina project URL](https://git.oschina.net/cookeem/kubeadm-ha/) - ---- - -- This operation instruction is for version v1.7.x kubernetes cluster - -### category - -1. [deployment architecture](#deployment-architecture) - 1. [deployment architecture summary](#deployment-architecture-summary) - 1. [detail deployment architecture](#detail-deployment-architecture) - 1. [hosts list](#hosts-list) -1. [prerequisites](#prerequisites) - 1. [version info](#version-info) - 1. [required docker images](#required-docker-images) - 1. [system configuration](#system-configuration) -1. [kubernetes installation](#kubernetes-installation) - 1. [kubernetes and related services installation](#kubernetes-and-related-services-installation) - 1. [load docker images](#load-docker-images) -1. [use kubeadm to init first master](#use-kubeadm-to-init-first-master) - 1. [deploy independent etcd tls cluster](#deploy-independent-etcd-tls-cluster) - 1. [kubeadm init](#kubeadm-init) - 1. [install flannel networks addon](#install-flannel-networks-addon) - 1. [install dashboard addon](#install-dashboard-addon) - 1. [install heapster addon](#install-heapster-addon) -1. [kubernetes masters high avialiability configuration](#kubernetes-masters-high-avialiability-configuration) - 1. [copy configuration files](#copy-configuration-files) - 1. [edit configuration files](#edit-configuration-files) - 1. [verify master high avialiability](#verify-master-high-avialiability) - 1. [keepalived installation](#keepalived-installation) - 1. [nginx load balancer configuration](#nginx-load-balancer-configuration) - 1. [kube-proxy configuration](#kube-proxy-configuration) - 1. [verfify master high avialiability with keepalived](#verfify-master-high-avialiability-with-keepalived) -1. [k8s-nodes join the kubernetes cluster](#k8s-nodes-join-the-kubernetes-cluster) - 1. [use kubeadm to join the cluster](#use-kubeadm-to-join-the-cluster) - 1. [deploy nginx application to verify installation](#deploy-nginx-application-to-verify-installation) - - -### deployment architecture - -#### deployment architecture summary - -![ha logo](../images/ha.png) - ---- -[category](#category) - -#### detail deployment architecture - -![k8s ha](../images/k8s-ha.png) - -* kubernetes components: - -> kube-apiserver: exposes the Kubernetes API. It is the front-end for the Kubernetes control plane. It is designed to scale horizontally – that is, it scales by deploying more instances. - -> etcd: is used as Kubernetes’ backing store. All cluster data is stored here. Always have a backup plan for etcd’s data for your Kubernetes cluster. - - -> kube-scheduler: watches newly created pods that have no node assigned, and selects a node for them to run on. - - -> kube-controller-manager: runs controllers, which are the background threads that handle routine tasks in the cluster. Logically, each controller is a separate process, but to reduce complexity, they are all compiled into a single binary and run in a single process. - -> kubelet: is the primary node agent. It watches for pods that have been assigned to its node (either by apiserver or via local configuration file) - -> kube-proxy: enables the Kubernetes service abstraction by maintaining network rules on the host and performing connection forwarding. - - -* load balancer - -> keepalived cluster config a virtual IP address (192.168.60.80), this virtual IP address point to k8s-master1, k8s-master2, k8s-master3. - -> nginx service as the load balancer of k8s-master1, k8s-master2, k8s-master3's apiserver. The other nodes kubernetes services connect the keepalived virtual ip address (192.168.60.80) and nginx exposed port (8443) to communicate with the master cluster's apiservers. - ---- -[category](#category) - -#### hosts list - - HostName | IPAddress | Notes | Components - :--- | :--- | :--- | :--- - k8s-master1 | 192.168.60.71 | master node 1 | keepalived, nginx, etcd, kubelet, kube-apiserver, kube-scheduler, kube-proxy, kube-dashboard, heapster - k8s-master2 | 192.168.60.72 | master node 2 | keepalived, nginx, etcd, kubelet, kube-apiserver, kube-scheduler, kube-proxy, kube-dashboard, heapster - k8s-master3 | 192.168.60.73 | master node 3 | keepalived, nginx, etcd, kubelet, kube-apiserver, kube-scheduler, kube-proxy, kube-dashboard, heapster - N/A | 192.168.60.80 | keepalived virtual IP | N/A - k8s-node1 ~ 8 | 192.168.60.81 ~ 88 | 8 worker nodes | kubelet, kube-proxy - ---- -[category](#category) - -### prerequisites - -#### version info - -* Linux version: CentOS 7.3.1611 - -``` -cat /etc/redhat-release -CentOS Linux release 7.3.1611 (Core) -``` - -* docker version: 1.12.6 - -``` -$ docker version -Client: - Version: 1.12.6 - API version: 1.24 - Go version: go1.6.4 - Git commit: 78d1802 - Built: Tue Jan 10 20:20:01 2017 - OS/Arch: linux/amd64 - -Server: - Version: 1.12.6 - API version: 1.24 - Go version: go1.6.4 - Git commit: 78d1802 - Built: Tue Jan 10 20:20:01 2017 - OS/Arch: linux/amd64 -``` - -* kubeadm version: v1.7.0 - -``` -$ kubeadm version -kubeadm version: &version.Info{Major:"1", Minor:"7", GitVersion:"v1.7.0", GitCommit:"d3ada0119e776222f11ec7945e6d860061339aad", GitTreeState:"clean", BuildDate:"2017-06-29T22:55:19Z", GoVersion:"go1.8.3", Compiler:"gc", Platform:"linux/amd64"} -``` - -* kubelet version: v1.7.0 - -``` -$ kubelet --version -Kubernetes v1.7.0 -``` - ---- - -[category](#category) - -#### required docker images - -* on your local laptop MacOSX: pull related docker images - -``` -$ docker pull gcr.io/google_containers/kube-proxy-amd64:v1.7.0 -$ docker pull gcr.io/google_containers/kube-apiserver-amd64:v1.7.0 -$ docker pull gcr.io/google_containers/kube-controller-manager-amd64:v1.7.0 -$ docker pull gcr.io/google_containers/kube-scheduler-amd64:v1.7.0 -$ docker pull gcr.io/google_containers/k8s-dns-sidecar-amd64:1.14.4 -$ docker pull gcr.io/google_containers/k8s-dns-kube-dns-amd64:1.14.4 -$ docker pull gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64:1.14.4 -$ docker pull nginx:latest -$ docker pull gcr.io/google_containers/kubernetes-dashboard-amd64:v1.6.1 -$ docker pull quay.io/coreos/flannel:v0.7.1-amd64 -$ docker pull gcr.io/google_containers/heapster-amd64:v1.3.0 -$ docker pull gcr.io/google_containers/etcd-amd64:3.0.17 -$ docker pull gcr.io/google_containers/heapster-grafana-amd64:v4.0.2 -$ docker pull gcr.io/google_containers/heapster-influxdb-amd64:v1.1.1 -$ docker pull gcr.io/google_containers/pause-amd64:3.0 -``` - -* on your local laptop MacOSX: clone codes from git and change working directory in codes - -``` -$ git clone https://github.com/cookeem/kubeadm-ha -$ cd kubeadm-ha -``` - -* on your local laptop MacOSX: save related docker images in docker-images directory - -``` -$ mkdir -p docker-images -$ docker save -o docker-images/kube-proxy-amd64 gcr.io/google_containers/kube-proxy-amd64:v1.7.0 -$ docker save -o docker-images/kube-apiserver-amd64 gcr.io/google_containers/kube-apiserver-amd64:v1.7.0 -$ docker save -o docker-images/kube-controller-manager-amd64 gcr.io/google_containers/kube-controller-manager-amd64:v1.7.0 -$ docker save -o docker-images/kube-scheduler-amd64 gcr.io/google_containers/kube-scheduler-amd64:v1.7.0 -$ docker save -o docker-images/k8s-dns-sidecar-amd64 gcr.io/google_containers/k8s-dns-sidecar-amd64:1.14.4 -$ docker save -o docker-images/k8s-dns-kube-dns-amd64 gcr.io/google_containers/k8s-dns-kube-dns-amd64:1.14.4 -$ docker save -o docker-images/k8s-dns-dnsmasq-nanny-amd64 gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64:1.14.4 -$ docker save -o docker-images/heapster-grafana-amd64 gcr.io/google_containers/heapster-grafana-amd64:v4.2.0 -$ docker save -o docker-images/nginx nginx:latest -$ docker save -o docker-images/kubernetes-dashboard-amd64 gcr.io/google_containers/kubernetes-dashboard-amd64:v1.6.1 -$ docker save -o docker-images/flannel quay.io/coreos/flannel:v0.7.1-amd64 -$ docker save -o docker-images/heapster-amd64 gcr.io/google_containers/heapster-amd64:v1.3.0 -$ docker save -o docker-images/etcd-amd64 gcr.io/google_containers/etcd-amd64:3.0.17 -$ docker save -o docker-images/heapster-grafana-amd64 gcr.io/google_containers/heapster-grafana-amd64:v4.0.2 -$ docker save -o docker-images/heapster-influxdb-amd64 gcr.io/google_containers/heapster-influxdb-amd64:v1.1.1 -$ docker save -o docker-images/pause-amd64 gcr.io/google_containers/pause-amd64:3.0 -``` - -* on your local laptop MacOSX: copy all codes and docker images directory to all kubernetes nodes - -``` -$ scp -r * root@k8s-master1:/root/kubeadm-ha -$ scp -r * root@k8s-master2:/root/kubeadm-ha -$ scp -r * root@k8s-master3:/root/kubeadm-ha -$ scp -r * root@k8s-node1:/root/kubeadm-ha -$ scp -r * root@k8s-node2:/root/kubeadm-ha -$ scp -r * root@k8s-node3:/root/kubeadm-ha -$ scp -r * root@k8s-node4:/root/kubeadm-ha -$ scp -r * root@k8s-node5:/root/kubeadm-ha -$ scp -r * root@k8s-node6:/root/kubeadm-ha -$ scp -r * root@k8s-node7:/root/kubeadm-ha -$ scp -r * root@k8s-node8:/root/kubeadm-ha -``` - ---- -[category](#category) - -#### system configuration - -* on all kubernetes nodes: add kubernetes' repository - -``` -$ cat < /etc/yum.repos.d/kubernetes.repo -[kubernetes] -name=Kubernetes -baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64 -enabled=1 -gpgcheck=1 -repo_gpgcheck=1 -gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg - https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg -EOF -``` - -* on all kubernetes nodes: use yum to update system - -``` -$ yum update -y -``` - -* on all kubernetes nodes: turn off firewalld service - -``` -$ systemctl disable firewalld && systemctl stop firewalld && systemctl status firewalld -``` - -* on all kubernetes nodes: set SELINUX to permissive mode - -``` -$ vi /etc/selinux/config -SELINUX=permissive -``` - -* on all kubernetes nodes: set iptables parameters - -``` -$ vi /etc/sysctl.d/k8s.conf -net.bridge.bridge-nf-call-iptables = 1 -net.bridge.bridge-nf-call-ip6tables = 1 -``` - -* on all kubernetes nodes: reboot host - -``` -$ reboot -``` - ---- -[category](#category) - -### kubernetes installation - -#### kubernetes and related services installation - -* on all kubernetes nodes: check SELINUX mode must set as permissive mode - -``` -$ getenforce -Permissive -``` - -* on all kubernetes nodes: install kubernetes and related services, then start up kubelet and docker daemon - -``` -$ yum search docker --showduplicates -$ yum install docker-1.12.6-16.el7.centos.x86_64 - -$ yum search kubelet --showduplicates -$ yum install kubelet-1.7.0-0.x86_64 - -$ yum search kubeadm --showduplicates -$ yum install kubeadm-1.7.0-0.x86_64 - -$ yum search kubernetes-cni --showduplicates -$ yum install kubernetes-cni-0.5.1-0.x86_64 - -$ systemctl enable docker && systemctl start docker -$ systemctl enable kubelet && systemctl start kubelet -``` - ---- -[category](#category) - -#### load docker images - -* on all kubernetes nodes: load docker images - -``` -$ docker load -i /root/kubeadm-ha/docker-images/etcd-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/flannel -$ docker load -i /root/kubeadm-ha/docker-images/heapster-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/heapster-grafana-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/heapster-influxdb-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/k8s-dns-dnsmasq-nanny-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/k8s-dns-kube-dns-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/k8s-dns-sidecar-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/kube-apiserver-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/kube-controller-manager-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/kube-proxy-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/kubernetes-dashboard-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/kube-scheduler-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/pause-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/nginx - -$ docker images -REPOSITORY TAG IMAGE ID CREATED SIZE -gcr.io/google_containers/kube-proxy-amd64 v1.7.0 d2d44013d0f8 4 days ago 114.7 MB -gcr.io/google_containers/kube-apiserver-amd64 v1.7.0 f0d4b746fb2b 4 days ago 185.2 MB -gcr.io/google_containers/kube-controller-manager-amd64 v1.7.0 36bf73ed0632 4 days ago 137 MB -gcr.io/google_containers/kube-scheduler-amd64 v1.7.0 5c9a7f60a95c 4 days ago 77.16 MB -gcr.io/google_containers/k8s-dns-sidecar-amd64 1.14.4 38bac66034a6 7 days ago 41.81 MB -gcr.io/google_containers/k8s-dns-kube-dns-amd64 1.14.4 a8e00546bcf3 7 days ago 49.38 MB -gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64 1.14.4 f7f45b9cb733 7 days ago 41.41 MB -nginx latest 958a7ae9e569 4 weeks ago 109.4 MB -gcr.io/google_containers/kubernetes-dashboard-amd64 v1.6.1 71dfe833ce74 6 weeks ago 134.4 MB -quay.io/coreos/flannel v0.7.1-amd64 cd4ae0be5e1b 10 weeks ago 77.76 MB -gcr.io/google_containers/heapster-amd64 v1.3.0 f9d33bedfed3 3 months ago 68.11 MB -gcr.io/google_containers/etcd-amd64 3.0.17 243830dae7dd 4 months ago 168.9 MB -gcr.io/google_containers/heapster-grafana-amd64 v4.0.2 a1956d2a1a16 5 months ago 131.5 MB -gcr.io/google_containers/heapster-influxdb-amd64 v1.1.1 d3fccbedd180 5 months ago 11.59 MB -gcr.io/google_containers/pause-amd64 3.0 99e59f495ffa 14 months ago 746.9 kB -``` - ---- -[category](#category) - -### use kubeadm to init first master - -#### deploy independent etcd tls cluster - -* on k8s-master1: use docker to start independent etcd tls cluster - -``` -$ docker stop etcd && docker rm etcd -$ rm -rf /var/lib/etcd-cluster -$ mkdir -p /var/lib/etcd-cluster -$ docker run -d \ ---restart always \ --v /etc/ssl/certs:/etc/ssl/certs \ --v /var/lib/etcd-cluster:/var/lib/etcd \ --p 4001:4001 \ --p 2380:2380 \ --p 2379:2379 \ ---name etcd \ -gcr.io/google_containers/etcd-amd64:3.0.17 \ -etcd --name=etcd0 \ ---advertise-client-urls=http://192.168.60.71:2379,http://192.168.60.71:4001 \ ---listen-client-urls=http://0.0.0.0:2379,http://0.0.0.0:4001 \ ---initial-advertise-peer-urls=http://192.168.60.71:2380 \ ---listen-peer-urls=http://0.0.0.0:2380 \ ---initial-cluster-token=9477af68bbee1b9ae037d6fd9e7efefd \ ---initial-cluster=etcd0=http://192.168.60.71:2380,etcd1=http://192.168.60.72:2380,etcd2=http://192.168.60.73:2380 \ ---initial-cluster-state=new \ ---auto-tls \ ---peer-auto-tls \ ---data-dir=/var/lib/etcd -``` - -* on k8s-master2: use docker to start independent etcd tls cluster - -``` -$ docker stop etcd && docker rm etcd -$ rm -rf /var/lib/etcd-cluster -$ mkdir -p /var/lib/etcd-cluster -$ docker run -d \ ---restart always \ --v /etc/ssl/certs:/etc/ssl/certs \ --v /var/lib/etcd-cluster:/var/lib/etcd \ --p 4001:4001 \ --p 2380:2380 \ --p 2379:2379 \ ---name etcd \ -gcr.io/google_containers/etcd-amd64:3.0.17 \ -etcd --name=etcd1 \ ---advertise-client-urls=http://192.168.60.72:2379,http://192.168.60.72:4001 \ ---listen-client-urls=http://0.0.0.0:2379,http://0.0.0.0:4001 \ ---initial-advertise-peer-urls=http://192.168.60.72:2380 \ ---listen-peer-urls=http://0.0.0.0:2380 \ ---initial-cluster-token=9477af68bbee1b9ae037d6fd9e7efefd \ ---initial-cluster=etcd0=http://192.168.60.71:2380,etcd1=http://192.168.60.72:2380,etcd2=http://192.168.60.73:2380 \ ---initial-cluster-state=new \ ---auto-tls \ ---peer-auto-tls \ ---data-dir=/var/lib/etcd -``` - -* on k8s-master3: use docker to start independent etcd tls cluster - -``` -$ docker stop etcd && docker rm etcd -$ rm -rf /var/lib/etcd-cluster -$ mkdir -p /var/lib/etcd-cluster -$ docker run -d \ ---restart always \ --v /etc/ssl/certs:/etc/ssl/certs \ --v /var/lib/etcd-cluster:/var/lib/etcd \ --p 4001:4001 \ --p 2380:2380 \ --p 2379:2379 \ ---name etcd \ -gcr.io/google_containers/etcd-amd64:3.0.17 \ -etcd --name=etcd2 \ ---advertise-client-urls=http://192.168.60.73:2379,http://192.168.60.73:4001 \ ---listen-client-urls=http://0.0.0.0:2379,http://0.0.0.0:4001 \ ---initial-advertise-peer-urls=http://192.168.60.73:2380 \ ---listen-peer-urls=http://0.0.0.0:2380 \ ---initial-cluster-token=9477af68bbee1b9ae037d6fd9e7efefd \ ---initial-cluster=etcd0=http://192.168.60.71:2380,etcd1=http://192.168.60.72:2380,etcd2=http://192.168.60.73:2380 \ ---initial-cluster-state=new \ ---auto-tls \ ---peer-auto-tls \ ---data-dir=/var/lib/etcd -``` - -* on k8s-master1, k8s-master2, k8s-master3: check etcd cluster health - -``` -$ docker exec -ti etcd ash - -$ etcdctl member list -1a32c2d3f1abcad0: name=etcd2 peerURLs=http://192.168.60.73:2380 clientURLs=http://192.168.60.73:2379,http://192.168.60.73:4001 isLeader=false -1da4f4e8b839cb79: name=etcd1 peerURLs=http://192.168.60.72:2380 clientURLs=http://192.168.60.72:2379,http://192.168.60.72:4001 isLeader=false -4238bcb92d7f2617: name=etcd0 peerURLs=http://192.168.60.71:2380 clientURLs=http://192.168.60.71:2379,http://192.168.60.71:4001 isLeader=true - -$ etcdctl cluster-health -member 1a32c2d3f1abcad0 is healthy: got healthy result from http://192.168.60.73:2379 -member 1da4f4e8b839cb79 is healthy: got healthy result from http://192.168.60.72:2379 -member 4238bcb92d7f2617 is healthy: got healthy result from http://192.168.60.71:2379 -cluster is healthy - -$ exit -``` - ---- -[category](#category) - -#### kubeadm init - -* on k8s-master1: edit kubeadm-init-v1.7.x.yaml file, set etcd.endpoints.${HOST_IP} to k8s-master1, k8s-master2, k8s-master3's IP address. Set apiServerCertSANs.${HOST_IP} to k8s-master1, k8s-master2, k8s-master3's IP address. Set apiServerCertSANs.${HOST_NAME} to k8s-master1, k8s-master2, k8s-master3. Set apiServerCertSANs.${VIRTUAL_IP} to keepalived's virtual IP address - -``` -$ vi /root/kubeadm-ha/kubeadm-init-v1.7.x.yaml -apiVersion: kubeadm.k8s.io/v1alpha1 -kind: MasterConfiguration -kubernetesVersion: v1.7.0 -networking: - podSubnet: 10.244.0.0/16 -apiServerCertSANs: -- k8s-master1 -- k8s-master2 -- k8s-master3 -- 192.168.60.71 -- 192.168.60.72 -- 192.168.60.73 -- 192.168.60.80 -etcd: - endpoints: - - http://192.168.60.71:2379 - - http://192.168.60.72:2379 - - http://192.168.60.73:2379 -``` - -* if kubeadm init stuck at tips below, that may because cgroup-driver parameters different with your docker service's setting -* [apiclient] Created API client, waiting for the control plane to become ready -* use "journalctl -t kubelet -S '2017-06-08'" to check logs, and you will find error below: -* error: failed to run Kubelet: failed to create kubelet: misconfiguration: kubelet cgroup driver: "systemd" -* you must change "KUBELET_CGROUP_ARGS=--cgroup-driver=systemd" to "KUBELET_CGROUP_ARGS=--cgroup-driver=cgroupfs" - -``` -$ vi /etc/systemd/system/kubelet.service.d/10-kubeadm.conf -#Environment="KUBELET_CGROUP_ARGS=--cgroup-driver=systemd" -Environment="KUBELET_CGROUP_ARGS=--cgroup-driver=cgroupfs" - -$ systemctl daemon-reload && systemctl restart kubelet -``` - -* on k8s-master1: use kubeadm to init kubernetes cluster and connect external etcd cluster - -``` -$ kubeadm init --config=/root/kubeadm-ha/kubeadm-init-v1.7.x.yaml -``` - -* on k8s-master1: edit kube-apiserver.yaml file's admission-control settings, v1.7.0 use NodeRestriction admission control will prevent other master join the cluster, please reset it to v1.6.x recommended config. - -``` -$ vi /etc/kubernetes/manifests/kube-apiserver.yaml -# - --admission-control=Initializers,NamespaceLifecycle,LimitRanger,ServiceAccount,PersistentVolumeLabel,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,ResourceQuota - - --admission-control=NamespaceLifecycle,LimitRanger,ServiceAccount,PersistentVolumeLabel,DefaultStorageClass,ResourceQuota,DefaultTolerationSeconds -``` - -* on k8s-master1: restart docker and kubelet services - -``` -$ systemctl restart docker kubelet -``` - -* on k8s-master1: set environment variables $KUBECONFIG, make kubectl connect kubelet - -``` -$ vi ~/.bashrc -export KUBECONFIG=/etc/kubernetes/admin.conf - -$ source ~/.bashrc -``` - ---- -[category](#category) - -#### install flannel networks addon - -* on k8s-master1: install flannel networks addon, otherwise kube-dns pod will keep status at ContainerCreating - -``` -$ kubectl create -f /root/kubeadm-ha/kube-flannel -clusterrole "flannel" created -clusterrolebinding "flannel" created -serviceaccount "flannel" created -configmap "kube-flannel-cfg" created -daemonset "kube-flannel-ds" created -``` - -* on k8s-master1: after flannel networks addon installed, wait about 3 minutes, then all pods status are Running - -``` -$ kubectl get pods --all-namespaces -o wide -NAMESPACE NAME READY STATUS RESTARTS AGE IP NODE -kube-system kube-apiserver-k8s-master1 1/1 Running 0 3m 192.168.60.71 k8s-master1 -kube-system kube-controller-manager-k8s-master1 1/1 Running 0 3m 192.168.60.71 k8s-master1 -kube-system kube-dns-3913472980-k9mt6 3/3 Running 0 4m 10.244.0.104 k8s-master1 -kube-system kube-flannel-ds-3hhjd 2/2 Running 0 1m 192.168.60.71 k8s-master1 -kube-system kube-proxy-rzq3t 1/1 Running 0 4m 192.168.60.71 k8s-master1 -kube-system kube-scheduler-k8s-master1 1/1 Running 0 3m 192.168.60.71 k8s-master1 -``` - ---- -[category](#category) - -#### install dashboard addon - -* on k8s-master1: install dashboard webUI addon - -``` -$ kubectl create -f /root/kubeadm-ha/kube-dashboard/ -serviceaccount "kubernetes-dashboard" created -clusterrolebinding "kubernetes-dashboard" created -deployment "kubernetes-dashboard" created -service "kubernetes-dashboard" created -``` - -* on k8s-master1: start up proxy - -``` -$ kubectl proxy --address='0.0.0.0' & -``` - -* on your local laptop MacOSX: use browser to check dashboard work correctly - -``` -http://k8s-master1:30000 -``` - -![dashboard](images/dashboard.png) - ---- -[category](#category) - -#### install heapster addon - -* on k8s-master1: make master be able to schedule pods - -``` -$ kubectl taint nodes --all node-role.kubernetes.io/master- -node "k8s-master1" tainted -``` - -* on k8s-master1: install heapster addon, the performance monitor addon - -``` -$ kubectl create -f /root/kubeadm-ha/kube-heapster -``` - -* on k8s-master1: restart docker and kubelet service, to make heapster work immediately - -``` -$ systemctl restart docker kubelet -``` - -* on k8s-master1: check pods status - -``` -$ kubectl get all --all-namespaces -o wide -NAMESPACE NAME READY STATUS RESTARTS AGE IP NODE -kube-system heapster-783524908-kn6jd 1/1 Running 1 9m 10.244.0.111 k8s-master1 -kube-system kube-apiserver-k8s-master1 1/1 Running 1 15m 192.168.60.71 k8s-master1 -kube-system kube-controller-manager-k8s-master1 1/1 Running 1 15m 192.168.60.71 k8s-master1 -kube-system kube-dns-3913472980-k9mt6 3/3 Running 3 16m 10.244.0.110 k8s-master1 -kube-system kube-flannel-ds-3hhjd 2/2 Running 3 13m 192.168.60.71 k8s-master1 -kube-system kube-proxy-rzq3t 1/1 Running 1 16m 192.168.60.71 k8s-master1 -kube-system kube-scheduler-k8s-master1 1/1 Running 1 15m 192.168.60.71 k8s-master1 -kube-system kubernetes-dashboard-2039414953-d46vw 1/1 Running 1 11m 10.244.0.109 k8s-master1 -kube-system monitoring-grafana-3975459543-8l94z 1/1 Running 1 9m 10.244.0.112 k8s-master1 -kube-system monitoring-influxdb-3480804314-72ltf 1/1 Running 1 9m 10.244.0.113 k8s-master1 -``` - -* on your local laptop MacOSX: use browser to check dashboard, if it show CPU and Memory Usage info, then heapster work! - -``` -http://k8s-master1:30000 -``` - -![heapster](images/heapster.png) - -* now we finish the first kubernetes master installation, and flannel dashboard heapster work on master correctly - ---- -[category](#category) - -### kubernetes masters high avialiability configuration - -#### copy configuration files - -* on k8s-master1: copy /etc/kubernetes/ directory to k8s-master2 and k8s-master3 - -``` -scp -r /etc/kubernetes/ k8s-master2:/etc/ -scp -r /etc/kubernetes/ k8s-master3:/etc/ -``` - -* on k8s-master2, k8s-master3: restart kubelet service, and make sure kubelet status is active (running) - -``` -$ systemctl daemon-reload && systemctl restart kubelet - -$ systemctl status kubelet -● kubelet.service - kubelet: The Kubernetes Node Agent - Loaded: loaded (/etc/systemd/system/kubelet.service; enabled; vendor preset: disabled) - Drop-In: /etc/systemd/system/kubelet.service.d - └─10-kubeadm.conf - Active: active (running) since Tue 2017-06-27 16:24:22 CST; 1 day 17h ago - Docs: http://kubernetes.io/docs/ - Main PID: 2780 (kubelet) - Memory: 92.9M - CGroup: /system.slice/kubelet.service - ├─2780 /usr/bin/kubelet --kubeconfig=/etc/kubernetes/kubelet.conf --require-... - └─2811 journalctl -k -f -``` - -* on k8s-master2, k8s-master3: set environment variables $KUBECONFIG, make kubectl connect kubelet - -``` -$ vi ~/.bashrc -export KUBECONFIG=/etc/kubernetes/admin.conf - -$ source ~/.bashrc -``` - -* on k8s-master2, k8s-master3: check nodes status, you will found that k8s-master2 and k8s-master3 are joined - -``` -$ kubectl get nodes -o wide -NAME STATUS AGE VERSION EXTERNAL-IP OS-IMAGE KERNEL-VERSION -k8s-master1 Ready 26m v1.7.0 CentOS Linux 7 (Core) 3.10.0-514.6.1.el7.x86_64 -k8s-master2 Ready 2m v1.7.0 CentOS Linux 7 (Core) 3.10.0-514.21.1.el7.x86_64 -k8s-master3 Ready 2m v1.7.0 CentOS Linux 7 (Core) 3.10.0-514.21.1.el7.x86_64 -``` - ---- -[category](#category) - -#### edit configuration files - -* on k8s-master2, k8s-master3: edit kube-apiserver.yaml file, replace ${HOST_IP} to current host's IP address - -``` -$ vi /etc/kubernetes/manifests/kube-apiserver.yaml - - --advertise-address=${HOST_IP} -``` - -* on k8s-master2, k8s-master3: edit kubelet.conf file, replace ${HOST_IP} to current host's IP address - -``` -$ vi /etc/kubernetes/kubelet.conf -server: https://${HOST_IP}:6443 -``` - -* on k8s-master2, k8s-master3: edit admin.conf file, replace ${HOST_IP} to current host's IP address - -``` -$ vi /etc/kubernetes/admin.conf - server: https://${HOST_IP}:6443 -``` - -* on k8s-master2, k8s-master3: edit controller-manager.conf file, replace ${HOST_IP} to current host's IP address - -``` -$ vi /etc/kubernetes/controller-manager.conf - server: https://${HOST_IP}:6443 -``` - -* on k8s-master2, k8s-master3: edit scheduler.conf file, replace ${HOST_IP} to current host's IP address - -``` -$ vi /etc/kubernetes/scheduler.conf - server: https://${HOST_IP}:6443 -``` - -* on k8s-master1, k8s-master2, k8s-master3: restart docker and kubelet services - -``` -$ systemctl daemon-reload && systemctl restart docker kubelet -``` - ---- -[category](#category) - -#### verify master high avialiability - -* on k8s-master1 or k8s-master2 or k8s-master3: check all master nodes pods startup status. apiserver controller-manager kube-scheduler proxy flannel running at k8s-master1, k8s-master2, k8s-master3 successfully. - -``` -$ kubectl get pod --all-namespaces -o wide | grep k8s-master2 -kube-system kube-apiserver-k8s-master2 1/1 Running 1 55s 192.168.60.72 k8s-master2 -kube-system kube-controller-manager-k8s-master2 1/1 Running 2 18m 192.168.60.72 k8s-master2 -kube-system kube-flannel-ds-t8gkh 2/2 Running 4 18m 192.168.60.72 k8s-master2 -kube-system kube-proxy-bpgqw 1/1 Running 1 18m 192.168.60.72 k8s-master2 -kube-system kube-scheduler-k8s-master2 1/1 Running 2 18m 192.168.60.72 k8s-master2 - -$ kubectl get pod --all-namespaces -o wide | grep k8s-master3 -kube-system kube-apiserver-k8s-master3 1/1 Running 1 1m 192.168.60.73 k8s-master3 -kube-system kube-controller-manager-k8s-master3 1/1 Running 2 18m 192.168.60.73 k8s-master3 -kube-system kube-flannel-ds-tmqmx 2/2 Running 4 18m 192.168.60.73 k8s-master3 -kube-system kube-proxy-4stg3 1/1 Running 1 18m 192.168.60.73 k8s-master3 -kube-system kube-scheduler-k8s-master3 1/1 Running 2 18m 192.168.60.73 k8s-master3 -``` - -* on k8s-master1 or k8s-master2 or k8s-master3: use kubectl logs to check controller-manager and scheduler's leader election result, only one is working - -``` -$ kubectl logs -n kube-system kube-controller-manager-k8s-master1 -$ kubectl logs -n kube-system kube-controller-manager-k8s-master2 -$ kubectl logs -n kube-system kube-controller-manager-k8s-master3 - -$ kubectl logs -n kube-system kube-scheduler-k8s-master1 -$ kubectl logs -n kube-system kube-scheduler-k8s-master2 -$ kubectl logs -n kube-system kube-scheduler-k8s-master3 -``` - -* on k8s-master1 or k8s-master2 or k8s-master3: check deployment - -``` -$ kubectl get deploy --all-namespaces -NAMESPACE NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE -kube-system heapster 1 1 1 1 41m -kube-system kube-dns 1 1 1 1 48m -kube-system kubernetes-dashboard 1 1 1 1 43m -kube-system monitoring-grafana 1 1 1 1 41m -kube-system monitoring-influxdb 1 1 1 1 41m -``` - -* on k8s-master1 or k8s-master2 or k8s-master3: scale up kubernetes-dashboard and kube-dns replicas to 3, make all master running kubernetes-dashboard and kube-dns - -``` -$ kubectl scale --replicas=3 -n kube-system deployment/kube-dns -$ kubectl get pods --all-namespaces -o wide| grep kube-dns - -$ kubectl scale --replicas=3 -n kube-system deployment/kubernetes-dashboard -$ kubectl get pods --all-namespaces -o wide| grep kubernetes-dashboard - -$ kubectl scale --replicas=3 -n kube-system deployment/heapster -$ kubectl get pods --all-namespaces -o wide| grep heapster - -$ kubectl scale --replicas=3 -n kube-system deployment/monitoring-grafana -$ kubectl get pods --all-namespaces -o wide| grep monitoring-grafana - -$ kubectl scale --replicas=3 -n kube-system deployment/monitoring-influxdb -$ kubectl get pods --all-namespaces -o wide| grep monitoring-influxdb -``` - ---- -[category](#category) - -#### keepalived installation - -* on k8s-master1, k8s-master2, k8s-master3: install keepalived service - -``` -$ yum install -y keepalived - -$ systemctl enable keepalived && systemctl restart keepalived -``` - -* on k8s-master1, k8s-master2, k8s-master3: backup keepalived config file - -``` -$ mv /etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf.bak -``` - -* on k8s-master1, k8s-master2, k8s-master3: create apiserver monitoring script, when apiserver failed keepalived will stop and virtual IP address will transfer to the other node - -``` -$ vi /etc/keepalived/check_apiserver.sh -#!/bin/bash -err=0 -for k in $( seq 1 10 ) -do - check_code=$(ps -ef|grep kube-apiserver | wc -l) - if [ "$check_code" = "1" ]; then - err=$(expr $err + 1) - sleep 5 - continue - else - err=0 - break - fi -done -if [ "$err" != "0" ]; then - echo "systemctl stop keepalived" - /usr/bin/systemctl stop keepalived - exit 1 -else - exit 0 -fi - -chmod a+x /etc/keepalived/check_apiserver.sh -``` - -* on k8s-master1, k8s-master2, k8s-master3: check the network interface name - -``` -$ ip a | grep 192.168.60 -``` - -* on k8s-master1, k8s-master2, k8s-master3: edit keepalived settings: -* state ${STATE}: is MASTER or BACKUP, only one node can set to MASTER -* interface ${INTERFACE_NAME}: which network interfaces will virtual IP address bind on -* mcast_src_ip ${HOST_IP}: current host IP address -* priority ${PRIORITY}: for example (102 or 101 or 100) -* ${VIRTUAL_IP}: the virtual IP address, here we set to 192.168.60.80 - -``` -$ vi /etc/keepalived/keepalived.conf -! Configuration File for keepalived -global_defs { - router_id LVS_DEVEL -} -vrrp_script chk_apiserver { - script "/etc/keepalived/check_apiserver.sh" - interval 2 - weight -5 - fall 3 - rise 2 -} -vrrp_instance VI_1 { - state ${STATE} - interface ${INTERFACE_NAME} - mcast_src_ip ${HOST_IP} - virtual_router_id 51 - priority ${PRIORITY} - advert_int 2 - authentication { - auth_type PASS - auth_pass 4be37dc3b4c90194d1600c483e10ad1d - } - virtual_ipaddress { - ${VIRTUAL_IP} - } - track_script { - chk_apiserver - } -} -``` - -* on k8s-master1, k8s-master2, k8s-master3: reboot keepalived service, and check virtual IP address work or not - -``` -$ systemctl restart keepalived -$ ping 192.168.60.80 -``` - ---- -[category](#category) - -#### nginx load balancer configuration - -* on k8s-master1, k8s-master2, k8s-master3: edit nginx-default.conf settings, replace ${HOST_IP} with k8s-master1, k8s-master2, k8s-master3's IP address. - -``` -$ vi /root/kubeadm-ha/nginx-default.conf -stream { - upstream apiserver { - server ${HOST_IP}:6443 weight=5 max_fails=3 fail_timeout=30s; - server ${HOST_IP}:6443 weight=5 max_fails=3 fail_timeout=30s; - server ${HOST_IP}:6443 weight=5 max_fails=3 fail_timeout=30s; - } - - server { - listen 8443; - proxy_connect_timeout 1s; - proxy_timeout 3s; - proxy_pass apiserver; - } -} -``` - -* on k8s-master1, k8s-master2, k8s-master3: use docker to start up nginx - -``` -$ docker run -d -p 8443:8443 \ ---name nginx-lb \ ---restart always \ --v /root/kubeadm-ha/nginx-default.conf:/etc/nginx/nginx.conf \ -nginx -``` - -* on k8s-master1, k8s-master2, k8s-master3: check keepalived and nginx - -``` -$ curl -L 192.168.60.80:8443 | wc -l - % Total % Received % Xferd Average Speed Time Time Time Current - Dload Upload Total Spent Left Speed -100 14 0 14 0 0 18324 0 --:--:-- --:--:-- --:--:-- 14000 -1 -``` - -* on k8s-master1, k8s-master2, k8s-master3: check keeplived logs, if it show logs below it means that virtual IP address bind on this host - -``` -$ systemctl status keepalived -l -VRRP_Instance(VI_1) Sending gratuitous ARPs on ens160 for 192.168.60.80 -``` - ---- -[category](#category) - -#### kube-proxy configuration - -* on k8s-master1: edit kube-proxy settings to use keepalived virtual IP address - -``` -$ kubectl get -n kube-system configmap -NAME DATA AGE -extension-apiserver-authentication 6 4h -kube-flannel-cfg 2 4h -kube-proxy 1 4h -``` - -* on k8s-master1: edit configmap/kube-proxy settings, replaces the IP address to keepalived's virtual IP address - -``` -$ kubectl edit -n kube-system configmap/kube-proxy - server: https://192.168.60.80:8443 -``` - -* on k8s-master1: check configmap/kube-proxy settings - -``` -$ kubectl get -n kube-system configmap/kube-proxy -o yaml -``` - -* on k8s-master1: delete all kube-proxy pods, kube-proxy pods will re-create automatically - -``` -kubectl get pods --all-namespaces -o wide | grep proxy -``` - -* on k8s-master1, k8s-master2, k8s-master3: restart docker kubelet keepalived services - -``` -$ systemctl restart docker kubelet keepalived -``` - ---- -[category](#category) - -#### verfify master high avialiability with keepalived - -* on k8s-master1: check each master nodes pods status - -``` -$ kubectl get pods --all-namespaces -o wide | grep k8s-master1 - -$ kubectl get pods --all-namespaces -o wide | grep k8s-master2 - -$ kubectl get pods --all-namespaces -o wide | grep k8s-master3 -``` - ---- -[category](#category) - -### k8s-nodes join the kubernetes cluster - -#### use kubeadm to join the cluster -* on k8s-master1: make master nodes scheduling pods disabled - -``` -$ kubectl patch node k8s-master1 -p '{"spec":{"unschedulable":true}}' - -$ kubectl patch node k8s-master2 -p '{"spec":{"unschedulable":true}}' - -$ kubectl patch node k8s-master3 -p '{"spec":{"unschedulable":true}}' -``` - -* on k8s-master1: list kubeadm token - -``` -$ kubeadm token list -TOKEN TTL EXPIRES USAGES DESCRIPTION -xxxxxx.yyyyyy authentication,signing The default bootstrap token generated by 'kubeadm init' -``` - -* on k8s-node1 ~ k8s-node8: use kubeadm to join the kubernetes cluster, replace ${TOKEN} with token show ahead, replace ${VIRTUAL_IP} with keepalived's virtual IP address (192.168.60.80) - -``` -$ kubeadm join --token ${TOKEN} ${VIRTUAL_IP}:8443 -``` - ---- -[category](#category) - -#### deploy nginx application to verify installation - -* on k8s-node1 ~ k8s-node8: check kubelet status - -``` -$ systemctl status kubelet -● kubelet.service - kubelet: The Kubernetes Node Agent - Loaded: loaded (/etc/systemd/system/kubelet.service; enabled; vendor preset: disabled) - Drop-In: /etc/systemd/system/kubelet.service.d - └─10-kubeadm.conf - Active: active (running) since Tue 2017-06-27 16:23:43 CST; 1 day 18h ago - Docs: http://kubernetes.io/docs/ - Main PID: 1146 (kubelet) - Memory: 204.9M - CGroup: /system.slice/kubelet.service - ├─ 1146 /usr/bin/kubelet --kubeconfig=/etc/kubernetes/kubelet.conf --require... - ├─ 2553 journalctl -k -f - ├─ 4988 /usr/sbin/glusterfs --log-level=ERROR --log-file=/var/lib/kubelet/pl... - └─14720 /usr/sbin/glusterfs --log-level=ERROR --log-file=/var/lib/kubelet/pl... -``` - -* on k8s-master1: list nodes status - -``` -$ kubectl get nodes -o wide -NAME STATUS AGE VERSION -k8s-master1 Ready,SchedulingDisabled 5h v1.7.0 -k8s-master2 Ready,SchedulingDisabled 4h v1.7.0 -k8s-master3 Ready,SchedulingDisabled 4h v1.7.0 -k8s-node1 Ready 6m v1.7.0 -k8s-node2 Ready 4m v1.7.0 -k8s-node3 Ready 4m v1.7.0 -k8s-node4 Ready 3m v1.7.0 -k8s-node5 Ready 3m v1.7.0 -k8s-node6 Ready 3m v1.7.0 -k8s-node7 Ready 3m v1.7.0 -k8s-node8 Ready 3m v1.7.0 -``` - -* on k8s-master1: deploy nginx service on kubernetes, it show that nginx service deploy on k8s-node5 - -``` -$ kubectl run nginx --image=nginx --port=80 -deployment "nginx" created - -$ kubectl get pod -o wide -l=run=nginx -NAME READY STATUS RESTARTS AGE IP NODE -nginx-2662403697-pbmwt 1/1 Running 0 5m 10.244.7.6 k8s-node5 -``` - -* on k8s-master1: expose nginx services port - -``` -$ kubectl expose deployment nginx --port=80 --target-port=80 --type=NodePort -service "nginx" exposed - -$ kubectl get svc -l=run=nginx -NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE -nginx 10.105.151.69 80:31639/TCP 43s - -$ curl k8s-master2:31639 - - - -Welcome to nginx! - - - -

Welcome to nginx!

-

If you see this page, the nginx web server is successfully installed and -working. Further configuration is required.

- -

For online documentation and support please refer to -nginx.org.
-Commercial support is available at -nginx.com.

- -

Thank you for using nginx.

- - - -``` - -* congratulation! kubernetes high availiability cluster deploy successfully 😀 ---- -[category](#category) - diff --git a/v1.7/README_CN.md b/v1.7/README_CN.md deleted file mode 100644 index 9bf212b..0000000 --- a/v1.7/README_CN.md +++ /dev/null @@ -1,1152 +0,0 @@ -# kubeadm-highavailiability - 基于kubeadm的kubernetes高可用集群部署,支持v1.11.x v1.9.x v1.7.x v1.6.x版本 - -![k8s logo](../images/Kubernetes.png) - -- [中文文档(for v1.11.x版本)](../README_CN.md) -- [English document(for v1.11.x version)](../README.md) -- [中文文档(for v1.9.x版本)](../v1.9/README_CN.md) -- [English document(for v1.9.x version)](../v1.9/README.md) -- [中文文档(for v1.7.x版本)](../v1.7/README_CN.md) -- [English document(for v1.7.x version)](../v1.7/README.md) -- [中文文档(for v1.6.x版本)](../v1.6/README_CN.md) -- [English document(for v1.6.x version)](../v1.6/README.md) - ---- - -- [GitHub项目地址](https://github.com/cookeem/kubeadm-ha/) -- [OSChina项目地址](https://git.oschina.net/cookeem/kubeadm-ha/) - ---- - -- 该指引适用于v1.7.x版本的kubernetes集群 - -### 目录 - -1. [部署架构](#部署架构) - 1. [概要部署架构](#概要部署架构) - 1. [详细部署架构](#详细部署架构) - 1. [主机节点清单](#主机节点清单) -1. [安装前准备](#安装前准备) - 1. [版本信息](#版本信息) - 1. [所需docker镜像](#所需docker镜像) - 1. [系统设置](#系统设置) -1. [kubernetes安装](#kubernetes安装) - 1. [kubernetes相关服务安装](#kubernetes相关服务安装) - 1. [docker镜像导入](#docker镜像导入) -1. [第一台master初始化](#第一台master初始化) - 1. [独立etcd集群部署](#独立etcd集群部署) - 1. [kubeadm初始化](#kubeadm初始化) - 1. [flannel网络组件安装](#flannel网络组件安装) - 1. [dashboard组件安装](#dashboard组件安装) - 1. [heapster组件安装](#heapster组件安装) -1. [master集群高可用设置](#master集群高可用设置) - 1. [复制配置](#复制配置) - 1. [修改配置](#修改配置) - 1. [验证高可用安装](#验证高可用安装) - 1. [keepalived安装配置](#keepalived安装配置) - 1. [nginx负载均衡配置](#nginx负载均衡配置) - 1. [kube-proxy配置](#kube-proxy配置) - 1. [验证master集群高可用](#验证master集群高可用) -1. [node节点加入高可用集群设置](#node节点加入高可用集群设置) - 1. [kubeadm加入高可用集群](#kubeadm加入高可用集群) - 1. [部署应用验证集群](#部署应用验证集群) - - -### 部署架构 - -#### 概要部署架构 - -![ha logo](../images/ha.png) - -* kubernetes高可用的核心架构是master的高可用,kubectl、客户端以及nodes访问load balancer实现高可用。 - ---- -[返回目录](#目录) - -#### 详细部署架构 - -![k8s ha](../images/k8s-ha.png) - -* kubernetes组件说明 - -> kube-apiserver:集群核心,集群API接口、集群各个组件通信的中枢;集群安全控制; - -> etcd:集群的数据中心,用于存放集群的配置以及状态信息,非常重要,如果数据丢失那么集群将无法恢复;因此高可用集群部署首先就是etcd是高可用集群; - -> kube-scheduler:集群Pod的调度中心;默认kubeadm安装情况下--leader-elect参数已经设置为true,保证master集群中只有一个kube-scheduler处于活跃状态; - -> kube-controller-manager:集群状态管理器,当集群状态与期望不同时,kcm会努力让集群恢复期望状态,比如:当一个pod死掉,kcm会努力新建一个pod来恢复对应replicas set期望的状态;默认kubeadm安装情况下--leader-elect参数已经设置为true,保证master集群中只有一个kube-controller-manager处于活跃状态; - -> kubelet: kubernetes node agent,负责与node上的docker engine打交道; - -> kube-proxy: 每个node上一个,负责service vip到endpoint pod的流量转发,当前主要通过设置iptables规则实现。 - -* 负载均衡 - -> keepalived集群设置一个虚拟ip地址,虚拟ip地址指向k8s-master1、k8s-master2、k8s-master3。 - -> nginx用于k8s-master1、k8s-master2、k8s-master3的apiserver的负载均衡。外部kubectl以及nodes访问apiserver的时候就可以用过keepalived的虚拟ip(192.168.60.80)以及nginx端口(8443)访问master集群的apiserver。 - ---- -[返回目录](#目录) - -#### 主机节点清单 - - 主机名 | IP地址 | 说明 | 组件 - :--- | :--- | :--- | :--- - k8s-master1 | 192.168.60.71 | master节点1 | keepalived、nginx、etcd、kubelet、kube-apiserver、kube-scheduler、kube-proxy、kube-dashboard、heapster - k8s-master2 | 192.168.60.72 | master节点2 | keepalived、nginx、etcd、kubelet、kube-apiserver、kube-scheduler、kube-proxy、kube-dashboard、heapster - k8s-master3 | 192.168.60.73 | master节点3 | keepalived、nginx、etcd、kubelet、kube-apiserver、kube-scheduler、kube-proxy、kube-dashboard、heapster - 无 | 192.168.60.80 | keepalived虚拟IP | 无 - k8s-node1 ~ 8 | 192.168.60.81 ~ 88 | 8个node节点 | kubelet、kube-proxy - ---- -[返回目录](#目录) - -### 安装前准备 - -#### 版本信息 - -* Linux版本:CentOS 7.3.1611 - -``` -cat /etc/redhat-release -CentOS Linux release 7.3.1611 (Core) -``` - -* docker版本:1.12.6 - -``` -$ docker version -Client: - Version: 1.12.6 - API version: 1.24 - Go version: go1.6.4 - Git commit: 78d1802 - Built: Tue Jan 10 20:20:01 2017 - OS/Arch: linux/amd64 - -Server: - Version: 1.12.6 - API version: 1.24 - Go version: go1.6.4 - Git commit: 78d1802 - Built: Tue Jan 10 20:20:01 2017 - OS/Arch: linux/amd64 -``` - -* kubeadm版本:v1.7.0 - -``` -$ kubeadm version -kubeadm version: &version.Info{Major:"1", Minor:"7", GitVersion:"v1.7.0", GitCommit:"d3ada0119e776222f11ec7945e6d860061339aad", GitTreeState:"clean", BuildDate:"2017-06-29T22:55:19Z", GoVersion:"go1.8.3", Compiler:"gc", Platform:"linux/amd64"} -``` - -* kubelet版本:v1.7.0 - -``` -$ kubelet --version -Kubernetes v1.7.0 -``` - ---- - -[返回目录](#目录) - -#### 所需docker镜像 - -* 国内可以使用daocloud加速器下载相关镜像,然后通过docker save、docker load把本地下载的镜像放到kubernetes集群的所在机器上,daocloud加速器链接如下: - -[https://www.daocloud.io/mirror#accelerator-doc](https://www.daocloud.io/mirror#accelerator-doc) - -* 在本机MacOSX上pull相关docker镜像 - -``` -$ docker pull gcr.io/google_containers/kube-proxy-amd64:v1.7.0 -$ docker pull gcr.io/google_containers/kube-apiserver-amd64:v1.7.0 -$ docker pull gcr.io/google_containers/kube-controller-manager-amd64:v1.7.0 -$ docker pull gcr.io/google_containers/kube-scheduler-amd64:v1.7.0 -$ docker pull gcr.io/google_containers/k8s-dns-sidecar-amd64:1.14.4 -$ docker pull gcr.io/google_containers/k8s-dns-kube-dns-amd64:1.14.4 -$ docker pull gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64:1.14.4 -$ docker pull nginx:latest -$ docker pull gcr.io/google_containers/kubernetes-dashboard-amd64:v1.6.1 -$ docker pull quay.io/coreos/flannel:v0.7.1-amd64 -$ docker pull gcr.io/google_containers/heapster-amd64:v1.3.0 -$ docker pull gcr.io/google_containers/etcd-amd64:3.0.17 -$ docker pull gcr.io/google_containers/heapster-grafana-amd64:v4.0.2 -$ docker pull gcr.io/google_containers/heapster-influxdb-amd64:v1.1.1 -$ docker pull gcr.io/google_containers/pause-amd64:3.0 -``` - -* 在本机MacOSX上获取代码,并进入代码目录 - -``` -$ git clone https://github.com/cookeem/kubeadm-ha -$ cd kubeadm-ha -``` - -* 在本机MacOSX上把相关docker镜像保存成文件 - -``` -$ mkdir -p docker-images -$ docker save -o docker-images/kube-proxy-amd64 gcr.io/google_containers/kube-proxy-amd64:v1.7.0 -$ docker save -o docker-images/kube-apiserver-amd64 gcr.io/google_containers/kube-apiserver-amd64:v1.7.0 -$ docker save -o docker-images/kube-controller-manager-amd64 gcr.io/google_containers/kube-controller-manager-amd64:v1.7.0 -$ docker save -o docker-images/kube-scheduler-amd64 gcr.io/google_containers/kube-scheduler-amd64:v1.7.0 -$ docker save -o docker-images/k8s-dns-sidecar-amd64 gcr.io/google_containers/k8s-dns-sidecar-amd64:1.14.4 -$ docker save -o docker-images/k8s-dns-kube-dns-amd64 gcr.io/google_containers/k8s-dns-kube-dns-amd64:1.14.4 -$ docker save -o docker-images/k8s-dns-dnsmasq-nanny-amd64 gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64:1.14.4 -$ docker save -o docker-images/heapster-grafana-amd64 gcr.io/google_containers/heapster-grafana-amd64:v4.2.0 -$ docker save -o docker-images/nginx nginx:latest -$ docker save -o docker-images/kubernetes-dashboard-amd64 gcr.io/google_containers/kubernetes-dashboard-amd64:v1.6.1 -$ docker save -o docker-images/flannel quay.io/coreos/flannel:v0.7.1-amd64 -$ docker save -o docker-images/heapster-amd64 gcr.io/google_containers/heapster-amd64:v1.3.0 -$ docker save -o docker-images/etcd-amd64 gcr.io/google_containers/etcd-amd64:3.0.17 -$ docker save -o docker-images/heapster-grafana-amd64 gcr.io/google_containers/heapster-grafana-amd64:v4.0.2 -$ docker save -o docker-images/heapster-influxdb-amd64 gcr.io/google_containers/heapster-influxdb-amd64:v1.1.1 -$ docker save -o docker-images/pause-amd64 gcr.io/google_containers/pause-amd64:3.0 -``` - -* 在本机MacOSX上把代码以及docker镜像复制到所有节点上 - -``` -$ scp -r * root@k8s-master1:/root/kubeadm-ha -$ scp -r * root@k8s-master2:/root/kubeadm-ha -$ scp -r * root@k8s-master3:/root/kubeadm-ha -$ scp -r * root@k8s-node1:/root/kubeadm-ha -$ scp -r * root@k8s-node2:/root/kubeadm-ha -$ scp -r * root@k8s-node3:/root/kubeadm-ha -$ scp -r * root@k8s-node4:/root/kubeadm-ha -$ scp -r * root@k8s-node5:/root/kubeadm-ha -$ scp -r * root@k8s-node6:/root/kubeadm-ha -$ scp -r * root@k8s-node7:/root/kubeadm-ha -$ scp -r * root@k8s-node8:/root/kubeadm-ha -``` - ---- -[返回目录](#目录) - -#### 系统设置 - -* 以下在kubernetes所有节点上都是使用root用户进行操作 - -* 在kubernetes所有节点上增加kubernetes仓库 - -``` -$ cat < /etc/yum.repos.d/kubernetes.repo -[kubernetes] -name=Kubernetes -baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64 -enabled=1 -gpgcheck=1 -repo_gpgcheck=1 -gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg - https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg -EOF -``` - -* 在kubernetes所有节点上进行系统更新 - -``` -$ yum update -y -``` - -* 在kubernetes所有节点上关闭防火墙 - -``` -$ systemctl disable firewalld && systemctl stop firewalld && systemctl status firewalld -``` - -* 在kubernetes所有节点上设置SELINUX为permissive模式 - -``` -$ vi /etc/selinux/config -SELINUX=permissive -``` - -* 在kubernetes所有节点上设置iptables参数,否则kubeadm init会提示错误 - -``` -$ vi /etc/sysctl.d/k8s.conf -net.bridge.bridge-nf-call-iptables = 1 -net.bridge.bridge-nf-call-ip6tables = 1 -``` - -* 在kubernetes所有节点上重启主机 - -``` -$ reboot -``` - ---- -[返回目录](#目录) - -### kubernetes安装 - -#### kubernetes相关服务安装 - -* 在kubernetes所有节点上验证SELINUX模式,必须保证SELINUX为permissive模式,否则kubernetes启动会出现各种异常 - -``` -$ getenforce -Permissive -``` - -* 在kubernetes所有节点上安装并启动kubernetes - -``` -$ yum search docker --showduplicates -$ yum install docker-1.12.6-16.el7.centos.x86_64 - -$ yum search kubelet --showduplicates -$ yum install kubelet-1.7.0-0.x86_64 - -$ yum search kubeadm --showduplicates -$ yum install kubeadm-1.7.0-0.x86_64 - -$ yum search kubernetes-cni --showduplicates -$ yum install kubernetes-cni-0.5.1-0.x86_64 - -$ systemctl enable docker && systemctl start docker -$ systemctl enable kubelet && systemctl start kubelet -``` - ---- -[返回目录](#目录) - -#### docker镜像导入 - -* 在kubernetes所有节点上导入docker镜像 - -``` -$ docker load -i /root/kubeadm-ha/docker-images/etcd-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/flannel -$ docker load -i /root/kubeadm-ha/docker-images/heapster-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/heapster-grafana-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/heapster-influxdb-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/k8s-dns-dnsmasq-nanny-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/k8s-dns-kube-dns-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/k8s-dns-sidecar-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/kube-apiserver-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/kube-controller-manager-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/kube-proxy-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/kubernetes-dashboard-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/kube-scheduler-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/pause-amd64 -$ docker load -i /root/kubeadm-ha/docker-images/nginx - -$ docker images -REPOSITORY TAG IMAGE ID CREATED SIZE -gcr.io/google_containers/kube-proxy-amd64 v1.7.0 d2d44013d0f8 4 days ago 114.7 MB -gcr.io/google_containers/kube-apiserver-amd64 v1.7.0 f0d4b746fb2b 4 days ago 185.2 MB -gcr.io/google_containers/kube-controller-manager-amd64 v1.7.0 36bf73ed0632 4 days ago 137 MB -gcr.io/google_containers/kube-scheduler-amd64 v1.7.0 5c9a7f60a95c 4 days ago 77.16 MB -gcr.io/google_containers/k8s-dns-sidecar-amd64 1.14.4 38bac66034a6 7 days ago 41.81 MB -gcr.io/google_containers/k8s-dns-kube-dns-amd64 1.14.4 a8e00546bcf3 7 days ago 49.38 MB -gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64 1.14.4 f7f45b9cb733 7 days ago 41.41 MB -nginx latest 958a7ae9e569 4 weeks ago 109.4 MB -gcr.io/google_containers/kubernetes-dashboard-amd64 v1.6.1 71dfe833ce74 6 weeks ago 134.4 MB -quay.io/coreos/flannel v0.7.1-amd64 cd4ae0be5e1b 10 weeks ago 77.76 MB -gcr.io/google_containers/heapster-amd64 v1.3.0 f9d33bedfed3 3 months ago 68.11 MB -gcr.io/google_containers/etcd-amd64 3.0.17 243830dae7dd 4 months ago 168.9 MB -gcr.io/google_containers/heapster-grafana-amd64 v4.0.2 a1956d2a1a16 5 months ago 131.5 MB -gcr.io/google_containers/heapster-influxdb-amd64 v1.1.1 d3fccbedd180 5 months ago 11.59 MB -gcr.io/google_containers/pause-amd64 3.0 99e59f495ffa 14 months ago 746.9 kB -``` - ---- -[返回目录](#目录) - -### 第一台master初始化 - -#### 独立etcd集群部署 - -* 在k8s-master1节点上以docker方式启动etcd集群 - -``` -$ docker stop etcd && docker rm etcd -$ rm -rf /var/lib/etcd-cluster -$ mkdir -p /var/lib/etcd-cluster -$ docker run -d \ ---restart always \ --v /etc/ssl/certs:/etc/ssl/certs \ --v /var/lib/etcd-cluster:/var/lib/etcd \ --p 4001:4001 \ --p 2380:2380 \ --p 2379:2379 \ ---name etcd \ -gcr.io/google_containers/etcd-amd64:3.0.17 \ -etcd --name=etcd0 \ ---advertise-client-urls=http://192.168.60.71:2379,http://192.168.60.71:4001 \ ---listen-client-urls=http://0.0.0.0:2379,http://0.0.0.0:4001 \ ---initial-advertise-peer-urls=http://192.168.60.71:2380 \ ---listen-peer-urls=http://0.0.0.0:2380 \ ---initial-cluster-token=9477af68bbee1b9ae037d6fd9e7efefd \ ---initial-cluster=etcd0=http://192.168.60.71:2380,etcd1=http://192.168.60.72:2380,etcd2=http://192.168.60.73:2380 \ ---initial-cluster-state=new \ ---auto-tls \ ---peer-auto-tls \ ---data-dir=/var/lib/etcd -``` - -* 在k8s-master2节点上以docker方式启动etcd集群 - -``` -$ docker stop etcd && docker rm etcd -$ rm -rf /var/lib/etcd-cluster -$ mkdir -p /var/lib/etcd-cluster -$ docker run -d \ ---restart always \ --v /etc/ssl/certs:/etc/ssl/certs \ --v /var/lib/etcd-cluster:/var/lib/etcd \ --p 4001:4001 \ --p 2380:2380 \ --p 2379:2379 \ ---name etcd \ -gcr.io/google_containers/etcd-amd64:3.0.17 \ -etcd --name=etcd1 \ ---advertise-client-urls=http://192.168.60.72:2379,http://192.168.60.72:4001 \ ---listen-client-urls=http://0.0.0.0:2379,http://0.0.0.0:4001 \ ---initial-advertise-peer-urls=http://192.168.60.72:2380 \ ---listen-peer-urls=http://0.0.0.0:2380 \ ---initial-cluster-token=9477af68bbee1b9ae037d6fd9e7efefd \ ---initial-cluster=etcd0=http://192.168.60.71:2380,etcd1=http://192.168.60.72:2380,etcd2=http://192.168.60.73:2380 \ ---initial-cluster-state=new \ ---auto-tls \ ---peer-auto-tls \ ---data-dir=/var/lib/etcd -``` - -* 在k8s-master3节点上以docker方式启动etcd集群 - -``` -$ docker stop etcd && docker rm etcd -$ rm -rf /var/lib/etcd-cluster -$ mkdir -p /var/lib/etcd-cluster -$ docker run -d \ ---restart always \ --v /etc/ssl/certs:/etc/ssl/certs \ --v /var/lib/etcd-cluster:/var/lib/etcd \ --p 4001:4001 \ --p 2380:2380 \ --p 2379:2379 \ ---name etcd \ -gcr.io/google_containers/etcd-amd64:3.0.17 \ -etcd --name=etcd2 \ ---advertise-client-urls=http://192.168.60.73:2379,http://192.168.60.73:4001 \ ---listen-client-urls=http://0.0.0.0:2379,http://0.0.0.0:4001 \ ---initial-advertise-peer-urls=http://192.168.60.73:2380 \ ---listen-peer-urls=http://0.0.0.0:2380 \ ---initial-cluster-token=9477af68bbee1b9ae037d6fd9e7efefd \ ---initial-cluster=etcd0=http://192.168.60.71:2380,etcd1=http://192.168.60.72:2380,etcd2=http://192.168.60.73:2380 \ ---initial-cluster-state=new \ ---auto-tls \ ---peer-auto-tls \ ---data-dir=/var/lib/etcd -``` - -* 在k8s-master1、k8s-master2、k8s-master3上检查etcd启动状态 - -``` -$ docker exec -ti etcd ash - -$ etcdctl member list -1a32c2d3f1abcad0: name=etcd2 peerURLs=http://192.168.60.73:2380 clientURLs=http://192.168.60.73:2379,http://192.168.60.73:4001 isLeader=false -1da4f4e8b839cb79: name=etcd1 peerURLs=http://192.168.60.72:2380 clientURLs=http://192.168.60.72:2379,http://192.168.60.72:4001 isLeader=false -4238bcb92d7f2617: name=etcd0 peerURLs=http://192.168.60.71:2380 clientURLs=http://192.168.60.71:2379,http://192.168.60.71:4001 isLeader=true - -$ etcdctl cluster-health -member 1a32c2d3f1abcad0 is healthy: got healthy result from http://192.168.60.73:2379 -member 1da4f4e8b839cb79 is healthy: got healthy result from http://192.168.60.72:2379 -member 4238bcb92d7f2617 is healthy: got healthy result from http://192.168.60.71:2379 -cluster is healthy - -$ exit -``` - ---- -[返回目录](#目录) - -#### kubeadm初始化 - -* 在k8s-master1上修改kubeadm-init-v1.7.x.yaml文件,设置etcd.endpoints的${HOST_IP}为k8s-master1、k8s-master2、k8s-master3的IP地址。设置apiServerCertSANs的${HOST_IP}为k8s-master1、k8s-master2、k8s-master3的IP地址,${HOST_NAME}为k8s-master1、k8s-master2、k8s-master3,${VIRTUAL_IP}为keepalived的虚拟IP地址 - -``` -$ vi /root/kubeadm-ha/kubeadm-init-v1.7.x.yaml -apiVersion: kubeadm.k8s.io/v1alpha1 -kind: MasterConfiguration -kubernetesVersion: v1.7.0 -networking: - podSubnet: 10.244.0.0/16 -apiServerCertSANs: -- k8s-master1 -- k8s-master2 -- k8s-master3 -- 192.168.60.71 -- 192.168.60.72 -- 192.168.60.73 -- 192.168.60.80 -etcd: - endpoints: - - http://192.168.60.71:2379 - - http://192.168.60.72:2379 - - http://192.168.60.73:2379 -``` - -* 如果使用kubeadm初始化集群,启动过程可能会卡在以下位置,那么可能是因为cgroup-driver参数与docker的不一致引起 -* [apiclient] Created API client, waiting for the control plane to become ready -* journalctl -t kubelet -S '2017-06-08'查看日志,发现如下错误 -* error: failed to run Kubelet: failed to create kubelet: misconfiguration: kubelet cgroup driver: "systemd" -* 需要修改KUBELET_CGROUP_ARGS=--cgroup-driver=systemd为KUBELET_CGROUP_ARGS=--cgroup-driver=cgroupfs - -``` -$ vi /etc/systemd/system/kubelet.service.d/10-kubeadm.conf -#Environment="KUBELET_CGROUP_ARGS=--cgroup-driver=systemd" -Environment="KUBELET_CGROUP_ARGS=--cgroup-driver=cgroupfs" - -$ systemctl daemon-reload && systemctl restart kubelet -``` - -* 在k8s-master1上使用kubeadm初始化kubernetes集群,连接外部etcd集群 - -``` -$ kubeadm init --config=/root/kubeadm-ha/kubeadm-init-v1.7.x.yaml -``` - -* 在k8s-master1上修改kube-apiserver.yaml的admission-control,v1.7.0使用了NodeRestriction等安全检查控制,务必设置成v1.6.x推荐的admission-control配置 - -``` -$ vi /etc/kubernetes/manifests/kube-apiserver.yaml -# - --admission-control=Initializers,NamespaceLifecycle,LimitRanger,ServiceAccount,PersistentVolumeLabel,DefaultStorageClass,DefaultTolerationSeconds,NodeRestriction,ResourceQuota - - --admission-control=NamespaceLifecycle,LimitRanger,ServiceAccount,PersistentVolumeLabel,DefaultStorageClass,ResourceQuota,DefaultTolerationSeconds -``` - -* 在k8s-master1上重启docker kubelet服务 - -``` -$ systemctl restart docker kubelet -``` - -* 在k8s-master1上设置kubectl的环境变量KUBECONFIG,连接kubelet - -``` -$ vi ~/.bashrc -export KUBECONFIG=/etc/kubernetes/admin.conf - -$ source ~/.bashrc -``` - ---- -[返回目录](#目录) - -#### flannel网络组件安装 - -* 在k8s-master1上安装flannel pod网络组件,必须安装网络组件,否则kube-dns pod会一直处于ContainerCreating - -``` -$ kubectl create -f /root/kubeadm-ha/kube-flannel -clusterrole "flannel" created -clusterrolebinding "flannel" created -serviceaccount "flannel" created -configmap "kube-flannel-cfg" created -daemonset "kube-flannel-ds" created -``` - -* 在k8s-master1上验证kube-dns成功启动,大概等待3分钟,验证所有pods的状态为Running - -``` -$ kubectl get pods --all-namespaces -o wide -NAMESPACE NAME READY STATUS RESTARTS AGE IP NODE -kube-system kube-apiserver-k8s-master1 1/1 Running 0 3m 192.168.60.71 k8s-master1 -kube-system kube-controller-manager-k8s-master1 1/1 Running 0 3m 192.168.60.71 k8s-master1 -kube-system kube-dns-3913472980-k9mt6 3/3 Running 0 4m 10.244.0.104 k8s-master1 -kube-system kube-flannel-ds-3hhjd 2/2 Running 0 1m 192.168.60.71 k8s-master1 -kube-system kube-proxy-rzq3t 1/1 Running 0 4m 192.168.60.71 k8s-master1 -kube-system kube-scheduler-k8s-master1 1/1 Running 0 3m 192.168.60.71 k8s-master1 -``` - ---- -[返回目录](#目录) - -#### dashboard组件安装 - -* 在k8s-master1上安装dashboard组件 - -``` -$ kubectl create -f /root/kubeadm-ha/kube-dashboard/ -serviceaccount "kubernetes-dashboard" created -clusterrolebinding "kubernetes-dashboard" created -deployment "kubernetes-dashboard" created -service "kubernetes-dashboard" created -``` - -* 在k8s-master1上启动proxy,映射地址到0.0.0.0 - -``` -$ kubectl proxy --address='0.0.0.0' & -``` - -* 在本机MacOSX上访问dashboard地址,验证dashboard成功启动 - -``` -http://k8s-master1:30000 -``` - -![dashboard](images/dashboard.png) - ---- -[返回目录](#目录) - -#### heapster组件安装 - -* 在k8s-master1上允许在master上部署pod,否则heapster会无法部署 - -``` -$ kubectl taint nodes --all node-role.kubernetes.io/master- -node "k8s-master1" tainted -``` - -* 在k8s-master1上安装heapster组件,监控性能 - -``` -$ kubectl create -f /root/kubeadm-ha/kube-heapster -``` - -* 在k8s-master1上重启docker以及kubelet服务,让heapster在dashboard上生效显示 - -``` -$ systemctl restart docker kubelet -``` - -* 在k8s-master上检查pods状态 - -``` -$ kubectl get all --all-namespaces -o wide -NAMESPACE NAME READY STATUS RESTARTS AGE IP NODE -kube-system heapster-783524908-kn6jd 1/1 Running 1 9m 10.244.0.111 k8s-master1 -kube-system kube-apiserver-k8s-master1 1/1 Running 1 15m 192.168.60.71 k8s-master1 -kube-system kube-controller-manager-k8s-master1 1/1 Running 1 15m 192.168.60.71 k8s-master1 -kube-system kube-dns-3913472980-k9mt6 3/3 Running 3 16m 10.244.0.110 k8s-master1 -kube-system kube-flannel-ds-3hhjd 2/2 Running 3 13m 192.168.60.71 k8s-master1 -kube-system kube-proxy-rzq3t 1/1 Running 1 16m 192.168.60.71 k8s-master1 -kube-system kube-scheduler-k8s-master1 1/1 Running 1 15m 192.168.60.71 k8s-master1 -kube-system kubernetes-dashboard-2039414953-d46vw 1/1 Running 1 11m 10.244.0.109 k8s-master1 -kube-system monitoring-grafana-3975459543-8l94z 1/1 Running 1 9m 10.244.0.112 k8s-master1 -kube-system monitoring-influxdb-3480804314-72ltf 1/1 Running 1 9m 10.244.0.113 k8s-master1 -``` - -* 在本机MacOSX上访问dashboard地址,验证heapster成功启动,查看Pods的CPU以及Memory信息是否正常呈现 - -``` -http://k8s-master1:30000 -``` - -![heapster](images/heapster.png) - -* 至此,第一台master成功安装,并已经完成flannel、dashboard、heapster的部署 - ---- -[返回目录](#目录) - -### master集群高可用设置 - -#### 复制配置 - -* 在k8s-master1上把/etc/kubernetes/复制到k8s-master2、k8s-master3 - -``` -scp -r /etc/kubernetes/ k8s-master2:/etc/ -scp -r /etc/kubernetes/ k8s-master3:/etc/ -``` - -* 在k8s-master2、k8s-master3上重启kubelet服务,并检查kubelet服务状态为active (running) - -``` -$ systemctl daemon-reload && systemctl restart kubelet - -$ systemctl status kubelet -● kubelet.service - kubelet: The Kubernetes Node Agent - Loaded: loaded (/etc/systemd/system/kubelet.service; enabled; vendor preset: disabled) - Drop-In: /etc/systemd/system/kubelet.service.d - └─10-kubeadm.conf - Active: active (running) since Tue 2017-06-27 16:24:22 CST; 1 day 17h ago - Docs: http://kubernetes.io/docs/ - Main PID: 2780 (kubelet) - Memory: 92.9M - CGroup: /system.slice/kubelet.service - ├─2780 /usr/bin/kubelet --kubeconfig=/etc/kubernetes/kubelet.conf --require-... - └─2811 journalctl -k -f -``` - -* 在k8s-master2、k8s-master3上设置kubectl的环境变量KUBECONFIG,连接kubelet - -``` -$ vi ~/.bashrc -export KUBECONFIG=/etc/kubernetes/admin.conf - -$ source ~/.bashrc -``` - -* 在k8s-master2、k8s-master3检测节点状态,发现节点已经加进来 - -``` -$ kubectl get nodes -o wide -NAME STATUS AGE VERSION EXTERNAL-IP OS-IMAGE KERNEL-VERSION -k8s-master1 Ready 26m v1.7.0 CentOS Linux 7 (Core) 3.10.0-514.6.1.el7.x86_64 -k8s-master2 Ready 2m v1.7.0 CentOS Linux 7 (Core) 3.10.0-514.21.1.el7.x86_64 -k8s-master3 Ready 2m v1.7.0 CentOS Linux 7 (Core) 3.10.0-514.21.1.el7.x86_64 -``` - ---- -[返回目录](#目录) - -#### 修改配置 - -* 在k8s-master2、k8s-master3上修改kube-apiserver.yaml的配置,${HOST_IP}改为本机IP - -``` -$ vi /etc/kubernetes/manifests/kube-apiserver.yaml - - --advertise-address=${HOST_IP} -``` - -* 在k8s-master2和k8s-master3上的修改kubelet.conf设置,${HOST_IP}改为本机IP - -``` -$ vi /etc/kubernetes/kubelet.conf -server: https://${HOST_IP}:6443 -``` - -* 在k8s-master2和k8s-master3上修改admin.conf,${HOST_IP}修改为本机IP地址 - -``` -$ vi /etc/kubernetes/admin.conf - server: https://${HOST_IP}:6443 -``` - -* 在k8s-master2和k8s-master3上修改controller-manager.conf,${HOST_IP}修改为本机IP地址 - -``` -$ vi /etc/kubernetes/controller-manager.conf - server: https://${HOST_IP}:6443 -``` - -* 在k8s-master2和k8s-master3上修改scheduler.conf,${HOST_IP}修改为本机IP地址 - -``` -$ vi /etc/kubernetes/scheduler.conf - server: https://${HOST_IP}:6443 -``` - -* 在k8s-master1、k8s-master2、k8s-master3上重启所有服务 - -``` -$ systemctl daemon-reload && systemctl restart docker kubelet -``` - ---- -[返回目录](#目录) - -#### 验证高可用安装 - -* 在k8s-master1、k8s-master2、k8s-master3任意节点上检测服务启动情况,发现apiserver、controller-manager、kube-scheduler、proxy、flannel已经在k8s-master1、k8s-master2、k8s-master3成功启动 - -``` -$ kubectl get pod --all-namespaces -o wide | grep k8s-master2 -kube-system kube-apiserver-k8s-master2 1/1 Running 1 55s 192.168.60.72 k8s-master2 -kube-system kube-controller-manager-k8s-master2 1/1 Running 2 18m 192.168.60.72 k8s-master2 -kube-system kube-flannel-ds-t8gkh 2/2 Running 4 18m 192.168.60.72 k8s-master2 -kube-system kube-proxy-bpgqw 1/1 Running 1 18m 192.168.60.72 k8s-master2 -kube-system kube-scheduler-k8s-master2 1/1 Running 2 18m 192.168.60.72 k8s-master2 - -$ kubectl get pod --all-namespaces -o wide | grep k8s-master3 -kube-system kube-apiserver-k8s-master3 1/1 Running 1 1m 192.168.60.73 k8s-master3 -kube-system kube-controller-manager-k8s-master3 1/1 Running 2 18m 192.168.60.73 k8s-master3 -kube-system kube-flannel-ds-tmqmx 2/2 Running 4 18m 192.168.60.73 k8s-master3 -kube-system kube-proxy-4stg3 1/1 Running 1 18m 192.168.60.73 k8s-master3 -kube-system kube-scheduler-k8s-master3 1/1 Running 2 18m 192.168.60.73 k8s-master3 -``` - -* 在k8s-master1、k8s-master2、k8s-master3任意节点上通过kubectl logs检查各个controller-manager和scheduler的leader election结果,可以发现只有一个节点有效表示选举正常 - -``` -$ kubectl logs -n kube-system kube-controller-manager-k8s-master1 -$ kubectl logs -n kube-system kube-controller-manager-k8s-master2 -$ kubectl logs -n kube-system kube-controller-manager-k8s-master3 - -$ kubectl logs -n kube-system kube-scheduler-k8s-master1 -$ kubectl logs -n kube-system kube-scheduler-k8s-master2 -$ kubectl logs -n kube-system kube-scheduler-k8s-master3 -``` - -* 在k8s-master1、k8s-master2、k8s-master3任意节点上查看deployment的情况 - -``` -$ kubectl get deploy --all-namespaces -NAMESPACE NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE -kube-system heapster 1 1 1 1 41m -kube-system kube-dns 1 1 1 1 48m -kube-system kubernetes-dashboard 1 1 1 1 43m -kube-system monitoring-grafana 1 1 1 1 41m -kube-system monitoring-influxdb 1 1 1 1 41m -``` - -* 在k8s-master1、k8s-master2、k8s-master3任意节点上把kubernetes-dashboard、kube-dns、 scale up成replicas=3,保证各个master节点上都有运行 - -``` -$ kubectl scale --replicas=3 -n kube-system deployment/kube-dns -$ kubectl get pods --all-namespaces -o wide| grep kube-dns - -$ kubectl scale --replicas=3 -n kube-system deployment/kubernetes-dashboard -$ kubectl get pods --all-namespaces -o wide| grep kubernetes-dashboard - -$ kubectl scale --replicas=3 -n kube-system deployment/heapster -$ kubectl get pods --all-namespaces -o wide| grep heapster - -$ kubectl scale --replicas=3 -n kube-system deployment/monitoring-grafana -$ kubectl get pods --all-namespaces -o wide| grep monitoring-grafana - -$ kubectl scale --replicas=3 -n kube-system deployment/monitoring-influxdb -$ kubectl get pods --all-namespaces -o wide| grep monitoring-influxdb -``` - ---- -[返回目录](#目录) - -#### keepalived安装配置 - -* 在k8s-master、k8s-master2、k8s-master3上安装keepalived - -``` -$ yum install -y keepalived - -$ systemctl enable keepalived && systemctl restart keepalived -``` - -* 在k8s-master1、k8s-master2、k8s-master3上备份keepalived配置文件 - -``` -$ mv /etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf.bak -``` - -* 在k8s-master1、k8s-master2、k8s-master3上设置apiserver监控脚本,当apiserver检测失败的时候关闭keepalived服务,转移虚拟IP地址 - -``` -$ vi /etc/keepalived/check_apiserver.sh -#!/bin/bash -err=0 -for k in $( seq 1 10 ) -do - check_code=$(ps -ef|grep kube-apiserver | wc -l) - if [ "$check_code" = "1" ]; then - err=$(expr $err + 1) - sleep 5 - continue - else - err=0 - break - fi -done -if [ "$err" != "0" ]; then - echo "systemctl stop keepalived" - /usr/bin/systemctl stop keepalived - exit 1 -else - exit 0 -fi - -chmod a+x /etc/keepalived/check_apiserver.sh -``` - -* 在k8s-master1、k8s-master2、k8s-master3上查看接口名字 - -``` -$ ip a | grep 192.168.60 -``` - -* 在k8s-master1、k8s-master2、k8s-master3上设置keepalived,参数说明如下: -* state ${STATE}:为MASTER或者BACKUP,只能有一个MASTER -* interface ${INTERFACE_NAME}:为本机的需要绑定的接口名字(通过上边的```ip a```命令查看) -* mcast_src_ip ${HOST_IP}:为本机的IP地址 -* priority ${PRIORITY}:为优先级,例如102、101、100,优先级越高越容易选择为MASTER,优先级不能一样 -* ${VIRTUAL_IP}:为虚拟的IP地址,这里设置为192.168.60.80 - -``` -$ vi /etc/keepalived/keepalived.conf -! Configuration File for keepalived -global_defs { - router_id LVS_DEVEL -} -vrrp_script chk_apiserver { - script "/etc/keepalived/check_apiserver.sh" - interval 2 - weight -5 - fall 3 - rise 2 -} -vrrp_instance VI_1 { - state ${STATE} - interface ${INTERFACE_NAME} - mcast_src_ip ${HOST_IP} - virtual_router_id 51 - priority ${PRIORITY} - advert_int 2 - authentication { - auth_type PASS - auth_pass 4be37dc3b4c90194d1600c483e10ad1d - } - virtual_ipaddress { - ${VIRTUAL_IP} - } - track_script { - chk_apiserver - } -} -``` - -* 在k8s-master1、k8s-master2、k8s-master3上重启keepalived服务,检测虚拟IP地址是否生效 - -``` -$ systemctl restart keepalived -$ ping 192.168.60.80 -``` - ---- -[返回目录](#目录) - -#### nginx负载均衡配置 - -* 在k8s-master1、k8s-master2、k8s-master3上修改nginx-default.conf设置,${HOST_IP}对应k8s-master1、k8s-master2、k8s-master3的地址。通过nginx把访问apiserver的6443端口负载均衡到8433端口上 - -``` -$ vi /root/kubeadm-ha/nginx-default.conf -stream { - upstream apiserver { - server ${HOST_IP}:6443 weight=5 max_fails=3 fail_timeout=30s; - server ${HOST_IP}:6443 weight=5 max_fails=3 fail_timeout=30s; - server ${HOST_IP}:6443 weight=5 max_fails=3 fail_timeout=30s; - } - - server { - listen 8443; - proxy_connect_timeout 1s; - proxy_timeout 3s; - proxy_pass apiserver; - } -} -``` - -* 在k8s-master1、k8s-master2、k8s-master3上启动nginx容器 - -``` -$ docker run -d -p 8443:8443 \ ---name nginx-lb \ ---restart always \ --v /root/kubeadm-ha/nginx-default.conf:/etc/nginx/nginx.conf \ -nginx -``` - -* 在k8s-master1、k8s-master2、k8s-master3上检测keepalived服务的虚拟IP地址指向 - -``` -$ curl -L 192.168.60.80:8443 | wc -l - % Total % Received % Xferd Average Speed Time Time Time Current - Dload Upload Total Spent Left Speed -100 14 0 14 0 0 18324 0 --:--:-- --:--:-- --:--:-- 14000 -1 -``` - -* 业务恢复后务必重启keepalived,否则keepalived会处于关闭状态 - -``` -$ systemctl restart keepalived -``` - -* 在k8s-master1、k8s-master2、k8s-master3上查看keeplived日志,有以下输出表示当前虚拟IP地址绑定的主机 - -``` -$ systemctl status keepalived -l -VRRP_Instance(VI_1) Sending gratuitous ARPs on ens160 for 192.168.60.80 -``` - ---- -[返回目录](#目录) - -#### kube-proxy配置 - -* 在k8s-master1上设置kube-proxy使用keepalived的虚拟IP地址,避免k8s-master1异常的时候所有节点的kube-proxy连接不上 - -``` -$ kubectl get -n kube-system configmap -NAME DATA AGE -extension-apiserver-authentication 6 4h -kube-flannel-cfg 2 4h -kube-proxy 1 4h -``` - -* 在k8s-master1上修改configmap/kube-proxy的server指向keepalived的虚拟IP地址 - -``` -$ kubectl edit -n kube-system configmap/kube-proxy - server: https://192.168.60.80:8443 -``` - -* 在k8s-master1上查看configmap/kube-proxy设置情况 - -``` -$ kubectl get -n kube-system configmap/kube-proxy -o yaml -``` - -* 在k8s-master1上删除所有kube-proxy的pod,让proxy重建 - -``` -kubectl get pods --all-namespaces -o wide | grep proxy -``` - -* 在k8s-master1、k8s-master2、k8s-master3上重启docker kubelet keepalived服务 - -``` -$ systemctl restart docker kubelet keepalived -``` - ---- -[返回目录](#目录) - -#### 验证master集群高可用 - -* 在k8s-master1上检查各个节点pod的启动状态,每个上都成功启动heapster、kube-apiserver、kube-controller-manager、kube-dns、kube-flannel、kube-proxy、kube-scheduler、kubernetes-dashboard、monitoring-grafana、monitoring-influxdb。并且所有pod都处于Running状态表示正常 - -``` -$ kubectl get pods --all-namespaces -o wide | grep k8s-master1 - -$ kubectl get pods --all-namespaces -o wide | grep k8s-master2 - -$ kubectl get pods --all-namespaces -o wide | grep k8s-master3 -``` - ---- -[返回目录](#目录) - -### node节点加入高可用集群设置 - -#### kubeadm加入高可用集群 -* 在k8s-master1上禁止在所有master节点上发布应用 - -``` -$ kubectl patch node k8s-master1 -p '{"spec":{"unschedulable":true}}' - -$ kubectl patch node k8s-master2 -p '{"spec":{"unschedulable":true}}' - -$ kubectl patch node k8s-master3 -p '{"spec":{"unschedulable":true}}' -``` - -* 在k8s-master1上查看集群的token - -``` -$ kubeadm token list -TOKEN TTL EXPIRES USAGES DESCRIPTION -xxxxxx.yyyyyy authentication,signing The default bootstrap token generated by 'kubeadm init' -``` - -* 在k8s-node1 ~ k8s-node8上,${TOKEN}为k8s-master1上显示的token,${VIRTUAL_IP}为keepalived的虚拟IP地址192.168.60.80 - -``` -$ kubeadm join --token ${TOKEN} ${VIRTUAL_IP}:8443 -``` - ---- -[返回目录](#目录) - -#### 部署应用验证集群 - -* 在k8s-node1 ~ k8s-node8上查看kubelet状态,kubelet状态为active (running)表示kubelet服务正常启动 - -``` -$ systemctl status kubelet -● kubelet.service - kubelet: The Kubernetes Node Agent - Loaded: loaded (/etc/systemd/system/kubelet.service; enabled; vendor preset: disabled) - Drop-In: /etc/systemd/system/kubelet.service.d - └─10-kubeadm.conf - Active: active (running) since Tue 2017-06-27 16:23:43 CST; 1 day 18h ago - Docs: http://kubernetes.io/docs/ - Main PID: 1146 (kubelet) - Memory: 204.9M - CGroup: /system.slice/kubelet.service - ├─ 1146 /usr/bin/kubelet --kubeconfig=/etc/kubernetes/kubelet.conf --require... - ├─ 2553 journalctl -k -f - ├─ 4988 /usr/sbin/glusterfs --log-level=ERROR --log-file=/var/lib/kubelet/pl... - └─14720 /usr/sbin/glusterfs --log-level=ERROR --log-file=/var/lib/kubelet/pl... -``` - -* 在k8s-master1上检查各个节点状态,发现所有k8s-nodes节点成功加入 - -``` -$ kubectl get nodes -o wide -NAME STATUS AGE VERSION -k8s-master1 Ready,SchedulingDisabled 5h v1.7.0 -k8s-master2 Ready,SchedulingDisabled 4h v1.7.0 -k8s-master3 Ready,SchedulingDisabled 4h v1.7.0 -k8s-node1 Ready 6m v1.7.0 -k8s-node2 Ready 4m v1.7.0 -k8s-node3 Ready 4m v1.7.0 -k8s-node4 Ready 3m v1.7.0 -k8s-node5 Ready 3m v1.7.0 -k8s-node6 Ready 3m v1.7.0 -k8s-node7 Ready 3m v1.7.0 -k8s-node8 Ready 3m v1.7.0 -``` - -* 在k8s-master1上测试部署nginx服务,nginx服务成功部署到k8s-node5上 - -``` -$ kubectl run nginx --image=nginx --port=80 -deployment "nginx" created - -$ kubectl get pod -o wide -l=run=nginx -NAME READY STATUS RESTARTS AGE IP NODE -nginx-2662403697-pbmwt 1/1 Running 0 5m 10.244.7.6 k8s-node5 -``` - -* 在k8s-master1让nginx服务外部可见 - -``` -$ kubectl expose deployment nginx --port=80 --target-port=80 --type=NodePort -service "nginx" exposed - -$ kubectl get svc -l=run=nginx -NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE -nginx 10.105.151.69 80:31639/TCP 43s - -$ curl k8s-master2:31639 - - - -Welcome to nginx! - - - -

Welcome to nginx!

-

If you see this page, the nginx web server is successfully installed and -working. Further configuration is required.

- -

For online documentation and support please refer to -nginx.org.
-Commercial support is available at -nginx.com.

- -

Thank you for using nginx.

- - - -``` - -* 至此,kubernetes高可用集群成功部署 😀 ---- -[返回目录](#目录) - diff --git a/v1.7/images/dashboard.png b/v1.7/images/dashboard.png deleted file mode 100644 index f86f497559d0db84e7166a398e899cc5c6e0bb4c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 67268 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

X~a>Ng6SawIC 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%0D1w{fyA@gx86vrNUs?21q?kPfEL4LdM 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�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

?=w?e7l_ISOwQl;4RpZvBz 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 Ax&QzG diff --git a/v1.7/kube-dashboard/kubernetes-dashboard-1.6.1.yaml b/v1.7/kube-dashboard/kubernetes-dashboard-1.6.1.yaml deleted file mode 100644 index ca8df50..0000000 --- a/v1.7/kube-dashboard/kubernetes-dashboard-1.6.1.yaml +++ /dev/null @@ -1,98 +0,0 @@ -# Copyright 2015 Google Inc. All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Configuration to deploy release version of the Dashboard UI compatible with -# Kubernetes 1.6 (RBAC enabled). -# -# Example usage: kubectl create -f - -apiVersion: v1 -kind: ServiceAccount -metadata: - labels: - k8s-app: kubernetes-dashboard - name: kubernetes-dashboard - namespace: kube-system ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: kubernetes-dashboard - labels: - k8s-app: kubernetes-dashboard -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: cluster-admin -subjects: -- kind: ServiceAccount - name: kubernetes-dashboard - namespace: kube-system ---- -kind: Deployment -apiVersion: extensions/v1beta1 -metadata: - labels: - k8s-app: kubernetes-dashboard - name: kubernetes-dashboard - namespace: kube-system -spec: - replicas: 1 - revisionHistoryLimit: 10 - selector: - matchLabels: - k8s-app: kubernetes-dashboard - template: - metadata: - labels: - k8s-app: kubernetes-dashboard - spec: - containers: - - name: kubernetes-dashboard - image: gcr.io/google_containers/kubernetes-dashboard-amd64:v1.6.1 - ports: - - containerPort: 9090 - protocol: TCP - args: - # Uncomment the following line to manually specify Kubernetes API server Host - # If not specified, Dashboard will attempt to auto discover the API server and connect - # to it. Uncomment only if the default does not work. - # - --apiserver-host=http://my-address:port - livenessProbe: - httpGet: - path: / - port: 9090 - initialDelaySeconds: 30 - timeoutSeconds: 30 - serviceAccountName: kubernetes-dashboard - # Comment the following tolerations if Dashboard must not be deployed on master - tolerations: - - key: node-role.kubernetes.io/master - effect: NoSchedule ---- -kind: Service -apiVersion: v1 -metadata: - labels: - k8s-app: kubernetes-dashboard - name: kubernetes-dashboard - namespace: kube-system -spec: - type: NodePort - ports: - - port: 80 - targetPort: 9090 - nodePort: 30000 - selector: - k8s-app: kubernetes-dashboard diff --git a/v1.7/kube-flannel/step1-kube-flannel-rbac-v0.7.1.yml b/v1.7/kube-flannel/step1-kube-flannel-rbac-v0.7.1.yml deleted file mode 100644 index d66465c..0000000 --- a/v1.7/kube-flannel/step1-kube-flannel-rbac-v0.7.1.yml +++ /dev/null @@ -1,42 +0,0 @@ -# Create the clusterrole and clusterrolebinding: -# $ kubectl create -f kube-flannel-rbac.yml -# Create the pod using the same namespace used by the flannel serviceaccount: -# $ kubectl create --namespace kube-system -f kube-flannel.yml ---- -kind: ClusterRole -apiVersion: rbac.authorization.k8s.io/v1beta1 -metadata: - name: flannel -rules: - - apiGroups: - - "" - resources: - - pods - verbs: - - get - - apiGroups: - - "" - resources: - - nodes - verbs: - - list - - watch - - apiGroups: - - "" - resources: - - nodes/status - verbs: - - patch ---- -kind: ClusterRoleBinding -apiVersion: rbac.authorization.k8s.io/v1beta1 -metadata: - name: flannel -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: flannel -subjects: -- kind: ServiceAccount - name: flannel - namespace: kube-system diff --git a/v1.7/kube-flannel/step2-kube-flannel-v0.7.1.yml b/v1.7/kube-flannel/step2-kube-flannel-v0.7.1.yml deleted file mode 100644 index 09dfe53..0000000 --- a/v1.7/kube-flannel/step2-kube-flannel-v0.7.1.yml +++ /dev/null @@ -1,93 +0,0 @@ ---- -apiVersion: v1 -kind: ServiceAccount -metadata: - name: flannel - namespace: kube-system ---- -kind: ConfigMap -apiVersion: v1 -metadata: - name: kube-flannel-cfg - namespace: kube-system - labels: - tier: node - app: flannel -data: - cni-conf.json: | - { - "name": "cbr0", - "type": "flannel", - "delegate": { - "isDefaultGateway": true - } - } - net-conf.json: | - { - "Network": "10.244.0.0/16", - "Backend": { - "Type": "vxlan" - } - } ---- -apiVersion: extensions/v1beta1 -kind: DaemonSet -metadata: - name: kube-flannel-ds - namespace: kube-system - labels: - tier: node - app: flannel -spec: - template: - metadata: - labels: - tier: node - app: flannel - spec: - hostNetwork: true - nodeSelector: - beta.kubernetes.io/arch: amd64 - tolerations: - - key: node-role.kubernetes.io/master - operator: Exists - effect: NoSchedule - serviceAccountName: flannel - containers: - - name: kube-flannel - image: quay.io/coreos/flannel:v0.7.1-amd64 - command: [ "/opt/bin/flanneld", "--ip-masq", "--kube-subnet-mgr" ] - securityContext: - privileged: true - env: - - name: POD_NAME - valueFrom: - fieldRef: - fieldPath: metadata.name - - name: POD_NAMESPACE - valueFrom: - fieldRef: - fieldPath: metadata.namespace - volumeMounts: - - name: run - mountPath: /run - - name: flannel-cfg - mountPath: /etc/kube-flannel/ - - name: install-cni - image: quay.io/coreos/flannel:v0.7.1-amd64 - command: [ "/bin/sh", "-c", "set -e -x; cp -f /etc/kube-flannel/cni-conf.json /etc/cni/net.d/10-flannel.conf; while true; do sleep 3600; done" ] - volumeMounts: - - name: cni - mountPath: /etc/cni/net.d - - name: flannel-cfg - mountPath: /etc/kube-flannel/ - volumes: - - name: run - hostPath: - path: /run - - name: cni - hostPath: - path: /etc/cni/net.d - - name: flannel-cfg - configMap: - name: kube-flannel-cfg diff --git a/v1.7/kube-heapster/grafana.yaml b/v1.7/kube-heapster/grafana.yaml deleted file mode 100644 index 4bdce05..0000000 --- a/v1.7/kube-heapster/grafana.yaml +++ /dev/null @@ -1,66 +0,0 @@ -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: monitoring-grafana - namespace: kube-system -spec: - replicas: 1 - template: - metadata: - labels: - task: monitoring - k8s-app: grafana - spec: - containers: - - name: grafana - image: gcr.io/google_containers/heapster-grafana-amd64:v4.0.2 - ports: - - containerPort: 3000 - protocol: TCP - volumeMounts: - - mountPath: /var - name: grafana-storage - env: - - name: INFLUXDB_HOST - value: monitoring-influxdb - - name: GRAFANA_PORT - value: "3000" - # The following env variables are required to make Grafana accessible via - # the kubernetes api-server proxy. On production clusters, we recommend - # removing these env variables, setup auth for grafana, and expose the grafana - # service using a LoadBalancer or a public IP. - - name: GF_AUTH_BASIC_ENABLED - value: "false" - - name: GF_AUTH_ANONYMOUS_ENABLED - value: "true" - - name: GF_AUTH_ANONYMOUS_ORG_ROLE - value: Admin - - name: GF_SERVER_ROOT_URL - # If you're only using the API Server proxy, set this value instead: - # value: /api/v1/proxy/namespaces/kube-system/services/monitoring-grafana/ - value: / - volumes: - - name: grafana-storage - emptyDir: {} ---- -apiVersion: v1 -kind: Service -metadata: - labels: - # For use as a Cluster add-on (https://github.com/kubernetes/kubernetes/tree/master/cluster/addons) - # If you are NOT using this as an addon, you should comment out this line. - kubernetes.io/cluster-service: 'true' - kubernetes.io/name: monitoring-grafana - name: monitoring-grafana - namespace: kube-system -spec: - # In a production setup, we recommend accessing Grafana through an external Loadbalancer - # or through a public IP. - # type: LoadBalancer - # You could also use NodePort to expose the service at a randomly-generated port - # type: NodePort - ports: - - port: 80 - targetPort: 3000 - selector: - k8s-app: grafana diff --git a/v1.7/kube-heapster/heapster-rbac.yaml b/v1.7/kube-heapster/heapster-rbac.yaml deleted file mode 100644 index 74df610..0000000 --- a/v1.7/kube-heapster/heapster-rbac.yaml +++ /dev/null @@ -1,67 +0,0 @@ -apiVersion: v1 -kind: ServiceAccount -metadata: - name: heapster - namespace: kube-system ---- -kind: ClusterRoleBinding -apiVersion: rbac.authorization.k8s.io/v1beta1 -metadata: - name: heapster -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: system:heapster -subjects: -- kind: ServiceAccount - name: heapster - namespace: kube-system ---- -apiVersion: apps/v1beta1 -kind: Deployment -metadata: - name: heapster - labels: - k8s-app: heapster - task: monitoring - namespace: kube-system -spec: - replicas: 1 - template: - metadata: - labels: - k8s-app: heapster - task: monitoring - spec: - tolerations: - - key: beta.kubernetes.io/arch - value: arm - effect: NoSchedule - - key: beta.kubernetes.io/arch - value: arm64 - effect: NoSchedule - serviceAccountName: heapster - containers: - - name: heapster - image: gcr.io/google_containers/heapster-amd64:v1.3.0 - command: - - /heapster - - --source=kubernetes:https://kubernetes.default - - --sink=influxdb:http://monitoring-influxdb.kube-system.svc:8086 ---- -apiVersion: v1 -kind: Service -metadata: - labels: - task: monitoring - k8s-app: heapster - kubernetes.io/cluster-service: "true" - kubernetes.io/name: Heapster - name: heapster - namespace: kube-system -spec: - ports: - - port: 80 - targetPort: 8082 - selector: - k8s-app: heapster diff --git a/v1.7/kube-heapster/influxdb.yaml b/v1.7/kube-heapster/influxdb.yaml deleted file mode 100644 index 9afdf55..0000000 --- a/v1.7/kube-heapster/influxdb.yaml +++ /dev/null @@ -1,40 +0,0 @@ -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: monitoring-influxdb - namespace: kube-system -spec: - replicas: 1 - template: - metadata: - labels: - task: monitoring - k8s-app: influxdb - spec: - containers: - - name: influxdb - image: gcr.io/google_containers/heapster-influxdb-amd64:v1.1.1 - volumeMounts: - - mountPath: /data - name: influxdb-storage - volumes: - - name: influxdb-storage - emptyDir: {} ---- -apiVersion: v1 -kind: Service -metadata: - labels: - task: monitoring - # For use as a Cluster add-on (https://github.com/kubernetes/kubernetes/tree/master/cluster/addons) - # If you are NOT using this as an addon, you should comment out this line. - kubernetes.io/cluster-service: 'true' - kubernetes.io/name: monitoring-influxdb - name: monitoring-influxdb - namespace: kube-system -spec: - ports: - - port: 8086 - targetPort: 8086 - selector: - k8s-app: influxdb diff --git a/v1.7/kubeadm-init-v1.7.x.yaml b/v1.7/kubeadm-init-v1.7.x.yaml deleted file mode 100644 index a780491..0000000 --- a/v1.7/kubeadm-init-v1.7.x.yaml +++ /dev/null @@ -1,18 +0,0 @@ -apiVersion: kubeadm.k8s.io/v1alpha1 -kind: MasterConfiguration -kubernetesVersion: v1.7.0 -networking: - podSubnet: 10.244.0.0/16 -apiServerCertSANs: -- ${HOST_NAME} -- ${HOST_NAME} -- ${HOST_NAME} -- ${HOST_IP} -- ${HOST_IP} -- ${HOST_IP} -- ${VIRTUAL_IP} -etcd: - endpoints: - - http://${HOST_IP}:2379 - - http://${HOST_IP}:2379 - - http://${HOST_IP}:2379 diff --git a/v1.7/nginx-default.conf b/v1.7/nginx-default.conf deleted file mode 100644 index b330c0b..0000000 --- a/v1.7/nginx-default.conf +++ /dev/null @@ -1,47 +0,0 @@ - -user nginx; -worker_processes 1; - -error_log /var/log/nginx/error.log warn; -pid /var/run/nginx.pid; - - -events { - worker_connections 1024; -} - - -http { - include /etc/nginx/mime.types; - default_type application/octet-stream; - - log_format main '$remote_addr - $remote_user [$time_local] "$request" ' - '$status $body_bytes_sent "$http_referer" ' - '"$http_user_agent" "$http_x_forwarded_for"'; - - access_log /var/log/nginx/access.log main; - - sendfile on; - #tcp_nopush on; - - keepalive_timeout 65; - - #gzip on; - - include /etc/nginx/conf.d/*.conf; -} - -stream { - upstream apiserver { - server ${HOST_IP}:6443 weight=5 max_fails=3 fail_timeout=30s; - server ${HOST_IP}:6443 weight=5 max_fails=3 fail_timeout=30s; - server ${HOST_IP}:6443 weight=5 max_fails=3 fail_timeout=30s; - } - - server { - listen 8443; - proxy_connect_timeout 1s; - proxy_timeout 3s; - proxy_pass apiserver; - } -} diff --git a/v1.9/README.md b/v1.9/README.md deleted file mode 100644 index 7c4a8cb..0000000 --- a/v1.9/README.md +++ /dev/null @@ -1,1028 +0,0 @@ -# kubeadm-highavailiability - kubernetes high availiability deployment based on kubeadm, for Kubernetes version v1.11.x/v1.9.x/v1.7.x/v1.6.x - -![k8s logo](../images/Kubernetes.png) - -- [中文文档(for v1.11.x版本)](../README_CN.md) -- [English document(for v1.11.x version)](../README.md) -- [中文文档(for v1.9.x版本)](../v1.9/README_CN.md) -- [English document(for v1.9.x version)](../v1.9/README.md) -- [中文文档(for v1.7.x版本)](../v1.7/README_CN.md) -- [English document(for v1.7.x version)](../v1.7/README.md) -- [中文文档(for v1.6.x版本)](../v1.6/README_CN.md) -- [English document(for v1.6.x version)](../v1.6/README.md) - ---- - -- [GitHub project URL](https://github.com/cookeem/kubeadm-ha/) -- [OSChina project URL](https://git.oschina.net/cookeem/kubeadm-ha/) - ---- - -- This operation instruction is for version v1.9.x kubernetes cluster - -> Before v1.9.0 kubeadm still not support high availability deployment, so it's not recommend for production usage. But from v1.9.0, kubeadm support high availability deployment officially, this instruction version for at least v1.9.0. - -### category - -1. [deployment architecture](#deployment-architecture) - 1. [deployment architecture summary](#deployment-architecture-summary) - 1. [detail deployment architecture](#detail-deployment-architecture) - 1. [hosts list](#hosts-list) -1. [prerequisites](#prerequisites) - 1. [version info](#version-info) - 1. [required docker images](#required-docker-images) - 1. [system configuration](#system-configuration) -1. [kubernetes installation](#kubernetes-installation) - 1. [firewalld and iptables settings](#firewalld-and-iptables-settings) - 1. [kubernetes and related services installation](#kubernetes-and-related-services-installation) -1. [configuration files settings](#configuration-files-settings) - 1. [script files settings](#script-files-settings) - 1. [deploy independent etcd cluster](#deploy-independent-etcd-cluster) -1. [use kubeadm to init first master](#use-kubeadm-to-init-first-master) - 1. [kubeadm init](#kubeadm-init) - 1. [basic components installation](#basic-components-installation) -1. [kubernetes masters high avialiability configuration](#kubernetes-masters-high-avialiability-configuration) - 1. [copy configuration files](#copy-configuration-files) - 1. [other master nodes init](#other-master-nodes-init) - 1. [keepalived installation](#keepalived-installation) - 1. [nginx load balancer configuration](#nginx-load-balancer-configuration) - 1. [kube-proxy configuration](#kube-proxy-configuration) -1. [all nodes join the kubernetes cluster](#all-nodes-join-the-kubernetes-cluster) - 1. [use kubeadm to join the cluster](#use-kubeadm-to-join-the-cluster) - 1. [verify kubernetes cluster high availiablity](#verify-kubernetes-cluster-high-availiablity) - -### deployment architecture - -#### deployment architecture summary - -![ha logo](../images/ha.png) - ---- - -[category](#category) - -#### detail deployment architecture - -![k8s ha](../images/k8s-ha.png) - -* kubernetes components: - -> kube-apiserver: exposes the Kubernetes API. It is the front-end for the Kubernetes control plane. It is designed to scale horizontally – that is, it scales by deploying more instances. - -> etcd: is used as Kubernetes’ backing store. All cluster data is stored here. Always have a backup plan for etcd’s data for your Kubernetes cluster. - - -> kube-scheduler: watches newly created pods that have no node assigned, and selects a node for them to run on. - - -> kube-controller-manager: runs controllers, which are the background threads that handle routine tasks in the cluster. Logically, each controller is a separate process, but to reduce complexity, they are all compiled into a single binary and run in a single process. - -> kubelet: is the primary node agent. It watches for pods that have been assigned to its node (either by apiserver or via local configuration file) - -> kube-proxy: enables the Kubernetes service abstraction by maintaining network rules on the host and performing connection forwarding. - - -* load balancer - -> keepalived cluster config a virtual IP address (192.168.20.10), this virtual IP address point to devops-master01, devops-master02, devops-master03. - -> nginx service as the load balancer of devops-master01, devops-master02, devops-master03's apiserver. The other nodes kubernetes services connect the keepalived virtual ip address (192.168.20.10) and nginx exposed port (16443) to communicate with the master cluster's apiservers. - ---- - -[category](#category) - -#### hosts list - -HostName | IPAddress | Notes | Components -:--- | :--- | :--- | :--- -devops-master01 ~ 03 | 192.168.20.27 ~ 29 | master nodes * 3 | keepalived, nginx, etcd, kubelet, kube-apiserver, kube-scheduler, kube-proxy, kube-dashboard, heapster, calico -N/A | 192.168.20.10 | keepalived virtual IP | N/A -devops-node01 ~ 04 | 192.168.20.17 ~ 20 | worker nodes * 4 | kubelet, kube-proxy - ---- - -[category](#category) - -### prerequisites - -#### version info - -* Linux version: CentOS 7.4.1708 -* Core version: 4.6.4-1.el7.elrepo.x86_64 - -``` -$ cat /etc/redhat-release -CentOS Linux release 7.4.1708 (Core) - -$ uname -r -4.6.4-1.el7.elrepo.x86_64 -``` - -* docker version: 17.12.0-ce-rc2 - -``` -$ docker version -Client: - Version: 17.12.0-ce-rc2 - API version: 1.35 - Go version: go1.9.2 - Git commit: f9cde63 - Built: Tue Dec 12 06:42:20 2017 - OS/Arch: linux/amd64 - -Server: - Engine: - Version: 17.12.0-ce-rc2 - API version: 1.35 (minimum version 1.12) - Go version: go1.9.2 - Git commit: f9cde63 - Built: Tue Dec 12 06:44:50 2017 - OS/Arch: linux/amd64 - Experimental: false -``` - -* kubeadm version: v1.9.3 - -``` -$ kubeadm version -kubeadm version: &version.Info{Major:"1", Minor:"9", GitVersion:"v1.9.3", GitCommit:"d2835416544f298c919e2ead3be3d0864b52323b", GitTreeState:"clean", BuildDate:"2018-02-07T11:55:20Z", GoVersion:"go1.9.2", Compiler:"gc", Platform:"linux/amd64"} -``` - -* kubelet version: v1.9.3 - -``` -$ kubelet --version -Kubernetes v1.9.3 -``` - -* networks add-ons - -> canal (flannel + calico) - ---- - -[category](#category) - -#### required docker images - -``` -# kuberentes basic components -docker pull gcr.io/google_containers/kube-apiserver-amd64:v1.9.3 -docker pull gcr.io/google_containers/kube-proxy-amd64:v1.9.3 -docker pull gcr.io/google_containers/kube-scheduler-amd64:v1.9.3 -docker pull gcr.io/google_containers/kube-controller-manager-amd64:v1.9.3 -docker pull gcr.io/google_containers/k8s-dns-sidecar-amd64:1.14.7 -docker pull gcr.io/google_containers/k8s-dns-kube-dns-amd64:1.14.7 -docker pull gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64:1.14.7 -docker pull gcr.io/google_containers/etcd-amd64:3.1.10 -docker pull gcr.io/google_containers/pause-amd64:3.0 - -# kubernetes networks add ons -docker pull quay.io/coreos/flannel:v0.9.1-amd64 -docker pull quay.io/calico/node:v3.0.3 -docker pull quay.io/calico/kube-controllers:v2.0.1 -docker pull quay.io/calico/cni:v2.0.1 - -# kubernetes dashboard -docker pull gcr.io/google_containers/kubernetes-dashboard-amd64:v1.8.3 - -# kubernetes heapster -docker pull gcr.io/google_containers/heapster-influxdb-amd64:v1.3.3 -docker pull gcr.io/google_containers/heapster-grafana-amd64:v4.4.3 -docker pull gcr.io/google_containers/heapster-amd64:v1.4.2 - -# kubernetes apiserver load balancer -docker pull nginx:latest -``` - ---- - -[category](#category) - -#### system configuration - -* on all kubernetes nodes: add kubernetes' repository - -``` -$ cat < /etc/yum.repos.d/kubernetes.repo -[kubernetes] -name=Kubernetes -baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64 -enabled=1 -gpgcheck=1 -repo_gpgcheck=1 -gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg -EOF -``` - -* on all kubernetes nodes: use yum to update system - -``` -$ yum update -y -``` - -* on all kubernetes nodes: set SELINUX to permissive mode - -``` -$ vi /etc/selinux/config -SELINUX=permissive - -$ setenforce 0 -``` - -* on all kubernetes nodes: set iptables parameters - -``` -$ cat < /etc/sysctl.d/k8s.conf -net.bridge.bridge-nf-call-ip6tables = 1 -net.bridge.bridge-nf-call-iptables = 1 -net.ipv4.ip_forward = 1 -EOF - -sysctl --system -``` - -* on all kubernetes nodes: disable swap - -``` -$ swapoff -a - -# disable swap mount point in /etc/fstab -$ vi /etc/fstab -#/dev/mapper/centos-swap swap swap defaults 0 0 - -# check swap is disabled -$ cat /proc/swaps -Filename Type Size Used Priority -``` - -* on all kubernetes nodes: reboot host - -``` -$ reboot -``` - ---- - -[category](#category) - -### kubernetes installation - -#### firewalld and iptables settings - -- master ports list - -Protocol | Direction | Port | Comment -:--- | :--- | :--- | :--- -TCP | Inbound | 16443* | Load balancer Kubernetes API server port -TCP | Inbound | 6443* | Kubernetes API server -TCP | Inbound | 4001 | etcd listen client port -TCP | Inbound | 2379-2380 | etcd server client API -TCP | Inbound | 10250 | Kubelet API -TCP | Inbound | 10251 | kube-scheduler -TCP | Inbound | 10252 | kube-controller-manager -TCP | Inbound | 10255 | Read-only Kubelet API -TCP | Inbound | 30000-32767 | NodePort Services - -- on all kubernetes master nodes: enable relative ports on firewalld (because all these services are deploy by docker, if your docker version is 17.x, is not necessary to set firewalld by commands below, because docker will set iptables automatically and enable relative ports) - -``` -$ systemctl status firewalld - -$ firewall-cmd --zone=public --add-port=16443/tcp --permanent -$ firewall-cmd --zone=public --add-port=6443/tcp --permanent -$ firewall-cmd --zone=public --add-port=4001/tcp --permanent -$ firewall-cmd --zone=public --add-port=2379-2380/tcp --permanent -$ firewall-cmd --zone=public --add-port=10250/tcp --permanent -$ firewall-cmd --zone=public --add-port=10251/tcp --permanent -$ firewall-cmd --zone=public --add-port=10252/tcp --permanent -$ firewall-cmd --zone=public --add-port=10255/tcp --permanent -$ firewall-cmd --zone=public --add-port=30000-32767/tcp --permanent - -$ firewall-cmd --reload - -$ firewall-cmd --list-all --zone=public -public (active) - target: default - icmp-block-inversion: no - interfaces: ens2f1 ens1f0 nm-bond - sources: - services: ssh dhcpv6-client - ports: 4001/tcp 6443/tcp 2379-2380/tcp 10250/tcp 10251/tcp 10252/tcp 10255/tcp 30000-32767/tcp - protocols: - masquerade: no - forward-ports: - source-ports: - icmp-blocks: - rich rules: -``` - -- worker ports list - -Protocol | Direction | Port | Comment -:--- | :--- | :--- | :--- -TCP | Inbound | 10250 | Kubelet API -TCP | Inbound | 10255 | Read-only Kubelet API -TCP | Inbound | 30000-32767 | NodePort Services** - -- on all kubernetes worker nodes: enable relative ports on firewalld (because all these services are deploy by docker, if your docker version is 17.x, is not necessary to set firewalld by commands below, because docker will set iptables automatically and enable relative ports) - -``` -$ systemctl status firewalld - -$ firewall-cmd --zone=public --add-port=10250/tcp --permanent -$ firewall-cmd --zone=public --add-port=10255/tcp --permanent -$ firewall-cmd --zone=public --add-port=30000-32767/tcp --permanent - -$ firewall-cmd --reload - -$ firewall-cmd --list-all --zone=public -public (active) - target: default - icmp-block-inversion: no - interfaces: ens2f1 ens1f0 nm-bond - sources: - services: ssh dhcpv6-client - ports: 10250/tcp 10255/tcp 30000-32767/tcp - protocols: - masquerade: no - forward-ports: - source-ports: - icmp-blocks: - rich rules: -``` - -* on all kubernetes nodes: set firewalld to enable kube-proxy port forward - -``` -$ firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 1 -i docker0 -j ACCEPT -m comment --comment "kube-proxy redirects" -$ firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 1 -o docker0 -j ACCEPT -m comment --comment "docker subnet" -$ firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 1 -i flannel.1 -j ACCEPT -m comment --comment "flannel subnet" -$ firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 1 -o flannel.1 -j ACCEPT -m comment --comment "flannel subnet" -$ firewall-cmd --reload - -$ firewall-cmd --direct --get-all-rules -ipv4 filter INPUT 1 -i docker0 -j ACCEPT -m comment --comment 'kube-proxy redirects' -ipv4 filter FORWARD 1 -o docker0 -j ACCEPT -m comment --comment 'docker subnet' -ipv4 filter FORWARD 1 -i flannel.1 -j ACCEPT -m comment --comment 'flannel subnet' -ipv4 filter FORWARD 1 -o flannel.1 -j ACCEPT -m comment --comment 'flannel subnet' -``` - -- on all kubernetes nodes: remove this iptables chains, this settings will prevent kube-proxy node port forward. ( Notice: please run this command each time you restart firewalld ) - -``` -iptables -D INPUT -j REJECT --reject-with icmp-host-prohibited -``` - ---- - -[category](#category) - -#### kubernetes and related services installation - -* on all kubernetes nodes: check SELINUX mode, it must be permissive mode - -``` -$ getenforce -Permissive -``` - -* on all kubernetes nodes: install kubernetes and related services, then start up kubelet and docker daemon - -``` -$ yum install -y docker-ce-17.12.0.ce-0.2.rc2.el7.centos.x86_64 -$ yum install -y docker-compose-1.9.0-5.el7.noarch -$ systemctl enable docker && systemctl start docker - -$ yum install -y kubelet-1.9.3-0.x86_64 kubeadm-1.9.3-0.x86_64 kubectl-1.9.3-0.x86_64 -$ systemctl enable kubelet && systemctl start kubelet -``` - -* on all kubernetes nodes: set kubelet KUBELET_CGROUP_ARGS parameter the same as docker daemon's settings, here docker daemon and kubelet use cgroupfs as cgroup-driver. - -``` -# by default kubelet use cgroup-driver=systemd, modify it as cgroup-driver=cgroupfs -$ vi /etc/systemd/system/kubelet.service.d/10-kubeadm.conf -#Environment="KUBELET_CGROUP_ARGS=--cgroup-driver=systemd" -Environment="KUBELET_CGROUP_ARGS=--cgroup-driver=cgroupfs" - -# reload then restart kubelet service -$ systemctl daemon-reload && systemctl restart kubelet -``` - -* on all kubernetes nodes: install and start keepalived service - -``` -$ yum install -y keepalived -$ systemctl enable keepalived && systemctl restart keepalived -``` - ---- - -[category](#category) - -### configuration files settings - -#### script files settings - -* on all kubernetes master nodes: get the source code, and change the working directory to the source code directory - -``` -$ git clone https://github.com/cookeem/kubeadm-ha - -$ cd kubeadm-ha -``` - -* on all kubernetes master nodes: set the `create-config.sh` file, this script will create all configuration files, follow the setting comment and make sure you set the parameters correctly. - -``` -$ vi create-config.sh - -# local machine ip address -export K8SHA_IPLOCAL=192.168.20.27 - -# local machine etcd name, options: etcd1, etcd2, etcd3 -export K8SHA_ETCDNAME=etcd1 - -# local machine keepalived state config, options: MASTER, BACKUP. One keepalived cluster only one MASTER, other's are BACKUP -export K8SHA_KA_STATE=MASTER - -# local machine keepalived priority config, options: 102, 101, 100. MASTER must 102 -export K8SHA_KA_PRIO=102 - -# local machine keepalived network interface name config, for example: eth0 -export K8SHA_KA_INTF=nm-bond - -####################################### -# all masters settings below must be same -####################################### - -# master keepalived virtual ip address -export K8SHA_IPVIRTUAL=192.168.20.10 - -# master01 ip address -export K8SHA_IP1=192.168.20.27 - -# master02 ip address -export K8SHA_IP2=192.168.20.28 - -# master03 ip address -export K8SHA_IP3=192.168.20.29 - -# master01 hostname -export K8SHA_HOSTNAME1=devops-master01 - -# master02 hostname -export K8SHA_HOSTNAME2=devops-master02 - -# master03 hostname -export K8SHA_HOSTNAME3=devops-master03 - -# keepalived auth_pass config, all masters must be same -export K8SHA_KA_AUTH=4cdf7dc3b4c90194d1600c483e10ad1d - -# kubernetes cluster token, you can use 'kubeadm token generate' to get a new one -export K8SHA_TOKEN=7f276c.0741d82a5337f526 - -# kubernetes CIDR pod subnet, if CIDR pod subnet is "10.244.0.0/16" please set to "10.244.0.0\\/16" -export K8SHA_CIDR=10.244.0.0\\/16 - -# kubernetes CIDR service subnet, if CIDR service subnet is "10.96.0.0/12" please set to "10.96.0.0\\/12" -export K8SHA_SVC_CIDR=10.96.0.0\\/12 - -# calico network settings, set a reachable ip address for the cluster network interface, for example you can use the gateway ip address -export K8SHA_CALICO_REACHABLE_IP=192.168.20.1 -``` - -* on all kubernetes master nodes: run the `create-config.sh` script file and create related configuration files: - -> etcd cluster docker-compose.yaml file - -> keepalived configuration file - -> nginx load balancer docker-compose.yaml file - -> kubeadm init configuration file - -> canal configuration file - -``` -$ ./create-config.sh -set etcd cluster docker-compose.yaml file success: etcd/docker-compose.yaml -set keepalived config file success: /etc/keepalived/keepalived.conf -set nginx load balancer config file success: nginx-lb/nginx-lb.conf -set kubeadm init config file success: kubeadm-init.yaml -set canal deployment config file success: kube-canal/canal.yaml -``` - ---- - -[category](#category) - -#### deploy independent etcd cluster - -* on all kubernetes master nodes: deploy independent etcd cluster (non-TLS mode) - -``` -# reset kubernetes cluster -$ kubeadm reset - -# clear etcd cluster data -$ rm -rf /var/lib/etcd-cluster - -# reset and start etcd cluster -$ docker-compose --file etcd/docker-compose.yaml stop -$ docker-compose --file etcd/docker-compose.yaml rm -f -$ docker-compose --file etcd/docker-compose.yaml up -d - -# check etcd cluster status -$ docker exec -ti etcd etcdctl cluster-health -member 531504c79088f553 is healthy: got healthy result from http://192.168.20.29:2379 -member 56c53113d5e1cfa3 is healthy: got healthy result from http://192.168.20.27:2379 -member 7026e604579e4d64 is healthy: got healthy result from http://192.168.20.28:2379 -cluster is healthy - -$ docker exec -ti etcd etcdctl member list -531504c79088f553: name=etcd3 peerURLs=http://192.168.20.29:2380 clientURLs=http://192.168.20.29:2379,http://192.168.20.29:4001 isLeader=false -56c53113d5e1cfa3: name=etcd1 peerURLs=http://192.168.20.27:2380 clientURLs=http://192.168.20.27:2379,http://192.168.20.27:4001 isLeader=false -7026e604579e4d64: name=etcd2 peerURLs=http://192.168.20.28:2380 clientURLs=http://192.168.20.28:2379,http://192.168.20.28:4001 isLeader=true -``` - ---- - -[category](#category) - -### use kubeadm to init first master - -#### kubeadm init - -* on all kubernetes master nodes: reset cni and docker network - -``` -$ systemctl stop kubelet -$ systemctl stop docker -$ rm -rf /var/lib/cni/ -$ rm -rf /var/lib/kubelet/* -$ rm -rf /etc/cni/ - -$ ip a | grep -E 'docker|flannel|cni' -$ ip link del docker0 -$ ip link del flannel.1 -$ ip link del cni0 - -$ systemctl restart docker && systemctl restart kubelet -$ ip a | grep -E 'docker|flannel|cni' -``` - -* on devops-master01: use kubeadm to init a kubernetes cluster, notice: you must save the following message: kubeadm join --token XXX --discovery-token-ca-cert-hash YYY , this command will use lately. - -``` -$ kubeadm init --config=kubeadm-init.yaml -... - kubeadm join --token 7f276c.0741d82a5337f526 192.168.20.27:6443 --discovery-token-ca-cert-hash sha256:a4a1eaf725a0fc67c3028b3063b92e6af7f2eb0f4ae028f12b3415a6fd2d2a5e -``` - -* on all kubernetes master nodes: set kubectl client environment variable - -``` -$ vi ~/.bashrc -export KUBECONFIG=/etc/kubernetes/admin.conf - -$ source ~/.bashrc -``` - -#### basic components installation - -* on devops-master01: install flannel network add-ons - -``` -# master may not work if no network add-ons -$ kubectl get node -NAME STATUS ROLES AGE VERSION -devops-master01 NotReady master 14s v1.9.3 - -# install canal add-ons -$ kubectl apply -f kube-canal/ -configmap "canal-config" created -daemonset "canal" created -customresourcedefinition "felixconfigurations.crd.projectcalico.org" created -customresourcedefinition "bgpconfigurations.crd.projectcalico.org" created -customresourcedefinition "ippools.crd.projectcalico.org" created -customresourcedefinition "clusterinformations.crd.projectcalico.org" created -customresourcedefinition "globalnetworkpolicies.crd.projectcalico.org" created -customresourcedefinition "networkpolicies.crd.projectcalico.org" created -serviceaccount "canal" created -clusterrole "calico" created -clusterrole "flannel" created -clusterrolebinding "canal-flannel" created -clusterrolebinding "canal-calico" created - -# waiting for all pods to be normal status -$ kubectl get pods --all-namespaces -o wide -NAMESPACE NAME READY STATUS RESTARTS AGE IP NODE -kube-system canal-hpn82 3/3 Running 0 1m 192.168.20.27 devops-master01 -kube-system kube-apiserver-devops-master01 1/1 Running 0 1m 192.168.20.27 devops-master01 -kube-system kube-controller-manager-devops-master01 1/1 Running 0 50s 192.168.20.27 devops-master01 -kube-system kube-dns-6f4fd4bdf-vwbk8 3/3 Running 0 1m 10.244.0.2 devops-master01 -kube-system kube-proxy-mr6l8 1/1 Running 0 1m 192.168.20.27 devops-master01 -kube-system kube-scheduler-devops-master01 1/1 Running 0 57s 192.168.20.27 devops-master01 -``` - -* on devops-master01: install dashboard - -``` -# set master node as schedulable -$ kubectl taint nodes --all node-role.kubernetes.io/master- - -$ kubectl apply -f kube-dashboard/ -serviceaccount "admin-user" created -clusterrolebinding "admin-user" created -secret "kubernetes-dashboard-certs" created -serviceaccount "kubernetes-dashboard" created -role "kubernetes-dashboard-minimal" created -rolebinding "kubernetes-dashboard-minimal" created -deployment "kubernetes-dashboard" created -service "kubernetes-dashboard" created -``` - -* use browser to access dashboard - -> https://devops-master01:30000/#!/login - -* dashboard login interface - -![dashboard-login](images/dashboard-login.png) - -* use command below to get token, copy and paste the token on login interface - -``` -$ kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep admin-user | awk '{print $1}') -``` - -![dashboard](images/dashboard.png) - -* on devops-master01: install heapster - -``` -$ kubectl apply -f kube-heapster/influxdb/ -service "monitoring-grafana" created -serviceaccount "heapster" created -deployment "heapster" created -service "heapster" created -deployment "monitoring-influxdb" created -service "monitoring-influxdb" created - -$ kubectl apply -f kube-heapster/rbac/ -clusterrolebinding "heapster" created - -$ kubectl get pods --all-namespaces -NAMESPACE NAME READY STATUS RESTARTS AGE -kube-system canal-hpn82 3/3 Running 0 6m -kube-system heapster-65c5499476-gg2tk 1/1 Running 0 2m -kube-system kube-apiserver-devops-master01 1/1 Running 0 6m -kube-system kube-controller-manager-devops-master01 1/1 Running 0 5m -kube-system kube-dns-6f4fd4bdf-vwbk8 3/3 Running 0 6m -kube-system kube-proxy-mr6l8 1/1 Running 0 6m -kube-system kube-scheduler-devops-master01 1/1 Running 0 6m -kube-system kubernetes-dashboard-7c7bfdd855-2slp2 1/1 Running 0 4m -kube-system monitoring-grafana-6774f65b56-mwdjv 1/1 Running 0 2m -kube-system monitoring-influxdb-59d57d4d58-xmrxk 1/1 Running 0 2m - - -# wait for 5 minutes -$ kubectl top nodes -NAME CPU(cores) CPU% MEMORY(bytes) MEMORY% -devops-master01 242m 0% 1690Mi 0% -``` - -* heapster performance info will show on dashboard - -> https://devops-master01:30000/#!/login - -![heapster-dashboard](images/heapster-dashboard.png) - -![heapster](images/heapster.png) - -* now canal, dashboard, heapster had installed on the first master node - ---- - -[category](#category) - -### kubernetes masters high avialiability configuration - -#### copy configuration files - -* on devops-master01: copy `category/etc/kubernetes/pki` to devops-master02 and devops-master03 - -``` -scp -r /etc/kubernetes/pki devops-master02:/etc/kubernetes/ - -scp -r /etc/kubernetes/pki devops-master03:/etc/kubernetes/ -``` - ---- -[category](#category) - -#### other master nodes init - -* on devops-master02: use kubeadm to init master cluster, make sure pod kube-apiserver-{current-node-name} is in running status - -``` -# you will found that output token and discovery-token-ca-cert-hash are the same with devops-master01 -$ kubeadm init --config=kubeadm-init.yaml -... - kubeadm join --token 7f276c.0741d82a5337f526 192.168.20.28:6443 --discovery-token-ca-cert-hash sha256:a4a1eaf725a0fc67c3028b3063b92e6af7f2eb0f4ae028f12b3415a6fd2d2a5e -``` - -* on devops-master03: use kubeadm to init master cluster, make sure pod kube-apiserver-{current-node-name} is in running status - -``` -# you will found that output token and discovery-token-ca-cert-hash are the same with devops-master01 -$ kubeadm init --config=kubeadm-init.yaml -... - kubeadm join --token 7f276c.0741d82a5337f526 192.168.20.29:6443 --discovery-token-ca-cert-hash sha256:a4a1eaf725a0fc67c3028b3063b92e6af7f2eb0f4ae028f12b3415a6fd2d2a5e -``` - -* on any kubernetes master nodes: check nodes status - -``` -$ kubectl get nodes -NAME STATUS ROLES AGE VERSION -devops-master01 Ready master 19m v1.9.3 -devops-master02 Ready master 4m v1.9.3 -devops-master03 Ready master 4m v1.9.3 -``` - -* on any kubernetes master nodes: check all pod status - -``` -$ kubectl get pods --all-namespaces -o wide -NAMESPACE NAME READY STATUS RESTARTS AGE IP NODE -kube-system canal-cw8tw 3/3 Running 4 3m 192.168.20.29 devops-master03 -kube-system canal-d54hs 3/3 Running 3 5m 192.168.20.28 devops-master02 -kube-system canal-hpn82 3/3 Running 5 17m 192.168.20.27 devops-master01 -kube-system heapster-65c5499476-zwgnh 1/1 Running 1 8m 10.244.0.7 devops-master01 -kube-system kube-apiserver-devops-master01 1/1 Running 1 2m 192.168.20.27 devops-master01 -kube-system kube-apiserver-devops-master02 1/1 Running 0 11s 192.168.20.28 devops-master02 -kube-system kube-apiserver-devops-master03 1/1 Running 0 12s 192.168.20.29 devops-master03 -kube-system kube-controller-manager-devops-master01 1/1 Running 1 16m 192.168.20.27 devops-master01 -kube-system kube-controller-manager-devops-master02 1/1 Running 1 3m 192.168.20.28 devops-master02 -kube-system kube-controller-manager-devops-master03 1/1 Running 1 2m 192.168.20.29 devops-master03 -kube-system kube-dns-6f4fd4bdf-vwbk8 3/3 Running 3 17m 10.244.0.2 devops-master01 -kube-system kube-proxy-59pwn 1/1 Running 1 5m 192.168.20.28 devops-master02 -kube-system kube-proxy-jxt5s 1/1 Running 1 3m 192.168.20.29 devops-master03 -kube-system kube-proxy-mr6l8 1/1 Running 1 17m 192.168.20.27 devops-master01 -kube-system kube-scheduler-devops-master01 1/1 Running 1 16m 192.168.20.27 devops-master01 -kube-system kube-scheduler-devops-master02 1/1 Running 1 3m 192.168.20.28 devops-master02 -kube-system kube-scheduler-devops-master03 1/1 Running 1 2m 192.168.20.29 devops-master03 -kube-system kubernetes-dashboard-7c7bfdd855-2slp2 1/1 Running 1 15m 10.244.0.3 devops-master01 -kube-system monitoring-grafana-6774f65b56-mwdjv 1/1 Running 1 13m 10.244.0.4 devops-master01 -kube-system monitoring-influxdb-59d57d4d58-xmrxk 1/1 Running 1 13m 10.244.0.6 devops-master01 -``` - -* on any kubernetes master nodes: set all master nodes scheduable - -``` -$ kubectl taint nodes --all node-role.kubernetes.io/master- -node "devops-master02" untainted -node "devops-master03" untainted -``` - -* on any kubernetes master nodes: scale the kube-system deployment to all master nodes - -``` -$ kubectl get deploy -n kube-system -NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE -heapster 1 1 1 1 3d -kube-dns 2 2 2 2 4d -kubernetes-dashboard 1 1 1 1 3d -monitoring-grafana 1 1 1 1 3d -monitoring-influxdb 1 1 1 1 3d - -# dns scale to all master nodes -$ kubectl scale --replicas=2 -n kube-system deployment/kube-dns -$ kubectl get pods --all-namespaces -o wide| grep kube-dns -``` - ---- - -[category](#category) - -#### keepalived installation - -* on all kubernetes master nodes: install keepalived service - -``` -$ systemctl restart keepalived - -$ ping 192.168.20.10 -``` - ---- - -[category](#category) - -#### nginx load balancer configuration - -* on all kubernetes master nodes: install nginx load balancer - -``` -$ docker-compose -f nginx-lb/docker-compose.yaml up -d -``` - -* on all kubernetes master nodes: check nginx load balancer and keepalived - -``` -curl -k https://192.168.20.10:16443 -{ - "kind": "Status", - "apiVersion": "v1", - "metadata": { - - }, - "status": "Failure", - "message": "forbidden: User \"system:anonymous\" cannot get path \"/\"", - "reason": "Forbidden", - "details": { - - }, - "code": 403 -} -``` - ---- - -[category](#category) - -#### kube-proxy configuration - -- on any kubernetes master nodes: set kube-proxy server settings, make sure this settings use the keepalived virtual IP and nginx load balancer port (here is: https://192.168.20.10:16443) - -``` -$ kubectl edit -n kube-system configmap/kube-proxy - server: https://192.168.20.10:16443 -``` - -- on any kubernetes master nodes: delete all kube-proxy pod to restart it - -``` -$ kubectl get pods --all-namespaces -o wide | grep proxy - -$ kubectl delete pod -n kube-system kube-proxy-XXX -``` - ---- - -[category](#category) - -### all nodes join the kubernetes cluster - -#### use kubeadm to join the cluster - -- on all kubernetes worker nodes: use kubeadm to join the cluster, here we use the devops-master01 apiserver address and port. - -``` -$ kubeadm join --token 7f276c.0741d82a5337f526 192.168.20.27:6443 --discovery-token-ca-cert-hash sha256:a4a1eaf725a0fc67c3028b3063b92e6af7f2eb0f4ae028f12b3415a6fd2d2a5e -``` - -- on all kubernetes worker nodes: set the `/etc/kubernetes/bootstrap-kubelet.conf` server settings, make sure this settings use the keepalived virtual IP and nginx load balancer port (here is: https://192.168.20.10:16443) - -``` -$ sed -i "s/192.168.20.27:6443/192.168.20.10:16443/g" /etc/kubernetes/bootstrap-kubelet.conf -$ sed -i "s/192.168.20.28:6443/192.168.20.10:16443/g" /etc/kubernetes/bootstrap-kubelet.conf -$ sed -i "s/192.168.20.29:6443/192.168.20.10:16443/g" /etc/kubernetes/bootstrap-kubelet.conf - -$ sed -i "s/192.168.20.27:6443/192.168.20.10:16443/g" /etc/kubernetes/kubelet.conf -$ sed -i "s/192.168.20.28:6443/192.168.20.10:16443/g" /etc/kubernetes/kubelet.conf -$ sed -i "s/192.168.20.29:6443/192.168.20.10:16443/g" /etc/kubernetes/kubelet.conf - -$ grep 192.168.20 /etc/kubernetes/*.conf -/etc/kubernetes/bootstrap-kubelet.conf: server: https://192.168.20.10:16443 -/etc/kubernetes/kubelet.conf: server: https://192.168.20.10:16443 - -$ systemctl restart docker kubelet -``` - - -``` -kubectl get nodes -NAME STATUS ROLES AGE VERSION -devops-master01 Ready master 46m v1.9.3 -devops-master02 Ready master 44m v1.9.3 -devops-master03 Ready master 44m v1.9.3 -devops-node01 Ready 50s v1.9.3 -devops-node02 Ready 26s v1.9.3 -devops-node03 Ready 22s v1.9.3 -devops-node04 Ready 17s v1.9.3 -``` - -- on any kubernetes master nodes: set the worker nodes labels - -``` -kubectl label nodes devops-node01 role=worker -kubectl label nodes devops-node02 role=worker -kubectl label nodes devops-node03 role=worker -kubectl label nodes devops-node04 role=worker -``` - -#### verify kubernetes cluster high availiablity - -- NodePort testing - -``` -# create a nginx deployment, replicas=3 -$ kubectl run nginx --image=nginx --replicas=3 --port=80 -deployment "nginx" created - -# check nginx pod status -$ kubectl get pods -l=run=nginx -o wide -NAME READY STATUS RESTARTS AGE IP NODE -nginx-6c7c8978f5-558kd 1/1 Running 0 9m 10.244.77.217 devops-node03 -nginx-6c7c8978f5-ft2z5 1/1 Running 0 9m 10.244.172.67 devops-master01 -nginx-6c7c8978f5-jr29b 1/1 Running 0 9m 10.244.85.165 devops-node04 - -# create nginx NodePort service -$ kubectl expose deployment nginx --type=NodePort --port=80 -service "nginx" exposed - -# check nginx service status -$ kubectl get svc -l=run=nginx -o wide -NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE SELECTOR -nginx NodePort 10.101.144.192 80:30847/TCP 10m run=nginx - -# check nginx NodePort service accessibility -$ curl devops-master01:30847 - - - -Welcome to nginx! - - - -

Welcome to nginx!

-

If you see this page, the nginx web server is successfully installed and -working. Further configuration is required.

- -

For online documentation and support please refer to -nginx.org.
-Commercial support is available at -nginx.com.

- -

Thank you for using nginx.

- - -``` - -- pods connectivity testing - -``` -$ kubectl run nginx-server --image=nginx --port=80 -$ kubectl expose deployment nginx-server --port=80 -$ kubectl get pods -o wide -l=run=nginx-server -NAME READY STATUS RESTARTS AGE IP NODE -nginx-server-6d64689779-lfcxc 1/1 Running 0 2m 10.244.5.7 devops-node03 - -$ kubectl run nginx-client -ti --rm --image=alpine -- ash -/ # wget nginx-server -Connecting to nginx-server (10.102.101.78:80) -index.html 100% |*****************************************| 612 0:00:00 ETA -/ # cat index.html - - - -Welcome to nginx! - - - -

Welcome to nginx!

-

If you see this page, the nginx web server is successfully installed and -working. Further configuration is required.

- -

For online documentation and support please refer to -nginx.org.
-Commercial support is available at -nginx.com.

- -

Thank you for using nginx.

- - - - -$ kubectl delete deploy,svc nginx-server -``` - -- now kubernetes high availiability cluster setup successfully 😃 diff --git a/v1.9/README_CN.md b/v1.9/README_CN.md deleted file mode 100644 index 442e142..0000000 --- a/v1.9/README_CN.md +++ /dev/null @@ -1,1036 +0,0 @@ -# kubeadm-highavailiability - 基于kubeadm的kubernetes高可用集群部署,支持v1.11.x v1.9.x v1.7.x v1.6.x版本 - -![k8s logo](../images/Kubernetes.png) - -- [中文文档(for v1.11.x版本)](../README_CN.md) -- [English document(for v1.11.x version)](../README.md) -- [中文文档(for v1.9.x版本)](../v1.9/README_CN.md) -- [English document(for v1.9.x version)](../v1.9/README.md) -- [中文文档(for v1.7.x版本)](../v1.7/README_CN.md) -- [English document(for v1.7.x version)](../v1.7/README.md) -- [中文文档(for v1.6.x版本)](../v1.6/README_CN.md) -- [English document(for v1.6.x version)](../v1.6/README.md) - ---- - -- [GitHub项目地址](https://github.com/cookeem/kubeadm-ha/) -- [OSChina项目地址](https://git.oschina.net/cookeem/kubeadm-ha/) - ---- - -- 该指引适用于v1.9.x版本的kubernetes集群 - -> v1.9.0以前的版本kubeadm还不支持高可用部署,因此不推荐作为生产环境的部署方式。从v1.9.x版本开始,kubeadm官方正式支持高可用集群的部署,安装kubeadm务必保证版本至少为1.9.0。 - -### 目录 - -1. [部署架构](#部署架构) - 1. [概要部署架构](#概要部署架构) - 1. [详细部署架构](#详细部署架构) - 1. [主机节点清单](#主机节点清单) -1. [安装前准备](#安装前准备) - 1. [版本信息](#版本信息) - 1. [所需docker镜像](#所需docker镜像) - 1. [系统设置](#系统设置) -1. [kubernetes安装](#kubernetes安装) - 1. [firewalld和iptables相关端口设置](#firewalld和iptables相关端口设置) - 1. [kubernetes相关服务安装](#kubernetes相关服务安装) -1. [配置文件初始化](#配置文件初始化) - 1. [初始化脚本配置](#初始化脚本配置) - 1. [独立etcd集群部署](#独立etcd集群部署) -1. [第一台master初始化](#第一台master初始化) - 1. [kubeadm初始化](#kubeadm初始化) - 1. [安装基础组件](#安装基础组件) -1. [master集群高可用设置](#master集群高可用设置) - 1. [复制配置](#复制配置) - 1. [其余master节点初始化](#其余master节点初始化) - 1. [keepalived安装配置](#keepalived安装配置) - 1. [nginx负载均衡配置](#nginx负载均衡配置) - 1. [kube-proxy配置](#kube-proxy配置) -1. [node节点加入高可用集群设置](#node节点加入高可用集群设置) - 1. [kubeadm加入高可用集群](#kubeadm加入高可用集群) - 1. [验证集群高可用设置](#验证集群高可用设置) - - - -### 部署架构 - -#### 概要部署架构 - -![ha logo](../images/ha.png) - -* kubernetes高可用的核心架构是master的高可用,kubectl、客户端以及nodes访问load balancer实现高可用。 - ---- -[返回目录](#目录) - -#### 详细部署架构 - -![k8s ha](../images/k8s-ha.png) - -* kubernetes组件说明 - -> kube-apiserver:集群核心,集群API接口、集群各个组件通信的中枢;集群安全控制; - -> etcd:集群的数据中心,用于存放集群的配置以及状态信息,非常重要,如果数据丢失那么集群将无法恢复;因此高可用集群部署首先就是etcd是高可用集群; - -> kube-scheduler:集群Pod的调度中心;默认kubeadm安装情况下--leader-elect参数已经设置为true,保证master集群中只有一个kube-scheduler处于活跃状态; - -> kube-controller-manager:集群状态管理器,当集群状态与期望不同时,kcm会努力让集群恢复期望状态,比如:当一个pod死掉,kcm会努力新建一个pod来恢复对应replicas set期望的状态;默认kubeadm安装情况下--leader-elect参数已经设置为true,保证master集群中只有一个kube-controller-manager处于活跃状态; - -> kubelet: kubernetes node agent,负责与node上的docker engine打交道; - -> kube-proxy: 每个node上一个,负责service vip到endpoint pod的流量转发,当前主要通过设置iptables规则实现。 - -* 负载均衡 - -> keepalived集群设置一个虚拟ip地址,虚拟ip地址指向devops-master01、devops-master02、devops-master03。 - -> nginx用于devops-master01、devops-master02、devops-master03的apiserver的负载均衡。外部kubectl以及nodes访问apiserver的时候就可以用过keepalived的虚拟ip(192.168.20.10)以及nginx端口(16443)访问master集群的apiserver。 - ---- - -[返回目录](#目录) - -#### 主机节点清单 - -主机名 | IP地址 | 说明 | 组件 -:--- | :--- | :--- | :--- -devops-master01 ~ 03 | 192.168.20.27 ~ 29 | master节点 * 3 | keepalived、nginx、etcd、kubelet、kube-apiserver、kube-scheduler、kube-proxy、kube-dashboard、heapster、calico -无 | 192.168.20.10 | keepalived虚拟IP | 无 -devops-node01 ~ 04 | 192.168.20.17 ~ 20 | node节点 * 4 | kubelet、kube-proxy - ---- - -[返回目录](#目录) - -### 安装前准备 - -#### 版本信息 - -* Linux版本:CentOS 7.4.1708 -* 内核版本: 4.6.4-1.el7.elrepo.x86_64 - - -``` -$ cat /etc/redhat-release -CentOS Linux release 7.4.1708 (Core) - -$ uname -r -4.6.4-1.el7.elrepo.x86_64 -``` - -* docker版本:17.12.0-ce-rc2 - -``` -$ docker version -Client: - Version: 17.12.0-ce-rc2 - API version: 1.35 - Go version: go1.9.2 - Git commit: f9cde63 - Built: Tue Dec 12 06:42:20 2017 - OS/Arch: linux/amd64 - -Server: - Engine: - Version: 17.12.0-ce-rc2 - API version: 1.35 (minimum version 1.12) - Go version: go1.9.2 - Git commit: f9cde63 - Built: Tue Dec 12 06:44:50 2017 - OS/Arch: linux/amd64 - Experimental: false -``` - -* kubeadm版本:v1.9.3 - -``` -$ kubeadm version -kubeadm version: &version.Info{Major:"1", Minor:"9", GitVersion:"v1.9.3", GitCommit:"d2835416544f298c919e2ead3be3d0864b52323b", GitTreeState:"clean", BuildDate:"2018-02-07T11:55:20Z", GoVersion:"go1.9.2", Compiler:"gc", Platform:"linux/amd64"} -``` - -* kubelet版本:v1.9.3 - -``` -$ kubelet --version -Kubernetes v1.9.3 -``` - -* 网络组件 - -> canal (flannel + calico) - ---- - -[返回目录](#目录) - -#### 所需docker镜像 - -* 相关docker镜像以及版本 - -``` -# kuberentes basic components -docker pull gcr.io/google_containers/kube-apiserver-amd64:v1.9.3 -docker pull gcr.io/google_containers/kube-proxy-amd64:v1.9.3 -docker pull gcr.io/google_containers/kube-scheduler-amd64:v1.9.3 -docker pull gcr.io/google_containers/kube-controller-manager-amd64:v1.9.3 -docker pull gcr.io/google_containers/k8s-dns-sidecar-amd64:1.14.7 -docker pull gcr.io/google_containers/k8s-dns-kube-dns-amd64:1.14.7 -docker pull gcr.io/google_containers/k8s-dns-dnsmasq-nanny-amd64:1.14.7 -docker pull gcr.io/google_containers/etcd-amd64:3.1.10 -docker pull gcr.io/google_containers/pause-amd64:3.0 - -# kubernetes networks add ons -docker pull quay.io/coreos/flannel:v0.9.1-amd64 -docker pull quay.io/calico/node:v3.0.3 -docker pull quay.io/calico/kube-controllers:v2.0.1 -docker pull quay.io/calico/cni:v2.0.1 - -# kubernetes dashboard -docker pull gcr.io/google_containers/kubernetes-dashboard-amd64:v1.8.3 - -# kubernetes heapster -docker pull gcr.io/google_containers/heapster-influxdb-amd64:v1.3.3 -docker pull gcr.io/google_containers/heapster-grafana-amd64:v4.4.3 -docker pull gcr.io/google_containers/heapster-amd64:v1.4.2 - -# kubernetes apiserver load balancer -docker pull nginx:latest -``` - ---- - -[返回目录](#目录) - -#### 系统设置 - -* 在所有kubernetes节点上增加kubernetes仓库 - -``` -$ cat < /etc/yum.repos.d/kubernetes.repo -[kubernetes] -name=Kubernetes -baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64 -enabled=1 -gpgcheck=1 -repo_gpgcheck=1 -gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg -EOF -``` - -* 在所有kubernetes节点上进行系统更新 - -``` -$ yum update -y -``` - -* 在所有kubernetes节点上设置SELINUX为permissive模式 - -``` -$ vi /etc/selinux/config -SELINUX=permissive - -$ setenforce 0 -``` - -* 在所有kubernetes节点上设置iptables参数,否则kubeadm init会提示错误 - -``` -$ cat < /etc/sysctl.d/k8s.conf -net.bridge.bridge-nf-call-ip6tables = 1 -net.bridge.bridge-nf-call-iptables = 1 -net.ipv4.ip_forward = 1 -EOF - -sysctl --system -``` - -* 在所有kubernetes节点上禁用swap - -``` -$ swapoff -a - -# 禁用fstab中的swap项目 -$ vi /etc/fstab -#/dev/mapper/centos-swap swap swap defaults 0 0 - -# 确认swap已经被禁用 -$ cat /proc/swaps -Filename Type Size Used Priority -``` - -* 在所有kubernetes节点上重启主机 - -``` -$ reboot -``` - ---- - -[返回目录](#目录) - -### kubernetes安装 - -#### firewalld和iptables相关端口设置 - -- 相关端口(master) - -协议 | 方向 | 端口 | 说明 -:--- | :--- | :--- | :--- -TCP | Inbound | 16443* | Load balancer Kubernetes API server port -TCP | Inbound | 6443* | Kubernetes API server -TCP | Inbound | 4001 | etcd listen client port -TCP | Inbound | 2379-2380 | etcd server client API -TCP | Inbound | 10250 | Kubelet API -TCP | Inbound | 10251 | kube-scheduler -TCP | Inbound | 10252 | kube-controller-manager -TCP | Inbound | 10255 | Read-only Kubelet API -TCP | Inbound | 30000-32767 | NodePort Services - -- 在所有master节点上开放相关firewalld端口(因为以上服务基于docker部署,如果docker版本为17.x,可以不进行以下设置,因为docker会自动修改iptables添加相关端口) - -``` -$ systemctl status firewalld - -$ firewall-cmd --zone=public --add-port=16443/tcp --permanent -$ firewall-cmd --zone=public --add-port=6443/tcp --permanent -$ firewall-cmd --zone=public --add-port=4001/tcp --permanent -$ firewall-cmd --zone=public --add-port=2379-2380/tcp --permanent -$ firewall-cmd --zone=public --add-port=10250/tcp --permanent -$ firewall-cmd --zone=public --add-port=10251/tcp --permanent -$ firewall-cmd --zone=public --add-port=10252/tcp --permanent -$ firewall-cmd --zone=public --add-port=10255/tcp --permanent -$ firewall-cmd --zone=public --add-port=30000-32767/tcp --permanent - -$ firewall-cmd --reload - -$ firewall-cmd --list-all --zone=public -public (active) - target: default - icmp-block-inversion: no - interfaces: ens2f1 ens1f0 nm-bond - sources: - services: ssh dhcpv6-client - ports: 4001/tcp 6443/tcp 2379-2380/tcp 10250/tcp 10251/tcp 10252/tcp 10255/tcp 30000-32767/tcp - protocols: - masquerade: no - forward-ports: - source-ports: - icmp-blocks: - rich rules: -``` - -- 相关端口(worker) - -协议 | 方向 | 端口 | 说明 -:--- | :--- | :--- | :--- -TCP | Inbound | 10250 | Kubelet API -TCP | Inbound | 10255 | Read-only Kubelet API -TCP | Inbound | 30000-32767 | NodePort Services - -- 在所有worker节点上开放相关firewalld端口(因为以上服务基于docker部署,如果docker版本为17.x,可以不进行以下设置,因为docker会自动修改iptables添加相关端口) - -``` -$ systemctl status firewalld - -$ firewall-cmd --zone=public --add-port=10250/tcp --permanent -$ firewall-cmd --zone=public --add-port=10255/tcp --permanent -$ firewall-cmd --zone=public --add-port=30000-32767/tcp --permanent - -$ firewall-cmd --reload - -$ firewall-cmd --list-all --zone=public -public (active) - target: default - icmp-block-inversion: no - interfaces: ens2f1 ens1f0 nm-bond - sources: - services: ssh dhcpv6-client - ports: 10250/tcp 10255/tcp 30000-32767/tcp - protocols: - masquerade: no - forward-ports: - source-ports: - icmp-blocks: - rich rules: -``` - -* 在所有kubernetes节点上允许kube-proxy的forward - -``` -$ firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 1 -i docker0 -j ACCEPT -m comment --comment "kube-proxy redirects" -$ firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 1 -o docker0 -j ACCEPT -m comment --comment "docker subnet" -$ firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 1 -i flannel.1 -j ACCEPT -m comment --comment "flannel subnet" -$ firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 1 -o flannel.1 -j ACCEPT -m comment --comment "flannel subnet" -$ firewall-cmd --reload - -$ firewall-cmd --direct --get-all-rules -ipv4 filter INPUT 1 -i docker0 -j ACCEPT -m comment --comment 'kube-proxy redirects' -ipv4 filter FORWARD 1 -o docker0 -j ACCEPT -m comment --comment 'docker subnet' -ipv4 filter FORWARD 1 -i flannel.1 -j ACCEPT -m comment --comment 'flannel subnet' -ipv4 filter FORWARD 1 -o flannel.1 -j ACCEPT -m comment --comment 'flannel subnet' -``` - -- 在所有kubernetes节点上,删除iptables的设置,解决kube-proxy无法启用nodePort。(注意:每次重启firewalld必须执行以下命令) - -``` -iptables -D INPUT -j REJECT --reject-with icmp-host-prohibited -``` - ---- - -[返回目录](#目录) - -#### kubernetes相关服务安装 - -* 在所有kubernetes节点上验证SELINUX模式,必须保证SELINUX为permissive模式,否则kubernetes启动会出现各种异常 - -``` -$ getenforce -Permissive -``` - -* 在所有kubernetes节点上安装并启动kubernetes - -``` -$ yum install -y docker-ce-17.12.0.ce-0.2.rc2.el7.centos.x86_64 -$ yum install -y docker-compose-1.9.0-5.el7.noarch -$ systemctl enable docker && systemctl start docker - -$ yum install -y kubelet-1.9.3-0.x86_64 kubeadm-1.9.3-0.x86_64 kubectl-1.9.3-0.x86_64 -$ systemctl enable kubelet && systemctl start kubelet -``` - -* 在所有kubernetes节点上设置kubelet使用cgroupfs,与dockerd保持一致,否则kubelet会启动报错 - -``` -# 默认kubelet使用的cgroup-driver=systemd,改为cgroup-driver=cgroupfs -$ vi /etc/systemd/system/kubelet.service.d/10-kubeadm.conf -#Environment="KUBELET_CGROUP_ARGS=--cgroup-driver=systemd" -Environment="KUBELET_CGROUP_ARGS=--cgroup-driver=cgroupfs" - -# 重设kubelet服务,并重启kubelet服务 -$ systemctl daemon-reload && systemctl restart kubelet -``` - -* 在所有master节点上安装并启动keepalived - -``` -$ yum install -y keepalived -$ systemctl enable keepalived && systemctl restart keepalived -``` - ---- - -[返回目录](#目录) - -### 配置文件初始化 - -#### 初始化脚本配置 - -* 在所有master节点上获取代码,并进入代码目录 - -``` -$ git clone https://github.com/cookeem/kubeadm-ha - -$ cd kubeadm-ha -``` - -* 在所有master节点上设置初始化脚本配置,每一项配置参见脚本中的配置说明,请务必正确配置。该脚本用于生成相关重要的配置文件 - -``` -$ vi create-config.sh - -# local machine ip address -export K8SHA_IPLOCAL=192.168.20.27 - -# local machine etcd name, options: etcd1, etcd2, etcd3 -export K8SHA_ETCDNAME=etcd1 - -# local machine keepalived state config, options: MASTER, BACKUP. One keepalived cluster only one MASTER, other's are BACKUP -export K8SHA_KA_STATE=MASTER - -# local machine keepalived priority config, options: 102, 101, 100. MASTER must 102 -export K8SHA_KA_PRIO=102 - -# local machine keepalived network interface name config, for example: eth0 -export K8SHA_KA_INTF=nm-bond - -####################################### -# all masters settings below must be same -####################################### - -# master keepalived virtual ip address -export K8SHA_IPVIRTUAL=192.168.20.10 - -# master01 ip address -export K8SHA_IP1=192.168.20.27 - -# master02 ip address -export K8SHA_IP2=192.168.20.28 - -# master03 ip address -export K8SHA_IP3=192.168.20.29 - -# master01 hostname -export K8SHA_HOSTNAME1=devops-master01 - -# master02 hostname -export K8SHA_HOSTNAME2=devops-master02 - -# master03 hostname -export K8SHA_HOSTNAME3=devops-master03 - -# keepalived auth_pass config, all masters must be same -export K8SHA_KA_AUTH=4cdf7dc3b4c90194d1600c483e10ad1d - -# kubernetes cluster token, you can use 'kubeadm token generate' to get a new one -export K8SHA_TOKEN=7f276c.0741d82a5337f526 - -# kubernetes CIDR pod subnet, if CIDR pod subnet is "10.244.0.0/16" please set to "10.244.0.0\\/16" -export K8SHA_CIDR=10.244.0.0\\/16 - -# kubernetes CIDR service subnet, if CIDR service subnet is "10.96.0.0/12" please set to "10.96.0.0\\/12" -export K8SHA_SVC_CIDR=10.96.0.0\\/12 - -# calico network settings, set a reachable ip address for the cluster network interface, for example you can use the gateway ip address -export K8SHA_CALICO_REACHABLE_IP=192.168.20.1 -``` - -* 在所有master节点上运行配置脚本,创建对应的配置文件,配置文件包括: - -> etcd集群docker-compose.yaml文件 - -> keepalived配置文件 - -> nginx负载均衡集群docker-compose.yaml文件 - -> kubeadm init 配置文件 - -> canal配置文件 - -``` -$ ./create-config.sh -set etcd cluster docker-compose.yaml file success: etcd/docker-compose.yaml -set keepalived config file success: /etc/keepalived/keepalived.conf -set nginx load balancer config file success: nginx-lb/nginx-lb.conf -set kubeadm init config file success: kubeadm-init.yaml -set canal deployment config file success: kube-canal/canal.yaml -``` - ---- - -[返回目录](#目录) - -#### 独立etcd集群部署 - -* 在所有master节点上重置并启动etcd集群(非TLS模式) - -``` -# 重置kubernetes集群 -$ kubeadm reset - -# 清空etcd集群数据 -$ rm -rf /var/lib/etcd-cluster - -# 重置并启动etcd集群 -$ docker-compose --file etcd/docker-compose.yaml stop -$ docker-compose --file etcd/docker-compose.yaml rm -f -$ docker-compose --file etcd/docker-compose.yaml up -d - -# 验证etcd集群状态是否正常 - -$ docker exec -ti etcd etcdctl cluster-health -member 531504c79088f553 is healthy: got healthy result from http://192.168.20.29:2379 -member 56c53113d5e1cfa3 is healthy: got healthy result from http://192.168.20.27:2379 -member 7026e604579e4d64 is healthy: got healthy result from http://192.168.20.28:2379 -cluster is healthy - -$ docker exec -ti etcd etcdctl member list -531504c79088f553: name=etcd3 peerURLs=http://192.168.20.29:2380 clientURLs=http://192.168.20.29:2379,http://192.168.20.29:4001 isLeader=false -56c53113d5e1cfa3: name=etcd1 peerURLs=http://192.168.20.27:2380 clientURLs=http://192.168.20.27:2379,http://192.168.20.27:4001 isLeader=false -7026e604579e4d64: name=etcd2 peerURLs=http://192.168.20.28:2380 clientURLs=http://192.168.20.28:2379,http://192.168.20.28:4001 isLeader=true -``` - ---- - -[返回目录](#目录) - -### 第一台master初始化 - -#### kubeadm初始化 - -* 在所有master节点上重置网络 - -``` -$ systemctl stop kubelet -$ systemctl stop docker -$ rm -rf /var/lib/cni/ -$ rm -rf /var/lib/kubelet/* -$ rm -rf /etc/cni/ - -# 删除遗留的网络接口 -$ ip a | grep -E 'docker|flannel|cni' -$ ip link del docker0 -$ ip link del flannel.1 -$ ip link del cni0 - -$ systemctl restart docker && systemctl restart kubelet -$ ip a | grep -E 'docker|flannel|cni' -``` - -* 在devops-master01上进行初始化,注意,务必把输出的kubeadm join --token XXX --discovery-token-ca-cert-hash YYY 信息记录下来,后续操作需要用到 - -``` -$ kubeadm init --config=kubeadm-init.yaml -... - kubeadm join --token 7f276c.0741d82a5337f526 192.168.20.27:6443 --discovery-token-ca-cert-hash sha256:a4a1eaf725a0fc67c3028b3063b92e6af7f2eb0f4ae028f12b3415a6fd2d2a5e -``` - -* 在所有master节点上设置kubectl客户端连接 - -``` -$ vi ~/.bashrc -export KUBECONFIG=/etc/kubernetes/admin.conf - -$ source ~/.bashrc -``` - -#### 安装基础组件 - -* 在devops-master01上安装flannel网络组件 - -``` -# 没有网络组件的情况下,节点状态是不正常的 -$ kubectl get node -NAME STATUS ROLES AGE VERSION -devops-master01 NotReady master 14s v1.9.1 - -# 安装canal网络组件 -$ kubectl apply -f kube-canal/ -configmap "canal-config" created -daemonset "canal" created -customresourcedefinition "felixconfigurations.crd.projectcalico.org" created -customresourcedefinition "bgpconfigurations.crd.projectcalico.org" created -customresourcedefinition "ippools.crd.projectcalico.org" created -customresourcedefinition "clusterinformations.crd.projectcalico.org" created -customresourcedefinition "globalnetworkpolicies.crd.projectcalico.org" created -customresourcedefinition "networkpolicies.crd.projectcalico.org" created -serviceaccount "canal" created -clusterrole "calico" created -clusterrole "flannel" created -clusterrolebinding "canal-flannel" created -clusterrolebinding "canal-calico" created - -# 等待所有pods正常 -$ kubectl get pods --all-namespaces -o wide -NAMESPACE NAME READY STATUS RESTARTS AGE IP NODE -kube-system canal-hpn82 3/3 Running 0 1m 192.168.20.27 devops-master01 -kube-system kube-apiserver-devops-master01 1/1 Running 0 1m 192.168.20.27 devops-master01 -kube-system kube-controller-manager-devops-master01 1/1 Running 0 50s 192.168.20.27 devops-master01 -kube-system kube-dns-6f4fd4bdf-vwbk8 3/3 Running 0 1m 10.244.0.2 devops-master01 -kube-system kube-proxy-mr6l8 1/1 Running 0 1m 192.168.20.27 devops-master01 -kube-system kube-scheduler-devops-master01 1/1 Running 0 57s 192.168.20.27 devops-master01 -``` - -* 在devops-master01上安装dashboard - -``` -# 设置master节点为schedulable -$ kubectl taint nodes --all node-role.kubernetes.io/master- - -$ kubectl apply -f kube-dashboard/ -serviceaccount "admin-user" created -clusterrolebinding "admin-user" created -secret "kubernetes-dashboard-certs" created -serviceaccount "kubernetes-dashboard" created -role "kubernetes-dashboard-minimal" created -rolebinding "kubernetes-dashboard-minimal" created -deployment "kubernetes-dashboard" created -service "kubernetes-dashboard" created -``` - -* 通过浏览器访问dashboard地址 - -> https://devops-master01:30000/#!/login - -* dashboard登录页面效果如下图 - -![dashboard-login](images/dashboard-login.png) - -* 获取token,把token粘贴到login页面的token中,即可进入dashboard - -``` -$ kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep admin-user | awk '{print $1}') -``` - -![dashboard](images/dashboard.png) - -* 在devops-master01上安装heapster - -``` -$ kubectl apply -f kube-heapster/influxdb/ -service "monitoring-grafana" created -serviceaccount "heapster" created -deployment "heapster" created -service "heapster" created -deployment "monitoring-influxdb" created -service "monitoring-influxdb" created - -$ kubectl apply -f kube-heapster/rbac/ -clusterrolebinding "heapster" created - -$ kubectl get pods --all-namespaces -NAMESPACE NAME READY STATUS RESTARTS AGE -kube-system canal-hpn82 3/3 Running 0 6m -kube-system heapster-65c5499476-gg2tk 1/1 Running 0 2m -kube-system kube-apiserver-devops-master01 1/1 Running 0 6m -kube-system kube-controller-manager-devops-master01 1/1 Running 0 5m -kube-system kube-dns-6f4fd4bdf-vwbk8 3/3 Running 0 6m -kube-system kube-proxy-mr6l8 1/1 Running 0 6m -kube-system kube-scheduler-devops-master01 1/1 Running 0 6m -kube-system kubernetes-dashboard-7c7bfdd855-2slp2 1/1 Running 0 4m -kube-system monitoring-grafana-6774f65b56-mwdjv 1/1 Running 0 2m -kube-system monitoring-influxdb-59d57d4d58-xmrxk 1/1 Running 0 2m - - -# 等待5分钟 -$ kubectl top nodes -NAME CPU(cores) CPU% MEMORY(bytes) MEMORY% -devops-master01 242m 0% 1690Mi 0% -``` - -* 访问dashboard地址,等10分钟,就会显示性能数据 - -> https://devops-master01:30000/#!/login - -![heapster-dashboard](images/heapster-dashboard.png) - -![heapster](images/heapster.png) - -* 至此,第一台master成功安装,并已经完成canal、dashboard、heapster的部署 - ---- - -[返回目录](#目录) - -### master集群高可用设置 - -#### 复制配置 - -* 在devops-master01上复制目录/etc/kubernetes/pki到devops-master02、devops-master03,从v1.9.x开始,kubeadm会检测pki目录是否有证书,如果已经存在证书则跳过证书生成的步骤 - -``` -scp -r /etc/kubernetes/pki devops-master02:/etc/kubernetes/ - -scp -r /etc/kubernetes/pki devops-master03:/etc/kubernetes/ -``` - ---- -[返回目录](#目录) - -#### 其余master节点初始化 - -* 在devops-master02进行初始化,等待所有pods正常启动后再进行下一个master初始化,特别要保证kube-apiserver-{current-node-name}处于running状态 - -``` -# 输出的token和discovery-token-ca-cert-hash应该与devops-master01上的完全一致 -$ kubeadm init --config=kubeadm-init.yaml -... - kubeadm join --token 7f276c.0741d82a5337f526 192.168.20.28:6443 --discovery-token-ca-cert-hash sha256:a4a1eaf725a0fc67c3028b3063b92e6af7f2eb0f4ae028f12b3415a6fd2d2a5e -``` - -* 在devops-master03进行初始化,等待所有pods正常启动后再进行下一个master初始化,特别要保证kube-apiserver-{current-node-name}处于running状态 - -``` -# 输出的token和discovery-token-ca-cert-hash应该与devops-master01上的完全一致 -$ kubeadm init --config=kubeadm-init.yaml -... - kubeadm join --token 7f276c.0741d82a5337f526 192.168.20.29:6443 --discovery-token-ca-cert-hash sha256:a4a1eaf725a0fc67c3028b3063b92e6af7f2eb0f4ae028f12b3415a6fd2d2a5e -``` - -* 在devops-master01上检查nodes加入情况 - -``` -$ kubectl get nodes -NAME STATUS ROLES AGE VERSION -devops-master01 Ready master 19m v1.9.3 -devops-master02 Ready master 4m v1.9.3 -devops-master03 Ready master 4m v1.9.3 -``` - -* 在devops-master01上检查高可用状态 - -``` -$ kubectl get pods --all-namespaces -o wide -NAMESPACE NAME READY STATUS RESTARTS AGE IP NODE -kube-system canal-cw8tw 3/3 Running 4 3m 192.168.20.29 devops-master03 -kube-system canal-d54hs 3/3 Running 3 5m 192.168.20.28 devops-master02 -kube-system canal-hpn82 3/3 Running 5 17m 192.168.20.27 devops-master01 -kube-system heapster-65c5499476-zwgnh 1/1 Running 1 8m 10.244.0.7 devops-master01 -kube-system kube-apiserver-devops-master01 1/1 Running 1 2m 192.168.20.27 devops-master01 -kube-system kube-apiserver-devops-master02 1/1 Running 0 11s 192.168.20.28 devops-master02 -kube-system kube-apiserver-devops-master03 1/1 Running 0 12s 192.168.20.29 devops-master03 -kube-system kube-controller-manager-devops-master01 1/1 Running 1 16m 192.168.20.27 devops-master01 -kube-system kube-controller-manager-devops-master02 1/1 Running 1 3m 192.168.20.28 devops-master02 -kube-system kube-controller-manager-devops-master03 1/1 Running 1 2m 192.168.20.29 devops-master03 -kube-system kube-dns-6f4fd4bdf-vwbk8 3/3 Running 3 17m 10.244.0.2 devops-master01 -kube-system kube-proxy-59pwn 1/1 Running 1 5m 192.168.20.28 devops-master02 -kube-system kube-proxy-jxt5s 1/1 Running 1 3m 192.168.20.29 devops-master03 -kube-system kube-proxy-mr6l8 1/1 Running 1 17m 192.168.20.27 devops-master01 -kube-system kube-scheduler-devops-master01 1/1 Running 1 16m 192.168.20.27 devops-master01 -kube-system kube-scheduler-devops-master02 1/1 Running 1 3m 192.168.20.28 devops-master02 -kube-system kube-scheduler-devops-master03 1/1 Running 1 2m 192.168.20.29 devops-master03 -kube-system kubernetes-dashboard-7c7bfdd855-2slp2 1/1 Running 1 15m 10.244.0.3 devops-master01 -kube-system monitoring-grafana-6774f65b56-mwdjv 1/1 Running 1 13m 10.244.0.4 devops-master01 -kube-system monitoring-influxdb-59d57d4d58-xmrxk 1/1 Running 1 13m 10.244.0.6 devops-master01 -``` - -* 设置所有master的scheduable - -``` -$ kubectl taint nodes --all node-role.kubernetes.io/master- -node "devops-master02" untainted -node "devops-master03" untainted -``` - -* 对基础组件进行多节点scale - -``` -$ kubectl get deploy -n kube-system -NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE -heapster 1 1 1 1 3d -kube-dns 2 2 2 2 4d -kubernetes-dashboard 1 1 1 1 3d -monitoring-grafana 1 1 1 1 3d -monitoring-influxdb 1 1 1 1 3d - -# dns支持多节点 -$ kubectl scale --replicas=2 -n kube-system deployment/kube-dns -$ kubectl get pods --all-namespaces -o wide| grep kube-dns - -``` - ---- - -[返回目录](#目录) - -#### keepalived安装配置 - -* 在master上安装keepalived - -``` -$ systemctl restart keepalived - -$ ping 192.168.20.10 -``` - ---- - -[返回目录](#目录) - -#### nginx负载均衡配置 - -* 在master上安装并启动nginx作为负载均衡 - -``` -$ docker-compose -f nginx-lb/docker-compose.yaml up -d -``` - -* 在master上验证负载均衡和keepalived是否成功 - -``` -curl -k https://192.168.20.10:16443 -{ - "kind": "Status", - "apiVersion": "v1", - "metadata": { - - }, - "status": "Failure", - "message": "forbidden: User \"system:anonymous\" cannot get path \"/\"", - "reason": "Forbidden", - "details": { - - }, - "code": 403 -} -``` - ---- - -[返回目录](#目录) - -#### kube-proxy配置 - -- 在devops-master01上设置proxy高可用,设置server指向高可用虚拟IP以及负载均衡的16443端口 -``` -$ kubectl edit -n kube-system configmap/kube-proxy - server: https://192.168.20.10:16443 -``` - -- 在master上重启proxy - -``` -$ kubectl get pods --all-namespaces -o wide | grep proxy - -$ kubectl delete pod -n kube-system kube-proxy-XXX -``` - ---- - -[返回目录](#目录) - -### node节点加入高可用集群设置 - -#### kubeadm加入高可用集群 - -- 在所有worker节点上进行加入kubernetes集群操作,这里统一使用devops-master01的apiserver地址来加入集群 - -``` -$ kubeadm join --token 7f276c.0741d82a5337f526 192.168.20.27:6443 --discovery-token-ca-cert-hash sha256:a4a1eaf725a0fc67c3028b3063b92e6af7f2eb0f4ae028f12b3415a6fd2d2a5e -``` - -- 在所有worker节点上修改kubernetes集群设置,更改server为高可用虚拟IP以及负载均衡的16443端口 - -``` -$ sed -i "s/192.168.20.27:6443/192.168.20.10:16443/g" /etc/kubernetes/bootstrap-kubelet.conf -$ sed -i "s/192.168.20.28:6443/192.168.20.10:16443/g" /etc/kubernetes/bootstrap-kubelet.conf -$ sed -i "s/192.168.20.29:6443/192.168.20.10:16443/g" /etc/kubernetes/bootstrap-kubelet.conf - -$ sed -i "s/192.168.20.27:6443/192.168.20.10:16443/g" /etc/kubernetes/kubelet.conf -$ sed -i "s/192.168.20.28:6443/192.168.20.10:16443/g" /etc/kubernetes/kubelet.conf -$ sed -i "s/192.168.20.29:6443/192.168.20.10:16443/g" /etc/kubernetes/kubelet.conf - -$ grep 192.168.20 /etc/kubernetes/*.conf -/etc/kubernetes/bootstrap-kubelet.conf: server: https://192.168.20.10:16443 -/etc/kubernetes/kubelet.conf: server: https://192.168.20.10:16443 - -$ systemctl restart docker kubelet -``` - - -``` -kubectl get nodes -NAME STATUS ROLES AGE VERSION -devops-master01 Ready master 46m v1.9.3 -devops-master02 Ready master 44m v1.9.3 -devops-master03 Ready master 44m v1.9.3 -devops-node01 Ready 50s v1.9.3 -devops-node02 Ready 26s v1.9.3 -devops-node03 Ready 22s v1.9.3 -devops-node04 Ready 17s v1.9.3 -``` - -- 设置workers的节点标签 - -``` -kubectl label nodes devops-node01 role=worker -kubectl label nodes devops-node02 role=worker -kubectl label nodes devops-node03 role=worker -kubectl label nodes devops-node04 role=worker -``` - -#### 验证集群高可用设置 - -- NodePort测试 - -``` -# 创建一个replicas=3的nginx deployment -$ kubectl run nginx --image=nginx --replicas=3 --port=80 -deployment "nginx" created - -# 检查nginx pod的创建情况 -$ kubectl get pods -l=run=nginx -o wide -NAME READY STATUS RESTARTS AGE IP NODE -nginx-6c7c8978f5-558kd 1/1 Running 0 9m 10.244.77.217 devops-node03 -nginx-6c7c8978f5-ft2z5 1/1 Running 0 9m 10.244.172.67 devops-master01 -nginx-6c7c8978f5-jr29b 1/1 Running 0 9m 10.244.85.165 devops-node04 - -# 创建nginx的NodePort service -$ kubectl expose deployment nginx --type=NodePort --port=80 -service "nginx" exposed - -# 检查nginx service的创建情况 -$ kubectl get svc -l=run=nginx -o wide -NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE SELECTOR -nginx NodePort 10.101.144.192 80:30847/TCP 10m run=nginx - -# 检查nginx NodePort service是否正常提供服务 -$ curl devops-master01:30847 - - - -Welcome to nginx! - - - -

Welcome to nginx!

-

If you see this page, the nginx web server is successfully installed and -working. Further configuration is required.

- -

For online documentation and support please refer to -nginx.org.
-Commercial support is available at -nginx.com.

- -

Thank you for using nginx.

- - - -$ kubectl delete deploy,svc nginx -``` - -- pod之间互访测试 - -``` -$ kubectl run nginx-server --image=nginx --port=80 -$ kubectl expose deployment nginx-server --port=80 -$ kubectl get pods -o wide -l=run=nginx-server -NAME READY STATUS RESTARTS AGE IP NODE -nginx-server-6d64689779-lfcxc 1/1 Running 0 2m 10.244.5.7 devops-node03 - -$ kubectl run nginx-client -ti --rm --image=alpine -- ash -/ # wget nginx-server -Connecting to nginx-server (10.102.101.78:80) -index.html 100% |*****************************************| 612 0:00:00 ETA -/ # cat index.html - - - -Welcome to nginx! - - - -

Welcome to nginx!

-

If you see this page, the nginx web server is successfully installed and -working. Further configuration is required.

- -

For online documentation and support please refer to -nginx.org.
-Commercial support is available at -nginx.com.

- -

Thank you for using nginx.

- - - - -$ kubectl delete deploy,svc nginx-server -``` - -- 至此kubernetes高可用集群完成部署😃 - diff --git a/v1.9/create-config.sh b/v1.9/create-config.sh deleted file mode 100755 index 6e21a28..0000000 --- a/v1.9/create-config.sh +++ /dev/null @@ -1,121 +0,0 @@ -#!/bin/bash - -# local machine ip address -export K8SHA_IPLOCAL=192.168.20.27 - -# local machine etcd name, options: etcd1, etcd2, etcd3 -export K8SHA_ETCDNAME=etcd1 - -# local machine keepalived state config, options: MASTER, BACKUP. One keepalived cluster only one MASTER, other's are BACKUP -export K8SHA_KA_STATE=MASTER - -# local machine keepalived priority config, options: 102, 101, 100. MASTER must 102 -export K8SHA_KA_PRIO=102 - -# local machine keepalived network interface name config, for example: eth0 -export K8SHA_KA_INTF=nm-bond - -####################################### -# all masters settings below must be same -####################################### - -# master keepalived virtual ip address -export K8SHA_IPVIRTUAL=192.168.20.10 - -# master01 ip address -export K8SHA_IP1=192.168.20.27 - -# master02 ip address -export K8SHA_IP2=192.168.20.28 - -# master03 ip address -export K8SHA_IP3=192.168.20.29 - -# master01 hostname -export K8SHA_HOSTNAME1=devops-master01 - -# master02 hostname -export K8SHA_HOSTNAME2=devops-master02 - -# master03 hostname -export K8SHA_HOSTNAME3=devops-master03 - -# keepalived auth_pass config, all masters must be same -export K8SHA_KA_AUTH=4cdf7dc3b4c90194d1600c483e10ad1d - -# kubernetes cluster token, you can use 'kubeadm token generate' to get a new one -export K8SHA_TOKEN=7f276c.0741d82a5337f526 - -# kubernetes CIDR pod subnet, if CIDR pod subnet is "10.244.0.0/16" please set to "10.244.0.0\\/16" -export K8SHA_CIDR=10.244.0.0\\/16 - -# kubernetes CIDR service subnet, if CIDR service subnet is "10.96.0.0/12" please set to "10.96.0.0\\/12" -export K8SHA_SVC_CIDR=10.96.0.0\\/12 - -# calico network settings, set a reachable ip address for the cluster network interface, for example you can use the gateway ip address -export K8SHA_CALICO_REACHABLE_IP=192.168.20.1 - -############################## -# please do not modify anything below -############################## - -# set etcd cluster docker-compose.yaml file -sed \ --e "s/K8SHA_ETCDNAME/$K8SHA_ETCDNAME/g" \ --e "s/K8SHA_IPLOCAL/$K8SHA_IPLOCAL/g" \ --e "s/K8SHA_IP1/$K8SHA_IP1/g" \ --e "s/K8SHA_IP2/$K8SHA_IP2/g" \ --e "s/K8SHA_IP3/$K8SHA_IP3/g" \ -etcd/docker-compose.yaml.tpl > etcd/docker-compose.yaml - -echo 'set etcd cluster docker-compose.yaml file success: etcd/docker-compose.yaml' - -# set keepalived config file -mv /etc/keepalived/keepalived.conf /etc/keepalived/keepalived.conf.bak - -cp keepalived/check_apiserver.sh /etc/keepalived/ - -sed \ --e "s/K8SHA_KA_STATE/$K8SHA_KA_STATE/g" \ --e "s/K8SHA_KA_INTF/$K8SHA_KA_INTF/g" \ --e "s/K8SHA_IPLOCAL/$K8SHA_IPLOCAL/g" \ --e "s/K8SHA_KA_PRIO/$K8SHA_KA_PRIO/g" \ --e "s/K8SHA_IPVIRTUAL/$K8SHA_IPVIRTUAL/g" \ --e "s/K8SHA_KA_AUTH/$K8SHA_KA_AUTH/g" \ -keepalived/keepalived.conf.tpl > /etc/keepalived/keepalived.conf - -echo 'set keepalived config file success: /etc/keepalived/keepalived.conf' - -# set nginx load balancer config file -sed \ --e "s/K8SHA_IP1/$K8SHA_IP1/g" \ --e "s/K8SHA_IP2/$K8SHA_IP2/g" \ --e "s/K8SHA_IP3/$K8SHA_IP3/g" \ -nginx-lb/nginx-lb.conf.tpl > nginx-lb/nginx-lb.conf - -echo 'set nginx load balancer config file success: nginx-lb/nginx-lb.conf' - -# set kubeadm init config file -sed \ --e "s/K8SHA_HOSTNAME1/$K8SHA_HOSTNAME1/g" \ --e "s/K8SHA_HOSTNAME2/$K8SHA_HOSTNAME2/g" \ --e "s/K8SHA_HOSTNAME3/$K8SHA_HOSTNAME3/g" \ --e "s/K8SHA_IP1/$K8SHA_IP1/g" \ --e "s/K8SHA_IP2/$K8SHA_IP2/g" \ --e "s/K8SHA_IP3/$K8SHA_IP3/g" \ --e "s/K8SHA_IPVIRTUAL/$K8SHA_IPVIRTUAL/g" \ --e "s/K8SHA_TOKEN/$K8SHA_TOKEN/g" \ --e "s/K8SHA_CIDR/$K8SHA_CIDR/g" \ --e "s/K8SHA_SVC_CIDR/$K8SHA_SVC_CIDR/g" \ -kubeadm-init.yaml.tpl > kubeadm-init.yaml - -echo 'set kubeadm init config file success: kubeadm-init.yaml' - -# set canal deployment config file - -sed \ --e "s/K8SHA_CIDR/$K8SHA_CIDR/g" \ --e "s/K8SHA_CALICO_REACHABLE_IP/$K8SHA_CALICO_REACHABLE_IP/g" \ -kube-canal/canal.yaml.tpl > kube-canal/canal.yaml - -echo 'set canal deployment config file success: kube-canal/canal.yaml' diff --git a/v1.9/etcd/docker-compose.yaml.tpl b/v1.9/etcd/docker-compose.yaml.tpl deleted file mode 100644 index 48b5dca..0000000 --- a/v1.9/etcd/docker-compose.yaml.tpl +++ /dev/null @@ -1,25 +0,0 @@ -version: '2' -services: - etcd: - image: gcr.io/google_containers/etcd-amd64:3.1.10 - container_name: etcd - hostname: etcd - volumes: - - /etc/ssl/certs:/etc/ssl/certs - - /var/lib/etcd-cluster:/var/lib/etcd - ports: - - 4001:4001 - - 2380:2380 - - 2379:2379 - restart: always - command: ["sh", "-c", "etcd --name=K8SHA_ETCDNAME \ - --advertise-client-urls=http://K8SHA_IPLOCAL:2379,http://K8SHA_IPLOCAL:4001 \ - --listen-client-urls=http://0.0.0.0:2379,http://0.0.0.0:4001 \ - --initial-advertise-peer-urls=http://K8SHA_IPLOCAL:2380 \ - --listen-peer-urls=http://0.0.0.0:2380 \ - --initial-cluster-token=9477af68bbee1b9ae037d6fd9e7efefd \ - --initial-cluster=etcd1=http://K8SHA_IP1:2380,etcd2=http://K8SHA_IP2:2380,etcd3=http://K8SHA_IP3:2380 \ - --initial-cluster-state=new \ - --auto-tls \ - --peer-auto-tls \ - --data-dir=/var/lib/etcd"] diff --git a/v1.9/images/dashboard-login.png b/v1.9/images/dashboard-login.png deleted file mode 100644 index 72b197b8ed4c5477a2c883a16c6fc2380b698ec8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 95853 zcmZ^Kb9`val67p`Jh63R+qP}{#I|kg#I|kQPEKqmU+$Zk-^{)5efz(y?&_}Ey;s#* z9VRCu3JZk=1poj5D=sFa0002|3;+OR3IX!Dy674249iHxPpyl2B%kH|?^qZptNKEO(eKHg|-EIo$fjz0CD4|w*^ zFT(k^7%8IJFZivjahW`N0?}Y_WcYX9$s3=P*qxJYLx>(!d<1=icJ5>AcF>?STSGP1 z6YtU|9V(3Zez(N)`u^^yW8i#g9PgXzc%ldW3_ueA1ULMAKlVs={Rw=mj^#ac?eQ2Z zBPhd_M+gsx#Ig??-9TBP)C;qHKY3M+n(mvx>VemDs zYm3M?Y{BO(=tB$i-e{Ocrk@d}3_N^3SGL)qX6x2j`Z>gYx`A;QwD1b_KW?8oV*dad z&3AU!2rKz^j@sxJf`_#fU{gf`dl6^Rc%Pl_Tk5rN(i#1>E$yfKh$HJOxVQ4TNeKbh z{Mr+3dIiI_oqy5iLclb9YQJ(o=~!_&jsV(~UwUkB%fkQ;Gg)fq$Q|$lodE~)MHlK{ z#18c1k@GIw%KrMRItnPl9y*nYir+$U}h4rzJkco9eH|g$2k{ayH z{K~?4to4BBU5=VI@VP5X&#~7+3}?&`6WBveVq3N|Mt>jd*|aw6hl-^=n;oI!ec~L z2YF3&MU)ZuF~Yh2JiX@DS^v{J#-zPK7J)kCU3VYRC#u!DQEb&>6?FAM*P39AmDa+e z{v;#_Ka}7NTd#`x#h!J{=*lPi!jsTcZ7hp7Kd?k!uq_HJU+ie@{OiaAKgJmVjvj1cYKh@gYitG$ROgzE*_jBha@Y0(oZSfD!?9dB}2rNB+%R=p>+Ys!7SgQ6L-fogtC}DEYKSHiew?MC6!CjTcDMeUF4Ba~Efe%}g73 zInc8FrbKlGw)tH9Jxt*~U;}#T4Tb0_ueTg~K@8vw9O#c39#UN<5ROnyKqCh0^hs*c z)u^Zuv4bXiviq0xt_(tI9aog0D53D6+@Xk}RKw-MmBKy4sZgv@`cZ7jm+TtY2s1gR zppFALea8or_BHGRTG%(RNN|fFib#vNjR}mQ4%Npv#%#t+6Lm{VOP|XYO07yqltz_I z%c>MMOVaaR{Yr)-_8)F8pUvJGJW0B6zfit{_y{17ogk_L$@>@tPa4P95d1&Gu5v&O>Xx8l4P&vRj z*g2@$5ZZ9ssGPi8G=>0&j7fiy3X_T!vlR;zb4txmh?(e{C?4q@X&s3iF&yPkYf-mRcTuNNJ5%>l zZ>zJbIjec8*Q=eW=hS=}?He;0K^t&REe$+o;ttYI+4SR$d;4`}c!dST2?hiV#0}1l zFpP%npd2?Ga*e1DtxmW04Ne+QpiVhQpW!Vdu`)Hoxe`24T>iWS#RJ2m!DF1J$ZqF~ z=#c7Y>*(z;b#He|d0~5zdd`25cm{i3dKP}heO7!qd&z;8gDQo3hRj4dK~Y0HKx{yf zLa0E?MCpSpg93%fLi~gJN=r?2{=-wKMf|xEqCB)rtV67Egh}4NwCTiqR$*42Au{#1 zTI`B@?eHFiJ;@Egjlc~*WME(&i27c~KrElmxZ`Rr3LRo z(qh2^_9Cx^m^p~K)~s8*s8P&S_APfc^9xH@I!XGxMu&!u26|(0<4Z%>TG3iP2M`Aj zM~c(dN%$$)pQRJ;nS{lNnfAOVZC!0%`R+{sb3LnAV|qO?+Y>!Cz30Br?UC)$HM3Q< z(dS(IcF47Xjf0la7K#*#(S|XnRjEPh*@|%-TN_gyJswL!8$|tCgRmOrdM@)9tLmAp znNDeyp0R~Lg^P}sh-V*5&DQikmwpEQylZl3f^6z^fpN)pQ9bWkJzG6qlVuO(5aM*= zm}6_>RAKjaWwhhiWxk-^&pdgb3EB)gpF0nCc6RDKXxlS6aapsT(jMjR_p-_v>1y%v z!aK+7#dGB{=L*YS?wHY$(NXPK3R4+S*b8qibB%jq6wh%AzMm2uK2DtWuP(lV+-CJo z_a=MadbNDbxz~l5fg6EWBRWff9?1cc28sag23H4F2D1j`1YHi13v>(GfGUEAg}Q*+ zhl_y5hDw2$hRE5f?)tj_JcPIlm5h@+=o&d97kQ4~#HYdXV*5oZLRCy}!m`BhsDY!c zWv2B7cmtdUzBPb7sEQ+m`vdn}YDZE`JXL%_nwlL1_m*cN?MG~4Hgk$qrYCz4BMJGT z{BNs2VGGsfGUha=TBoC@)o|GORa3cBp(7Z)`Syj+y!&J#=WVg5mJt)r>mgloe z-fmIvBBtfC!+4mymiDaf*n1t_kC&in*SD;nHKBYMZOgxAZ5?w}m$wZaJ@+d%2h0N$;Xh?3hHnO$<4_7WPuc zm3OrZ`|+9Vye9pN-Dt#sxNQ0P*$~-B9!xApj0_A{{G9CTG`BbA=hKqW)X~PW1Je^z z^=b2*5$D-Tvz2zy?vn2Fwfv!rg zX$@n|&Ue8F(JR@K9NQ&><=Qh-)`6cIKPOpptb?qqgOG_sIaL9FXd!xg19(<}`0fA! z^cw<@Z@M_v>w-e+@*rHVBgO}B5w^v~krOTuwSnx19rnw}C+-1J98xTof!z!SlK<&s zHfX?DQ*X0*m4r!))R&5$2&R^)Ahg0fM`zby3u#Suv+MBpYPIi5K)RfkkUiWMaIKP3Tj?R?fngXIFs*1O{z5Mfb&ppA7+aWeU zeDOxc5bR|X;xc2kZj1ec ziRFCfQMTrjhRt@BHBC#xoJd>w{M206ihViLVYWSb)fvC5NQ}+2#?`|czt_800(>-Y z!^!XyJogyB9qs{Mrk57a0V_2}2fc$a^L5yBf~(=;K0k6i@>R}~>}8HZriRzjE7xJr ztYqK#?5RIyjQZzlkSePVe%f8;vM2F%vI}5msGDf(z>Usf!1^%pI89EMxBNR+^V}nD zyTx6>$?<#Jy~w@E_|j7J7iexd1o{u$I>f`^VxeV&%w0`sZcxPGa1XIGnW7NU{VPN` z#f&+*d8wJ?IneoXdOgf+rbng+`sVr#eQT5UA@8Ju;QILT%=XBV$mYcAz;2~ntr~?= zi58VY{`)qy2)7WS<^$j|{Zq)a<2t&7>~UVjR3#kMU-?}5jHR!9m71M``;XaY>5UqP zYoHvhZRWpfU;V(|V4ko}F~-xb)92Cw>y7VB(KeG=JY+R+8y=e&8j~6g>qE}bae{Ge zIhEOt+XmWS+tgdHR>}5ycOc!puhWSh-C5%(J!M{t--@0~zzXB$ffNJg{1pY~1m^n` z`W2r_L<&WUMT&&ThJOr`4wB%qq2##H6A}{M?BqQc0*~5X{~3`k7qjK&O24@zXH4Lh zx)8b4RrcnNy4|x$?kN4#b^$v#IZ}Loq}WWk1F^Ko;c%?HzPCAi z(TJ;__4x$T=GMN{PWG$n0k2*5a^9!sVQ0O+_j62C95^~aAx1uiECefM~a`}8zwZJj|j@`Cb;E40HNEDwj#hNF=yGTR* zCZ|yCLj`K4GKs%P5+0Ra}LllfqRldwj#fd@$@(!VE){Dyv(fqGZopo{KFmRIBY|t#&G7~3 zB?<%tInSvqBW~UBVaGwyp%1xJ-%YPfnzFk@ zky=veQ1#COor>Ms5X0$~BXJrkYyZa@89!QaS%s^JPwN0DL19N0d^b7^`_jUz$#V<#TDaOix%=c|O-l(}P;aTVo1D`*}b z94=B#EQYiEY$SA6e@Ieo$128NuCCvZYcXF$S@C>U5tlr>s9ln^es1r(;J|(3fZyVr zS6<$nzw3Ci#GeFC3xWFx!Eb~$!1I86h)#`}ibj7T}t;C9u6+9?S5T`Keplc>%6~t58Tw-0K zL%>+lZ_MfNnBi^$36sWXnj-FwsQQz$b(pkZr}!0w4>Z2>;_CtH9bmYa)jH zx_n6k<-JcNBBY4;MuoUJ3r2`E@6~z-o?9p=u^{LpJ>tNl<6`&x^+0Xwrz}4dRD~4Im=QiVcBOi5 zfpwOKg;dqqX1?h8*0hr4c#)U|sZG@x^4j$J1P=ob8Htc{5WURR$>RLsemZ`D`KG#2 ztviL@(WtTVOZ9H+h1jC?vi?qWL89Mv4}K`e>&!f(jq?T=$czsZ1CTBju&w4vum@2N zjH8D-F!%?7COP2L=P)8hAWr7GDX|8Eq!?ZyHzW3H(1uW1fq}eqsd57t2jpfHp&kxH zQOz<-t&e^Q1quZtg^3+ji(?CZqD|t35|L7?67LP*Go(LeUX(^!Tee7iak@%)Q=Cjz zRm4`XcQ9dmoPTYgIPjwjPNx2rX_P*)L5AK}M1QPd!rf0*u4b?&Qdx9cxE$hcfG;vX z5C0bd{=QctEh1jwobXMwZURIqa}pBTs3dQyc`{8hR|y_@zlxJWql$`RqDsn&q4KG+ z-mVbA1W`#bO$kxqWxi>h?P-E7`epLz=fqLTT>A}Lm;_h(*Joj|-9F|1Gk7cte$*p_HTZ&1~-Fg_%kv{xm zUUVPo7p=#Aq(6-Fs5e*v969BpSk*c{t3s~h2QIH!moC3$-m0Lv>E2TDv3Q^`q;Mqg z#eX5uSA8YYuRc+~g6@ycVfL=}Ew8Y5zce)mg0>INUx95E@R0l5>rA~kJ=~q7&{5rQ z7j|J+Bl+OGyBkzmd|VE#9PLGaAzojWfO}qVu>$j4Ptk#L>p>d$JLTDxqF@Q`Ag+a) z3DNA)C}5mMbVO6Lu1L2_cidL_sML}&I{pf zXy3`0+U7u)_=3``<1YH)JT+5o{YSO>amDfcmQqJ&`?a0@_2x$r=anRnk*AXmn)c^w z*{6D4e=i}fHT|?)vdRhz6Yqjdc)Py7E^}ghs8%;sr~3DI z{-+5EL0`8ICtKUAQ>jZ)xk8pA;l$nl)W?54|9*&wVJ@L;)a*&||9^<93j&0(_n6^H z;Xj-ES5t1Dh;HGKU72!MH=TZUNB_UZ^g#YF_NEa1-@*Qm;s0v8$1vLW$8*dJY~o_d z|IWwX9swZEji*$c3`R46&S09B^ga1K5CemQ`rBPzZhK*5dd9{i{Qto>_Xx4HufOz^9-ZmB;wJz?$qlxBu*IF4!vnkc0!`m;FL+RTbM4#aOm*OL;`^@A2qnpIM4oUf$pu<} za7Qm4gG6y_h0VXeg4H^O3wRcO=t{)mdspiqnv!059q9$W(CGBD zSVd%TbbMUU%8L5e)1|eNC#Lv!43uI4O=hqT~OPYqx{lU98JQx)D@VP9;|Wre{&Sd6L@yj70^&X45K=>_PejOHHi5|3@tO7tu4R63y1X z?hXSE(#Wnj(2aOSY5GE|pQi0($bGo&8$zuMF0;W6SHkT=c2hDwZZXpVqaASCKL%r3 zQ`%4H|I3~Gh&!e-GEJsjI*i5tSQ_jh3WcrwrhS!1m}!6US45QSiX0oSk<3eS(uTgr z!iAcsNUhN1&^+lmz%zbAzjaSR5^M*CGUKin@fa5#jFz$Ss+g~=>&v?Q$j)u4Zs8hN zrKAZ93oG0&1vEXr)&5KyD5tjEF)9T9iMP1ZU7`r$IqhWE6On~`EmWXY>c|vpDi99w z*Yd)b_8qmRmX^@oV6faih=_;=d*h5uWqpI5zq(V?(t0Dfk}@+hf5#?BQT`)jR0a8v zv%wh=RmC>ix2NQf>g=-C4{Qz|5~8>Xmkmmr1GHyV;XLEoyfm@2f%h3Gl0{3TyBpQpKNSu5}5>}iT&8NmGe2`xew2bc^ReK8P6>a!Ynnc z*-NOlM+HNHSdzYZJy6{hZ{C}Yz;dmcvx8!lU1+SdOYyv4{K!dG`>FEhp0foBn%PnV zJqBsiBThB$bO8Yt2hSSZfa-I#-V_$eQ)e;X`E1EQkhelJIWsfTlG$i-L| zaKw}3?|&IQcA(m4uYS)CR%gVd4Rk7>9DkWhmbhvefsx;!ZpUXi!coER+fS*?L-=r{ zq+&6U{i_>TW~(EJr?tB+dJ4#0*)qa?_ygJfb9B7@@w~Ks6YKanUeADFuPl5zHq^;d zA9#(~77+>K#rm2pV78tg(4UJjU8YnsF2!xANDO&+F|FtwI--|pQs@X?JjK)$(Tp!T z>Y$;J4~YyU*f;lvlQnRq2lsXYvDp#$Z zI4M3tdwz|0uTC{m}r^?mfS*=yC!&R86{;6&wfQ+2gtZCzMd99HBV;L0|E448$)E6u>3 zDsc`Mh!GhX8L37wIfHw9CnuqAPgm&hRZEVv{hOP(6(1zoex?f`=HXksrqDy9Pq$VH3jcHO-dp@J!Gsn{nTORx>%y6ZY}$uJ=`B$Zrsif z+D%)Tv7}d7c0(k5d(=O)oV=c;!Y9mp*7JS@&fM<6%;|cgX!CA?qw2;92>Nz!8g-&sG_rpA&g+rogj zOVI6G{sJE`J#~;@6v&EnRBLxZ{%NhyRJqd18A;@JLZoaztPUyO+ZM-@>Tm*^sl$!~ zCt*k7A&H+`{8G^PiB>6r=KX{p>bq@&0$Vkf#)1A`8l%$%uCJfR=0yz>V11n5U5&jI zq^uK1P*X<%O6BO$GmKZHRViUPCRXmxJxRB^Sm#-km?vd2l^M3PvxAhv7FnG{##P|$ zUQUE?p3K(cJ%hU7_V#RL0YiyJ7G5^M96QAxqwcHWY3t=-8N;kUQMn+!8St zL9n#C(j@y~9O8s<4Q3R7KED8~28x*M?+jAobi@WJs@7l68>x1z41!Tqbmp~W2G1wc zQaWW{BQM=+hYShz*}(Gdy*scN$cP9p9YCHt37)Wplfe)P6ZtV{M{C)C>ZNTXZ!b zlhP_#gixD9IC@+59=2+FP8e*TUvY2wEmUOC=Q2fA69}Kxg*xUG!N6&1cz!RO%AGv_ zFi1h9-isV!@R~1-QC^=3pM@968Sd);3b*7%uau%nHnHxN5UfOnVHj4&><(ge6VIrl87*3z<34C%jt2|c{xxTLj zwa#F(HT7#2G&hE*ptbG?Z@Yby(ee`$4(m^X<_t-yPvQz8VpHOeIP>DG-ZHFZskmNS z%!-&%4N))2tGE9X{c}DZ1DHZzlc51%dyvgN6uK&t*?JAd%T;lv8SH6wPTq|9D+;X3FjcODj}#L zc6A!ek2QpVCV^&%Bii!j!VRC9F;u&^QI$H`318*xkM(B3@Zy9W)YSD3!uNg#ygQog zpG&f=aX3{?ZFb{qyhYf`p+^(sJWaS(z|vKzkp=oxV?YExe$~@FV0`|QcBx2*Cm>MO z*WlN1rq7l(1`n?%9(>$tC_-eZ1fkx>TJSbVaYFBsMbP^cJtbH|s7UW|#~(PyvffHO z>+>idM|)#K{&ONL@{Gq4q0W>PD~^$v#vA-dW-HqCF>|OkR=9=16-Fh;h^TyMN;X}; zPr%iRQzU_*3e%SYm@{?`(CwE2gotBw!SU|Sgic{0ISnnZ3&nHH6`vM<2c~|Uz8bO} zk|0MVCBadqG~%o!QWrjF{Pv^?ID;5}4lKGj-!L1`n|5 z-tLie6@V%-eZv_j%aDJ>)WSwV^+$}jYJ)pq1>gIK z&oT<$z+J-<7X8Zu(oUdYwUtiz^{Gf(bE^t4FN+Qpu@vnz(g%C>P%F=IXACF#rR;g3 zb8NC;hSZ%n(Bk|&?0zgmHo%MhG z{9H%dRd?l1=%zic@Q5q)6e}79nhfHs>kMJ#l9VbHfuXY^4VKyy;&F?W2+zt-Un&Wzo z?9cCFy7};_HheC0ar57psBXR~2%|UCeyEt4+kag^Cs|F9Y-?2329ef$(V%ALL-#s^_}IS zfK9h|%c%nRDzhXD9v8urqXmMk(}ccf)OYsdFxZCXfORh_)kMa)mtbD$K@{}D{J{O+ z_kH)0$((7j7@A~wpLq$8l4DC7kB${L-3-Thf^Jx%`|YWSn{74)_J^YK6q2g(!=$H% zC)qTfvWt1Fl!kF=;fkM6NWd4Wh3o(5jt+^hZDdYf>&r>EEHDSPm$Or!RM}z4Xr`;N zoJ8*Wb=m#+x&E+^pwDdtonMEWIg8$WSuQ`$ir|MER->^fa7Q`?k;aImiz_LtI9*)o z_d{r#Da2G!R%nhbJ_&*k9_vbeyhrMBx7RlBJ6HF2yZNll>60wSO2+?jc5Q~mxWfq> z7yN(>Hvg*yWlEsR;v}MqC>cw@vC)n|>mtjnp3Fg(8kY<~SWAa0C@^ihJ|Xn+SL>gu zvYEoHpJZ@$1=iu+WasAUOdcM1A^>b*2Nn?C>6H)U0vQRGOj2+KRQYhmiToGXGrfX^%b$iUVbL894_@gC-Esp^ z4`nZeJ|cu1=LE2c%iSWZA!F@v5_IYJ<Djmt^A z>z==;ADG7HNPF!XpRag*%B$UIo1e9| zEU1@!q;_?TD<{+lRH$34Afaqjqd1RYqhpGjE~sQ8dD`%DQPvqb*`r{jvuc3LgU-mk zi+brV1R!-K5=O;!l>M*50fa*}bI)=yBu^QuLWScu$fT%0yi4_P88;pGG9Kmj>Dcb{ zK>rZ)(~k@kKHgQ)BK_6SBtT}1m1AQQt_j(iikcZ!J#6-|yseu}1kv3X1liWu00O_e z;t@@H+-@G!W@SaEcy4cI0>CkeqE#t2u{v;kKiFhW5IvYPbUv%d;PM4)wZeA}$9&|; zc=0+llvD^=swok3O+uQs_z+KqeP_{Dm2g!)C=3Y9{$jdmudE1dJ6 z1qxTOsQ6+=k4J=^7h*Se9$LllzgMDq_QQO&_W>c+71UhYNxepKyQ_cZZm+X#@1q)( zO6wo%i8g2j#Mv5sdrnMx{audI zJaoQ{NI}BJj`%J*&QtmZr)u4-F!yQzGcC9_4h5B35nZUaWR>zWIn28@jQ2Mg#99@vEOCm?^QiRbxo zhs)~ZC&+wT(B3#tRn1fG=%M#BXh4@2WSZ%c9uVSmS9o?H%$j}znVxotF2V{qvZYBR z$`}xxrse{nt36CwSmnp3U_bc63d0jgB-ab6fh){13r#ytqSLHZh8_lY3NnvwK=gK0 zpyiRf)B_~n(5)Obv_&X~EP^e!E2Qfjc7ct${acAasU@r1mnTfZ8?#_S@s^VBXMZVG zjLQObpl(|vhKH$9@zBol^qb)koC+gXiSn zqBs4qNk$hr!zCOP11nA5nowu5FZVsFiPJ^8#Zc40n^dymdiU9;T7Em zEO2gC|*YtCkslbl`S*71p8v$`l3g=B9238;k{BETjVqB@W zGmWgm%)hY}xec-PzBiv+l|FOhQSg{Xq^XtD-^|2yS=cr&p#&MsrvnH7lL{g`2^YAp zzt7n~Qc?^j(-mej7)JDpD&+e7K$uy#2jtl*Rp`KrnFsG8;OtR~TDgWesOJPTpmuW` zTtn1v7NV6=g}VB9<`~&3`vwlog@}mKh`A{Uc22!COrW_!c|gz?6%w*7wZpLBr)Jq| zF}LR|zZU)$EH2k*xXfGaJ2q>KG&$4d!QqucJBNOi7-TvC z{ethqmezv(A%+hFB(CVg=^JfRR(9y6bRz&SuQgus?5$_^fggWTZzQYdwQjW8A#}fS zsof-S%cQ-N!BqVvDnrwga6-VxtlYYg=er~MFX-jSsg({>M6lQS8K5>$YNpaHKiCtN zoo9}%i#5niu2Ghp1%RtANsEF6BB&3lVEf8Ti1nYqJRffXwj{6Kk?zcS`#ukwP>F>i z=hZr$l-U#?kPoRROs&V3sE9g@F{az5`PH&Dn;RQqXIP&zkl&nPqa1S$V_q_YU?Sxl z8>Z?%a_3sU++s~l&vrN9HW%}okuysH{LUiyd+&qA7fbY!suy!}^OLPkk0445oA@Z< zxAR&fO&}!`-|lKqt}`_PlC0!`f=nFCRH9oOxW~+KM5fd3t!-4>dntY!?^7Khb!MtA z%Mga^8$uE3{bKIWfX$Y;AAb%H4)_zPQCZ{7ZaU~Se$%>OYM9^-ZZtx=y-e~g6sgaI zw7t#?nF~q54;lDZCtDRK9J*Xaei2=lmkFD6SIZfWM@S|Aak|BCZltNSKJd;Fmbo*E zqN(yyFfD?H2h}9*BpdrJfmW?vRY%0A(vcWnCJ{xo)+Y#RCArXOL~9&mwr({;RS0EV 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⋙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 diff --git a/v1.9/images/dashboard.png b/v1.9/images/dashboard.png deleted file mode 100644 index 0b3ceae6cdb704eca9f4a5d71bdf38067a3a4cb7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 124715 zcmZ^KV}KyLwr<T61O0RS+BErf*RC4__sjrmRd``&0p2QQ^RZtAOOa&Ms~U4iV#uN zzo5ey95d5&$`L4(unjMQCEd`h2m zsWImJ-I6Zq`@5r$feU1Cd~T}~h#m|w0ZjoA-0%zhIiffWCh)O3miN$g#$&CGp^R1@ zAv_(E%06uMg5-qLF6m#w*tf-n+PBj%YMGaQ$f^E}3%sIFM+fqf@g27ghp%y6TSUHP z54mVTA6j7WLBljQ`;0VWYO7ZW9^Uc`n>q^En>d@+=lpcvO237R-uSm&X+Ql(JbB-*du!j@)KGA(uRXD* zS1@e5`4>z)B zemr$c%>duaCJaELFo4ed_Y|5I$=(snt@ zo#uJ0`gvlAiGFsFv_So5*L&IO8NOc}0m}@*?|Q!y^>qSw+cqEdSadVCS)vGs0E_|{ z`@-^96f`MdlR)1W{L8r|QHvh6s=Hri?@kEsX-T68Z#S&E$ddB09@ETLsLEaEu z6J^GKjBu?#Pp`Rk*8lK{HEsVThd>khuD6fq8{KNtD86dB3cC8BXG1W?MrY|+e-avu zA4c#7E_{2|H@lX)%#uVxJ4#JY4K6l&xzdfT*|l;t@H5Q)#tzFJ2H+4Zjs2Ew5?}Y4 zwjN-I=Cc@bv1c7Krt-<5@FXlv2g~x!A1uiaY>U#`4?9Mu;3n$8pJ@hwvj-s!kXj#J z+Yj9O7{D!C)K5JQK#?D81k8Phg#utO4@MiTF%OZ&Uv&o1qetilgBwukMl&7wx`*i* zY>5D(PY@&w&@j-AfKVJLAyk==b_Ai$&zcZ@1o}^?V7@s8pk!cOKC(QZGLVV@>lj*8mg}L0Q~{IBy|}B5GM|gJ2ucM;zja&G3!V#(|Xyjm>0clN!IyDU< zcJO3RPXChrwP9$j(~1fd6%-znI}|aLT7-Ora)eg|HHr;NKZ+g2l6?a^VHW2U)Nvq} z-}qqizNUR(3&#c)DQ*!&5m^zB34saJp~e{JnC+NZl3r

2ujasdedy@~E;|S(V~u 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%0A@= zco_PEy2{EVducUh#>QdqIA%sh#7*DqVgpwHtZsg#Fb%b@K-O?Gd2{g~4WWVbRYr*p zDsa9nm|=QKbjDfIuo4W zpigw4(#k!^T925KnO4J8M*@7>jbwy@heyx&`1rVP?eH{|f?_oLvsS9`>&?F1Rc(}y zi95iJ58`#T-mLcfe01fwNeeTbH9t21q%U3E3sl z51aOooc)mAO=T_dxpW(Lw|Q)%08KRtR;qg|FQ+chqi$qjAreJAGN3(;fu`YZ-7`oM z+}?{=S^f7t*Bz})@Wj-RFzV$v(J!+~oXy?ib0{5VidI$`Q|`X10m5%u4ElA`jfJ@a zQb|^!h@P<(#h>-D$d*PNs|Hdpbpt9_X?>Z}GN!?>cb_!5*H1dUX zbl#Y(P{}3P$h^$1wSQ8-*?O2Mc3bxwS>GuZ3aC5Y13><)X^4r@qUE+3xLcV`x4(|%~@N?t|$jt9lNY47*>Tg91a)Qb92a1DB&q2Bb1ij_3stwtg zG}g+iw%YD{MdDl6JC3{l;O1s$&;g}KXGe!H#|HV)Zz zXj5GMq8=idj?dx-@LO=j5OB9~ery-$nSYz>0fm6t4Dy zl`)KrAa#scp7b;=0V7jj=P_Di-#>sA>n;E|=R=Lpm{cIF-~6}^ClpU|irpwyzI9Jj z1IAECt+hM$vc+YpV`rM8=GhI-vUOqSBKQpu0#J8lGR#yU$HHo{Prb6&|#q&u3e zSBcKh5fJ>u@Z5!?5F7#6PK@sR$N6|AGd$bkv5aLuEqIhiHOF~!*|0vWVI38a?ta{C zwxEiT4RP*GEIB}<=xhgtVOq`VPkFR7H!a4yz7kTggtYEVzKDP5W1YAbC|_{vuMr}M z>}Ddm(sZ(9O<(8+2$_#N9uOn{Kf2yAxRa>s+l_5I6Wg|J+qRv5GMU)M#I|isY}>ZY zH+Q|~+|TpjoT~j{S68pC>aOm!*ZN&s>O1}S03DO%&8>sw>^8X6Jp{3nEaHJ*C;HZB z*VtLXwgZDtTTi~<|KpINM%&3X3o%~dVo4@ov9k;*D( z$1$Gq`in;T=hLE{CaVdSxs0(o%SY*?mtN#q=q{mVM_HJa)>06RRS~J(olKs*R9dFqA#_wFB$@Yo4$A8(7nyP% zgH^3115&TWU)t+uhY&TzncbAKpVay8V3auXU8%$48UrjV+#3L$C^=X@cKp09?GWdN z%RZh8a@;SNLLKMNp^DEVECxXeN}LW6%OA0DV48+%Q77Pq_mp!)wEwxv=;{Om6LFF)E{RGSicFMT_J@EOh+NkU~H;4Zd*VMld0s1RSZ9 z$cG1{{k->1s#%3Xfe>WR1(dCRpY6Z2F8HUP#|a4zj7+lbI+GjO_?X-L7>p?pFmwa8 zs-abb+bHX6hc{AU^C}WU6N!q@$3|ID*a)IsYY;9%fuUqoEkwSQEH2PRGzD9BX3cCcpZIyqZ@UihJ zL1?tXGm2l__Ua?ZDxxdEkT>4m-de8zCLbvaS9oYoM9#RP)SJwutC?O0%r`6TPC7ZDyl8`&mM zl3qzmTAd%SnRU~4-%DX+YEuEG=0w^;jx$P2^D3#?h~elDO#rH$O0r<4vc@0)a}CtD zl-KsgLQf|h_#A_tE7XND8^rK$RqEj?IcUaV_%X2cX^eGa^g%F@Fs8pLSUvO{^4;j_ z9XWrCFop%vAaweh4^oGR&&->V)Gs|^Alm!<_|FOafB*H@xbCX6JqMO zY=Bhs~Xmv;KBnGOpRMU`w&XDJvkTYqrN{q0q!755izlAF!Y_Rtf`RAI8}72YkA+2$?S2t3J{_ zfk|;~GVH{4v*xEV#T{6=kB||yf9FkaeAb#kHpNwqQ zY{J*K9@Y1m+We51(&Md|3F-$YT2D3%b(zV(eBAz0BtQ*t@k6YBd?RcRtnrrp%{|u2 z5OlczWiMi$s5t%OK-%ww76U2zSVSD)&t^rv4zC%v_s}Gdn;oHDBh4@Ozp4m$oJfGT z2W0gn1OHDo&DrsiigPv{`?j8;{^RGwOxXX#Y79Cl!z6EE8HiIi+efX3CpyC3D#S&j zR2O;{4i5X5ijZNxIbq(t2#Ekokc>pIZ(U)+ao8$@(W%pa6&q@cZuEoP#6?A+WPUw& zXtl}~>58>{xk=!py?j1zgG0Nv4ZoYvcr(M>*52?redqksT+y!4lok`j@6MltL&8Re zGKthh!^jbZEKy(C+V^5@rhWY5T^TN*|9Bor1gWv7dB+yTB=@gzqkwVDUY@|b%36#1 zF>Q5STSR^1ffWr7fKeO^(N_sX-2};&W|>HAHqcHgj#aT&a23 zHZU{Oe0_lc^`I4SoC^NVP6f2i2|F7VnSivsNHQ-(O zbj<=v192yKy7W9Ae1Z@ZX?pkhKtFhtYdItMI+~C8h2!@>PoT(G{Cm}*!1*N(uAkVK znKehwc16;)v0BBo5vohkpXb0_LIFSBDDt|&PF^OBu|uvS#6M{+UUde57~<@fLR9`^ z#u_d{8lfg`^TdqTXp;fh5o${qwmXNTe;Zmd*)r(Z{}#qU#Zr#if8m6sJyP9e_(4TF zR}J>|BM-6q3DpqCc_Ay^Z%Mq>VZ~4H?jssSV-<$h4eHYjU5e+9rb&|8>;9qfN$oY> zQ*QJt>p;;vFW|OjsP6jaXMP$|+*)$fzM-qAU@Lt2tb!Ut$9$VQ(fUFRiKWMZQuHNrjKC~Kr&*XGrn^{6TJ*5{2oT=8s zP$NIca4#TubCE23I%8#1>-Yu6%AqhA;S{@T8_TA7ivr9b8vU80Fp!}H>gYO%l{P@o zw^3GOOY50UIRD0a`itOpI(_wl0<%(vT6G#<_plE17yWIlAz_*sEqL{8} zoB7T^G-bd*A1bdC<<(#yg!}G{XfSZreaEmf*;{t=u>(%ZfFJo<*nAy1UU$~;D>IV^ z-2^jOvA7D8OUo4Y9-!ibL)0O!|1{Vr_K34ya3hdUukL8!~dw1C6 z{js5G2W`1O&BU>e&L=ILy2s$(0-BisPE#;Bcu%w5g@gwp8G(O^-Fwx@b+>Z9$uroS z%>F|IuSA-@rC_(!D8?^q7DGNYtNAKb{94Z%TOp_MgP##F@AFkXF~A^>hkx zWG2kXaw8yd@T}px8I{(gB}n|s1joCCh?h?&p$V->pB+`r{eL|6fbJo!7RJnEJzj^tbDxU7X zcna`WPyyA{I0CdAFp>1YBd|OXCwM+l>Ev4&T?s5sC!vInjI#*)CD9TjU06=#qXTu9 zI@>rUz5fF#-2a5<4*8jk^{qTZB;auB- zvFe9W>2-UUe{T<#*q&r z6l3_sdJ98Z=5{10DQVag$9b#!CC*P|B>Klug-OO`w?(pFv9&YXMc~%CK9`XlJ#HjQq!Vk1*JDbe!VZL*yKSlD`#lC{{oSV`xps zpzTVQQPXx*^B-Zi`LjEQyM;%t*Cnm2c-q8La#ZbjD-*oy?T0f)^ISu%Uoe~#w(Q<& zM^Z_vv$uPExAP&)RdS{at`W*qzkY>n)^R%{q~b_XSmpk5b%ix2Zo7%&QbViRB94wv z)1L+}P_!9eM^utK-Xfoj=Ti#Ld&{8(8l88CtfRQ}0 zt2K{MrElN?y-CGZ7na&@546qBaAHJ!5-jU3xiN@00JsAD*_k&}JkLZORhCxikg8F7~RU@TjeM)6C|hXxsst#UA~+=krI5! zK&(1W2PsZJB+_1Pe$+d}PFt zCr@Zi5zq}s6#cwo=SE?oP?wK{t`3+F2*=`i2l@>b^A7fe%8Klpd1*ouQNrI~#T2hkFjil5g0GI(l!Kl2M4EmLbm!*C z!IgsapxW(J5Q_ZiJeaEG4^q7kOYtM$Z>rDE+eayLMC+ibhhN6oVS^bSCI%zMqKUB{ z>&WMMpQ$x;^?M#f`O}2G3p;g^xXr-0DGL7rl2vvt1>5sKYq?AVDJ{-^pK^{zEFfbY zZ^njsp;qR3+w1ef(^x>7JSdYF2@Z`i%*Ov*$7x+@VE|*X(;#j=2g;mi5UasV*T;A=hqt zKps@PNB^_q*VoGC4A1VM8PyGmk(cw#nYqAsS8vw~0{jV4z=2Hg1(`Q{K(vPxk58S~ zCPAVkzxRm6y;jiXhi{u+0N<5ZhRw^M2>!M$JM`SV5FtG{TF@5O5uZ&XzRYD-!9FRC z8ppR;@smAgS~&CJnET^|YK=E8|KWLvrA6fU8;;`TLY!7_?|50YI{{0elLn1au2Fi` z*ck1@**2q-_2-`H;|mE`t}{YX853|ty?UZG=lFN?v5dtk9e^y8;y|=#9o(DScQQW( zJ}bJ{{jpo<+0)8rJ}1nZ8bdHB$0OhhcLC+oF9r2^Pj<;Est*ZSz%pZUpmI}rqe0b$^A6E^Tmth2%XWb6)agDMNUwm9*o4)B8*7g<1e8=s=F4s*g?{0W*TBN>mfUF zIa{Yd2*y5@--qa(D%I-BlOus73ktnPZMHwrY;Zaikn*)~JG1yXvDMYO*a`^&3Er=t z{HF`oUziuSzMM*@U`iaJNWg^|;p_9gAS;847}0*fxZHuL=`xqVZ=o%6s2E~-WOhoQcX%+P@ta0vDoz6u*`>8fL{X6t zX$>FX5E2+=zNYua1DFLX}8itdKw=3Z)m+%EmY^&+HhY;I8_ z;#wtB-<8RNX7}gQI?6MOJIm|K zer(0$xQij0ihoo1IN1(i@ER+E{5V)wHHllqdDI?)S~Yin(WhU{M0FDO^C8G#V?UGo zY|o7K>KV+g2kgiOFKRrj$G?w9HAgi%aoKbnb(7;h5^8*=19Lwn6FzOo7K~L`mFZm! zt$H|IWHw2DX!Pg0O`U(7pIDRkN2Hi}C;$z}v^fw}vC)P5D`vQuE8v^;PT>>5UKmc< zg=~xvI*}E$+)YA;)bo|;-|o5^8P(0(A78i#ZXHeQUC8H51y#NDn6Oe8P-0BW6{3+C6LUJ_c!6D-_Z5UeAfghyz$+1*t8ZzUY82 zXiPOONo6331b@uXWxAnw3cJ7Gf_s!6A}wcTjEA>%Rfm@yZg2j+>W8lpaW<@9BDtu- zKtR~vv>ltkD3=bQQDo+NI$~i;JP{{O0Iui~MIh3N8T9oIV(s%~0F*M2zZ1)ydK6e} zC_i=*6eP7jwN{eB20KWdDOhi#m8Y305;9V~@9;zKt*MNVcq3cqyT>-Tzu_QmK$0OG zPSKS_&uZ-6TC+l*2mb`2<^dl@34>XI$a+W`;02NP5)W#JpI7z&WdUd~QQ`&xMn%0f zazr5x6_D>y-}eTW$-~|~A7;_uHVNfY%r(Gb{stX5l>Bm9U`b;vhPRR*JZ3pk$?`Dy z))2~fR^Z1D(*WzJy{x*?O@JAl|1}v52L;mssSfOrMPSD#c;)w5bynsB-4rm$i%yY*lK%O6MYqV z--^CNJ#8@s^^;v5EV~sOA!ImCCxaxRM${VBB8Y^&hR_#wuTLa5;LAQt;E~VBG#1&R zi)iDO3e-2#zqh>W9XVwQ8sDx_OYSqo*xT{HF#9|R|AYM_);GqR*BOe9 zO1OjC2NfP^^9741%#ds0HcLWGcQn&?2L6f%Z#wO)JQkxd8lLvc8OHiKR7GVhlJhQ3 zJ>)y_{RE+?Zor^xgA z+K^E6EAI4;wJyO%#+sT|^PH>??>F~bo67jfS`q|Ij|hYjlUW)DY-)e-%Pzy(SeUdl zmzydaOpL!j3~!s>3{b=H(d&xy4Ps&Zu(16PfMd>GQ0NnE2^g3T894>cqKo}Nf)o7Q z(fWEn>b2r&uh)PIYrE{M-8`bciYdtv28k0qzwFie10_+GloXZXX@=zo;=;FuOCpsD2XcbMLCJIolbjhQ}|PAqyw?w)&gS{mhBpKPtC z67AH#Y|x0s4))-BghA^m(pV>zw-uOGBY^Kuy{a~wwI_AF^4wLUn__TgNL1pl%rtjf z&U8f^i;_l=RGOb&(oH&^!#yG;JY-@4e|iPe?ZsRX>WFD?LblF`vNp&!H{%Bz@kK0< zjX-WNO7-mJ;uipkL(l+*$eds}5Md((?P~;7{O3!WFW}=&X_egh==8Bp3#Boi(MI@d zq4DB-$rU^FiRgX9z@y4<%D|%6>cUDVhMMdfVo!h|@}R3xb3~?M#@yDzwE7n_-2m1U zL)Gu_f2_n;(vX_438e zca>)ic@29qNE43ZIYn(P?H+b9QzsK6l$r+t8rXeS^{%y)LSUSKPPvfw*JH&wHa42i z54}~<*Siy2$+b94UvsX&g?63hf%Fj*`&LjC!yY{C*zT@6gKH>Z>%NyHcxJj zm=CLd_>J}*#3eLu3THC*YuaqVZL*{R@UYur3*L5E&QesPm%7@?JU31gMfWv+9ij)k zNE9OGaTSlw53WURZW>geS&&Fv%7s$zQ?Bh$8i@@uBd?9aYp}-Ea{Cd(!%u@3@LHy! zjR6Koi)KTLX|!jNRxT2|;X*=CFt*}S4Rw1;IKomZa3sI9 z;2KWCkmL&zyCbI!zj5)C#+iq^v$|wz^mq(uwXQ@OoW(Q;*#-MB_&v=hC{1TS>IPu_ zcTS25H0xK9=fe!=eo$G&Id4v6(LwTVNY18*`AVr14eU);x%ek2OZ#Jq%axh+mueze zwHq6nqKf|iM%Ticou&T0-oT}?Hw&{5Y9;WLdZvbbR5XHz^^Z3?!Q5Ic$8GFat3=+4 zaK`iGd<9yO0w9S|?q+2F+5P2{k&XBMlh)w&%asKzh@L{h-ewkw0EC@5j2A53M!|Jk zR4v|_9L?wS1p7g|XdpAOUMy`h=p)@GoGY}ij!QfKPbqIZFbOWJjco|(dkYa08?4sB zn^)*n)^dHW6piE|SAnj85T}?u>#a2i64!ES=SqX|m;X*_8PwgPjBI$PPFpf5o85s> z512*V@KPc5xO)9cft5(N4hjjy%Z!5~7DKIyc%z$~jDKY@vhKQJF_uISnNZ?0C& zCO##4hlfl0Gw+#9hEyrjM&0y+NB26eyCdDsm%;}RSN?olG)$)`4LjN19-E{L4M#-fKP2FU*SYml^JrdT_EN7*W22Li z8um_lHzL75KXU&2LPIL^O~56q1t&YJlv*H!tm2vtktL_EMgy*Nxm1-=%ZiIVD+tSH zD=xhJUMhp!&(}p6o1MHRFf06wK}qnA1J~&b_Nh+UdbQkBh-a_1)`Jf z+?(cv=R;mA!#+%wcJl7$3Exui1i5Y0$2(@9*o0lW4)_ev6 z=M~)U>tF-fDs5s77_v*~5`W=;(NFH9e8Smn&0wV*0`+#YOKqy2;WM4-c4AZQrKzV` zav>N^XSGt!k{Gg9E@bBZQC@t-E2`Tchvr4$sV5)XJMrfC7tr%M9N90qkTJxP-$@rl zfnNLQ=b$_vUEwGmr85{)$*CRaqV~WV^<6_dpVj`>o%FGRCQDQU)RD;8yDZ9t z5&t1L^gx^ZY@+Qv8KNgXf*c)rMvGvvM2Ko)`Lr}8eyc(ZK)9Ywu}tQ`uPX8l_Cwy| zt*r1%gS1<3j&8QAh^rI_E_s)oDb`^EE_qy3wtP$CZ#>N)mO)x_3wO@rQHN8RB#fCi z^`)bsajcfjGI6vRN4X7mSb)ZF22@N}iK?q9lg`4ZL|N`?=2Hh8-S%<=O`iBSG443a zwi)PdwwsW7y%gF=_`h%{{^2(CI##+tt)6*;(q~DEI`)Zs2toBL^6tUvcNtq`y;hMj z@Mf(x{Zkw4wrcSs?L2K7Xg%h6cdB}JSV5^r#Wh#x%U?w+YG_0xI&WV+blnsXLRT%G z+#Lps&|NHpMZ9N*OB5N4K*^8!1jiugLz8mZv&!~5Cg^sY){g~k2RrIU9l>v>YyPT7 z?P!@C5>rE{C2S<>ua^AFE*}67SO+q#>%swmYm_3+)z|?=nRpob zyr6qx4J-YrKG4b+N=QMcwjPM*5q#_S7~rWtfh{Za2+PLfYdQJsAt{?rQ&vF#4BFd3 zJ2Jb&P4=X-RE{zFy6dWh%jVy5ymut30d=m!;A4Qd^tJ?_bqww3#JV59g!bRmbtX$+ z)STgMLCJF|qEgdqP6%YZ`4uBC+LRQ@EU|_Y@)Ty~MEtCxqo<3SzFeZN)0=&@z0gHy z-o2E>onh4Kdx#PvK2M=~-ZZ0|+Ku;MyxS)mQPEy~L0zVzxES!|&uY8ZyY(eJ5(bHy zT_DqMf4PjBWB`d=_|7ar!r-xzv)c-MASn7lZsz zPy{4KD?U{q(8l($^UB#cO_Phyo=vug0j8Cp!0c*c5!LE|)8D0ulRdMD&Agt-!8|WM zu%~)M8JBo*a1m`by)3twiAIPA|Iy!1BFhay3$>1*)-*WAuY*eQjK37XKtaoUOQCDM zAH}dfy~;zh8%I57TQ{zkmN^jxXufV(%xIW@b~%&|ErzEP){)1%;EtfcMPICtp$x}~ zacc8D3gU5ZUR)kxX8f=9w&xnD2*4>;@A2D`-3!VZV?j&YXIs zkOWC$$Zd9xItL!V=T8u+7wbzq$o)%ym?)9eNUj9`r@K5 zp`oKcnt%1IckY_AscN>50*#!6R%ffxC94SiY?rBgg*n(nD+JCWyF21&PBmijC%M_& zZ!k_-06fB!8Bgb7B2SbaT=b)#W;3nXc*xV{?)_qkq~0@lHRSggjeK9Z70lHDPwpx8 zpju}qxpx^KM4ycm1+tN$aX|kFe3*{py}-|70{uBNXCrM4j4K2+C|1?OO{g2`0wB+| z+|zFKrxMH%5Pg7?)e>qKa&A^A%U ziQ&CwY4uQlt(DALjF67(SPy~NMvAYgvOyXorYb9lwRN7^die3F#CjuqI+GE4Lih~} zD`=K(UfVkYu0%cA97r;zNi9M*F*wW9eg|S){f}DWwDTR&J062hMQ}{Q7H!hUA;0Sh z;0sekwtQAIKPtR|>HlC$e&_9uC0!6Jft>h_vUXBmETM}Q?Y8Y z??8z@$_JS4A$%I#-C4@-&T_i(gLen4y_H#R21>#_-sdWrTT@NytnDBC6>wtfXqno~ z=WR?elo$YkWD#vuXq9d`R;+V3AGm;UMkt5f1IFnS%e7Oknx#b1> zRpK{<2uXMIp`*~p{L0zA>KU=*;Dt>`H;OCAN~F^0^+EN5O?6qOi(673jpIFE+pmAI ziX#lldATEWF;;5FQ`&qnWRK%~17|#qqN0r&!p#oNBuTEz+f;*8??4(4(XImcEhf3j z@J>H%EM395>)mC2Nz}8fZ#MwGK}fS{-aB@Iv0WMSg; zW--~H@~AK-Go!yL;mxc_gESsP&S$Txh1G*7o}0bAB2~Dyf?nsE+}c%IvmGgAwy||* zr?1Ec{h)}5Y8=hhce>z|qh%p_#>bHnaN$KmN&^m{TbK+}pq_??NQLRyi;q`QbWGFlVD7<@z(GZ_#OG$4{^C_oIF|ACIY6AcZB#AS%QtIYda67L!VbGnlp^`|x72fUScTKka0s+7kPk`kTP)shh1eIxBNM)C*_3hD4ddh zrOvefd40%Sj4X+ry%MH=5b=>?9)hlPdZGFl9G zi$na{9In%VN+u{s<9Fp)igHUu{pY5%TNa`L;iFsP)~r z{9ffjd?_uzi2W8ukrYM|KA}`g7mZLA0--MbMI1p4!!C-Xh^emX>LjM*e%Lb}VIyP) zjxK~8EEZAv8wsh9zElYcDV;P4hzLyb*ncXcEpgP;Tv?LjgFeSdzwJ8Z+K1)uHs5h} zq`{Fw{n087XjcXg3$k%aH{HE~08-$$U#GtU==oaY>ou7dJ++k1RqGwv7U7zN_7=|e zgN+^f-+OGRR4HWQbWA|lVJj&9c`)(U@{cq_Zo#l%%aV5T8QwN}s*k4D=~cF}@&l;4 z%oz^WqB^mndcaL%9SksUzg&ilKFAzn1z*%@)ig|%fjAavc1 zLsIZ?EM@=q(DS@{mM<-)71w!SgW_BKH z<0&7M9*+9ZS5=SZa)>I1nf*8aCX)i^rXOay27f@Q7mX=a5w-n^Dq^00so0o{&bddY zJ||s#>4(egcZ?+12tc>hmu9Yf>(>`&(@c>L-G%-$I=`+nMoVMjB5QM1|6P^;&X_(4 z)5V+i-qIE#L+8%j^Y9jnTii|3-S|v9f6p&IwW0lB;#^{_s#xyjb-nVhC)&)m~fjNM;(~=Z$y~z2tM(+z_u<{o3qLwaoKVESV+$F80O<3Y|HZ5U2 z+9Y+9ap#cEDaqd>+INcY+0ufFEx1m?Ye$F3Eqdp>{!P?2bB`5^AmvL6=uOmu3&N#) zoB~@V1Q8y1OKoTEcv;#dkA7#@rs&&8W*a$f27}@4Nasv?>-wOh=;T%c3wLGq7uCKJlww3@CcJ(H=Yg3VG|WzGG#5HWFBK=%x|Ngu=&;kztFQNMMb8pkR)&1|BUUrHLI^bm=to0~dXPL5fJuwns|Km8 zQfmKeHpY!I6O=YU2s#{MOE^>UFwi<%xXv`U^duwQz+p8-aiU8!vVMc|E_AjLLvY;LIv^9zZyg2 z3QGp9l|C;=@$%}eVN8`i)bbGK3>M| z5M$~Gt14^+!gs#lnY@z`!R&T`_p8=FLxFr5sGzS8dJJJ^lv zFGF`y;uA?rhh)<3PTXSJp8VjidUtb<3?JM?W-Mm6t1_!3I>W)geK(j4a|LjRq~j7@ zNFejOmK-i6jFcVLf%;)}j!BG81RtzE11?Q%kk5Sdk;0G2Mk#IFYvlM}g$yQb*S8)i z{K%NJLK<-*#1hrRe_uId;L^htM{S1QzS~wmW=Tx`%kYsfk^Me5v@y1kP47WRY@9i! z1?tMlAdUgu7c;C%;JW4^WnAyj{EHTpt-Xb%qi3?M6W+rUA0x_vj`oqN4RC@A;&B-HV4 zQ=#^%;;*K~VOj9H1b>+K5fijctWqEflird<4u{Ay$cTG_&7=*kgA_b~sssF{1wGEJb_%rr#=QZI(0`fc#6? z6w8B6qz2(7N_8b01;4N6oaG~rR<{+s^~0cMSv?p~T(6pSjcy*cmKLt%WZ`=Ms5MRU zeG)J8?ze%ji3RJx(2$2lzmJyIN8m<*+u%W?&_%(&k=r(m_Hl+TD5ZJ{7vp!aI;mLl zYQgi0jWf8jtg+4NHnB{BiMOL0i<+ia1!^sm6$MJup|jr~x?bw3CdHpxb_;C+SExqz zGJ6tAv%DWqBCnpX69szgYflz^hi#)0w-d^uV6J>F=#w}`>uhC=h+eK}Qxln2-sQdT zZ-Khtt=$XS+Z`Sb6;XtKFMURB93Tz7!9H!d!i$ciU$0g{;bL4iha9D~=4|!$m(eh9 z`{D!1WD%mZ*>Q`%=_?Irwuv#37QVPMeGk=M!eyQY$ z!+Pjj#Ba>yaHXux?=H4r5rNJ@q6n7%QN$(SL=2KO_`0RZR5*fJ19NZRGPbM<2(No5 zG`zcP?yq@xvzf2~{rMe1Xg&do!S0;x!(Zf~rc4IJLu;UKj+U4S?xG?e8sjINs>X?E zej7mNlg`r~VAm_RKe)}Kyh0~jHGO8wTX#Gbfl9q?oVt`w%lPVcx`iVgq$R_##*SW> zb@t;ioc(s>M-ktaFWH$?N<}~BIth**)1OIy6q-{KaqF7N*m(n2nz_@xr#WEg`Iy`H z#r~{UM!p`cztYaW?{1&S5Wtxlp0?eL%2I&y;7_`~#JHXilzfkQ9rM52wyWcCgW%>r zC-UF({-}AjG?9%btgXjeEe%zwanOiPG*zhA9p-4LyH0+NM<>799uL(L;7&Z^jnQ+k zWBq&Qi|9Xn^yi9x-y#PP@`IJ!-Ym=KG1uJ{_>ekUlR;C&whA!-`T)hlcUwrNIyNmv z_y|<{btF&GJTFd%GJrqvG|V;JgaUO*4jtrvJbipiaqF`zV1Khr1=04d^V06pJg}~> z4_A4Ar-x4|0O8!i=rKy()1&!&)0OHO9Goj5p4cU>YUrTi;(kw@%->#A7J`U&Aj^&v zHJpMpcB6RaY!T^1KBF+JFWlwrpUlxlF!pR#!|XAtf?&f7M7Z0!9nsbK=x65PZsN|P7#}G60oMm!r%HJ`E)$^q-(bp zske;csKd_lCUXCDQ_85`i3WQWq3-QuvvhX#x5SPnb-)~^1;X(&-S9U6B|20e4>CL} z=6(*-VD~_pvLttPyO(U_L%KB0*YF6jp#i3Tvf)cXqoGHXi^7s;8fX~n=`jZ zX>pRTrZB}%LFTNzL!C{0DI6^5(~fyg-9OSLmM`2T7B1PW-uBPkL^mMp{XDYO_}rWI z!W~t=X1reHxKKzn)+Iz8!T+*2lK z-qmI6r$J_GfEB_tTS{1Pf>&geL%0Qt+QnAO7#Dqxc+(1o-2}%oS+3u(DJj?E;^*|2 z3-71Yl4Lg3=K$|6ha=^L5M2I8d>Oa%PP{p|YZQw?Z_J?TYlw13*h|M^O$FT(ZN3;e z7VLWBmzOQu&3C8I6NBxo$8SEV7OBx>H)c6^}HS0>E*|=UzwNsctfp;tP6KYk0KT?tjpgyqOPzjQ=7ZZP9~$CgE_9bIemyQ1Oml_7 z(vm{s*?X-v>9>s3G}dP-G_S zs5xK+bZ?ws1JJrtUO%=NtFCta=4zMf%h~rzV{Ny9wr)nZ^PT?1yAj^AxPg+`Bl&~In^G!_3$iDW@~Uc)Ssa(cqFk&iIx zRRyhQswAseWLewJZ;Gg9-`|6+*^oXqWH?z)Yeu33PG7&Kz4iBQ!W6Sede)9MjA&fD z!tO!HKYenaMIc#Z=X~-R3f3o@SC@Uc<%A*qVbbYG+K>33fQn*l^d#~s0U3_&2l4P- z&9zeRxdbFzK`mYcYz|5#`3O)RN-6jGR~v_l*%afihcnNA9_mDCk5N7@4Txx{-x0z4OE-BQLH8IYP*i$bmVg zZH&@Yp0aQIANKCL$?qqKY-6Q_8lL3t@fbThrRtu=#Cla4-Fv*@k@yGA0o3K~Fe>sw zbjQUA=(bUs2evK4Q{prLl zP#3Cpnyff4#`5iHwFFj=!&E*Fy za8dI+CszHp!@g&9IKgedB`k9O4? z7u|94u(Ts9@-c(>%0S!c$=he|w?0kW;fAht<*2zpjfcf`SmzygPEG3zpQJOjB!>kx){-jBQDQ>Yk0S)croX ze%GkOiZwXH-q) zNYp22z&*Ar<_8iagkYadk-I5Bouj=IP{` zh5SEDKnV|mc3dQ=Ct>b!y=52tu`B>3`(KNnN|A^lJlWamN^XE?6e1!+mUylDf6S16 ztbF1AXLSEvl-wlfpRrK=^sMkdJ^#1CA0vqWZzILb)H`^?$N%2>zbZ~s7XNMje^sRa z0uBEEcH}4eGiyaxu%DA9c8`xkVbG~H8R)oZXvV#ZN=kID#WdE7bmoSlaqB#9jsHUk zAC4tx;#MwDr*pkrL;rkx6!{TGGi*+w*B|!v5zQo{AI=J;RM%Q=vk#7%m}bobCQBH! zK8NEI5~n$v+l2ntOdU^=DHoKjg*Z0%PEOm@wzbw@`Hos=#>J(LL6||xNjQ6Dij8^M z{J(sEPLH9`fd3&eire!AU>x%`C_|8=X-8v^Jx@CJRX0P%?dp1tk8tP(Aa zWW)p@6ii3TWKvL&6aS*El;o#K9q%#~koxc9=Q4st2&bYI>(?xQ+$jk>e0)g_(BXr$ zIMa|}xNK!c^HCM20fDIkE6ejBjQHvBKA8G1P>CX{rTqu)@I$rbKsUTxYtn47&uTKj z3Lqft!e)X#y?ORPJFSn8asB3Q?KWWrzwbI+iKW(L4=}aGdPO%3(BlO+Z}Wu}Vz;zmm~2lA`aXOk zx%@)#F=^hfNG&FIeZ%l&FT_USP>}e{-oM=q(Q9o>0Ya#bVe|$GEM?Y zSeJc`g3Rwm=6JxWD3U!(;SEG`v^MYx+X7-@Khd0h-c(KXf7tu0xG1~s4;Yv3EF$!0uAv)2X;7qF5CJLa?yjL{q?@5@=zPcLci-MVarFQE58i|KY%|xz>{)B? zz4nUlTFbLn$^Ur$xfa&IVT)KHmk=Uk^?3lX;nD>nvS%r~%vb8?4}_DoFMYBRrY_C2 zpxHK+Z!r35u=;&Y9>xjvYCrh*p`UEp8IL~xd1e>z7zx_T^WI|1rBp(V=J?S)Ude3= z@G2!;$1!f_+lhFp??7jb)G&SC!81NN6UM@-Qx#q+LoVT?g!*pD=r{TJE z*XQ1Wjba>5^Pus(>?o1ZpN|e7;FUBMq8Y^;f<5Cb5fj@*a) z106^So*?s3@w>cPtq>>arb7J3hs*Y6L86!kg15QtnUOpA;o+K(INY+uMoEEvHLtwG z6;gTECo(~siCL*EdG}6_pUpX!&?uU`g?6a1dx!dx_$@laUbj^GV%+fTe-P?ZDn&A} zWcH^DA!yFW6}|Cs2$J%5azw5(D*I#@b=<@!v#>IE*l?a6CGf-h2}m}k4^nX!ghOXKV!dPy@cX#((RX{|@%Sf7SzRs~atbuq!8u`auog)UtzzsC#F{YzK zqGY4mZ8`MaJ4?#i_$0aB#;8jas=%i((Lb#1mz_C>-Cx=8g= zdfQXy%LSQ;NK@l(c$Tgj9_F#ls@;8Z`FcJU7bAUaLv2A!FIu|k#$M$NkwlThi(!=Y z%ob!X+(yTCbs-Yt3V^bQ(9#DvVIeAI>HQz7E{mz^+pC+;?VfU?Mf1nVba;}sq~b>% zdAwANl25$9Az)rznUsq@B6W9Sum9(UTj8QrV{|7$h z$gN8vsB?fnr@gZpTaLZ8G-9OjWy^c@iqmGuyobIuPSkwIVL=z!0>s|ye!}qM*(e(g zsSw#p=GTReCN|e8w&I^W&TQ#5M{#|XM=SZJs)P!e_Q(9nY3;4?7?CJFi96BEkKQN` zc#h$bGLfeW-1!)Yck zJLeGe#A3kQ3D>`2mB#Gaf4rl(r**jggcmQ!Ar`BC#9muY#UDW5hqGftbvM|tCCHHn zDe^j(Qc4#izuh|Q8253`D`SC@Z@ykaqOx${n0HClc7c1y;P$Jdy@WLnD?J!WViAtp z`2c-@`3>SY#2y!fD!^O#kn2^#9~kS-4^Li(C8-eCOZaaMMa~Va=cP#Z@uF*D3e2`^Hd9Y+z?le+PP;B% zuaP{bo!(4x;jNsu<`SO-;UIzz;3%6ZUw@XnK5;s|8wzML5i_q)Xd7VYz;aWZCR%b- zi0n&EH~x4K`n+*hIEWuxMk{l{Z=LBm0(L|oTI{P{`~GYr(bV1WIGJTzb3u-c%Q&W# zqdyd3ctNy=2l6o=P`3%jb*J4VFodtf@-ykF{bcq9X8nE3x&F^7@~-#ImZx7+reB`% zY%Nm7t*^(Ml_HuL3Q?m+(g3@A)@si~2L;X-UI~^H$Ezy&oZGq=(k zbwKaje_VI}Bk0WC;VO^zVk9d9rTMIT?I+f@x-l|mA8&t={;SG2-JV+UkHm{8XFY=} z2j0~|7CjYd4roxcYF+a;p8?*QBi_dJD)Mv@uurGft25sirhLUa6RF~h4+1JkMfo2T zcZ%p`msfW0u0e~~QpxL;vXvv*)P%_@mUYG&8?WbdTpvneP`(@95^*_Is#wd#9Aej$ zaG2tmi&il7n;hD+>@Gb%vG+v4s6#NtBybK(r~E!35N`1_7OT0B+UT~3QhstO22&jG z`o#$_80_w;3?$@)Yvzjyf3!{$n}YJxk&}m}yUh%;!Bnye?H_yLFFsvTjOf!{{;5=+ zGQh-bwpS(6@E481AUlr*9ygx!pf)TE({}98JUMf(Q$}~ppV3J6v@hM_O0Sx&~2`n^kS!BwW+}>uvhvBUXYgbM`<^b=)1PYWka97 ziwDeT5}r3giHZidrCYA(&e;3pi)=wlkNWFDOM>SW_FU0^-s_&*giI5_d3RYuG*lbKqzz?r-5QTz0uPmv8@jWVS%xADW-7z`^Ke;OS(YVlRds0IwR zy6l)J7}baven~D6%{8DsDf6a))vP6d(M_N4{XzyaE0zo&mEB8!w!kg=Pj8P4;!uxs zsrxnO&t_$WY1>(p?Mq&KlOU{m>GIy>227*q*i#Ev+;7oh11b-0y$0@RN9Mg01oAe$ zlqIv91T4p?htko!<1i1+ZI#9xx($QQaRDF8)mM&Ec)4DJkdF;+SB4y~pSa z=hvn@vE3J+2`2Oo_3qMj$6IogL^-xAg8b5Y&%a%|y5F)ujr}F6J0linPjQl9X{3)jXF4%SdfQ&;8YK^&nn(^TT8s#txpVLy_By#P!xSeJKw4Qok-EiECEOh zc8AsaurKrCE?O;SHGU?xb7s3&)5s^c>C5aSw@unu!VYEAmv+X zCy0jD!OPYsE(mI^D%92&W$~%vM_qfZiM*A%*nELQb)RrJ8rt81rmK2oyvcC4sPb`IP}dTZ$+%83AeC2 z_qC~e!$TH-15e8@5|z`QhN}8r+%;dSDNG8&Gqv>d z^)O@BdCU%(({_;3uJBOq#F~%Lql}jk@6C7QsPqKcMu)tzD)Lmg6CITt{8C0h?jADdTV`dU zDmh>+t_qT>P~aE%fH!{gwVJw5IM|7gkVp*$Ic~iBd~?4u?&ASAQZa$&4(tf-TsE^t z#|=J-4)68Gy44owp?CE5aU1c{Z$SIx{aihc;-|pZVJP(G=S61t5nNI_o!%zMl|6fJ zyHTD#9vWa~wNlKgddCenzWT$gcELk*Ah5>J3yyMza;2mP(2krpG+QtPUEE4mIw)~CaoQKu8oo-fGNVU?j zB&ZIGeQTeq$w}Wv+PtmoO43Te;FL1+q*-S`R3Ra_p7!w7S45Ltby3WE<;CCu{cgG; z4{_Gm%(zd+z5Y7iG(_^OBUy_NgnCxWKB1*@w}|ycou888<=HJxyR*xb_9475Ggx4p zZV!r6K;?x6e0-v<$~^+;=;;l8gyM{u=M_2E3vOT5y$!%jX}lKg=a-zmWJq`CYD?oY zVHb;2{T3@}5xF0?U3q0U%GE-jJyNmc6Pt{w7^829^f-pPFS?3jJ|K^_P-jp3;ANzg z#cr$XPYgP!IX?QbRE)cI`ktn$b90 zHco+FLSDOJtm@e>RI<7T@MwQnL9OFcoEEE)f_zqy`mguOn}L-FKL=1=$eGyFKB*Os zOk6s7w)S}w4w}H4-*WHI76})kPi3y`0FRI3*q2c;#7&s(r~s~vQ&&~4)$5nz=mNOW zB8$#)r{G>_WUVJ|yRj7G>grw`1)^AsF#@H_f(@SIM@hCJvnb94^ppk6G3N#Zd|-tlo2tuHJumOMm{vy|kkRL{R$|LHl9hx?OImsEN8 z+jE7m>xS89r9YA4s{YNbu4akoX5Zycc)(6=w3*aOp__fsxG?AGHS%e&?Gt{rB;p=o zj3j3AXo_jRw*8m2Z&rGAkST1|nk})q9~Ufn+G8d* z1MsclcGEul^<)=VS5|Mml=}^DP@I zzob66W3ZAk*oS+~hT#;7g@_%H4W}=@Z;F*cf3ZHU>aDvaDXz|uvnE1IJQiNx+x+P> zZmSKU!z-*pmp6|1mfy?13VFNlu#@9B#@$p*OHKBeG&sJ-5pkY z1MeOxhQI7o*?@U&xxbSOybGH`Ioa6N<$T>UdhRjz<((>$gXjed@xu|}BnPHc^&F9F z0JmugSu4nRSLnizwIhc!*A&Gt%ysbVaId3Jx7apymwSjeI_CB)PHg|2LMq*-&KpAt zoW74c&yM>)vTsjb(eGJqG|Z-2#FrYk?s+?y;zkuBpM9PM1#lW8cds30*pt`@8TZh! zy+HT-;4T;5C)Dwroc_sTKf<#NOeEi+l}?nCoqfUN6v=N9XC~%?VEXA~cH`ZMo`>~# z@wG4El<)Q;R=cYb)0-1t6q1w3OLW40mfpdB1yx=fVpp8hkB>w(_F@v5=Cji&yuVK! zuSdA4HMX;QCS)Kh7U&DhPQ_mt4&8Ch+grK%i(psU-Q zuFKQy=!^P7Z`KU*Shxw_c0wWeX^iKsFO6V+U0!#6XANQL0G+J&V|)~jFRjX)=w6gFJA)YZ zXpkmzR|h!qW+=}DGP_bG?~{gaV|Dk&ijpH(4|3_?8~c4gJeg$2YP6>Yaopjq`+9Z! zaK&IEZLUe_M?iL?tHS`okc5GhCbwho2L zroib2fL1CQ$$$G(c(>#r7k>2m=D@Gvls<@T2HT>5 zl+zW$TsXMuTg}3Ly_1?B@zyr3_^hhtdz%W5y;B{o+AiENk4k#Xp}}vWs}b$$>6sq6 z{on|!3ZAqQ!NI|8Idm?|WR@7-a)kG$NJbSiS_t%yy$7TsZGrbSw2>KbE5b8%c9`XuB;P&JvC|M7YTBciKzykKII55y*B zB`Vl#dBdBcba)MgSd3+hzW-hd>+bMWz~xQ3y|%Pq^w)h%QlTVpx8NW>Jd1vh{*PBb ztWAr}Mm4yM!qT9&9P={Ea;^a?cqw~Q=na?$Z>vV4u(7M9BT~L$BoI!>bK%S(v(JZi z&CA3ANHyY7DKLtvz_)IA?}kjulfUdG7g`lqbY>s@*q0!@h>5-( zZ*~1$0p#Wlkzq`d9TKR4|AdD?7ife?Lz~b0grDXGTYp}qF~&fpOBt2>QENnGWap&S z@CGGfG%DfeAENZbu{+b1w3AjVQkpQbPO{6*UDCdGsr*hd|enV zkstnsR1Kr4{wpy6ns$<0p*JQk(YtMWv6^`$fHGqr72(UiMBZ!AC>(#NyqIbbN?(tq5vrwKWv zM3+c_MRNBd>jzu@x8yU)11l$AFEr#AT}GjU^e>tTAXX*u4p@KV7GUUw;J5Ja@nJbL z>!kP%Eoe3yp0&Aq&HC(0i{SGDz=&vbm8r?XQqYm8f4e!-1MTqE`}ecRC@RB~wqtS6 z!Vmcuf>9{FS5Dz+TD4uvonVJbZ?NI}?cC-0n{OlH;M&pqO+6yKgY;#(D8Q?Ce~3#L zTl`#scAleWhRS~^uK$N

*s<{wQdsE$Bo*IXD?yp|XCz5HRInS0I%NcMqg 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 aFGwgzO+3_{(!>J)!S1We7t1{f{C@yd2SnEZ diff --git a/v1.9/keepalived/check_apiserver.sh b/v1.9/keepalived/check_apiserver.sh deleted file mode 100755 index 3ceb7a8..0000000 --- a/v1.9/keepalived/check_apiserver.sh +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/bash - -# if check error then repeat check for 12 times, else exit -err=0 -for k in $(seq 1 12) -do - check_code=$(ps -ef | grep kube-apiserver | grep -v color | grep -v grep | wc -l) - if [[ $check_code == "0" ]]; then - err=$(expr $err + 1) - sleep 5 - continue - else - err=0 - break - fi -done - -if [[ $err != "0" ]]; then - echo "systemctl stop keepalived" - /usr/bin/systemctl stop keepalived - exit 1 -else - exit 0 -fi diff --git a/v1.9/keepalived/keepalived.conf.tpl b/v1.9/keepalived/keepalived.conf.tpl deleted file mode 100644 index 52ae75a..0000000 --- a/v1.9/keepalived/keepalived.conf.tpl +++ /dev/null @@ -1,29 +0,0 @@ -! Configuration File for keepalived -global_defs { - router_id LVS_DEVEL -} -vrrp_script chk_apiserver { - script "/etc/keepalived/check_apiserver.sh" - interval 2 - weight -5 - fall 3 - rise 2 -} -vrrp_instance VI_1 { - state K8SHA_KA_STATE - interface K8SHA_KA_INTF - mcast_src_ip K8SHA_IPLOCAL - virtual_router_id 51 - priority K8SHA_KA_PRIO - advert_int 2 - authentication { - auth_type PASS - auth_pass K8SHA_KA_AUTH - } - virtual_ipaddress { - K8SHA_IPVIRTUAL - } - track_script { - chk_apiserver - } -} diff --git a/v1.9/kube-canal/canal.yaml.tpl b/v1.9/kube-canal/canal.yaml.tpl deleted file mode 100644 index f7942f1..0000000 --- a/v1.9/kube-canal/canal.yaml.tpl +++ /dev/null @@ -1,357 +0,0 @@ -# Canal Version v3.0.3 -# https://docs.projectcalico.org/v3.0/releases#v3.0.3 -# This manifest includes the following component versions: -# calico/node:v3.0.3 -# calico/cni:v2.0.1 -# coreos/flannel:v0.9.1 - -# This ConfigMap can be used to configure a self-hosted Canal installation. -kind: ConfigMap -apiVersion: v1 -metadata: - name: canal-config - namespace: kube-system -data: - # The interface used by canal for host <-> host communication. - # If left blank, then the interface is chosen using the node's - # default route. - canal_iface: "" - - # Whether or not to masquerade traffic to destinations not within - # the pod network. - masquerade: "true" - - # The CNI network configuration to install on each node. - cni_network_config: |- - { - "name": "k8s-pod-network", - "cniVersion": "0.3.0", - "plugins": [ - { - "type": "calico", - "log_level": "info", - "datastore_type": "kubernetes", - "nodename": "__KUBERNETES_NODE_NAME__", - "ipam": { - "type": "host-local", - "subnet": "usePodCidr" - }, - "policy": { - "type": "k8s", - "k8s_auth_token": "__SERVICEACCOUNT_TOKEN__" - }, - "kubernetes": { - "k8s_api_root": "https://__KUBERNETES_SERVICE_HOST__:__KUBERNETES_SERVICE_PORT__", - "kubeconfig": "__KUBECONFIG_FILEPATH__" - } - }, - { - "type": "portmap", - "capabilities": {"portMappings": true}, - "snat": true - } - ] - } - - # Flannel network configuration. Mounted into the flannel container. - net-conf.json: | - { - "Network": "K8SHA_CIDR", - "Backend": { - "Type": "vxlan" - } - } - ---- - -# This manifest installs the calico/node container, as well -# as the Calico CNI plugins and network config on -# each master and worker node in a Kubernetes cluster. -kind: DaemonSet -apiVersion: extensions/v1beta1 -metadata: - name: canal - namespace: kube-system - labels: - k8s-app: canal -spec: - selector: - matchLabels: - k8s-app: canal - updateStrategy: - type: RollingUpdate - rollingUpdate: - maxUnavailable: 1 - template: - metadata: - labels: - k8s-app: canal - annotations: - scheduler.alpha.kubernetes.io/critical-pod: '' - spec: - hostNetwork: true - serviceAccountName: canal - tolerations: - # Tolerate this effect so the pods will be schedulable at all times - - effect: NoSchedule - operator: Exists - # Mark the pod as a critical add-on for rescheduling. - - key: CriticalAddonsOnly - operator: Exists - - effect: NoExecute - operator: Exists - # Minimize downtime during a rolling upgrade or deletion; tell Kubernetes to do a "force - # deletion": https://kubernetes.io/docs/concepts/workloads/pods/pod/#termination-of-pods. - terminationGracePeriodSeconds: 0 - containers: - # Runs calico/node container on each Kubernetes node. This - # container programs network policy and routes on each - # host. - - name: calico-node - image: quay.io/calico/node:v3.0.3 - env: - # Use Kubernetes API as the backing datastore. - - name: DATASTORE_TYPE - value: "kubernetes" - # Enable felix logging. - - name: FELIX_LOGSEVERITYSYS - value: "info" - # Don't enable BGP. - - name: CALICO_NETWORKING_BACKEND - value: "none" - # Cluster type to identify the deployment type - - name: CLUSTER_TYPE - value: "k8s,canal" - # Disable file logging so `kubectl logs` works. - - name: CALICO_DISABLE_FILE_LOGGING - value: "true" - # Period, in seconds, at which felix re-applies all iptables state - - name: FELIX_IPTABLESREFRESHINTERVAL - value: "60" - # Disable IPV6 support in Felix. - - name: FELIX_IPV6SUPPORT - value: "false" - # Wait for the datastore. - - name: WAIT_FOR_DATASTORE - value: "true" - # No IP address needed. - - name: IP - value: "autodetect" - - name: IP_AUTODETECTION_METHOD - value: "can-reach=K8SHA_CALICO_REACHABLE_IP" - - name: NODENAME - valueFrom: - fieldRef: - fieldPath: spec.nodeName - # Set Felix endpoint to host default action to ACCEPT. - - name: FELIX_DEFAULTENDPOINTTOHOSTACTION - value: "ACCEPT" - - name: FELIX_HEALTHENABLED - value: "true" - securityContext: - privileged: true - resources: - requests: - cpu: 250m - livenessProbe: - httpGet: - path: /liveness - port: 9099 - periodSeconds: 10 - initialDelaySeconds: 10 - failureThreshold: 6 - readinessProbe: - httpGet: - path: /readiness - port: 9099 - periodSeconds: 10 - volumeMounts: - - mountPath: /lib/modules - name: lib-modules - readOnly: true - - mountPath: /var/run/calico - name: var-run-calico - readOnly: false - # This container installs the Calico CNI binaries - # and CNI network config file on each node. - - name: install-cni - image: quay.io/calico/cni:v2.0.1 - command: ["/install-cni.sh"] - env: - - name: CNI_CONF_NAME - value: "10-calico.conflist" - # The CNI network config to install on each node. - - name: CNI_NETWORK_CONFIG - valueFrom: - configMapKeyRef: - name: canal-config - key: cni_network_config - - name: KUBERNETES_NODE_NAME - valueFrom: - fieldRef: - fieldPath: spec.nodeName - volumeMounts: - - mountPath: /host/opt/cni/bin - name: cni-bin-dir - - mountPath: /host/etc/cni/net.d - name: cni-net-dir - # This container runs flannel using the kube-subnet-mgr backend - # for allocating subnets. - - name: kube-flannel - image: quay.io/coreos/flannel:v0.9.1-amd64 - command: [ "/opt/bin/flanneld", "--ip-masq", "--kube-subnet-mgr" ] - securityContext: - privileged: true - env: - - name: POD_NAME - valueFrom: - fieldRef: - fieldPath: metadata.name - - name: POD_NAMESPACE - valueFrom: - fieldRef: - fieldPath: metadata.namespace - - name: FLANNELD_IFACE - valueFrom: - configMapKeyRef: - name: canal-config - key: canal_iface - - name: FLANNELD_IP_MASQ - valueFrom: - configMapKeyRef: - name: canal-config - key: masquerade - volumeMounts: - - name: run - mountPath: /run - - name: flannel-cfg - mountPath: /etc/kube-flannel/ - volumes: - # Used by calico/node. - - name: lib-modules - hostPath: - path: /lib/modules - - name: var-run-calico - hostPath: - path: /var/run/calico - # Used to install CNI. - - name: cni-bin-dir - hostPath: - path: /opt/cni/bin - - name: cni-net-dir - hostPath: - path: /etc/cni/net.d - # Used by flannel. - - name: run - hostPath: - path: /run - - name: flannel-cfg - configMap: - name: canal-config - - -# Create all the CustomResourceDefinitions needed for -# Calico policy-only mode. ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -description: Calico Felix Configuration -kind: CustomResourceDefinition -metadata: - name: felixconfigurations.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: FelixConfiguration - plural: felixconfigurations - singular: felixconfiguration - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -description: Calico BGP Configuration -kind: CustomResourceDefinition -metadata: - name: bgpconfigurations.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: BGPConfiguration - plural: bgpconfigurations - singular: bgpconfiguration - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -description: Calico IP Pools -kind: CustomResourceDefinition -metadata: - name: ippools.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: IPPool - plural: ippools - singular: ippool - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -description: Calico Cluster Information -kind: CustomResourceDefinition -metadata: - name: clusterinformations.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: ClusterInformation - plural: clusterinformations - singular: clusterinformation - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -description: Calico Global Network Policies -kind: CustomResourceDefinition -metadata: - name: globalnetworkpolicies.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: GlobalNetworkPolicy - plural: globalnetworkpolicies - singular: globalnetworkpolicy - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -description: Calico Network Policies -kind: CustomResourceDefinition -metadata: - name: networkpolicies.crd.projectcalico.org -spec: - scope: Namespaced - group: crd.projectcalico.org - version: v1 - names: - kind: NetworkPolicy - plural: networkpolicies - singular: networkpolicy - ---- - -apiVersion: v1 -kind: ServiceAccount -metadata: - name: canal - namespace: kube-system diff --git a/v1.9/kube-canal/rbac.yaml b/v1.9/kube-canal/rbac.yaml deleted file mode 100644 index 3997358..0000000 --- a/v1.9/kube-canal/rbac.yaml +++ /dev/null @@ -1,129 +0,0 @@ -# Calico Roles -# Pulled from https://docs.projectcalico.org/v2.5/getting-started/kubernetes/installation/hosted/rbac-kdd.yaml -kind: ClusterRole -apiVersion: rbac.authorization.k8s.io/v1beta1 -metadata: - name: calico -rules: - - apiGroups: [""] - resources: - - namespaces - verbs: - - get - - list - - watch - - apiGroups: [""] - resources: - - pods/status - verbs: - - update - - apiGroups: [""] - resources: - - pods - verbs: - - get - - list - - watch - - patch - - apiGroups: [""] - resources: - - services - verbs: - - get - - apiGroups: [""] - resources: - - endpoints - verbs: - - get - - apiGroups: [""] - resources: - - nodes - verbs: - - get - - list - - update - - watch - - apiGroups: ["extensions"] - resources: - - networkpolicies - verbs: - - get - - list - - watch - - apiGroups: ["crd.projectcalico.org"] - resources: - - globalfelixconfigs - - felixconfigurations - - bgppeers - - globalbgpconfigs - - bgpconfigurations - - ippools - - globalnetworkpolicies - - networkpolicies - - clusterinformations - verbs: - - create - - get - - list - - update - - watch - ---- - -# Flannel roles -# Pulled from https://github.com/coreos/flannel/blob/master/Documentation/kube-flannel-rbac.yml -kind: ClusterRole -apiVersion: rbac.authorization.k8s.io/v1beta1 -metadata: - name: flannel -rules: - - apiGroups: - - "" - resources: - - pods - verbs: - - get - - apiGroups: - - "" - resources: - - nodes - verbs: - - list - - watch - - apiGroups: - - "" - resources: - - nodes/status - verbs: - - patch ---- - -# Bind the flannel ClusterRole to the canal ServiceAccount. -kind: ClusterRoleBinding -apiVersion: rbac.authorization.k8s.io/v1beta1 -metadata: - name: canal-flannel -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: flannel -subjects: -- kind: ServiceAccount - name: canal - namespace: kube-system - ---- - -# Bind the calico ClusterRole to the canal ServiceAccount. -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: canal-calico -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: calico -subjects: -- kind: ServiceAccount - name: canal - namespace: kube-system diff --git a/v1.9/kube-dashboard/kubernetes-dashboard.yaml b/v1.9/kube-dashboard/kubernetes-dashboard.yaml deleted file mode 100644 index 9094412..0000000 --- a/v1.9/kube-dashboard/kubernetes-dashboard.yaml +++ /dev/null @@ -1,192 +0,0 @@ -# Copyright 2017 The Kubernetes Authors. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Configuration to deploy release version of the Dashboard UI compatible with -# Kubernetes 1.8. -# -# Example usage: kubectl create -f - -# ------------------- Dashboard Secret ------------------- # - -apiVersion: v1 -kind: Secret -metadata: - labels: - k8s-app: kubernetes-dashboard - name: kubernetes-dashboard-certs - namespace: kube-system -type: Opaque - ---- -# ------------------- Dashboard Service Account ------------------- # - -apiVersion: v1 -kind: ServiceAccount -metadata: - labels: - k8s-app: kubernetes-dashboard - name: kubernetes-dashboard - namespace: kube-system - ---- -# ------------------- Dashboard Role & Role Binding ------------------- # - -kind: Role -apiVersion: rbac.authorization.k8s.io/v1 -metadata: - name: kubernetes-dashboard-minimal - namespace: kube-system -rules: - # Allow Dashboard to create 'kubernetes-dashboard-key-holder' secret. -- apiGroups: [""] - resources: ["secrets"] - verbs: ["create"] - # Allow Dashboard to create 'kubernetes-dashboard-settings' config map. -- apiGroups: [""] - resources: ["configmaps"] - verbs: ["create"] - # Allow Dashboard to get, update and delete Dashboard exclusive secrets. -- apiGroups: [""] - resources: ["secrets"] - resourceNames: ["kubernetes-dashboard-key-holder", "kubernetes-dashboard-certs"] - verbs: ["get", "update", "delete"] - # Allow Dashboard to get and update 'kubernetes-dashboard-settings' config map. -- apiGroups: [""] - resources: ["configmaps"] - resourceNames: ["kubernetes-dashboard-settings"] - verbs: ["get", "update"] - # Allow Dashboard to get metrics from heapster. -- apiGroups: [""] - resources: ["services"] - resourceNames: ["heapster"] - verbs: ["proxy"] -- apiGroups: [""] - resources: ["services/proxy"] - resourceNames: ["heapster", "http:heapster:", "https:heapster:"] - verbs: ["get"] - ---- -apiVersion: rbac.authorization.k8s.io/v1 -kind: RoleBinding -metadata: - name: kubernetes-dashboard-minimal - namespace: kube-system -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: Role - name: kubernetes-dashboard-minimal -subjects: -- kind: ServiceAccount - name: kubernetes-dashboard - namespace: kube-system - ---- -# ------------------- Dashboard Deployment ------------------- # - -kind: Deployment -apiVersion: apps/v1beta2 -metadata: - labels: - k8s-app: kubernetes-dashboard - name: kubernetes-dashboard - namespace: kube-system -spec: - replicas: 1 - revisionHistoryLimit: 10 - selector: - matchLabels: - k8s-app: kubernetes-dashboard - template: - metadata: - labels: - k8s-app: kubernetes-dashboard - spec: - nodeSelector: - node-role.kubernetes.io/master: "" - containers: - - name: kubernetes-dashboard - image: gcr.io/google_containers/kubernetes-dashboard-amd64:v1.8.3 - ports: - - containerPort: 8443 - protocol: TCP - args: - - --auto-generate-certificates - # Uncomment the following line to manually specify Kubernetes API server Host - # If not specified, Dashboard will attempt to auto discover the API server and connect - # to it. Uncomment only if the default does not work. - # - --apiserver-host=http://my-address:port - volumeMounts: - - name: kubernetes-dashboard-certs - mountPath: /certs - # Create on-disk volume to store exec logs - - mountPath: /tmp - name: tmp-volume - livenessProbe: - httpGet: - scheme: HTTPS - path: / - port: 8443 - initialDelaySeconds: 30 - timeoutSeconds: 30 - volumes: - - name: kubernetes-dashboard-certs - secret: - secretName: kubernetes-dashboard-certs - - name: tmp-volume - emptyDir: {} - serviceAccountName: kubernetes-dashboard - # Comment the following tolerations if Dashboard must not be deployed on master - tolerations: - - key: node-role.kubernetes.io/master - effect: NoSchedule - ---- -# ------------------- Dashboard Service ------------------- # - -kind: Service -apiVersion: v1 -metadata: - labels: - k8s-app: kubernetes-dashboard - name: kubernetes-dashboard - namespace: kube-system -spec: - type: NodePort - ports: - - port: 443 - targetPort: 8443 - nodePort: 30000 - selector: - k8s-app: kubernetes-dashboard - ---- -apiVersion: v1 -kind: ServiceAccount -metadata: - name: admin-user - namespace: kube-system - ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: admin-user -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: cluster-admin -subjects: -- kind: ServiceAccount - name: admin-user - namespace: kube-system diff --git a/v1.9/kube-heapster/influxdb/grafana.yaml b/v1.9/kube-heapster/influxdb/grafana.yaml deleted file mode 100644 index 10c1417..0000000 --- a/v1.9/kube-heapster/influxdb/grafana.yaml +++ /dev/null @@ -1,75 +0,0 @@ -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: monitoring-grafana - namespace: kube-system -spec: - replicas: 1 - template: - metadata: - labels: - task: monitoring - k8s-app: grafana - spec: - nodeSelector: - node-role.kubernetes.io/master: "" - containers: - - name: grafana - image: gcr.io/google_containers/heapster-grafana-amd64:v4.4.3 - imagePullPolicy: IfNotPresent - ports: - - containerPort: 3000 - protocol: TCP - volumeMounts: - - mountPath: /etc/ssl/certs - name: ca-certificates - readOnly: true - - mountPath: /var - name: grafana-storage - env: - - name: INFLUXDB_HOST - value: monitoring-influxdb - - name: GF_SERVER_HTTP_PORT - value: "3000" - # The following env variables are required to make Grafana accessible via - # the kubernetes api-server proxy. On production clusters, we recommend - # removing these env variables, setup auth for grafana, and expose the grafana - # service using a LoadBalancer or a public IP. - - name: GF_AUTH_BASIC_ENABLED - value: "false" - - name: GF_AUTH_ANONYMOUS_ENABLED - value: "true" - - name: GF_AUTH_ANONYMOUS_ORG_ROLE - value: Admin - - name: GF_SERVER_ROOT_URL - # If you're only using the API Server proxy, set this value instead: - # value: /api/v1/namespaces/kube-system/services/monitoring-grafana/proxy - value: / - volumes: - - name: ca-certificates - hostPath: - path: /etc/ssl/certs - - name: grafana-storage - emptyDir: {} ---- -apiVersion: v1 -kind: Service -metadata: - labels: - # For use as a Cluster add-on (https://github.com/kubernetes/kubernetes/tree/master/cluster/addons) - # If you are NOT using this as an addon, you should comment out this line. - kubernetes.io/cluster-service: 'true' - kubernetes.io/name: monitoring-grafana - name: monitoring-grafana - namespace: kube-system -spec: - # In a production setup, we recommend accessing Grafana through an external Loadbalancer - # or through a public IP. - # type: LoadBalancer - # You could also use NodePort to expose the service at a randomly-generated port - # type: NodePort - ports: - - port: 80 - targetPort: 3000 - selector: - k8s-app: grafana diff --git a/v1.9/kube-heapster/influxdb/heapster.yaml b/v1.9/kube-heapster/influxdb/heapster.yaml deleted file mode 100644 index 21b96c7..0000000 --- a/v1.9/kube-heapster/influxdb/heapster.yaml +++ /dev/null @@ -1,48 +0,0 @@ -apiVersion: v1 -kind: ServiceAccount -metadata: - name: heapster - namespace: kube-system ---- -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: heapster - namespace: kube-system -spec: - replicas: 1 - template: - metadata: - labels: - task: monitoring - k8s-app: heapster - spec: - serviceAccountName: heapster - nodeSelector: - node-role.kubernetes.io/master: "" - containers: - - name: heapster - image: gcr.io/google_containers/heapster-amd64:v1.4.2 - imagePullPolicy: IfNotPresent - command: - - /heapster - - --source=kubernetes:https://kubernetes.default - - --sink=influxdb:http://monitoring-influxdb.kube-system.svc:8086 ---- -apiVersion: v1 -kind: Service -metadata: - labels: - task: monitoring - # For use as a Cluster add-on (https://github.com/kubernetes/kubernetes/tree/master/cluster/addons) - # If you are NOT using this as an addon, you should comment out this line. - kubernetes.io/cluster-service: 'true' - kubernetes.io/name: Heapster - name: heapster - namespace: kube-system -spec: - ports: - - port: 80 - targetPort: 8082 - selector: - k8s-app: heapster diff --git a/v1.9/kube-heapster/influxdb/influxdb.yaml b/v1.9/kube-heapster/influxdb/influxdb.yaml deleted file mode 100644 index 7d83b06..0000000 --- a/v1.9/kube-heapster/influxdb/influxdb.yaml +++ /dev/null @@ -1,43 +0,0 @@ -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: monitoring-influxdb - namespace: kube-system -spec: - replicas: 1 - template: - metadata: - labels: - task: monitoring - k8s-app: influxdb - spec: - nodeSelector: - node-role.kubernetes.io/master: "" - containers: - - name: influxdb - image: gcr.io/google_containers/heapster-influxdb-amd64:v1.3.3 - imagePullPolicy: IfNotPresent - volumeMounts: - - mountPath: /data - name: influxdb-storage - volumes: - - name: influxdb-storage - emptyDir: {} ---- -apiVersion: v1 -kind: Service -metadata: - labels: - task: monitoring - # For use as a Cluster add-on (https://github.com/kubernetes/kubernetes/tree/master/cluster/addons) - # If you are NOT using this as an addon, you should comment out this line. - kubernetes.io/cluster-service: 'true' - kubernetes.io/name: monitoring-influxdb - name: monitoring-influxdb - namespace: kube-system -spec: - ports: - - port: 8086 - targetPort: 8086 - selector: - k8s-app: influxdb diff --git a/v1.9/kube-heapster/rbac/heapster-rbac.yaml b/v1.9/kube-heapster/rbac/heapster-rbac.yaml deleted file mode 100644 index 6e63803..0000000 --- a/v1.9/kube-heapster/rbac/heapster-rbac.yaml +++ /dev/null @@ -1,12 +0,0 @@ -kind: ClusterRoleBinding -apiVersion: rbac.authorization.k8s.io/v1beta1 -metadata: - name: heapster -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: system:heapster -subjects: -- kind: ServiceAccount - name: heapster - namespace: kube-system diff --git a/v1.9/kube-ingress/configmap.yaml b/v1.9/kube-ingress/configmap.yaml deleted file mode 100644 index 08e9101..0000000 --- a/v1.9/kube-ingress/configmap.yaml +++ /dev/null @@ -1,7 +0,0 @@ -kind: ConfigMap -apiVersion: v1 -metadata: - name: nginx-configuration - namespace: ingress-nginx - labels: - app: ingress-nginx diff --git a/v1.9/kube-ingress/default-backend.yaml b/v1.9/kube-ingress/default-backend.yaml deleted file mode 100644 index 72a73ba..0000000 --- a/v1.9/kube-ingress/default-backend.yaml +++ /dev/null @@ -1,55 +0,0 @@ -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: default-http-backend - labels: - app: default-http-backend - namespace: ingress-nginx -spec: - replicas: 1 - template: - metadata: - labels: - app: default-http-backend - spec: - terminationGracePeriodSeconds: 60 - nodeSelector: - node-role.kubernetes.io/master: "" - containers: - - name: default-http-backend - # Any image is permissable as long as: - # 1. It serves a 404 page at / - # 2. It serves 200 on a /healthz endpoint - image: devops-reg.io/k8s/defaultbackend:1.4 - imagePullPolicy: IfNotPresent - livenessProbe: - httpGet: - path: /healthz - port: 8080 - scheme: HTTP - initialDelaySeconds: 30 - timeoutSeconds: 5 - ports: - - containerPort: 8080 - resources: - limits: - cpu: 10m - memory: 20Mi - requests: - cpu: 10m - memory: 20Mi ---- - -apiVersion: v1 -kind: Service -metadata: - name: default-http-backend - namespace: ingress-nginx - labels: - app: default-http-backend -spec: - ports: - - port: 80 - targetPort: 8080 - selector: - app: default-http-backend diff --git a/v1.9/kube-ingress/ingress-demo.yaml b/v1.9/kube-ingress/ingress-demo.yaml deleted file mode 100644 index c904761..0000000 --- a/v1.9/kube-ingress/ingress-demo.yaml +++ /dev/null @@ -1,49 +0,0 @@ ---- -apiVersion: v1 -kind: Service -metadata: - name: ingress-nginx - namespace: ingress-nginx -spec: - type: NodePort - ports: - - name: http - nodePort: 32000 - port: 80 - protocol: TCP - targetPort: 80 - - name: https - nodePort: 32001 - port: 443 - protocol: TCP - targetPort: 443 - selector: - app: ingress-nginx - ---- -apiVersion: extensions/v1beta1 -kind: Ingress -metadata: - name: ingress-demo - namespace: default -spec: - rules: - - host: devops-master-lb - http: - paths: - - backend: - serviceName: jenkins - servicePort: 80 - path: /jenkins - - backend: - serviceName: gitlab - servicePort: 80 - path: /gitlab - - backend: - serviceName: nexus - servicePort: 8081 - path: /nexus - - backend: - serviceName: inops-tomcat - servicePort: 8080 - path: /inops diff --git a/v1.9/kube-ingress/namespace.yaml b/v1.9/kube-ingress/namespace.yaml deleted file mode 100644 index 6878f0b..0000000 --- a/v1.9/kube-ingress/namespace.yaml +++ /dev/null @@ -1,4 +0,0 @@ -apiVersion: v1 -kind: Namespace -metadata: - name: ingress-nginx diff --git a/v1.9/kube-ingress/rbac.yaml b/v1.9/kube-ingress/rbac.yaml deleted file mode 100644 index 3018532..0000000 --- a/v1.9/kube-ingress/rbac.yaml +++ /dev/null @@ -1,133 +0,0 @@ -apiVersion: v1 -kind: ServiceAccount -metadata: - name: nginx-ingress-serviceaccount - namespace: ingress-nginx - ---- - -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRole -metadata: - name: nginx-ingress-clusterrole -rules: - - apiGroups: - - "" - resources: - - configmaps - - endpoints - - nodes - - pods - - secrets - verbs: - - list - - watch - - apiGroups: - - "" - resources: - - nodes - verbs: - - get - - apiGroups: - - "" - resources: - - services - verbs: - - get - - list - - watch - - apiGroups: - - "extensions" - resources: - - ingresses - verbs: - - get - - list - - watch - - apiGroups: - - "" - resources: - - events - verbs: - - create - - patch - - apiGroups: - - "extensions" - resources: - - ingresses/status - verbs: - - update - ---- - -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: Role -metadata: - name: nginx-ingress-role - namespace: ingress-nginx -rules: - - apiGroups: - - "" - resources: - - configmaps - - pods - - secrets - - namespaces - verbs: - - get - - apiGroups: - - "" - resources: - - configmaps - resourceNames: - # Defaults to "-" - # Here: "-" - # This has to be adapted if you change either parameter - # when launching the nginx-ingress-controller. - - "ingress-controller-leader-nginx" - verbs: - - get - - update - - apiGroups: - - "" - resources: - - configmaps - verbs: - - create - - apiGroups: - - "" - resources: - - endpoints - verbs: - - get - ---- - -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: RoleBinding -metadata: - name: nginx-ingress-role-nisa-binding - namespace: ingress-nginx -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: Role - name: nginx-ingress-role -subjects: - - kind: ServiceAccount - name: nginx-ingress-serviceaccount - namespace: ingress-nginx - ---- - -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: nginx-ingress-clusterrole-nisa-binding -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: nginx-ingress-clusterrole -subjects: - - kind: ServiceAccount - name: nginx-ingress-serviceaccount - namespace: ingress-nginx diff --git a/v1.9/kube-ingress/tcp-services-configmap.yaml b/v1.9/kube-ingress/tcp-services-configmap.yaml deleted file mode 100644 index a963085..0000000 --- a/v1.9/kube-ingress/tcp-services-configmap.yaml +++ /dev/null @@ -1,5 +0,0 @@ -kind: ConfigMap -apiVersion: v1 -metadata: - name: tcp-services - namespace: ingress-nginx diff --git a/v1.9/kube-ingress/udp-services-configmap.yaml b/v1.9/kube-ingress/udp-services-configmap.yaml deleted file mode 100644 index 1870931..0000000 --- a/v1.9/kube-ingress/udp-services-configmap.yaml +++ /dev/null @@ -1,5 +0,0 @@ -kind: ConfigMap -apiVersion: v1 -metadata: - name: udp-services - namespace: ingress-nginx diff --git a/v1.9/kube-ingress/with-rbac.yaml b/v1.9/kube-ingress/with-rbac.yaml deleted file mode 100644 index 5dda4d6..0000000 --- a/v1.9/kube-ingress/with-rbac.yaml +++ /dev/null @@ -1,75 +0,0 @@ -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: nginx-ingress-controller - namespace: ingress-nginx -spec: - replicas: 1 - selector: - matchLabels: - app: ingress-nginx - template: - metadata: - labels: - app: ingress-nginx - annotations: - prometheus.io/port: '10254' - prometheus.io/scrape: 'true' - spec: - serviceAccountName: nginx-ingress-serviceaccount - initContainers: - - command: - - sh - - -c - - sysctl -w net.core.somaxconn=32768; sysctl -w net.ipv4.ip_local_port_range="1024 65535" - image: devops-reg.io/k8s/alpine:3.6 - imagePullPolicy: IfNotPresent - name: sysctl - securityContext: - privileged: true - nodeSelector: - node-role.kubernetes.io/master: "" - containers: - - name: nginx-ingress-controller - image: devops-reg.io/k8s/nginx-ingress-controller:0.10.2 - imagePullPolicy: IfNotPresent - args: - - /nginx-ingress-controller - - --default-backend-service=$(POD_NAMESPACE)/default-http-backend - - --configmap=$(POD_NAMESPACE)/nginx-configuration - - --tcp-services-configmap=$(POD_NAMESPACE)/tcp-services - - --udp-services-configmap=$(POD_NAMESPACE)/udp-services - - --annotations-prefix=nginx.ingress.kubernetes.io - env: - - name: POD_NAME - valueFrom: - fieldRef: - fieldPath: metadata.name - - name: POD_NAMESPACE - valueFrom: - fieldRef: - fieldPath: metadata.namespace - ports: - - name: http - containerPort: 80 - - name: https - containerPort: 443 - livenessProbe: - failureThreshold: 3 - httpGet: - path: /healthz - port: 10254 - scheme: HTTP - initialDelaySeconds: 10 - periodSeconds: 10 - successThreshold: 1 - timeoutSeconds: 1 - readinessProbe: - failureThreshold: 3 - httpGet: - path: /healthz - port: 10254 - scheme: HTTP - periodSeconds: 10 - successThreshold: 1 - timeoutSeconds: 1 diff --git a/v1.9/kubeadm-init.yaml.tpl b/v1.9/kubeadm-init.yaml.tpl deleted file mode 100644 index 3f95f77..0000000 --- a/v1.9/kubeadm-init.yaml.tpl +++ /dev/null @@ -1,22 +0,0 @@ -apiVersion: kubeadm.k8s.io/v1alpha1 -kind: MasterConfiguration -kubernetesVersion: v1.9.1 -networking: - podSubnet: K8SHA_CIDR - serviceSubnet: K8SHA_SVC_CIDR -apiServerCertSANs: -- K8SHA_HOSTNAME1 -- K8SHA_HOSTNAME2 -- K8SHA_HOSTNAME3 -- K8SHA_IP1 -- K8SHA_IP2 -- K8SHA_IP3 -- K8SHA_IPVIRTUAL -- 127.0.0.1 -etcd: - endpoints: - - http://K8SHA_IP1:2379 - - http://K8SHA_IP2:2379 - - http://K8SHA_IP3:2379 -token: K8SHA_TOKEN -tokenTTL: "0" diff --git a/v1.9/nginx-lb/docker-compose.yaml b/v1.9/nginx-lb/docker-compose.yaml deleted file mode 100644 index 72048d7..0000000 --- a/v1.9/nginx-lb/docker-compose.yaml +++ /dev/null @@ -1,11 +0,0 @@ -version: '2' -services: - etcd: - image: nginx:latest - container_name: nginx-lb - hostname: nginx-lb - volumes: - - ./nginx-lb.conf:/etc/nginx/nginx.conf - ports: - - 16443:16443 - restart: always diff --git a/v1.9/nginx-lb/nginx-lb.conf.tpl b/v1.9/nginx-lb/nginx-lb.conf.tpl deleted file mode 100644 index 5367e91..0000000 --- a/v1.9/nginx-lb/nginx-lb.conf.tpl +++ /dev/null @@ -1,46 +0,0 @@ -user nginx; -worker_processes 1; - -error_log /var/log/nginx/error.log warn; -pid /var/run/nginx.pid; - - -events { - worker_connections 1024; -} - - -http { - include /etc/nginx/mime.types; - default_type application/octet-stream; - - log_format main '$remote_addr - $remote_user [$time_local] "$request" ' - '$status $body_bytes_sent "$http_referer" ' - '"$http_user_agent" "$http_x_forwarded_for"'; - - access_log /var/log/nginx/access.log main; - - sendfile on; - #tcp_nopush on; - - keepalive_timeout 65; - - #gzip on; - - include /etc/nginx/conf.d/*.conf; -} - -stream { - upstream apiserver { - server K8SHA_IP1:6443 weight=5 max_fails=3 fail_timeout=30s; - server K8SHA_IP2:6443 weight=5 max_fails=3 fail_timeout=30s; - server K8SHA_IP3:6443 weight=5 max_fails=3 fail_timeout=30s; - } - - server { - listen 16443; - proxy_connect_timeout 1s; - proxy_timeout 3s; - proxy_pass apiserver; - } -} From 90dd5a43c10e4e8cc0c0ebb9f6bfecd6e1c27a43 Mon Sep 17 00:00:00 2001 From: Your Name Date: Wed, 19 Feb 2020 15:12:48 +0800 Subject: [PATCH 04/16] add metrics server 3.6.1 --- .../aggregated-metrics-reader.yaml | 13 ++++ metrics-server-3.6.1/auth-delegator.yaml | 13 ++++ metrics-server-3.6.1/auth-reader.yaml | 14 +++++ metrics-server-3.6.1/metrics-apiservice.yaml | 14 +++++ .../metrics-server-deployment.yaml | 62 +++++++++++++++++++ .../metrics-server-service.yaml | 16 +++++ metrics-server-3.6.1/resource-reader.yaml | 31 ++++++++++ 7 files changed, 163 insertions(+) create mode 100644 metrics-server-3.6.1/aggregated-metrics-reader.yaml create mode 100644 metrics-server-3.6.1/auth-delegator.yaml create mode 100644 metrics-server-3.6.1/auth-reader.yaml create mode 100644 metrics-server-3.6.1/metrics-apiservice.yaml create mode 100644 metrics-server-3.6.1/metrics-server-deployment.yaml create mode 100644 metrics-server-3.6.1/metrics-server-service.yaml create mode 100644 metrics-server-3.6.1/resource-reader.yaml diff --git a/metrics-server-3.6.1/aggregated-metrics-reader.yaml b/metrics-server-3.6.1/aggregated-metrics-reader.yaml new file mode 100644 index 0000000..0a0e159 --- /dev/null +++ b/metrics-server-3.6.1/aggregated-metrics-reader.yaml @@ -0,0 +1,13 @@ +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: system:aggregated-metrics-reader + labels: + rbac.authorization.k8s.io/aggregate-to-view: "true" + rbac.authorization.k8s.io/aggregate-to-edit: "true" + rbac.authorization.k8s.io/aggregate-to-admin: "true" +rules: +- apiGroups: ["metrics.k8s.io"] + resources: ["pods", "nodes"] + verbs: ["get", "list", "watch"] diff --git a/metrics-server-3.6.1/auth-delegator.yaml b/metrics-server-3.6.1/auth-delegator.yaml new file mode 100644 index 0000000..87909da --- /dev/null +++ b/metrics-server-3.6.1/auth-delegator.yaml @@ -0,0 +1,13 @@ +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: metrics-server:system:auth-delegator +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: system:auth-delegator +subjects: +- kind: ServiceAccount + name: metrics-server + namespace: kube-system diff --git a/metrics-server-3.6.1/auth-reader.yaml b/metrics-server-3.6.1/auth-reader.yaml new file mode 100644 index 0000000..062afa8 --- /dev/null +++ b/metrics-server-3.6.1/auth-reader.yaml @@ -0,0 +1,14 @@ +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: RoleBinding +metadata: + name: metrics-server-auth-reader + namespace: kube-system +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: Role + name: extension-apiserver-authentication-reader +subjects: +- kind: ServiceAccount + name: metrics-server + namespace: kube-system diff --git a/metrics-server-3.6.1/metrics-apiservice.yaml b/metrics-server-3.6.1/metrics-apiservice.yaml new file mode 100644 index 0000000..08b0530 --- /dev/null +++ b/metrics-server-3.6.1/metrics-apiservice.yaml @@ -0,0 +1,14 @@ +--- +apiVersion: apiregistration.k8s.io/v1beta1 +kind: APIService +metadata: + name: v1beta1.metrics.k8s.io +spec: + service: + name: metrics-server + namespace: kube-system + group: metrics.k8s.io + version: v1beta1 + insecureSkipTLSVerify: true + groupPriorityMinimum: 100 + versionPriority: 100 diff --git a/metrics-server-3.6.1/metrics-server-deployment.yaml b/metrics-server-3.6.1/metrics-server-deployment.yaml new file mode 100644 index 0000000..b693006 --- /dev/null +++ b/metrics-server-3.6.1/metrics-server-deployment.yaml @@ -0,0 +1,62 @@ +--- +apiVersion: v1 +kind: ServiceAccount +metadata: + name: metrics-server + namespace: kube-system +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: metrics-server + namespace: kube-system + labels: + k8s-app: metrics-server +spec: + selector: + matchLabels: + k8s-app: metrics-server + template: + metadata: + name: metrics-server + labels: + k8s-app: metrics-server + spec: + serviceAccountName: metrics-server + volumes: + # mount in tmp so we can safely use from-scratch images and/or read-only containers + - name: tmp-dir + emptyDir: {} + - name: ca-ssl + hostPath: + path: /etc/kubernetes/pki + containers: + - name: metrics-server + image: mirrorgooglecontainers/metrics-server-amd64:v0.3.6 + args: + - --cert-dir=/tmp + - --secure-port=4443 + - --metric-resolution=30s + - --kubelet-insecure-tls + - --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname + - --requestheader-client-ca-file=/etc/kubernetes/pki/front-proxy-ca.pem + - --requestheader-username-headers=X-Remote-User + - --requestheader-group-headers=X-Remote-Group + - --requestheader-extra-headers-prefix=X-Remote-Extra- + ports: + - name: main-port + containerPort: 4443 + protocol: TCP + securityContext: + readOnlyRootFilesystem: true + runAsNonRoot: true + runAsUser: 1000 + imagePullPolicy: Always + volumeMounts: + - name: tmp-dir + mountPath: /tmp + - mountPath: /etc/kubernetes/pki + name: ca-ssl + nodeSelector: + beta.kubernetes.io/os: linux + kubernetes.io/arch: "amd64" diff --git a/metrics-server-3.6.1/metrics-server-service.yaml b/metrics-server-3.6.1/metrics-server-service.yaml new file mode 100644 index 0000000..db9a622 --- /dev/null +++ b/metrics-server-3.6.1/metrics-server-service.yaml @@ -0,0 +1,16 @@ +--- +apiVersion: v1 +kind: Service +metadata: + name: metrics-server + namespace: kube-system + labels: + kubernetes.io/name: "Metrics-server" + kubernetes.io/cluster-service: "true" +spec: + selector: + k8s-app: metrics-server + ports: + - port: 443 + protocol: TCP + targetPort: main-port diff --git a/metrics-server-3.6.1/resource-reader.yaml b/metrics-server-3.6.1/resource-reader.yaml new file mode 100644 index 0000000..52cf808 --- /dev/null +++ b/metrics-server-3.6.1/resource-reader.yaml @@ -0,0 +1,31 @@ +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: system:metrics-server +rules: +- apiGroups: + - "" + resources: + - pods + - nodes + - nodes/stats + - namespaces + - configmaps + verbs: + - get + - list + - watch +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: system:metrics-server +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: system:metrics-server +subjects: +- kind: ServiceAccount + name: metrics-server + namespace: kube-system From 71d37d25a05eafaa4aba70a9e1b73a8a5dd7ee51 Mon Sep 17 00:00:00 2001 From: dotbalo Date: Thu, 2 Jul 2020 15:17:13 +0800 Subject: [PATCH 05/16] Update README.md --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index eea5e02..a34ddef 100644 --- a/README.md +++ b/README.md @@ -4,3 +4,5 @@ ``` +# 超全面、超详细的Kubernetes视频教程,基于最新的1.19 +https://ke.qq.com/course/2738602?tuin=2b5e11f2 From d915e62f977bf7e8876fef58666361ca9b29e66d Mon Sep 17 00:00:00 2001 From: dukuan Date: Mon, 6 Jul 2020 22:56:05 +0800 Subject: [PATCH 06/16] crt --- metrics-server-3.6.1/metrics-server-deployment.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/metrics-server-3.6.1/metrics-server-deployment.yaml b/metrics-server-3.6.1/metrics-server-deployment.yaml index b693006..c6303f3 100644 --- a/metrics-server-3.6.1/metrics-server-deployment.yaml +++ b/metrics-server-3.6.1/metrics-server-deployment.yaml @@ -39,7 +39,7 @@ spec: - --metric-resolution=30s - --kubelet-insecure-tls - --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname - - --requestheader-client-ca-file=/etc/kubernetes/pki/front-proxy-ca.pem + - --requestheader-client-ca-file=/etc/kubernetes/pki/front-proxy-ca.crt - --requestheader-username-headers=X-Remote-User - --requestheader-group-headers=X-Remote-Group - --requestheader-extra-headers-prefix=X-Remote-Extra- From 6629fc265d48fb617ace7e07ccc768012c1298f5 Mon Sep 17 00:00:00 2001 From: dukuan Date: Mon, 6 Jul 2020 23:14:09 +0800 Subject: [PATCH 07/16] image addr --- metrics-server-3.6.1/metrics-server-deployment.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/metrics-server-3.6.1/metrics-server-deployment.yaml b/metrics-server-3.6.1/metrics-server-deployment.yaml index c6303f3..e3071ef 100644 --- a/metrics-server-3.6.1/metrics-server-deployment.yaml +++ b/metrics-server-3.6.1/metrics-server-deployment.yaml @@ -32,7 +32,7 @@ spec: path: /etc/kubernetes/pki containers: - name: metrics-server - image: mirrorgooglecontainers/metrics-server-amd64:v0.3.6 + image: registry.cn-hangzhou.aliyuncs.com/google_containers/metrics-server-amd64:v0.3.6 args: - --cert-dir=/tmp - --secure-port=4443 @@ -51,7 +51,7 @@ spec: readOnlyRootFilesystem: true runAsNonRoot: true runAsUser: 1000 - imagePullPolicy: Always + imagePullPolicy: IfNotPresent volumeMounts: - name: tmp-dir mountPath: /tmp From c75b2f9ec7bc020677fb2adf325585d707ccf284 Mon Sep 17 00:00:00 2001 From: dotbalo Date: Wed, 29 Jul 2020 14:15:02 +0800 Subject: [PATCH 08/16] delete some files --- README.md | 2 +- calico/calico.yaml | 470 -- calico/calico.yaml.tpl | 470 -- calico/rbac-kdd.yaml | 92 - calico/upgrade/calico.yaml | 521 -- calico/upgrade/rbac-kdd.yaml | 92 - .../keepalived/check_apiserver.sh | 24 - .../k8s-master01/keepalived/keepalived.conf | 29 - config/k8s-master01/kubeadm-config.yaml | 29 - .../k8s-master01/nginx-lb/docker-compose.yaml | 11 - config/k8s-master01/nginx-lb/nginx-lb.conf | 46 - .../keepalived/check_apiserver.sh | 24 - .../k8s-master02/keepalived/keepalived.conf | 29 - config/k8s-master02/kubeadm-config.yaml | 30 - .../k8s-master02/nginx-lb/docker-compose.yaml | 11 - config/k8s-master02/nginx-lb/nginx-lb.conf | 46 - .../keepalived/check_apiserver.sh | 24 - .../k8s-master03/keepalived/keepalived.conf | 29 - config/k8s-master03/kubeadm-config.yaml | 30 - .../k8s-master03/nginx-lb/docker-compose.yaml | 11 - config/k8s-master03/nginx-lb/nginx-lb.conf | 46 - create-config.sh | 231 - dashboard/kubernetes-dashboard.yaml | 192 - .../kubernetes-apps_rev1.json | 1400 ----- ...luster-monitoring-via-prometheus_rev3.json | 2079 ------- heapster/grafana.yaml | 82 - heapster/heapster-rbac.yaml | 39 - heapster/heapster.yaml | 49 - heapster/influxdb.yaml | 45 - images/Kubernetes.png | Bin 12207 -> 0 bytes images/dashboard-login.png | Bin 96241 -> 0 bytes images/dashboard.png | Bin 116429 -> 0 bytes images/grafana-app.png | Bin 214180 -> 0 bytes images/grafana-cluster.png | Bin 138259 -> 0 bytes images/grafana-datasource.png | Bin 178654 -> 0 bytes images/grafana-import.png | Bin 149566 -> 0 bytes images/ha.png | Bin 65355 -> 0 bytes images/k8s-ha.png | Bin 126066 -> 0 bytes images/prometheus.png | Bin 229214 -> 0 bytes images/traefik.png | Bin 82777 -> 0 bytes istio/crds.yaml | 1116 ---- istio/istio-demo.yaml | 5134 ----------------- k8s-deployment-strategies.md | 2 +- keepalived/check_apiserver.sh | 24 - keepalived/keepalived.conf.tpl | 29 - metrics-server/auth-delegator.yaml | 13 - metrics-server/auth-reader.yaml | 14 - metrics-server/metrics-apiservice.yaml | 14 - metrics-server/metrics-server-deployment.yaml | 49 - metrics-server/metrics-server-service.yaml | 15 - metrics-server/resource-reader.yaml | 38 - nginx-lb/docker-compose.yaml | 11 - nginx-lb/nginx-lb.conf.tpl | 46 - prometheus/README.md | 4 - prometheus/cluster-role.yaml | 33 - prometheus/config-map.yaml | 257 - prometheus/prometheus-deployment.yaml | 34 - prometheus/prometheus-service.yaml | 13 - tls.crt | 19 - tls.key | 28 - traefik/README.md | 1102 ---- traefik/step1-traefik-rbac.yaml | 45 - traefik/step2-traefik-ds.yaml | 75 - traefik/step3-traefik-service.yaml | 15 - traefik/step4-traefik-ingress.yaml | 23 - 65 files changed, 2 insertions(+), 14334 deletions(-) delete mode 100644 calico/calico.yaml delete mode 100644 calico/calico.yaml.tpl delete mode 100644 calico/rbac-kdd.yaml delete mode 100644 calico/upgrade/calico.yaml delete mode 100644 calico/upgrade/rbac-kdd.yaml delete mode 100755 config/k8s-master01/keepalived/check_apiserver.sh delete mode 100644 config/k8s-master01/keepalived/keepalived.conf delete mode 100644 config/k8s-master01/kubeadm-config.yaml delete mode 100644 config/k8s-master01/nginx-lb/docker-compose.yaml delete mode 100644 config/k8s-master01/nginx-lb/nginx-lb.conf delete mode 100755 config/k8s-master02/keepalived/check_apiserver.sh delete mode 100644 config/k8s-master02/keepalived/keepalived.conf delete mode 100644 config/k8s-master02/kubeadm-config.yaml delete mode 100644 config/k8s-master02/nginx-lb/docker-compose.yaml delete mode 100644 config/k8s-master02/nginx-lb/nginx-lb.conf delete mode 100755 config/k8s-master03/keepalived/check_apiserver.sh delete mode 100644 config/k8s-master03/keepalived/keepalived.conf delete mode 100644 config/k8s-master03/kubeadm-config.yaml delete mode 100644 config/k8s-master03/nginx-lb/docker-compose.yaml delete mode 100644 config/k8s-master03/nginx-lb/nginx-lb.conf delete mode 100755 create-config.sh delete mode 100644 dashboard/kubernetes-dashboard.yaml delete mode 100644 heapster/grafana-dashboard/kubernetes-apps_rev1.json delete mode 100644 heapster/grafana-dashboard/kubernetes-cluster-monitoring-via-prometheus_rev3.json delete mode 100644 heapster/grafana.yaml delete mode 100644 heapster/heapster-rbac.yaml delete mode 100644 heapster/heapster.yaml delete mode 100644 heapster/influxdb.yaml delete mode 100644 images/Kubernetes.png delete mode 100644 images/dashboard-login.png delete mode 100644 images/dashboard.png delete mode 100644 images/grafana-app.png delete mode 100644 images/grafana-cluster.png delete mode 100644 images/grafana-datasource.png delete mode 100644 images/grafana-import.png delete mode 100644 images/ha.png delete mode 100644 images/k8s-ha.png delete mode 100644 images/prometheus.png delete mode 100644 images/traefik.png delete mode 100644 istio/crds.yaml delete mode 100644 istio/istio-demo.yaml delete mode 100755 keepalived/check_apiserver.sh delete mode 100644 keepalived/keepalived.conf.tpl delete mode 100644 metrics-server/auth-delegator.yaml delete mode 100644 metrics-server/auth-reader.yaml delete mode 100644 metrics-server/metrics-apiservice.yaml delete mode 100644 metrics-server/metrics-server-deployment.yaml delete mode 100644 metrics-server/metrics-server-service.yaml delete mode 100644 metrics-server/resource-reader.yaml delete mode 100644 nginx-lb/docker-compose.yaml delete mode 100644 nginx-lb/nginx-lb.conf.tpl delete mode 100644 prometheus/README.md delete mode 100644 prometheus/cluster-role.yaml delete mode 100644 prometheus/config-map.yaml delete mode 100644 prometheus/prometheus-deployment.yaml delete mode 100644 prometheus/prometheus-service.yaml delete mode 100644 tls.crt delete mode 100644 tls.key delete mode 100644 traefik/README.md delete mode 100644 traefik/step1-traefik-rbac.yaml delete mode 100644 traefik/step2-traefik-ds.yaml delete mode 100644 traefik/step3-traefik-service.yaml delete mode 100644 traefik/step4-traefik-ingress.yaml diff --git a/README.md b/README.md index a34ddef..d78f933 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ ``` - 安装过程:https://www.cnblogs.com/dukuan/p/9856269.html + 安装文档:https://www.cnblogs.com/dukuan ``` diff --git a/calico/calico.yaml b/calico/calico.yaml deleted file mode 100644 index 2cc0197..0000000 --- a/calico/calico.yaml +++ /dev/null @@ -1,470 +0,0 @@ -# Calico Version v3.1.3 -# https://docs.projectcalico.org/v3.1/releases#v3.1.3 -# This manifest includes the following component versions: -# calico/node:v3.1.3 -# calico/cni:v3.1.3 - -# This ConfigMap is used to configure a self-hosted Calico installation. -kind: ConfigMap -apiVersion: v1 -metadata: - name: calico-config - namespace: kube-system -data: - # To enable Typha, set this to "calico-typha" *and* set a non-zero value for Typha replicas - # below. We recommend using Typha if you have more than 50 nodes. Above 100 nodes it is - # essential. - typha_service_name: "none" - - # The CNI network configuration to install on each node. - cni_network_config: |- - { - "name": "k8s-pod-network", - "cniVersion": "0.3.0", - "plugins": [ - { - "type": "calico", - "log_level": "info", - "datastore_type": "kubernetes", - "nodename": "__KUBERNETES_NODE_NAME__", - "mtu": 1500, - "ipam": { - "type": "host-local", - "subnet": "usePodCidr" - }, - "policy": { - "type": "k8s" - }, - "kubernetes": { - "kubeconfig": "__KUBECONFIG_FILEPATH__" - } - }, - { - "type": "portmap", - "snat": true, - "capabilities": {"portMappings": true} - } - ] - } - ---- - -# This manifest creates a Service, which will be backed by Calico's Typha daemon. -# Typha sits in between Felix and the API server, reducing Calico's load on the API server. - -apiVersion: v1 -kind: Service -metadata: - name: calico-typha - namespace: kube-system - labels: - k8s-app: calico-typha -spec: - ports: - - port: 5473 - protocol: TCP - targetPort: calico-typha - name: calico-typha - selector: - k8s-app: calico-typha - ---- - -# This manifest creates a Deployment of Typha to back the above service. - -apiVersion: apps/v1beta1 -kind: Deployment -metadata: - name: calico-typha - namespace: kube-system - labels: - k8s-app: calico-typha -spec: - # Number of Typha replicas. To enable Typha, set this to a non-zero value *and* set the - # typha_service_name variable in the calico-config ConfigMap above. - # - # We recommend using Typha if you have more than 50 nodes. Above 100 nodes it is essential - # (when using the Kubernetes datastore). Use one replica for every 100-200 nodes. In - # production, we recommend running at least 3 replicas to reduce the impact of rolling upgrade. - replicas: 0 - revisionHistoryLimit: 2 - template: - metadata: - labels: - k8s-app: calico-typha - annotations: - # This, along with the CriticalAddonsOnly toleration below, marks the pod as a critical - # add-on, ensuring it gets priority scheduling and that its resources are reserved - # if it ever gets evicted. - scheduler.alpha.kubernetes.io/critical-pod: '' - spec: - hostNetwork: true - tolerations: - # Mark the pod as a critical add-on for rescheduling. - - key: CriticalAddonsOnly - operator: Exists - # Since Calico can't network a pod until Typha is up, we need to run Typha itself - # as a host-networked pod. - serviceAccountName: calico-node - containers: - - image: quay.io/calico/typha:v0.7.4 - name: calico-typha - ports: - - containerPort: 5473 - name: calico-typha - protocol: TCP - env: - # Enable "info" logging by default. Can be set to "debug" to increase verbosity. - - name: TYPHA_LOGSEVERITYSCREEN - value: "info" - # Disable logging to file and syslog since those don't make sense in Kubernetes. - - name: TYPHA_LOGFILEPATH - value: "none" - - name: TYPHA_LOGSEVERITYSYS - value: "none" - # Monitor the Kubernetes API to find the number of running instances and rebalance - # connections. - - name: TYPHA_CONNECTIONREBALANCINGMODE - value: "kubernetes" - - name: TYPHA_DATASTORETYPE - value: "kubernetes" - - name: TYPHA_HEALTHENABLED - value: "true" - # Uncomment these lines to enable prometheus metrics. Since Typha is host-networked, - # this opens a port on the host, which may need to be secured. - #- name: TYPHA_PROMETHEUSMETRICSENABLED - # value: "true" - #- name: TYPHA_PROMETHEUSMETRICSPORT - # value: "9093" - livenessProbe: - httpGet: - path: /liveness - port: 9098 - periodSeconds: 30 - initialDelaySeconds: 30 - readinessProbe: - httpGet: - path: /readiness - port: 9098 - periodSeconds: 10 - ---- - -# This manifest installs the calico/node container, as well -# as the Calico CNI plugins and network config on -# each master and worker node in a Kubernetes cluster. -kind: DaemonSet -apiVersion: extensions/v1beta1 -metadata: - name: calico-node - namespace: kube-system - labels: - k8s-app: calico-node -spec: - selector: - matchLabels: - k8s-app: calico-node - updateStrategy: - type: RollingUpdate - rollingUpdate: - maxUnavailable: 1 - template: - metadata: - labels: - k8s-app: calico-node - annotations: - # This, along with the CriticalAddonsOnly toleration below, - # marks the pod as a critical add-on, ensuring it gets - # priority scheduling and that its resources are reserved - # if it ever gets evicted. - scheduler.alpha.kubernetes.io/critical-pod: '' - spec: - hostNetwork: true - tolerations: - # Make sure calico/node gets scheduled on all nodes. - - effect: NoSchedule - operator: Exists - # Mark the pod as a critical add-on for rescheduling. - - key: CriticalAddonsOnly - operator: Exists - - effect: NoExecute - operator: Exists - serviceAccountName: calico-node - # Minimize downtime during a rolling upgrade or deletion; tell Kubernetes to do a "force - # deletion": https://kubernetes.io/docs/concepts/workloads/pods/pod/#termination-of-pods. - terminationGracePeriodSeconds: 0 - containers: - # Runs calico/node container on each Kubernetes node. This - # container programs network policy and routes on each - # host. - - name: calico-node - image: quay.io/calico/node:v3.1.3 - env: - # Use Kubernetes API as the backing datastore. - - name: DATASTORE_TYPE - value: "kubernetes" - # Enable felix info logging. - - name: FELIX_LOGSEVERITYSCREEN - value: "info" - # Cluster type to identify the deployment type - - name: CLUSTER_TYPE - value: "k8s,bgp" - # Disable file logging so `kubectl logs` works. - - name: CALICO_DISABLE_FILE_LOGGING - value: "true" - # Set Felix endpoint to host default action to ACCEPT. - - name: FELIX_DEFAULTENDPOINTTOHOSTACTION - value: "ACCEPT" - # Disable IPV6 on Kubernetes. - - name: FELIX_IPV6SUPPORT - value: "false" - # Set MTU for tunnel device used if ipip is enabled - - name: FELIX_IPINIPMTU - value: "1440" - # Wait for the datastore. - - name: WAIT_FOR_DATASTORE - value: "true" - # The default IPv4 pool to create on startup if none exists. Pod IPs will be - # chosen from this range. Changing this value after installation will have - # no effect. This should fall within `--cluster-cidr`. - - name: CALICO_IPV4POOL_CIDR - value: "172.168.0.0/16" - # Enable IPIP - - name: CALICO_IPV4POOL_IPIP - value: "Always" - # Enable IP-in-IP within Felix. - - name: FELIX_IPINIPENABLED - value: "true" - # Typha support: controlled by the ConfigMap. - - name: FELIX_TYPHAK8SSERVICENAME - valueFrom: - configMapKeyRef: - name: calico-config - key: typha_service_name - # Set based on the k8s node name. - - name: NODENAME - valueFrom: - fieldRef: - fieldPath: spec.nodeName - # Auto-detect the BGP IP address. - - name: IP - value: "autodetect" - - name: IP_AUTODETECTION_METHOD - value: "can-reach=192.168.0.1" - - name: FELIX_HEALTHENABLED - value: "true" - securityContext: - privileged: true - resources: - requests: - cpu: 250m - livenessProbe: - httpGet: - path: /liveness - port: 9099 - periodSeconds: 10 - initialDelaySeconds: 10 - failureThreshold: 6 - readinessProbe: - httpGet: - path: /readiness - port: 9099 - periodSeconds: 10 - volumeMounts: - - mountPath: /lib/modules - name: lib-modules - readOnly: true - - mountPath: /var/run/calico - name: var-run-calico - readOnly: false - - mountPath: /var/lib/calico - name: var-lib-calico - readOnly: false - # This container installs the Calico CNI binaries - # and CNI network config file on each node. - - name: install-cni - image: quay.io/calico/cni:v3.1.3 - command: ["/install-cni.sh"] - env: - # Name of the CNI config file to create. - - name: CNI_CONF_NAME - value: "10-calico.conflist" - # The CNI network config to install on each node. - - name: CNI_NETWORK_CONFIG - valueFrom: - configMapKeyRef: - name: calico-config - key: cni_network_config - # Set the hostname based on the k8s node name. - - name: KUBERNETES_NODE_NAME - valueFrom: - fieldRef: - fieldPath: spec.nodeName - volumeMounts: - - mountPath: /host/opt/cni/bin - name: cni-bin-dir - - mountPath: /host/etc/cni/net.d - name: cni-net-dir - volumes: - # Used by calico/node. - - name: lib-modules - hostPath: - path: /lib/modules - - name: var-run-calico - hostPath: - path: /var/run/calico - - name: var-lib-calico - hostPath: - path: /var/lib/calico - # Used to install CNI. - - name: cni-bin-dir - hostPath: - path: /opt/cni/bin - - name: cni-net-dir - hostPath: - path: /etc/cni/net.d - -# Create all the CustomResourceDefinitions needed for -# Calico policy and networking mode. ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: felixconfigurations.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: FelixConfiguration - plural: felixconfigurations - singular: felixconfiguration - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: bgppeers.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: BGPPeer - plural: bgppeers - singular: bgppeer - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: bgpconfigurations.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: BGPConfiguration - plural: bgpconfigurations - singular: bgpconfiguration - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: ippools.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: IPPool - plural: ippools - singular: ippool - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: hostendpoints.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: HostEndpoint - plural: hostendpoints - singular: hostendpoint - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: clusterinformations.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: ClusterInformation - plural: clusterinformations - singular: clusterinformation - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: globalnetworkpolicies.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: GlobalNetworkPolicy - plural: globalnetworkpolicies - singular: globalnetworkpolicy - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: globalnetworksets.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: GlobalNetworkSet - plural: globalnetworksets - singular: globalnetworkset - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: networkpolicies.crd.projectcalico.org -spec: - scope: Namespaced - group: crd.projectcalico.org - version: v1 - names: - kind: NetworkPolicy - plural: networkpolicies - singular: networkpolicy - ---- - -apiVersion: v1 -kind: ServiceAccount -metadata: - name: calico-node - namespace: kube-system diff --git a/calico/calico.yaml.tpl b/calico/calico.yaml.tpl deleted file mode 100644 index 68ac619..0000000 --- a/calico/calico.yaml.tpl +++ /dev/null @@ -1,470 +0,0 @@ -# Calico Version v3.1.3 -# https://docs.projectcalico.org/v3.1/releases#v3.1.3 -# This manifest includes the following component versions: -# calico/node:v3.1.3 -# calico/cni:v3.1.3 - -# This ConfigMap is used to configure a self-hosted Calico installation. -kind: ConfigMap -apiVersion: v1 -metadata: - name: calico-config - namespace: kube-system -data: - # To enable Typha, set this to "calico-typha" *and* set a non-zero value for Typha replicas - # below. We recommend using Typha if you have more than 50 nodes. Above 100 nodes it is - # essential. - typha_service_name: "none" - - # The CNI network configuration to install on each node. - cni_network_config: |- - { - "name": "k8s-pod-network", - "cniVersion": "0.3.0", - "plugins": [ - { - "type": "calico", - "log_level": "info", - "datastore_type": "kubernetes", - "nodename": "__KUBERNETES_NODE_NAME__", - "mtu": 1500, - "ipam": { - "type": "host-local", - "subnet": "usePodCidr" - }, - "policy": { - "type": "k8s" - }, - "kubernetes": { - "kubeconfig": "__KUBECONFIG_FILEPATH__" - } - }, - { - "type": "portmap", - "snat": true, - "capabilities": {"portMappings": true} - } - ] - } - ---- - -# This manifest creates a Service, which will be backed by Calico's Typha daemon. -# Typha sits in between Felix and the API server, reducing Calico's load on the API server. - -apiVersion: v1 -kind: Service -metadata: - name: calico-typha - namespace: kube-system - labels: - k8s-app: calico-typha -spec: - ports: - - port: 5473 - protocol: TCP - targetPort: calico-typha - name: calico-typha - selector: - k8s-app: calico-typha - ---- - -# This manifest creates a Deployment of Typha to back the above service. - -apiVersion: apps/v1beta1 -kind: Deployment -metadata: - name: calico-typha - namespace: kube-system - labels: - k8s-app: calico-typha -spec: - # Number of Typha replicas. To enable Typha, set this to a non-zero value *and* set the - # typha_service_name variable in the calico-config ConfigMap above. - # - # We recommend using Typha if you have more than 50 nodes. Above 100 nodes it is essential - # (when using the Kubernetes datastore). Use one replica for every 100-200 nodes. In - # production, we recommend running at least 3 replicas to reduce the impact of rolling upgrade. - replicas: 0 - revisionHistoryLimit: 2 - template: - metadata: - labels: - k8s-app: calico-typha - annotations: - # This, along with the CriticalAddonsOnly toleration below, marks the pod as a critical - # add-on, ensuring it gets priority scheduling and that its resources are reserved - # if it ever gets evicted. - scheduler.alpha.kubernetes.io/critical-pod: '' - spec: - hostNetwork: true - tolerations: - # Mark the pod as a critical add-on for rescheduling. - - key: CriticalAddonsOnly - operator: Exists - # Since Calico can't network a pod until Typha is up, we need to run Typha itself - # as a host-networked pod. - serviceAccountName: calico-node - containers: - - image: quay.io/calico/typha:v0.7.4 - name: calico-typha - ports: - - containerPort: 5473 - name: calico-typha - protocol: TCP - env: - # Enable "info" logging by default. Can be set to "debug" to increase verbosity. - - name: TYPHA_LOGSEVERITYSCREEN - value: "info" - # Disable logging to file and syslog since those don't make sense in Kubernetes. - - name: TYPHA_LOGFILEPATH - value: "none" - - name: TYPHA_LOGSEVERITYSYS - value: "none" - # Monitor the Kubernetes API to find the number of running instances and rebalance - # connections. - - name: TYPHA_CONNECTIONREBALANCINGMODE - value: "kubernetes" - - name: TYPHA_DATASTORETYPE - value: "kubernetes" - - name: TYPHA_HEALTHENABLED - value: "true" - # Uncomment these lines to enable prometheus metrics. Since Typha is host-networked, - # this opens a port on the host, which may need to be secured. - #- name: TYPHA_PROMETHEUSMETRICSENABLED - # value: "true" - #- name: TYPHA_PROMETHEUSMETRICSPORT - # value: "9093" - livenessProbe: - httpGet: - path: /liveness - port: 9098 - periodSeconds: 30 - initialDelaySeconds: 30 - readinessProbe: - httpGet: - path: /readiness - port: 9098 - periodSeconds: 10 - ---- - -# This manifest installs the calico/node container, as well -# as the Calico CNI plugins and network config on -# each master and worker node in a Kubernetes cluster. -kind: DaemonSet -apiVersion: extensions/v1beta1 -metadata: - name: calico-node - namespace: kube-system - labels: - k8s-app: calico-node -spec: - selector: - matchLabels: - k8s-app: calico-node - updateStrategy: - type: RollingUpdate - rollingUpdate: - maxUnavailable: 1 - template: - metadata: - labels: - k8s-app: calico-node - annotations: - # This, along with the CriticalAddonsOnly toleration below, - # marks the pod as a critical add-on, ensuring it gets - # priority scheduling and that its resources are reserved - # if it ever gets evicted. - scheduler.alpha.kubernetes.io/critical-pod: '' - spec: - hostNetwork: true - tolerations: - # Make sure calico/node gets scheduled on all nodes. - - effect: NoSchedule - operator: Exists - # Mark the pod as a critical add-on for rescheduling. - - key: CriticalAddonsOnly - operator: Exists - - effect: NoExecute - operator: Exists - serviceAccountName: calico-node - # Minimize downtime during a rolling upgrade or deletion; tell Kubernetes to do a "force - # deletion": https://kubernetes.io/docs/concepts/workloads/pods/pod/#termination-of-pods. - terminationGracePeriodSeconds: 0 - containers: - # Runs calico/node container on each Kubernetes node. This - # container programs network policy and routes on each - # host. - - name: calico-node - image: quay.io/calico/node:v3.1.3 - env: - # Use Kubernetes API as the backing datastore. - - name: DATASTORE_TYPE - value: "kubernetes" - # Enable felix info logging. - - name: FELIX_LOGSEVERITYSCREEN - value: "info" - # Cluster type to identify the deployment type - - name: CLUSTER_TYPE - value: "k8s,bgp" - # Disable file logging so `kubectl logs` works. - - name: CALICO_DISABLE_FILE_LOGGING - value: "true" - # Set Felix endpoint to host default action to ACCEPT. - - name: FELIX_DEFAULTENDPOINTTOHOSTACTION - value: "ACCEPT" - # Disable IPV6 on Kubernetes. - - name: FELIX_IPV6SUPPORT - value: "false" - # Set MTU for tunnel device used if ipip is enabled - - name: FELIX_IPINIPMTU - value: "1440" - # Wait for the datastore. - - name: WAIT_FOR_DATASTORE - value: "true" - # The default IPv4 pool to create on startup if none exists. Pod IPs will be - # chosen from this range. Changing this value after installation will have - # no effect. This should fall within `--cluster-cidr`. - - name: CALICO_IPV4POOL_CIDR - value: "K8SHA_CIDR/16" - # Enable IPIP - - name: CALICO_IPV4POOL_IPIP - value: "Always" - # Enable IP-in-IP within Felix. - - name: FELIX_IPINIPENABLED - value: "true" - # Typha support: controlled by the ConfigMap. - - name: FELIX_TYPHAK8SSERVICENAME - valueFrom: - configMapKeyRef: - name: calico-config - key: typha_service_name - # Set based on the k8s node name. - - name: NODENAME - valueFrom: - fieldRef: - fieldPath: spec.nodeName - # Auto-detect the BGP IP address. - - name: IP - value: "autodetect" - - name: IP_AUTODETECTION_METHOD - value: "can-reach=K8SHA_CALICO_REACHABLE_IP" - - name: FELIX_HEALTHENABLED - value: "true" - securityContext: - privileged: true - resources: - requests: - cpu: 250m - livenessProbe: - httpGet: - path: /liveness - port: 9099 - periodSeconds: 10 - initialDelaySeconds: 10 - failureThreshold: 6 - readinessProbe: - httpGet: - path: /readiness - port: 9099 - periodSeconds: 10 - volumeMounts: - - mountPath: /lib/modules - name: lib-modules - readOnly: true - - mountPath: /var/run/calico - name: var-run-calico - readOnly: false - - mountPath: /var/lib/calico - name: var-lib-calico - readOnly: false - # This container installs the Calico CNI binaries - # and CNI network config file on each node. - - name: install-cni - image: quay.io/calico/cni:v3.1.3 - command: ["/install-cni.sh"] - env: - # Name of the CNI config file to create. - - name: CNI_CONF_NAME - value: "10-calico.conflist" - # The CNI network config to install on each node. - - name: CNI_NETWORK_CONFIG - valueFrom: - configMapKeyRef: - name: calico-config - key: cni_network_config - # Set the hostname based on the k8s node name. - - name: KUBERNETES_NODE_NAME - valueFrom: - fieldRef: - fieldPath: spec.nodeName - volumeMounts: - - mountPath: /host/opt/cni/bin - name: cni-bin-dir - - mountPath: /host/etc/cni/net.d - name: cni-net-dir - volumes: - # Used by calico/node. - - name: lib-modules - hostPath: - path: /lib/modules - - name: var-run-calico - hostPath: - path: /var/run/calico - - name: var-lib-calico - hostPath: - path: /var/lib/calico - # Used to install CNI. - - name: cni-bin-dir - hostPath: - path: /opt/cni/bin - - name: cni-net-dir - hostPath: - path: /etc/cni/net.d - -# Create all the CustomResourceDefinitions needed for -# Calico policy and networking mode. ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: felixconfigurations.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: FelixConfiguration - plural: felixconfigurations - singular: felixconfiguration - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: bgppeers.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: BGPPeer - plural: bgppeers - singular: bgppeer - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: bgpconfigurations.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: BGPConfiguration - plural: bgpconfigurations - singular: bgpconfiguration - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: ippools.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: IPPool - plural: ippools - singular: ippool - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: hostendpoints.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: HostEndpoint - plural: hostendpoints - singular: hostendpoint - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: clusterinformations.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: ClusterInformation - plural: clusterinformations - singular: clusterinformation - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: globalnetworkpolicies.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: GlobalNetworkPolicy - plural: globalnetworkpolicies - singular: globalnetworkpolicy - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: globalnetworksets.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: GlobalNetworkSet - plural: globalnetworksets - singular: globalnetworkset - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: networkpolicies.crd.projectcalico.org -spec: - scope: Namespaced - group: crd.projectcalico.org - version: v1 - names: - kind: NetworkPolicy - plural: networkpolicies - singular: networkpolicy - ---- - -apiVersion: v1 -kind: ServiceAccount -metadata: - name: calico-node - namespace: kube-system diff --git a/calico/rbac-kdd.yaml b/calico/rbac-kdd.yaml deleted file mode 100644 index 60d3508..0000000 --- a/calico/rbac-kdd.yaml +++ /dev/null @@ -1,92 +0,0 @@ -# Calico Version v3.1.3 -# https://docs.projectcalico.org/v3.1/releases#v3.1.3 -kind: ClusterRole -apiVersion: rbac.authorization.k8s.io/v1beta1 -metadata: - name: calico-node -rules: - - apiGroups: [""] - resources: - - namespaces - verbs: - - get - - list - - watch - - apiGroups: [""] - resources: - - pods/status - verbs: - - update - - apiGroups: [""] - resources: - - pods - verbs: - - get - - list - - watch - - patch - - apiGroups: [""] - resources: - - services - verbs: - - get - - apiGroups: [""] - resources: - - endpoints - verbs: - - get - - apiGroups: [""] - resources: - - nodes - verbs: - - get - - list - - update - - watch - - apiGroups: ["extensions"] - resources: - - networkpolicies - verbs: - - get - - list - - watch - - apiGroups: ["networking.k8s.io"] - resources: - - networkpolicies - verbs: - - watch - - list - - apiGroups: ["crd.projectcalico.org"] - resources: - - globalfelixconfigs - - felixconfigurations - - bgppeers - - globalbgpconfigs - - bgpconfigurations - - ippools - - globalnetworkpolicies - - globalnetworksets - - networkpolicies - - clusterinformations - - hostendpoints - verbs: - - create - - get - - list - - update - - watch - ---- - -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: calico-node -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: calico-node -subjects: -- kind: ServiceAccount - name: calico-node - namespace: kube-system diff --git a/calico/upgrade/calico.yaml b/calico/upgrade/calico.yaml deleted file mode 100644 index 96f8415..0000000 --- a/calico/upgrade/calico.yaml +++ /dev/null @@ -1,521 +0,0 @@ -# Calico Version v3.3.2 -# https://docs.projectcalico.org/v3.3/releases#v3.3.2 -# This manifest includes the following component versions: -# calico/node:v3.3.2 -# calico/cni:v3.3.2 - -# This ConfigMap is used to configure a self-hosted Calico installation. -kind: ConfigMap -apiVersion: v1 -metadata: - name: calico-config - namespace: kube-system -data: - # To enable Typha, set this to "calico-typha" *and* set a non-zero value for Typha replicas - # below. We recommend using Typha if you have more than 50 nodes. Above 100 nodes it is - # essential. - typha_service_name: "none" - # Configure the Calico backend to use. - calico_backend: "bird" - - # Configure the MTU to use - veth_mtu: "1440" - - # The CNI network configuration to install on each node. The special - # values in this config will be automatically populated. - cni_network_config: |- - { - "name": "k8s-pod-network", - "cniVersion": "0.3.0", - "plugins": [ - { - "type": "calico", - "log_level": "info", - "datastore_type": "kubernetes", - "nodename": "__KUBERNETES_NODE_NAME__", - "mtu": __CNI_MTU__, - "ipam": { - "type": "host-local", - "subnet": "usePodCidr" - }, - "policy": { - "type": "k8s" - }, - "kubernetes": { - "kubeconfig": "__KUBECONFIG_FILEPATH__" - } - }, - { - "type": "portmap", - "snat": true, - "capabilities": {"portMappings": true} - } - ] - } - ---- - - -# This manifest creates a Service, which will be backed by Calico's Typha daemon. -# Typha sits in between Felix and the API server, reducing Calico's load on the API server. - -apiVersion: v1 -kind: Service -metadata: - name: calico-typha - namespace: kube-system - labels: - k8s-app: calico-typha -spec: - ports: - - port: 5473 - protocol: TCP - targetPort: calico-typha - name: calico-typha - selector: - k8s-app: calico-typha - ---- - -# This manifest creates a Deployment of Typha to back the above service. - -apiVersion: apps/v1beta1 -kind: Deployment -metadata: - name: calico-typha - namespace: kube-system - labels: - k8s-app: calico-typha -spec: - # Number of Typha replicas. To enable Typha, set this to a non-zero value *and* set the - # typha_service_name variable in the calico-config ConfigMap above. - # - # We recommend using Typha if you have more than 50 nodes. Above 100 nodes it is essential - # (when using the Kubernetes datastore). Use one replica for every 100-200 nodes. In - # production, we recommend running at least 3 replicas to reduce the impact of rolling upgrade. - replicas: 0 - revisionHistoryLimit: 2 - template: - metadata: - labels: - k8s-app: calico-typha - annotations: - # This, along with the CriticalAddonsOnly toleration below, marks the pod as a critical - # add-on, ensuring it gets priority scheduling and that its resources are reserved - # if it ever gets evicted. - scheduler.alpha.kubernetes.io/critical-pod: '' - cluster-autoscaler.kubernetes.io/safe-to-evict: 'true' - spec: - hostNetwork: true - tolerations: - # Mark the pod as a critical add-on for rescheduling. - - key: CriticalAddonsOnly - operator: Exists - # Since Calico can't network a pod until Typha is up, we need to run Typha itself - # as a host-networked pod. - serviceAccountName: calico-node - containers: - - image: quay.io/calico/typha:v3.3.2 - name: calico-typha - ports: - - containerPort: 5473 - name: calico-typha - protocol: TCP - env: - # Enable "info" logging by default. Can be set to "debug" to increase verbosity. - - name: TYPHA_LOGSEVERITYSCREEN - value: "info" - # Disable logging to file and syslog since those don't make sense in Kubernetes. - - name: TYPHA_LOGFILEPATH - value: "none" - - name: TYPHA_LOGSEVERITYSYS - value: "none" - # Monitor the Kubernetes API to find the number of running instances and rebalance - # connections. - - name: TYPHA_CONNECTIONREBALANCINGMODE - value: "kubernetes" - - name: TYPHA_DATASTORETYPE - value: "kubernetes" - - name: TYPHA_HEALTHENABLED - value: "true" - # Uncomment these lines to enable prometheus metrics. Since Typha is host-networked, - # this opens a port on the host, which may need to be secured. - #- name: TYPHA_PROMETHEUSMETRICSENABLED - # value: "true" - #- name: TYPHA_PROMETHEUSMETRICSPORT - # value: "9093" - livenessProbe: - exec: - command: - - calico-typha - - check - - liveness - periodSeconds: 30 - initialDelaySeconds: 30 - readinessProbe: - exec: - command: - - calico-typha - - check - - readiness - periodSeconds: 10 - ---- - -# This manifest creates a Pod Disruption Budget for Typha to allow K8s Cluster Autoscaler to evict - -apiVersion: policy/v1beta1 -kind: PodDisruptionBudget -metadata: - name: calico-typha - namespace: kube-system - labels: - k8s-app: calico-typha -spec: - maxUnavailable: 1 - selector: - matchLabels: - k8s-app: calico-typha - ---- - -# This manifest installs the calico/node container, as well -# as the Calico CNI plugins and network config on -# each master and worker node in a Kubernetes cluster. -kind: DaemonSet -apiVersion: extensions/v1beta1 -metadata: - name: calico-node - namespace: kube-system - labels: - k8s-app: calico-node -spec: - selector: - matchLabels: - k8s-app: calico-node - updateStrategy: - type: RollingUpdate - rollingUpdate: - maxUnavailable: 1 - template: - metadata: - labels: - k8s-app: calico-node - annotations: - # This, along with the CriticalAddonsOnly toleration below, - # marks the pod as a critical add-on, ensuring it gets - # priority scheduling and that its resources are reserved - # if it ever gets evicted. - scheduler.alpha.kubernetes.io/critical-pod: '' - spec: - hostNetwork: true - tolerations: - # Make sure calico-node gets scheduled on all nodes. - - effect: NoSchedule - operator: Exists - # Mark the pod as a critical add-on for rescheduling. - - key: CriticalAddonsOnly - operator: Exists - - effect: NoExecute - operator: Exists - serviceAccountName: calico-node - # Minimize downtime during a rolling upgrade or deletion; tell Kubernetes to do a "force - # deletion": https://kubernetes.io/docs/concepts/workloads/pods/pod/#termination-of-pods. - terminationGracePeriodSeconds: 0 - containers: - # Runs calico/node container on each Kubernetes node. This - # container programs network policy and routes on each - # host. - - name: calico-node - image: quay.io/calico/node:v3.3.2 - env: - # Use Kubernetes API as the backing datastore. - - name: DATASTORE_TYPE - value: "kubernetes" - # Typha support: controlled by the ConfigMap. - - name: FELIX_TYPHAK8SSERVICENAME - valueFrom: - configMapKeyRef: - name: calico-config - key: typha_service_name - # Wait for the datastore. - - name: WAIT_FOR_DATASTORE - value: "true" - # Set based on the k8s node name. - - name: NODENAME - valueFrom: - fieldRef: - fieldPath: spec.nodeName - # Choose the backend to use. - - name: CALICO_NETWORKING_BACKEND - valueFrom: - configMapKeyRef: - name: calico-config - key: calico_backend - # Cluster type to identify the deployment type - - name: CLUSTER_TYPE - value: "k8s,bgp" - # Auto-detect the BGP IP address. - - name: IP - value: "autodetect" - # Enable IPIP - - name: CALICO_IPV4POOL_IPIP - value: "Always" - # Set MTU for tunnel device used if ipip is enabled - - name: FELIX_IPINIPMTU - valueFrom: - configMapKeyRef: - name: calico-config - key: veth_mtu - # The default IPv4 pool to create on startup if none exists. Pod IPs will be - # chosen from this range. Changing this value after installation will have - # no effect. This should fall within `--cluster-cidr`. - - name: CALICO_IPV4POOL_CIDR - value: "172.168.0.0/16" - - name: IP_AUTODETECTION_METHOD - value: can-reach=DESTINATION - # Disable file logging so `kubectl logs` works. - - name: CALICO_DISABLE_FILE_LOGGING - value: "true" - # Set Felix endpoint to host default action to ACCEPT. - - name: FELIX_DEFAULTENDPOINTTOHOSTACTION - value: "ACCEPT" - # Disable IPv6 on Kubernetes. - - name: FELIX_IPV6SUPPORT - value: "false" - # Set Felix logging to "info" - - name: FELIX_LOGSEVERITYSCREEN - value: "info" - - name: FELIX_HEALTHENABLED - value: "true" - securityContext: - privileged: true - resources: - requests: - cpu: 250m - livenessProbe: - httpGet: - path: /liveness - port: 9099 - host: localhost - periodSeconds: 10 - initialDelaySeconds: 10 - failureThreshold: 6 - readinessProbe: - exec: - command: - - /bin/calico-node - - -bird-ready - - -felix-ready - periodSeconds: 10 - volumeMounts: - - mountPath: /lib/modules - name: lib-modules - readOnly: true - - mountPath: /run/xtables.lock - name: xtables-lock - readOnly: false - - mountPath: /var/run/calico - name: var-run-calico - readOnly: false - - mountPath: /var/lib/calico - name: var-lib-calico - readOnly: false - # This container installs the Calico CNI binaries - # and CNI network config file on each node. - - name: install-cni - image: quay.io/calico/cni:v3.3.2 - command: ["/install-cni.sh"] - env: - # Name of the CNI config file to create. - - name: CNI_CONF_NAME - value: "10-calico.conflist" - # Set the hostname based on the k8s node name. - - name: KUBERNETES_NODE_NAME - valueFrom: - fieldRef: - fieldPath: spec.nodeName - # The CNI network config to install on each node. - - name: CNI_NETWORK_CONFIG - valueFrom: - configMapKeyRef: - name: calico-config - key: cni_network_config - # CNI MTU Config variable - - name: CNI_MTU - valueFrom: - configMapKeyRef: - name: calico-config - key: veth_mtu - volumeMounts: - - mountPath: /host/opt/cni/bin - name: cni-bin-dir - - mountPath: /host/etc/cni/net.d - name: cni-net-dir - volumes: - # Used by calico/node. - - name: lib-modules - hostPath: - path: /lib/modules - - name: var-run-calico - hostPath: - path: /var/run/calico - - name: var-lib-calico - hostPath: - path: /var/lib/calico - - name: xtables-lock - hostPath: - path: /run/xtables.lock - type: FileOrCreate - # Used to install CNI. - - name: cni-bin-dir - hostPath: - path: /opt/cni/bin - - name: cni-net-dir - hostPath: - path: /etc/cni/net.d ---- - -apiVersion: v1 -kind: ServiceAccount -metadata: - name: calico-node - namespace: kube-system - ---- - -# Create all the CustomResourceDefinitions needed for -# Calico policy and networking mode. - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: felixconfigurations.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: FelixConfiguration - plural: felixconfigurations - singular: felixconfiguration ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: bgppeers.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: BGPPeer - plural: bgppeers - singular: bgppeer - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: bgpconfigurations.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: BGPConfiguration - plural: bgpconfigurations - singular: bgpconfiguration - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: ippools.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: IPPool - plural: ippools - singular: ippool - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: hostendpoints.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: HostEndpoint - plural: hostendpoints - singular: hostendpoint - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: clusterinformations.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: ClusterInformation - plural: clusterinformations - singular: clusterinformation - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: globalnetworkpolicies.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: GlobalNetworkPolicy - plural: globalnetworkpolicies - singular: globalnetworkpolicy - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: globalnetworksets.crd.projectcalico.org -spec: - scope: Cluster - group: crd.projectcalico.org - version: v1 - names: - kind: GlobalNetworkSet - plural: globalnetworksets - singular: globalnetworkset - ---- - -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: networkpolicies.crd.projectcalico.org -spec: - scope: Namespaced - group: crd.projectcalico.org - version: v1 - names: - kind: NetworkPolicy - plural: networkpolicies - singular: networkpolicy - diff --git a/calico/upgrade/rbac-kdd.yaml b/calico/upgrade/rbac-kdd.yaml deleted file mode 100644 index 11fa50d..0000000 --- a/calico/upgrade/rbac-kdd.yaml +++ /dev/null @@ -1,92 +0,0 @@ -# Calico Version v3.3.2 -# https://docs.projectcalico.org/v3.3/releases#v3.3.2 -kind: ClusterRole -apiVersion: rbac.authorization.k8s.io/v1beta1 -metadata: - name: calico-node -rules: - - apiGroups: [""] - resources: - - namespaces - - serviceaccounts - verbs: - - get - - list - - watch - - apiGroups: [""] - resources: - - pods/status - verbs: - - patch - - apiGroups: [""] - resources: - - pods - verbs: - - get - - list - - watch - - apiGroups: [""] - resources: - - services - verbs: - - get - - apiGroups: [""] - resources: - - endpoints - verbs: - - get - - apiGroups: [""] - resources: - - nodes - verbs: - - get - - list - - update - - watch - - apiGroups: ["extensions"] - resources: - - networkpolicies - verbs: - - get - - list - - watch - - apiGroups: ["networking.k8s.io"] - resources: - - networkpolicies - verbs: - - watch - - list - - apiGroups: ["crd.projectcalico.org"] - resources: - - globalfelixconfigs - - felixconfigurations - - bgppeers - - globalbgpconfigs - - bgpconfigurations - - ippools - - globalnetworkpolicies - - globalnetworksets - - networkpolicies - - clusterinformations - - hostendpoints - verbs: - - create - - get - - list - - update - - watch - ---- - -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: calico-node -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: calico-node -subjects: -- kind: ServiceAccount - name: calico-node - namespace: kube-system diff --git a/config/k8s-master01/keepalived/check_apiserver.sh b/config/k8s-master01/keepalived/check_apiserver.sh deleted file mode 100755 index 3ceb7a8..0000000 --- a/config/k8s-master01/keepalived/check_apiserver.sh +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/bash - -# if check error then repeat check for 12 times, else exit -err=0 -for k in $(seq 1 12) -do - check_code=$(ps -ef | grep kube-apiserver | grep -v color | grep -v grep | wc -l) - if [[ $check_code == "0" ]]; then - err=$(expr $err + 1) - sleep 5 - continue - else - err=0 - break - fi -done - -if [[ $err != "0" ]]; then - echo "systemctl stop keepalived" - /usr/bin/systemctl stop keepalived - exit 1 -else - exit 0 -fi diff --git a/config/k8s-master01/keepalived/keepalived.conf b/config/k8s-master01/keepalived/keepalived.conf deleted file mode 100644 index 4217809..0000000 --- a/config/k8s-master01/keepalived/keepalived.conf +++ /dev/null @@ -1,29 +0,0 @@ -! Configuration File for keepalived -global_defs { - router_id LVS_DEVEL -} -vrrp_script chk_apiserver { - script "/etc/keepalived/check_apiserver.sh" - interval 2 - weight -5 - fall 3 - rise 2 -} -vrrp_instance VI_1 { - state MASTER - interface ens160 - mcast_src_ip 192.168.20.20 - virtual_router_id 51 - priority 102 - advert_int 2 - authentication { - auth_type PASS - auth_pass 412f7dc3bfed32194d1600c483e10ad1d - } - virtual_ipaddress { - 192.168.20.10 - } - track_script { - chk_apiserver - } -} diff --git a/config/k8s-master01/kubeadm-config.yaml b/config/k8s-master01/kubeadm-config.yaml deleted file mode 100644 index e694151..0000000 --- a/config/k8s-master01/kubeadm-config.yaml +++ /dev/null @@ -1,29 +0,0 @@ -apiVersion: kubeadm.k8s.io/v1alpha2 -kind: MasterConfiguration -kubernetesVersion: v1.11.1 -apiServerCertSANs: -- k8s-master01 -- k8s-master02 -- k8s-master03 -- k8s-master-lb -- 192.168.20.20 -- 192.168.20.21 -- 192.168.20.22 -- 192.168.20.10 -etcd: - local: - extraArgs: - listen-client-urls: "https://127.0.0.1:2379,https://192.168.20.20:2379" - advertise-client-urls: "https://192.168.20.20:2379" - listen-peer-urls: "https://192.168.20.20:2380" - initial-advertise-peer-urls: "https://192.168.20.20:2380" - initial-cluster: "k8s-master01=https://192.168.20.20:2380" - serverCertSANs: - - k8s-master01 - - 192.168.20.20 - peerCertSANs: - - k8s-master01 - - 192.168.20.20 -networking: - # This CIDR is a Calico default. Substitute or remove for your CNI provider. - podSubnet: "172.168.0.0/16" diff --git a/config/k8s-master01/nginx-lb/docker-compose.yaml b/config/k8s-master01/nginx-lb/docker-compose.yaml deleted file mode 100644 index 72048d7..0000000 --- a/config/k8s-master01/nginx-lb/docker-compose.yaml +++ /dev/null @@ -1,11 +0,0 @@ -version: '2' -services: - etcd: - image: nginx:latest - container_name: nginx-lb - hostname: nginx-lb - volumes: - - ./nginx-lb.conf:/etc/nginx/nginx.conf - ports: - - 16443:16443 - restart: always diff --git a/config/k8s-master01/nginx-lb/nginx-lb.conf b/config/k8s-master01/nginx-lb/nginx-lb.conf deleted file mode 100644 index e087c2d..0000000 --- a/config/k8s-master01/nginx-lb/nginx-lb.conf +++ /dev/null @@ -1,46 +0,0 @@ -user nginx; -worker_processes 1; - -error_log /var/log/nginx/error.log warn; -pid /var/run/nginx.pid; - - -events { - worker_connections 1024; -} - - -http { - include /etc/nginx/mime.types; - default_type application/octet-stream; - - log_format main '$remote_addr - $remote_user [$time_local] "$request" ' - '$status $body_bytes_sent "$http_referer" ' - '"$http_user_agent" "$http_x_forwarded_for"'; - - access_log /var/log/nginx/access.log main; - - sendfile on; - #tcp_nopush on; - - keepalive_timeout 65; - - #gzip on; - - include /etc/nginx/conf.d/*.conf; -} - -stream { - upstream apiserver { - server 192.168.20.20:6443 weight=5 max_fails=3 fail_timeout=30s; - server 192.168.20.21:6443 weight=5 max_fails=3 fail_timeout=30s; - server 192.168.20.22:6443 weight=5 max_fails=3 fail_timeout=30s; - } - - server { - listen 16443; - proxy_connect_timeout 1s; - proxy_timeout 3s; - proxy_pass apiserver; - } -} diff --git a/config/k8s-master02/keepalived/check_apiserver.sh b/config/k8s-master02/keepalived/check_apiserver.sh deleted file mode 100755 index 3ceb7a8..0000000 --- a/config/k8s-master02/keepalived/check_apiserver.sh +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/bash - -# if check error then repeat check for 12 times, else exit -err=0 -for k in $(seq 1 12) -do - check_code=$(ps -ef | grep kube-apiserver | grep -v color | grep -v grep | wc -l) - if [[ $check_code == "0" ]]; then - err=$(expr $err + 1) - sleep 5 - continue - else - err=0 - break - fi -done - -if [[ $err != "0" ]]; then - echo "systemctl stop keepalived" - /usr/bin/systemctl stop keepalived - exit 1 -else - exit 0 -fi diff --git a/config/k8s-master02/keepalived/keepalived.conf b/config/k8s-master02/keepalived/keepalived.conf deleted file mode 100644 index e174297..0000000 --- a/config/k8s-master02/keepalived/keepalived.conf +++ /dev/null @@ -1,29 +0,0 @@ -! Configuration File for keepalived -global_defs { - router_id LVS_DEVEL -} -vrrp_script chk_apiserver { - script "/etc/keepalived/check_apiserver.sh" - interval 2 - weight -5 - fall 3 - rise 2 -} -vrrp_instance VI_1 { - state BACKUP - interface ens160 - mcast_src_ip 192.168.20.21 - virtual_router_id 51 - priority 101 - advert_int 2 - authentication { - auth_type PASS - auth_pass 412f7dc3bfed32194d1600c483e10ad1d - } - virtual_ipaddress { - 192.168.20.10 - } - track_script { - chk_apiserver - } -} diff --git a/config/k8s-master02/kubeadm-config.yaml b/config/k8s-master02/kubeadm-config.yaml deleted file mode 100644 index 623e677..0000000 --- a/config/k8s-master02/kubeadm-config.yaml +++ /dev/null @@ -1,30 +0,0 @@ -apiVersion: kubeadm.k8s.io/v1alpha2 -kind: MasterConfiguration -kubernetesVersion: v1.11.1 -apiServerCertSANs: -- k8s-master01 -- k8s-master02 -- k8s-master03 -- k8s-master-lb -- 192.168.20.20 -- 192.168.20.21 -- 192.168.20.22 -- 192.168.20.10 -etcd: - local: - extraArgs: - listen-client-urls: "https://127.0.0.1:2379,https://192.168.20.21:2379" - advertise-client-urls: "https://192.168.20.21:2379" - listen-peer-urls: "https://192.168.20.21:2380" - initial-advertise-peer-urls: "https://192.168.20.21:2380" - initial-cluster: "k8s-master01=https://192.168.20.20:2380,k8s-master02=https://192.168.20.21:2380" - initial-cluster-state: existing - serverCertSANs: - - k8s-master02 - - 192.168.20.21 - peerCertSANs: - - k8s-master02 - - 192.168.20.21 -networking: - # This CIDR is a calico default. Substitute or remove for your CNI provider. - podSubnet: "172.168.0.0/16" diff --git a/config/k8s-master02/nginx-lb/docker-compose.yaml b/config/k8s-master02/nginx-lb/docker-compose.yaml deleted file mode 100644 index 72048d7..0000000 --- a/config/k8s-master02/nginx-lb/docker-compose.yaml +++ /dev/null @@ -1,11 +0,0 @@ -version: '2' -services: - etcd: - image: nginx:latest - container_name: nginx-lb - hostname: nginx-lb - volumes: - - ./nginx-lb.conf:/etc/nginx/nginx.conf - ports: - - 16443:16443 - restart: always diff --git a/config/k8s-master02/nginx-lb/nginx-lb.conf b/config/k8s-master02/nginx-lb/nginx-lb.conf deleted file mode 100644 index e087c2d..0000000 --- a/config/k8s-master02/nginx-lb/nginx-lb.conf +++ /dev/null @@ -1,46 +0,0 @@ -user nginx; -worker_processes 1; - -error_log /var/log/nginx/error.log warn; -pid /var/run/nginx.pid; - - -events { - worker_connections 1024; -} - - -http { - include /etc/nginx/mime.types; - default_type application/octet-stream; - - log_format main '$remote_addr - $remote_user [$time_local] "$request" ' - '$status $body_bytes_sent "$http_referer" ' - '"$http_user_agent" "$http_x_forwarded_for"'; - - access_log /var/log/nginx/access.log main; - - sendfile on; - #tcp_nopush on; - - keepalive_timeout 65; - - #gzip on; - - include /etc/nginx/conf.d/*.conf; -} - -stream { - upstream apiserver { - server 192.168.20.20:6443 weight=5 max_fails=3 fail_timeout=30s; - server 192.168.20.21:6443 weight=5 max_fails=3 fail_timeout=30s; - server 192.168.20.22:6443 weight=5 max_fails=3 fail_timeout=30s; - } - - server { - listen 16443; - proxy_connect_timeout 1s; - proxy_timeout 3s; - proxy_pass apiserver; - } -} diff --git a/config/k8s-master03/keepalived/check_apiserver.sh b/config/k8s-master03/keepalived/check_apiserver.sh deleted file mode 100755 index 3ceb7a8..0000000 --- a/config/k8s-master03/keepalived/check_apiserver.sh +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/bash - -# if check error then repeat check for 12 times, else exit -err=0 -for k in $(seq 1 12) -do - check_code=$(ps -ef | grep kube-apiserver | grep -v color | grep -v grep | wc -l) - if [[ $check_code == "0" ]]; then - err=$(expr $err + 1) - sleep 5 - continue - else - err=0 - break - fi -done - -if [[ $err != "0" ]]; then - echo "systemctl stop keepalived" - /usr/bin/systemctl stop keepalived - exit 1 -else - exit 0 -fi diff --git a/config/k8s-master03/keepalived/keepalived.conf b/config/k8s-master03/keepalived/keepalived.conf deleted file mode 100644 index e61e3cf..0000000 --- a/config/k8s-master03/keepalived/keepalived.conf +++ /dev/null @@ -1,29 +0,0 @@ -! Configuration File for keepalived -global_defs { - router_id LVS_DEVEL -} -vrrp_script chk_apiserver { - script "/etc/keepalived/check_apiserver.sh" - interval 2 - weight -5 - fall 3 - rise 2 -} -vrrp_instance VI_1 { - state BACKUP - interface ens160 - mcast_src_ip 192.168.20.22 - virtual_router_id 51 - priority 100 - advert_int 2 - authentication { - auth_type PASS - auth_pass 412f7dc3bfed32194d1600c483e10ad1d - } - virtual_ipaddress { - 192.168.20.10 - } - track_script { - chk_apiserver - } -} diff --git a/config/k8s-master03/kubeadm-config.yaml b/config/k8s-master03/kubeadm-config.yaml deleted file mode 100644 index 8917c14..0000000 --- a/config/k8s-master03/kubeadm-config.yaml +++ /dev/null @@ -1,30 +0,0 @@ -apiVersion: kubeadm.k8s.io/v1alpha2 -kind: MasterConfiguration -kubernetesVersion: v1.11.1 -apiServerCertSANs: -- k8s-master01 -- k8s-master02 -- k8s-master03 -- k8s-master-lb -- 192.168.20.20 -- 192.168.20.21 -- 192.168.20.22 -- 192.168.20.10 -etcd: - local: - extraArgs: - listen-client-urls: "https://127.0.0.1:2379,https://192.168.20.22:2379" - advertise-client-urls: "https://192.168.20.22:2379" - listen-peer-urls: "https://192.168.20.22:2380" - initial-advertise-peer-urls: "https://192.168.20.22:2380" - initial-cluster: "k8s-master01=https://192.168.20.20:2380,k8s-master02=https://192.168.20.21:2380,k8s-master03=https://192.168.20.22:2380" - initial-cluster-state: existing - serverCertSANs: - - k8s-master03 - - 192.168.20.22 - peerCertSANs: - - k8s-master03 - - 192.168.20.22 -networking: - # This CIDR is a calico default. Substitute or remove for your CNI provider. - podSubnet: "172.168.0.0/16" diff --git a/config/k8s-master03/nginx-lb/docker-compose.yaml b/config/k8s-master03/nginx-lb/docker-compose.yaml deleted file mode 100644 index 72048d7..0000000 --- a/config/k8s-master03/nginx-lb/docker-compose.yaml +++ /dev/null @@ -1,11 +0,0 @@ -version: '2' -services: - etcd: - image: nginx:latest - container_name: nginx-lb - hostname: nginx-lb - volumes: - - ./nginx-lb.conf:/etc/nginx/nginx.conf - ports: - - 16443:16443 - restart: always diff --git a/config/k8s-master03/nginx-lb/nginx-lb.conf b/config/k8s-master03/nginx-lb/nginx-lb.conf deleted file mode 100644 index e087c2d..0000000 --- a/config/k8s-master03/nginx-lb/nginx-lb.conf +++ /dev/null @@ -1,46 +0,0 @@ -user nginx; -worker_processes 1; - -error_log /var/log/nginx/error.log warn; -pid /var/run/nginx.pid; - - -events { - worker_connections 1024; -} - - -http { - include /etc/nginx/mime.types; - default_type application/octet-stream; - - log_format main '$remote_addr - $remote_user [$time_local] "$request" ' - '$status $body_bytes_sent "$http_referer" ' - '"$http_user_agent" "$http_x_forwarded_for"'; - - access_log /var/log/nginx/access.log main; - - sendfile on; - #tcp_nopush on; - - keepalive_timeout 65; - - #gzip on; - - include /etc/nginx/conf.d/*.conf; -} - -stream { - upstream apiserver { - server 192.168.20.20:6443 weight=5 max_fails=3 fail_timeout=30s; - server 192.168.20.21:6443 weight=5 max_fails=3 fail_timeout=30s; - server 192.168.20.22:6443 weight=5 max_fails=3 fail_timeout=30s; - } - - server { - listen 16443; - proxy_connect_timeout 1s; - proxy_timeout 3s; - proxy_pass apiserver; - } -} diff --git a/create-config.sh b/create-config.sh deleted file mode 100755 index 276b47a..0000000 --- a/create-config.sh +++ /dev/null @@ -1,231 +0,0 @@ -#!/bin/bash - -####################################### -# set variables below to create the config files, all files will create at ./config directory -####################################### - -# master keepalived virtual ip address -export K8SHA_VIP=192.168.20.10 - -# master01 ip address -export K8SHA_IP1=192.168.20.20 - -# master02 ip address -export K8SHA_IP2=192.168.20.21 - -# master03 ip address -export K8SHA_IP3=192.168.20.22 - -# master keepalived virtual ip hostname -export K8SHA_VHOST=k8s-master-lb - -# master01 hostname -export K8SHA_HOST1=k8s-master01 - -# master02 hostname -export K8SHA_HOST2=k8s-master02 - -# master03 hostname -export K8SHA_HOST3=k8s-master03 - -# master01 network interface name -export K8SHA_NETINF1=ens160 - -# master02 network interface name -export K8SHA_NETINF2=ens160 - -# master03 network interface name -export K8SHA_NETINF3=ens160 - -# keepalived auth_pass config -export K8SHA_KEEPALIVED_AUTH=412f7dc3bfed32194d1600c483e10ad1d - -# calico reachable ip address -export K8SHA_CALICO_REACHABLE_IP=192.168.0.1 - -# kubernetes CIDR pod subnet, if CIDR pod subnet is "172.168.0.0/16" please set to "172.168.0.0" -export K8SHA_CIDR=172.168.0.0 - -############################## -# please do not modify anything below -############################## - -mkdir -p config/$K8SHA_HOST1/{keepalived,nginx-lb} -mkdir -p config/$K8SHA_HOST2/{keepalived,nginx-lb} -mkdir -p config/$K8SHA_HOST3/{keepalived,nginx-lb} - -# create all kubeadm-config.yaml files - -cat << EOF > config/$K8SHA_HOST1/kubeadm-config.yaml -apiVersion: kubeadm.k8s.io/v1alpha2 -kind: MasterConfiguration -kubernetesVersion: v1.11.1 -apiServerCertSANs: -- ${K8SHA_HOST1} -- ${K8SHA_HOST2} -- ${K8SHA_HOST3} -- ${K8SHA_VHOST} -- ${K8SHA_IP1} -- ${K8SHA_IP2} -- ${K8SHA_IP3} -- ${K8SHA_VIP} -etcd: - local: - extraArgs: - listen-client-urls: "https://127.0.0.1:2379,https://${K8SHA_IP1}:2379" - advertise-client-urls: "https://${K8SHA_IP1}:2379" - listen-peer-urls: "https://${K8SHA_IP1}:2380" - initial-advertise-peer-urls: "https://${K8SHA_IP1}:2380" - initial-cluster: "${K8SHA_HOST1}=https://${K8SHA_IP1}:2380" - serverCertSANs: - - ${K8SHA_HOST1} - - ${K8SHA_IP1} - peerCertSANs: - - ${K8SHA_HOST1} - - ${K8SHA_IP1} -networking: - # This CIDR is a Calico default. Substitute or remove for your CNI provider. - podSubnet: "${K8SHA_CIDR}/16" -EOF - -cat << EOF > config/$K8SHA_HOST2/kubeadm-config.yaml -apiVersion: kubeadm.k8s.io/v1alpha2 -kind: MasterConfiguration -kubernetesVersion: v1.11.1 -apiServerCertSANs: -- ${K8SHA_HOST1} -- ${K8SHA_HOST2} -- ${K8SHA_HOST3} -- ${K8SHA_VHOST} -- ${K8SHA_IP1} -- ${K8SHA_IP2} -- ${K8SHA_IP3} -- ${K8SHA_VIP} -etcd: - local: - extraArgs: - listen-client-urls: "https://127.0.0.1:2379,https://${K8SHA_IP2}:2379" - advertise-client-urls: "https://${K8SHA_IP2}:2379" - listen-peer-urls: "https://${K8SHA_IP2}:2380" - initial-advertise-peer-urls: "https://${K8SHA_IP2}:2380" - initial-cluster: "${K8SHA_HOST1}=https://${K8SHA_IP1}:2380,${K8SHA_HOST2}=https://${K8SHA_IP2}:2380" - initial-cluster-state: existing - serverCertSANs: - - ${K8SHA_HOST2} - - ${K8SHA_IP2} - peerCertSANs: - - ${K8SHA_HOST2} - - ${K8SHA_IP2} -networking: - # This CIDR is a calico default. Substitute or remove for your CNI provider. - podSubnet: "${K8SHA_CIDR}/16" -EOF - -cat << EOF > config/$K8SHA_HOST3/kubeadm-config.yaml -apiVersion: kubeadm.k8s.io/v1alpha2 -kind: MasterConfiguration -kubernetesVersion: v1.11.1 -apiServerCertSANs: -- ${K8SHA_HOST1} -- ${K8SHA_HOST2} -- ${K8SHA_HOST3} -- ${K8SHA_VHOST} -- ${K8SHA_IP1} -- ${K8SHA_IP2} -- ${K8SHA_IP3} -- ${K8SHA_VIP} -etcd: - local: - extraArgs: - listen-client-urls: "https://127.0.0.1:2379,https://${K8SHA_IP3}:2379" - advertise-client-urls: "https://${K8SHA_IP3}:2379" - listen-peer-urls: "https://${K8SHA_IP3}:2380" - initial-advertise-peer-urls: "https://${K8SHA_IP3}:2380" - initial-cluster: "${K8SHA_HOST1}=https://${K8SHA_IP1}:2380,${K8SHA_HOST2}=https://${K8SHA_IP2}:2380,${K8SHA_HOST3}=https://${K8SHA_IP3}:2380" - initial-cluster-state: existing - serverCertSANs: - - ${K8SHA_HOST3} - - ${K8SHA_IP3} - peerCertSANs: - - ${K8SHA_HOST3} - - ${K8SHA_IP3} -networking: - # This CIDR is a calico default. Substitute or remove for your CNI provider. - podSubnet: "${K8SHA_CIDR}/16" -EOF - -echo "create kubeadm-config.yaml files success. config/$K8SHA_HOST1/kubeadm-config.yaml" -echo "create kubeadm-config.yaml files success. config/$K8SHA_HOST2/kubeadm-config.yaml" -echo "create kubeadm-config.yaml files success. config/$K8SHA_HOST3/kubeadm-config.yaml" - -# create all keepalived files -cp keepalived/check_apiserver.sh config/$K8SHA_HOST1/keepalived -cp keepalived/check_apiserver.sh config/$K8SHA_HOST2/keepalived -cp keepalived/check_apiserver.sh config/$K8SHA_HOST3/keepalived - -sed \ --e "s/K8SHA_KA_STATE/MASTER/g" \ --e "s/K8SHA_KA_INTF/${K8SHA_NETINF1}/g" \ --e "s/K8SHA_IPLOCAL/${K8SHA_IP1}/g" \ --e "s/K8SHA_KA_PRIO/102/g" \ --e "s/K8SHA_VIP/${K8SHA_VIP}/g" \ --e "s/K8SHA_KA_AUTH/${K8SHA_KEEPALIVED_AUTH}/g" \ -keepalived/keepalived.conf.tpl > config/$K8SHA_HOST1/keepalived/keepalived.conf - -sed \ --e "s/K8SHA_KA_STATE/BACKUP/g" \ --e "s/K8SHA_KA_INTF/${K8SHA_NETINF2}/g" \ --e "s/K8SHA_IPLOCAL/${K8SHA_IP2}/g" \ --e "s/K8SHA_KA_PRIO/101/g" \ --e "s/K8SHA_VIP/${K8SHA_VIP}/g" \ --e "s/K8SHA_KA_AUTH/${K8SHA_KEEPALIVED_AUTH}/g" \ -keepalived/keepalived.conf.tpl > config/$K8SHA_HOST2/keepalived/keepalived.conf - -sed \ --e "s/K8SHA_KA_STATE/BACKUP/g" \ --e "s/K8SHA_KA_INTF/${K8SHA_NETINF3}/g" \ --e "s/K8SHA_IPLOCAL/${K8SHA_IP3}/g" \ --e "s/K8SHA_KA_PRIO/100/g" \ --e "s/K8SHA_VIP/${K8SHA_VIP}/g" \ --e "s/K8SHA_KA_AUTH/${K8SHA_KEEPALIVED_AUTH}/g" \ -keepalived/keepalived.conf.tpl > config/$K8SHA_HOST3/keepalived/keepalived.conf - -echo "create keepalived files success. config/$K8SHA_HOST1/keepalived/" -echo "create keepalived files success. config/$K8SHA_HOST2/keepalived/" -echo "create keepalived files success. config/$K8SHA_HOST3/keepalived/" - -# create all nginx-lb files - -cp nginx-lb/docker-compose.yaml config/$K8SHA_HOST1/nginx-lb/ -cp nginx-lb/docker-compose.yaml config/$K8SHA_HOST2/nginx-lb/ -cp nginx-lb/docker-compose.yaml config/$K8SHA_HOST3/nginx-lb/ - -sed \ --e "s/K8SHA_IP1/$K8SHA_IP1/g" \ --e "s/K8SHA_IP2/$K8SHA_IP2/g" \ --e "s/K8SHA_IP3/$K8SHA_IP3/g" \ -nginx-lb/nginx-lb.conf.tpl > config/$K8SHA_HOST1/nginx-lb/nginx-lb.conf - -sed \ --e "s/K8SHA_IP1/$K8SHA_IP1/g" \ --e "s/K8SHA_IP2/$K8SHA_IP2/g" \ --e "s/K8SHA_IP3/$K8SHA_IP3/g" \ -nginx-lb/nginx-lb.conf.tpl > config/$K8SHA_HOST2/nginx-lb/nginx-lb.conf - -sed \ --e "s/K8SHA_IP1/$K8SHA_IP1/g" \ --e "s/K8SHA_IP2/$K8SHA_IP2/g" \ --e "s/K8SHA_IP3/$K8SHA_IP3/g" \ -nginx-lb/nginx-lb.conf.tpl > config/$K8SHA_HOST3/nginx-lb/nginx-lb.conf - -echo "create nginx-lb files success. config/$K8SHA_HOST1/nginx-lb/" -echo "create nginx-lb files success. config/$K8SHA_HOST2/nginx-lb/" -echo "create nginx-lb files success. config/$K8SHA_HOST3/nginx-lb/" - -# create calico yaml file -sed \ --e "s/K8SHA_CALICO_REACHABLE_IP/${K8SHA_CALICO_REACHABLE_IP}/g" \ --e "s/K8SHA_CIDR/${K8SHA_CIDR}/g" \ -calico/calico.yaml.tpl > calico/calico.yaml - -echo "create calico.yaml file success. calico/calico.yaml" diff --git a/dashboard/kubernetes-dashboard.yaml b/dashboard/kubernetes-dashboard.yaml deleted file mode 100644 index 9094412..0000000 --- a/dashboard/kubernetes-dashboard.yaml +++ /dev/null @@ -1,192 +0,0 @@ -# Copyright 2017 The Kubernetes Authors. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Configuration to deploy release version of the Dashboard UI compatible with -# Kubernetes 1.8. -# -# Example usage: kubectl create -f - -# ------------------- Dashboard Secret ------------------- # - -apiVersion: v1 -kind: Secret -metadata: - labels: - k8s-app: kubernetes-dashboard - name: kubernetes-dashboard-certs - namespace: kube-system -type: Opaque - ---- -# ------------------- Dashboard Service Account ------------------- # - -apiVersion: v1 -kind: ServiceAccount -metadata: - labels: - k8s-app: kubernetes-dashboard - name: kubernetes-dashboard - namespace: kube-system - ---- -# ------------------- Dashboard Role & Role Binding ------------------- # - -kind: Role -apiVersion: rbac.authorization.k8s.io/v1 -metadata: - name: kubernetes-dashboard-minimal - namespace: kube-system -rules: - # Allow Dashboard to create 'kubernetes-dashboard-key-holder' secret. -- apiGroups: [""] - resources: ["secrets"] - verbs: ["create"] - # Allow Dashboard to create 'kubernetes-dashboard-settings' config map. -- apiGroups: [""] - resources: ["configmaps"] - verbs: ["create"] - # Allow Dashboard to get, update and delete Dashboard exclusive secrets. -- apiGroups: [""] - resources: ["secrets"] - resourceNames: ["kubernetes-dashboard-key-holder", "kubernetes-dashboard-certs"] - verbs: ["get", "update", "delete"] - # Allow Dashboard to get and update 'kubernetes-dashboard-settings' config map. -- apiGroups: [""] - resources: ["configmaps"] - resourceNames: ["kubernetes-dashboard-settings"] - verbs: ["get", "update"] - # Allow Dashboard to get metrics from heapster. -- apiGroups: [""] - resources: ["services"] - resourceNames: ["heapster"] - verbs: ["proxy"] -- apiGroups: [""] - resources: ["services/proxy"] - resourceNames: ["heapster", "http:heapster:", "https:heapster:"] - verbs: ["get"] - ---- -apiVersion: rbac.authorization.k8s.io/v1 -kind: RoleBinding -metadata: - name: kubernetes-dashboard-minimal - namespace: kube-system -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: Role - name: kubernetes-dashboard-minimal -subjects: -- kind: ServiceAccount - name: kubernetes-dashboard - namespace: kube-system - ---- -# ------------------- Dashboard Deployment ------------------- # - -kind: Deployment -apiVersion: apps/v1beta2 -metadata: - labels: - k8s-app: kubernetes-dashboard - name: kubernetes-dashboard - namespace: kube-system -spec: - replicas: 1 - revisionHistoryLimit: 10 - selector: - matchLabels: - k8s-app: kubernetes-dashboard - template: - metadata: - labels: - k8s-app: kubernetes-dashboard - spec: - nodeSelector: - node-role.kubernetes.io/master: "" - containers: - - name: kubernetes-dashboard - image: gcr.io/google_containers/kubernetes-dashboard-amd64:v1.8.3 - ports: - - containerPort: 8443 - protocol: TCP - args: - - --auto-generate-certificates - # Uncomment the following line to manually specify Kubernetes API server Host - # If not specified, Dashboard will attempt to auto discover the API server and connect - # to it. Uncomment only if the default does not work. - # - --apiserver-host=http://my-address:port - volumeMounts: - - name: kubernetes-dashboard-certs - mountPath: /certs - # Create on-disk volume to store exec logs - - mountPath: /tmp - name: tmp-volume - livenessProbe: - httpGet: - scheme: HTTPS - path: / - port: 8443 - initialDelaySeconds: 30 - timeoutSeconds: 30 - volumes: - - name: kubernetes-dashboard-certs - secret: - secretName: kubernetes-dashboard-certs - - name: tmp-volume - emptyDir: {} - serviceAccountName: kubernetes-dashboard - # Comment the following tolerations if Dashboard must not be deployed on master - tolerations: - - key: node-role.kubernetes.io/master - effect: NoSchedule - ---- -# ------------------- Dashboard Service ------------------- # - -kind: Service -apiVersion: v1 -metadata: - labels: - k8s-app: kubernetes-dashboard - name: kubernetes-dashboard - namespace: kube-system -spec: - type: NodePort - ports: - - port: 443 - targetPort: 8443 - nodePort: 30000 - selector: - k8s-app: kubernetes-dashboard - ---- -apiVersion: v1 -kind: ServiceAccount -metadata: - name: admin-user - namespace: kube-system - ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: admin-user -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: cluster-admin -subjects: -- kind: ServiceAccount - name: admin-user - namespace: kube-system diff --git a/heapster/grafana-dashboard/kubernetes-apps_rev1.json b/heapster/grafana-dashboard/kubernetes-apps_rev1.json deleted file mode 100644 index 8d622b7..0000000 --- a/heapster/grafana-dashboard/kubernetes-apps_rev1.json +++ /dev/null @@ -1,1400 +0,0 @@ -{ - "__inputs": [ - { - "name": "DS_PROMETHEUS", - "label": "prometheus", - "description": "", - "type": "datasource", - "pluginId": "prometheus", - "pluginName": "Prometheus" - } - ], - "__requires": [ - { - "type": "grafana", - "id": "grafana", - "name": "Grafana", - "version": "4.1.1" - }, - { - "type": "panel", - "id": "graph", - "name": "Graph", - "version": "" - }, - { - "type": "datasource", - "id": "prometheus", - "name": "Prometheus", - "version": "1.0.0" - } - ], - "annotations": { - "list": [] - }, - "editable": true, - "gnetId": 1471, - "graphTooltip": 1, - "hideControls": false, - "id": null, - "links": [], - "refresh": "30s", - "rows": [ - { - "collapse": false, - "height": "250px", - "panels": [ - { - "aliasColors": {}, - "bars": false, - "datasource": "${DS_PROMETHEUS}", - "editable": true, - "error": false, - "fill": 1, - "grid": {}, - "id": 3, - "legend": { - "alignAsTable": true, - "avg": true, - "current": false, - "max": true, - "min": false, - "rightSide": true, - "show": true, - "sort": "avg", - "sortDesc": true, - "total": false, - "values": true - }, - "lines": true, - "linewidth": 2, - "links": [], - "nullPointMode": "connected", - "percentage": false, - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "span": 6, - "stack": false, - "steppedLine": false, - "targets": [ - { - "expr": "sum(irate(http_requests_total{app=\"$container\", handler!=\"prometheus\", kubernetes_namespace=\"$namespace\"}[30s])) by (kubernetes_namespace,app,code)", - "interval": "", - "intervalFactor": 1, - "legendFormat": "native | {{code}}", - "refId": "A", - "step": 10 - }, - { - "expr": "sum(irate(nginx_http_requests_total{app=\"$container\", kubernetes_namespace=\"$namespace\"}[30s])) by (kubernetes_namespace,app,status)", - "interval": "", - "intervalFactor": 1, - "legendFormat": "nginx | {{status}}", - "refId": "B", - "step": 10 - }, - { - "expr": "sum(irate(haproxy_backend_http_responses_total{app=\"$container\", kubernetes_namespace=\"$namespace\"}[30s])) by (app,kubernetes_namespace,code)", - "interval": "", - "intervalFactor": 1, - "legendFormat": "haproxy | {{code}}", - "refId": "C", - "step": 10 - } - ], - "thresholds": [], - "timeFrom": null, - "timeShift": null, - "title": "Request rate", - "tooltip": { - "msResolution": true, - "shared": false, - "sort": 0, - "value_type": "cumulative" - }, - "type": "graph", - "xaxis": { - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "ops", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ] - }, - { - "aliasColors": {}, - "bars": false, - "datasource": "${DS_PROMETHEUS}", - "fill": 1, - "id": 15, - "legend": { - "alignAsTable": true, - "avg": true, - "current": false, - "max": true, - "min": false, - "rightSide": true, - "show": true, - "sort": "avg", - "sortDesc": true, - "total": false, - "values": true - }, - "lines": true, - "linewidth": 1, - "links": [], - "nullPointMode": "null", - "percentage": false, - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "span": 6, - "stack": false, - "steppedLine": false, - "targets": [ - { - "expr": "sum(irate(haproxy_backend_http_responses_total{app=\"$container\", kubernetes_namespace=\"$namespace\",code=\"5xx\"}[30s])) by (app,kubernetes_namespace) / sum(irate(haproxy_backend_http_responses_total{app=\"$container\", kubernetes_namespace=\"$namespace\"}[30s])) by (app,kubernetes_namespace)", - "interval": "", - "intervalFactor": 2, - "legendFormat": "haproxy", - "refId": "A", - "step": 20 - }, - { - "expr": "sum(irate(http_requests_total{app=\"$container\", handler!=\"prometheus\", kubernetes_namespace=\"$namespace\", code=~\"5[0-9]+\"}[30s])) by (kubernetes_namespace,app) / sum(irate(http_requests_total{app=\"$container\", handler!=\"prometheus\", kubernetes_namespace=\"$namespace\"}[30s])) by (kubernetes_namespace,app)", - "intervalFactor": 2, - "legendFormat": "native", - "refId": "B", - "step": 20 - }, - { - "expr": "sum(irate(nginx_http_requests_total{app=\"$container\", kubernetes_namespace=\"$namespace\", status=~\"5[0-9]+\"}[30s])) by (kubernetes_namespace,app) / sum(irate(nginx_http_requests_total{app=\"$container\", kubernetes_namespace=\"$namespace\"}[30s])) by (kubernetes_namespace,app)", - "intervalFactor": 2, - "legendFormat": "nginx", - "refId": "C", - "step": 20 - } - ], - "thresholds": [], - "timeFrom": null, - "timeShift": null, - "title": "Error rate", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "percentunit", - "label": null, - "logBase": 1, - "max": null, - "min": "0", - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ] - } - ], - "repeat": null, - "repeatIteration": null, - "repeatRowId": null, - "showTitle": false, - "title": "Request rate", - "titleSize": "h6" - }, - { - "collapse": true, - "height": 224, - "panels": [ - { - "aliasColors": {}, - "bars": false, - "datasource": "${DS_PROMETHEUS}", - "editable": true, - "error": false, - "fill": 1, - "grid": {}, - "id": 5, - "legend": { - "alignAsTable": true, - "avg": true, - "current": false, - "max": true, - "min": false, - "rightSide": true, - "show": true, - "sort": "max", - "sortDesc": true, - "total": false, - "values": true - }, - "lines": true, - "linewidth": 2, - "links": [], - "nullPointMode": "connected", - "percentage": false, - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "span": 12, - "stack": false, - "steppedLine": false, - "targets": [ - { - "expr": "histogram_quantile(0.99, sum(rate(http_request_duration_seconds_bucket{app=\"$container\", kubernetes_namespace=\"$namespace\"}[30s])) by (app,kubernetes_namespace,le))", - "intervalFactor": 1, - "legendFormat": "native | 0.99", - "refId": "A", - "step": 1 - }, - { - "expr": "histogram_quantile(0.90, sum(rate(http_request_duration_seconds_bucket{app=\"$container\", kubernetes_namespace=\"$namespace\"}[30s])) by (app,kubernetes_namespace,le))", - "intervalFactor": 1, - "legendFormat": "native | 0.90", - "refId": "B", - "step": 1 - }, - { - "expr": "histogram_quantile(0.5, sum(rate(http_request_duration_seconds_bucket{app=\"$container\", kubernetes_namespace=\"$namespace\"}[30s])) by (app,kubernetes_namespace,le))", - "interval": "", - "intervalFactor": 1, - "legendFormat": "native | 0.50", - "refId": "C", - "step": 1 - }, - { - "expr": "histogram_quantile(0.99, sum(rate(nginx_http_request_duration_seconds_bucket{app=\"$container\", kubernetes_namespace=\"$namespace\"}[30s])) by (app,kubernetes_namespace,le))", - "intervalFactor": 1, - "legendFormat": "nginx | 0.99", - "refId": "D", - "step": 1 - }, - { - "expr": "histogram_quantile(0.9, sum(rate(nginx_http_request_duration_seconds_bucket{app=\"$container\", kubernetes_namespace=\"$namespace\"}[30s])) by (app,kubernetes_namespace,le))", - "intervalFactor": 1, - "legendFormat": "nginx | 0.90", - "refId": "E", - "step": 1 - }, - { - "expr": "histogram_quantile(0.5, sum(rate(nginx_http_request_duration_seconds_bucket{app=\"$container\", kubernetes_namespace=\"$namespace\"}[30s])) by (app,kubernetes_namespace,le))", - "intervalFactor": 1, - "legendFormat": "nginx | 0.50", - "refId": "F", - "step": 1 - } - ], - "thresholds": [], - "timeFrom": null, - "timeShift": null, - "title": "Response time percentiles", - "tooltip": { - "msResolution": true, - "shared": true, - "sort": 0, - "value_type": "cumulative" - }, - "type": "graph", - "xaxis": { - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "s", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ] - } - ], - "repeat": null, - "repeatIteration": null, - "repeatRowId": null, - "showTitle": false, - "title": "Response time", - "titleSize": "h6" - }, - { - "collapse": false, - "height": 250, - "panels": [ - { - "aliasColors": {}, - "bars": false, - "datasource": "${DS_PROMETHEUS}", - "editable": true, - "error": false, - "fill": 1, - "id": 7, - "legend": { - "alignAsTable": true, - "avg": true, - "current": false, - "max": true, - "min": false, - "rightSide": true, - "show": true, - "sort": "avg", - "sortDesc": true, - "total": false, - "values": true - }, - "lines": true, - "linewidth": 1, - "links": [], - "nullPointMode": "connected", - "percentage": false, - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "span": 12, - "stack": false, - "steppedLine": false, - "targets": [ - { - "expr": "count(count(container_memory_usage_bytes{container_name=\"$container\", namespace=\"$namespace\"}) by (pod_name))", - "interval": "", - "intervalFactor": 1, - "legendFormat": "pods", - "refId": "A", - "step": 5 - }, - { - "expr": "count(count(container_memory_usage_bytes{container_name=\"$container\", namespace=\"$namespace\"}) by (kubernetes_io_hostname))", - "interval": "", - "intervalFactor": 2, - "legendFormat": "hosts", - "refId": "B", - "step": 10 - } - ], - "thresholds": [], - "timeFrom": null, - "timeShift": null, - "title": "Number of pods", - "tooltip": { - "msResolution": false, - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": "0", - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ] - } - ], - "repeat": null, - "repeatIteration": null, - "repeatRowId": null, - "showTitle": false, - "title": "Pod count", - "titleSize": "h6" - }, - { - "collapse": false, - "height": 250, - "panels": [ - { - "aliasColors": {}, - "bars": false, - "datasource": "${DS_PROMETHEUS}", - "editable": true, - "error": false, - "fill": 1, - "id": 12, - "legend": { - "alignAsTable": true, - "avg": true, - "current": false, - "max": true, - "min": false, - "rightSide": true, - "show": true, - "sort": "avg", - "sortDesc": true, - "total": false, - "values": true - }, - "lines": true, - "linewidth": 1, - "links": [], - "nullPointMode": "connected", - "percentage": false, - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [ - { - "alias": "elasticsearch-logging-data-20170207a (logging) - system", - "color": "#BF1B00" - }, - { - "alias": "elasticsearch-logging-data-20170207a (logging) - user", - "color": "#508642" - } - ], - "span": 12, - "stack": true, - "steppedLine": false, - "targets": [ - { - "expr": "sum(irate(container_cpu_system_seconds_total{container_name=\"$container\", namespace=\"$namespace\"}[30s])) by (namespace,container_name) / sum(container_spec_cpu_shares{container_name=\"$container\", namespace=\"$namespace\"} / 1024) by (namespace,container_name)", - "intervalFactor": 2, - "legendFormat": "system", - "refId": "C", - "step": 10 - }, - { - "expr": "sum(irate(container_cpu_user_seconds_total{container_name=\"$container\", namespace=\"$namespace\"}[30s])) by (namespace,container_name) / sum(container_spec_cpu_shares{container_name=\"$container\", namespace=\"$namespace\"} / 1024) by (namespace,container_name)", - "interval": "", - "intervalFactor": 2, - "legendFormat": "user", - "refId": "B", - "step": 10 - } - ], - "thresholds": [], - "timeFrom": null, - "timeShift": null, - "title": "Cpu usage (relative to request)", - "tooltip": { - "msResolution": false, - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "percentunit", - "label": "", - "logBase": 1, - "max": "1", - "min": "0", - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ] - } - ], - "repeat": null, - "repeatIteration": null, - "repeatRowId": null, - "showTitle": false, - "title": "Usage relative to request", - "titleSize": "h6" - }, - { - "collapse": true, - "height": 250, - "panels": [ - { - "aliasColors": {}, - "bars": false, - "datasource": "${DS_PROMETHEUS}", - "editable": true, - "error": false, - "fill": 1, - "id": 10, - "legend": { - "alignAsTable": true, - "avg": true, - "current": false, - "max": true, - "min": false, - "rightSide": true, - "show": true, - "sort": "avg", - "sortDesc": true, - "total": false, - "values": true - }, - "lines": true, - "linewidth": 1, - "links": [], - "nullPointMode": "connected", - "percentage": false, - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "span": 6, - "stack": false, - "steppedLine": false, - "targets": [ - { - "expr": "sum(irate(container_cpu_usage_seconds_total{container_name=\"$container\", namespace=\"$namespace\"}[30s])) by (namespace,container_name) / sum(container_spec_cpu_quota{container_name=\"$container\", namespace=\"$namespace\"} / container_spec_cpu_period{container_name=\"$container\", namespace=\"$namespace\"}) by (namespace,container_name)", - "interval": "", - "intervalFactor": 1, - "legendFormat": "actual", - "metric": "", - "refId": "A", - "step": 1 - } - ], - "thresholds": [], - "timeFrom": null, - "timeShift": null, - "title": "Cpu usage (relative to limit)", - "tooltip": { - "msResolution": false, - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "percentunit", - "label": "", - "logBase": 1, - "max": "1", - "min": "0", - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ] - }, - { - "aliasColors": {}, - "bars": false, - "datasource": "${DS_PROMETHEUS}", - "editable": true, - "error": false, - "fill": 1, - "id": 11, - "legend": { - "alignAsTable": true, - "avg": true, - "current": false, - "max": true, - "min": false, - "rightSide": true, - "show": true, - "sort": "avg", - "sortDesc": true, - "total": false, - "values": true - }, - "lines": true, - "linewidth": 1, - "links": [], - "nullPointMode": "connected", - "percentage": false, - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "span": 6, - "stack": false, - "steppedLine": false, - "targets": [ - { - "expr": "sum(container_memory_usage_bytes{container_name=\"$container\", namespace=\"$namespace\"}) by (namespace,container_name) / sum(container_spec_memory_limit_bytes{container_name=\"$container\", namespace=\"$namespace\"}) by (namespace,container_name)", - "interval": "", - "intervalFactor": 1, - "legendFormat": "actual", - "refId": "A", - "step": 1 - } - ], - "thresholds": [], - "timeFrom": null, - "timeShift": null, - "title": "Memory usage (relative to limit)", - "tooltip": { - "msResolution": false, - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "percentunit", - "label": null, - "logBase": 1, - "max": "1", - "min": "0", - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ] - } - ], - "repeat": null, - "repeatIteration": null, - "repeatRowId": null, - "showTitle": false, - "title": "Usage relative to limit", - "titleSize": "h6" - }, - { - "collapse": true, - "height": 250, - "panels": [ - { - "aliasColors": {}, - "bars": false, - "datasource": "${DS_PROMETHEUS}", - "fill": 1, - "id": 13, - "legend": { - "alignAsTable": true, - "avg": true, - "current": false, - "max": true, - "min": false, - "rightSide": true, - "show": true, - "sort": "avg", - "sortDesc": true, - "total": false, - "values": true - }, - "lines": true, - "linewidth": 1, - "links": [], - "nullPointMode": "null", - "percentage": false, - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "span": 6, - "stack": false, - "steppedLine": false, - "targets": [ - { - "expr": "sum(irate(container_cpu_usage_seconds_total{container_name=\"$container\", namespace=\"$namespace\"}[30s])) by (id,pod_name)", - "interval": "", - "intervalFactor": 2, - "legendFormat": "{{pod_name}}", - "refId": "A", - "step": 2 - }, - { - "expr": "sum(container_spec_cpu_quota{container_name=\"$container\", namespace=\"$namespace\"} / container_spec_cpu_period{container_name=\"$container\", namespace=\"$namespace\"}) by (namespace,container_name) / count(container_memory_usage_bytes{container_name=\"$container\", namespace=\"$namespace\"}) by (namespace,container_name) ", - "intervalFactor": 2, - "legendFormat": "limit", - "refId": "B", - "step": 2 - }, - { - "expr": "sum(container_spec_cpu_shares{container_name=\"$container\", namespace=\"$namespace\"} / 1024) by (namespace,container_name) / count(container_spec_cpu_shares{container_name=\"$container\", namespace=\"$namespace\"}) by (namespace,container_name) ", - "intervalFactor": 2, - "legendFormat": "request", - "refId": "C", - "step": 2 - } - ], - "thresholds": [], - "timeFrom": null, - "timeShift": null, - "title": "Cpu usage (per pod)", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "short", - "label": "cores", - "logBase": 1, - "max": null, - "min": "0", - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ] - }, - { - "aliasColors": {}, - "bars": false, - "datasource": "${DS_PROMETHEUS}", - "fill": 1, - "id": 14, - "legend": { - "alignAsTable": true, - "avg": true, - "current": false, - "max": true, - "min": false, - "rightSide": true, - "show": true, - "sort": "avg", - "sortDesc": true, - "total": false, - "values": true - }, - "lines": true, - "linewidth": 1, - "links": [], - "nullPointMode": "null", - "percentage": false, - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "span": 6, - "stack": false, - "steppedLine": false, - "targets": [ - { - "expr": "sum(container_memory_usage_bytes{container_name=\"$container\", namespace=\"$namespace\"}) by (id,pod_name)", - "interval": "", - "intervalFactor": 2, - "legendFormat": "{{pod_name}}", - "refId": "A", - "step": 2 - }, - { - "expr": "sum(container_spec_memory_limit_bytes{container_name=\"$container\", namespace=\"$namespace\"}) by (namespace,container_name) / count(container_memory_usage_bytes{container_name=\"$container\", namespace=\"$namespace\"}) by (container_name,namespace)", - "intervalFactor": 2, - "legendFormat": "limit", - "refId": "B", - "step": 2 - } - ], - "thresholds": [], - "timeFrom": null, - "timeShift": null, - "title": "Memory usage (per pod)", - "tooltip": { - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "bytes", - "label": null, - "logBase": 1, - "max": null, - "min": "0", - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ] - } - ], - "repeat": null, - "repeatIteration": null, - "repeatRowId": null, - "showTitle": false, - "title": "Usage per pod", - "titleSize": "h6" - }, - { - "collapse": true, - "height": 250, - "panels": [ - { - "aliasColors": {}, - "bars": false, - "datasource": "${DS_PROMETHEUS}", - "editable": true, - "error": false, - "fill": 1, - "id": 8, - "legend": { - "alignAsTable": true, - "avg": true, - "current": false, - "max": true, - "min": false, - "rightSide": true, - "show": true, - "sort": "avg", - "sortDesc": true, - "total": false, - "values": true - }, - "lines": true, - "linewidth": 1, - "links": [], - "nullPointMode": "connected", - "percentage": false, - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "span": 6, - "stack": false, - "steppedLine": false, - "targets": [ - { - "expr": "sum(irate(container_cpu_usage_seconds_total{container_name=\"$container\", namespace=\"$namespace\"}[30s])) by (namespace,container_name) / count(container_memory_usage_bytes{container_name=\"$container\", namespace=\"$namespace\"}) by (namespace,container_name) ", - "interval": "", - "intervalFactor": 1, - "legendFormat": "actual", - "refId": "A", - "step": 1 - }, - { - "expr": "sum(container_spec_cpu_quota{container_name=\"$container\", namespace=\"$namespace\"} / container_spec_cpu_period{container_name=\"$container\", namespace=\"$namespace\"}) by (namespace,container_name) / count(container_memory_usage_bytes{container_name=\"$container\", namespace=\"$namespace\"}) by (namespace,container_name) ", - "interval": "", - "intervalFactor": 1, - "legendFormat": "limit", - "refId": "B", - "step": 1 - }, - { - "expr": "sum(container_spec_cpu_shares{container_name=\"$container\", namespace=\"$namespace\"} / 1024) by (namespace,container_name) / count(container_spec_cpu_shares{container_name=\"$container\", namespace=\"$namespace\"}) by (namespace,container_name) ", - "interval": "", - "intervalFactor": 1, - "legendFormat": "request", - "refId": "C", - "step": 1 - } - ], - "thresholds": [], - "timeFrom": null, - "timeShift": null, - "title": "Cpu usage (avg per pod)", - "tooltip": { - "msResolution": false, - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "none", - "label": "cores", - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ] - }, - { - "aliasColors": {}, - "bars": false, - "datasource": "${DS_PROMETHEUS}", - "editable": true, - "error": false, - "fill": 1, - "id": 9, - "legend": { - "alignAsTable": true, - "avg": true, - "current": false, - "max": true, - "min": false, - "rightSide": true, - "show": true, - "sort": "avg", - "sortDesc": true, - "total": false, - "values": true - }, - "lines": true, - "linewidth": 1, - "links": [], - "nullPointMode": "connected", - "percentage": false, - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "span": 6, - "stack": false, - "steppedLine": false, - "targets": [ - { - "expr": "sum(container_memory_usage_bytes{container_name=\"$container\", namespace=\"$namespace\"}) by (namespace,container_name) / count(container_memory_usage_bytes{container_name=\"$container\", namespace=\"$namespace\"}) by (namespace,container_name) ", - "intervalFactor": 1, - "legendFormat": "actual", - "metric": "", - "refId": "A", - "step": 1 - }, - { - "expr": "sum(container_spec_memory_limit_bytes{container_name=\"$container\", namespace=\"$namespace\"}) by (namespace,container_name) / count(container_memory_usage_bytes{container_name=\"$container\", namespace=\"$namespace\"}) by (namespace,container_name) ", - "interval": "", - "intervalFactor": 1, - "legendFormat": "limit", - "refId": "B", - "step": 1 - } - ], - "thresholds": [], - "timeFrom": null, - "timeShift": null, - "title": "Memory usage (avg per pod)", - "tooltip": { - "msResolution": false, - "shared": true, - "sort": 0, - "value_type": "individual" - }, - "type": "graph", - "xaxis": { - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "bytes", - "label": null, - "logBase": 1, - "max": null, - "min": "0", - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ] - } - ], - "repeat": null, - "repeatIteration": null, - "repeatRowId": null, - "showTitle": false, - "title": "Usage per pod (average)", - "titleSize": "h6" - }, - { - "collapse": true, - "height": 259.4375, - "panels": [ - { - "aliasColors": {}, - "bars": false, - "datasource": "${DS_PROMETHEUS}", - "editable": true, - "error": false, - "fill": 1, - "grid": {}, - "id": 1, - "legend": { - "alignAsTable": true, - "avg": true, - "current": false, - "max": true, - "min": false, - "rightSide": true, - "show": true, - "sort": "avg", - "sortDesc": true, - "total": false, - "values": true - }, - "lines": true, - "linewidth": 2, - "links": [], - "nullPointMode": "connected", - "percentage": false, - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "span": 6, - "stack": false, - "steppedLine": false, - "targets": [ - { - "expr": "sum(irate(container_cpu_usage_seconds_total{container_name=\"$container\", namespace=\"$namespace\"}[30s])) by (namespace,container_name)", - "hide": false, - "interval": "", - "intervalFactor": 1, - "legendFormat": "actual", - "metric": "", - "refId": "A", - "step": 1 - }, - { - "expr": "sum(container_spec_cpu_quota{container_name=\"$container\", namespace=\"$namespace\"} / container_spec_cpu_period{container_name=\"$container\", namespace=\"$namespace\"}) by (namespace,container_name)", - "intervalFactor": 1, - "legendFormat": "limit", - "refId": "B", - "step": 1 - }, - { - "expr": "sum(container_spec_cpu_shares{container_name=\"$container\", namespace=\"$namespace\"} / 1024) by (namespace,container_name) ", - "intervalFactor": 1, - "legendFormat": "request", - "refId": "C", - "step": 1 - } - ], - "thresholds": [], - "timeFrom": null, - "timeShift": null, - "title": "Cpu usage (total)", - "tooltip": { - "msResolution": true, - "shared": false, - "sort": 0, - "value_type": "cumulative" - }, - "type": "graph", - "xaxis": { - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "none", - "label": "cores", - "logBase": 1, - "max": null, - "min": 0, - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ] - }, - { - "aliasColors": {}, - "bars": false, - "datasource": "${DS_PROMETHEUS}", - "editable": true, - "error": false, - "fill": 1, - "grid": {}, - "id": 2, - "legend": { - "alignAsTable": true, - "avg": true, - "current": false, - "max": true, - "min": false, - "rightSide": true, - "show": true, - "sort": "avg", - "sortDesc": true, - "total": false, - "values": true - }, - "lines": true, - "linewidth": 2, - "links": [], - "nullPointMode": "connected", - "percentage": false, - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "span": 6, - "stack": false, - "steppedLine": false, - "targets": [ - { - "expr": "sum(container_memory_usage_bytes{container_name=\"$container\", namespace=\"$namespace\"}) by (namespace,container_name)", - "interval": "", - "intervalFactor": 1, - "legendFormat": "actual", - "refId": "A", - "step": 1 - }, - { - "expr": "sum(container_spec_memory_limit_bytes{container_name=\"$container\", namespace=\"$namespace\"}) by (namespace,container_name)", - "intervalFactor": 1, - "legendFormat": "limit", - "refId": "B", - "step": 1 - } - ], - "thresholds": [], - "timeFrom": null, - "timeShift": null, - "title": "Memory usage (total)", - "tooltip": { - "msResolution": true, - "shared": false, - "sort": 0, - "value_type": "cumulative" - }, - "type": "graph", - "xaxis": { - "mode": "time", - "name": null, - "show": true, - "values": [] - }, - "yaxes": [ - { - "format": "bytes", - "label": null, - "logBase": 1, - "max": null, - "min": "0", - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - } - ] - } - ], - "repeat": null, - "repeatIteration": null, - "repeatRowId": null, - "showTitle": false, - "title": "Usage total", - "titleSize": "h6" - } - ], - "schemaVersion": 14, - "style": "dark", - "tags": [], - "templating": { - "list": [ - { - "allValue": ".+", - "current": {}, - "datasource": "${DS_PROMETHEUS}", - "hide": 0, - "includeAll": false, - "label": null, - "multi": false, - "name": "namespace", - "options": [], - "query": "label_values(container_memory_usage_bytes{namespace=~\".+\",container_name!=\"POD\"},namespace)", - "refresh": 1, - "regex": "", - "sort": 1, - "tagValuesQuery": null, - "tags": [], - "tagsQuery": null, - "type": "query", - "useTags": false - }, - { - "allValue": ".+", - "current": {}, - "datasource": "${DS_PROMETHEUS}", - "hide": 0, - "includeAll": false, - "label": null, - "multi": false, - "name": "container", - "options": [], - "query": "label_values(container_memory_usage_bytes{namespace=~\"$namespace\",container_name!=\"POD\"},container_name)", - "refresh": 1, - "regex": "", - "sort": 1, - "tagValuesQuery": null, - "tags": [], - "tagsQuery": null, - "type": "query", - "useTags": false - } - ] - }, - "time": { - "from": "now-3h", - "to": "now" - }, - "timepicker": { - "refresh_intervals": [ - "5s", - "10s", - "30s", - "1m", - "5m", - "15m", - "30m", - "1h", - "2h", - "1d" - ], - "time_options": [ - "5m", - "15m", - "1h", - "6h", - "12h", - "24h", - "2d", - "7d", - "30d" - ] - }, - "timezone": "browser", - "title": "Kubernetes App Metrics", - "version": 37, - "description": "After selecting your namespace and container you get a wealth of metrics like request rate, error rate, response times, pod count, cpu and memory usage. You can view cpu and memory usage in a variety of ways, compared to the limit, compared to the request, per pod, average per pod, etc." -} \ No newline at end of file diff --git a/heapster/grafana-dashboard/kubernetes-cluster-monitoring-via-prometheus_rev3.json b/heapster/grafana-dashboard/kubernetes-cluster-monitoring-via-prometheus_rev3.json deleted file mode 100644 index e5fb269..0000000 --- a/heapster/grafana-dashboard/kubernetes-cluster-monitoring-via-prometheus_rev3.json +++ /dev/null @@ -1,2079 +0,0 @@ -{ - "__inputs": [ - { - "name": "DS_PROMETHEUS", - "label": "Prometheus", - "description": "", - "type": "datasource", - "pluginId": "prometheus", - "pluginName": "Prometheus" - } - ], - "__requires": [ - { - "type": "panel", - "id": "graph", - "name": "Graph", - "version": "" - }, - { - "type": "panel", - "id": "singlestat", - "name": "Singlestat", - "version": "" - }, - { - "type": "grafana", - "id": "grafana", - "name": "Grafana", - "version": "3.1.1" - }, - { - "type": "datasource", - "id": "prometheus", - "name": "Prometheus", - "version": "1.3.0" - } - ], - "id": null, - "title": "Kubernetes cluster monitoring (via Prometheus)", - "description": "Monitors Kubernetes cluster using Prometheus. Shows overall cluster CPU / Memory / Filesystem usage as well as individual pod, containers, systemd services statistics. Uses cAdvisor metrics only.", - "tags": [ - "kubernetes" - ], - "style": "dark", - "timezone": "browser", - "editable": true, - "hideControls": false, - "sharedCrosshair": false, - "rows": [ - { - "collapse": false, - "editable": true, - "height": "200px", - "panels": [ - { - "aliasColors": {}, - "bars": false, - "datasource": "${DS_PROMETHEUS}", - "decimals": 2, - "editable": true, - "error": false, - "fill": 1, - "grid": { - "threshold1": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2": null, - "threshold2Color": "rgba(234, 112, 112, 0.22)", - "thresholdLine": false - }, - "height": "200px", - "id": 32, - "isNew": true, - "legend": { - "alignAsTable": false, - "avg": true, - "current": true, - "max": false, - "min": false, - "rightSide": false, - "show": false, - "sideWidth": 200, - "sort": "current", - "sortDesc": true, - "total": false, - "values": true - }, - "lines": true, - "linewidth": 2, - "links": [], - "nullPointMode": "connected", - "percentage": false, - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "span": 12, - "stack": false, - "steppedLine": false, - "targets": [ - { - "expr": "sum (rate (container_network_receive_bytes_total{kubernetes_io_hostname=~\"^$Node$\"}[1m]))", - "interval": "10s", - "intervalFactor": 1, - "legendFormat": "Received", - "metric": "network", - "refId": "A", - "step": 10 - }, - { - "expr": "- sum (rate (container_network_transmit_bytes_total{kubernetes_io_hostname=~\"^$Node$\"}[1m]))", - "interval": "10s", - "intervalFactor": 1, - "legendFormat": "Sent", - "metric": "network", - "refId": "B", - "step": 10 - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Network I/O pressure", - "tooltip": { - "msResolution": false, - "shared": true, - "sort": 0, - "value_type": "cumulative" - }, - "transparent": false, - "type": "graph", - "xaxis": { - "show": true - }, - "yaxes": [ - { - "format": "Bps", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "format": "Bps", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": false - } - ] - } - ], - "title": "Network I/O pressure" - }, - { - "collapse": false, - "editable": true, - "height": "250px", - "panels": [ - { - "cacheTimeout": null, - "colorBackground": false, - "colorValue": true, - "colors": [ - "rgba(50, 172, 45, 0.97)", - "rgba(237, 129, 40, 0.89)", - "rgba(245, 54, 54, 0.9)" - ], - "datasource": "${DS_PROMETHEUS}", - "editable": true, - "error": false, - "format": "percent", - "gauge": { - "maxValue": 100, - "minValue": 0, - "show": true, - "thresholdLabels": false, - "thresholdMarkers": true - }, - "height": "180px", - "id": 4, - "interval": null, - "isNew": true, - "links": [], - "mappingType": 1, - "mappingTypes": [ - { - "name": "value to text", - "value": 1 - }, - { - "name": "range to text", - "value": 2 - } - ], - "maxDataPoints": 100, - "nullPointMode": "connected", - "nullText": null, - "postfix": "", - "postfixFontSize": "50%", - "prefix": "", - "prefixFontSize": "50%", - "rangeMaps": [ - { - "from": "null", - "text": "N/A", - "to": "null" - } - ], - "span": 4, - "sparkline": { - "fillColor": "rgba(31, 118, 189, 0.18)", - "full": false, - "lineColor": "rgb(31, 120, 193)", - "show": false - }, - "targets": [ - { - "expr": "sum (container_memory_working_set_bytes{id=\"/\",kubernetes_io_hostname=~\"^$Node$\"}) / sum (machine_memory_bytes{kubernetes_io_hostname=~\"^$Node$\"}) * 100", - "interval": "10s", - "intervalFactor": 1, - "refId": "A", - "step": 10 - } - ], - "thresholds": "65, 90", - "title": "Cluster memory usage", - "transparent": false, - "type": "singlestat", - "valueFontSize": "80%", - "valueMaps": [ - { - "op": "=", - "text": "N/A", - "value": "null" - } - ], - "valueName": "current" - }, - { - "cacheTimeout": null, - "colorBackground": false, - "colorValue": true, - "colors": [ - "rgba(50, 172, 45, 0.97)", - "rgba(237, 129, 40, 0.89)", - "rgba(245, 54, 54, 0.9)" - ], - "datasource": "${DS_PROMETHEUS}", - "decimals": 2, - "editable": true, - "error": false, - "format": "percent", - "gauge": { - "maxValue": 100, - "minValue": 0, - "show": true, - "thresholdLabels": false, - "thresholdMarkers": true - }, - "height": "180px", - "id": 6, - "interval": null, - "isNew": true, - "links": [], - "mappingType": 1, - "mappingTypes": [ - { - "name": "value to text", - "value": 1 - }, - { - "name": "range to text", - "value": 2 - } - ], - "maxDataPoints": 100, - "nullPointMode": "connected", - "nullText": null, - "postfix": "", - "postfixFontSize": "50%", - "prefix": "", - "prefixFontSize": "50%", - "rangeMaps": [ - { - "from": "null", - "text": "N/A", - "to": "null" - } - ], - "span": 4, - "sparkline": { - "fillColor": "rgba(31, 118, 189, 0.18)", - "full": false, - "lineColor": "rgb(31, 120, 193)", - "show": false - }, - "targets": [ - { - "expr": "sum (rate (container_cpu_usage_seconds_total{id=\"/\",kubernetes_io_hostname=~\"^$Node$\"}[1m])) / sum (machine_cpu_cores{kubernetes_io_hostname=~\"^$Node$\"}) * 100", - "interval": "10s", - "intervalFactor": 1, - "refId": "A", - "step": 10 - } - ], - "thresholds": "65, 90", - "title": "Cluster CPU usage (1m avg)", - "type": "singlestat", - "valueFontSize": "80%", - "valueMaps": [ - { - "op": "=", - "text": "N/A", - "value": "null" - } - ], - "valueName": "current" - }, - { - "cacheTimeout": null, - "colorBackground": false, - "colorValue": true, - "colors": [ - "rgba(50, 172, 45, 0.97)", - "rgba(237, 129, 40, 0.89)", - "rgba(245, 54, 54, 0.9)" - ], - "datasource": "${DS_PROMETHEUS}", - "decimals": 2, - "editable": true, - "error": false, - "format": "percent", - "gauge": { - "maxValue": 100, - "minValue": 0, - "show": true, - "thresholdLabels": false, - "thresholdMarkers": true - }, - "height": "180px", - "id": 7, - "interval": null, - "isNew": true, - "links": [], - "mappingType": 1, - "mappingTypes": [ - { - "name": "value to text", - "value": 1 - }, - { - "name": "range to text", - "value": 2 - } - ], - "maxDataPoints": 100, - "nullPointMode": "connected", - "nullText": null, - "postfix": "", - "postfixFontSize": "50%", - "prefix": "", - "prefixFontSize": "50%", - "rangeMaps": [ - { - "from": "null", - "text": "N/A", - "to": "null" - } - ], - "span": 4, - "sparkline": { - "fillColor": "rgba(31, 118, 189, 0.18)", - "full": false, - "lineColor": "rgb(31, 120, 193)", - "show": false - }, - "targets": [ - { - "expr": "sum (container_fs_usage_bytes{device=~\"^/dev/[sv]d[a-z][1-9]$\",id=\"/\",kubernetes_io_hostname=~\"^$Node$\"}) / sum (container_fs_limit_bytes{device=~\"^/dev/[sv]d[a-z][1-9]$\",id=\"/\",kubernetes_io_hostname=~\"^$Node$\"}) * 100", - "interval": "10s", - "intervalFactor": 1, - "legendFormat": "", - "metric": "", - "refId": "A", - "step": 10 - } - ], - "thresholds": "65, 90", - "title": "Cluster filesystem usage", - "type": "singlestat", - "valueFontSize": "80%", - "valueMaps": [ - { - "op": "=", - "text": "N/A", - "value": "null" - } - ], - "valueName": "current" - }, - { - "cacheTimeout": null, - "colorBackground": false, - "colorValue": false, - "colors": [ - "rgba(50, 172, 45, 0.97)", - "rgba(237, 129, 40, 0.89)", - "rgba(245, 54, 54, 0.9)" - ], - "datasource": "${DS_PROMETHEUS}", - "decimals": 2, - "editable": true, - "error": false, - "format": "bytes", - "gauge": { - "maxValue": 100, - "minValue": 0, - "show": false, - "thresholdLabels": false, - "thresholdMarkers": true - }, - "height": "1px", - "id": 9, - "interval": null, - "isNew": true, - "links": [], - "mappingType": 1, - "mappingTypes": [ - { - "name": "value to text", - "value": 1 - }, - { - "name": "range to text", - "value": 2 - } - ], - "maxDataPoints": 100, - "nullPointMode": "connected", - "nullText": null, - "postfix": "", - "postfixFontSize": "20%", - "prefix": "", - "prefixFontSize": "20%", - "rangeMaps": [ - { - "from": "null", - "text": "N/A", - "to": "null" - } - ], - "span": 2, - "sparkline": { - "fillColor": "rgba(31, 118, 189, 0.18)", - "full": false, - "lineColor": "rgb(31, 120, 193)", - "show": false - }, - "targets": [ - { - "expr": "sum (container_memory_working_set_bytes{id=\"/\",kubernetes_io_hostname=~\"^$Node$\"})", - "interval": "10s", - "intervalFactor": 1, - "refId": "A", - "step": 10 - } - ], - "thresholds": "", - "title": "Used", - "type": "singlestat", - "valueFontSize": "50%", - "valueMaps": [ - { - "op": "=", - "text": "N/A", - "value": "null" - } - ], - "valueName": "current" - }, - { - "cacheTimeout": null, - "colorBackground": false, - "colorValue": false, - "colors": [ - "rgba(50, 172, 45, 0.97)", - "rgba(237, 129, 40, 0.89)", - "rgba(245, 54, 54, 0.9)" - ], - "datasource": "${DS_PROMETHEUS}", - "decimals": 2, - "editable": true, - "error": false, - "format": "bytes", - "gauge": { - "maxValue": 100, - "minValue": 0, - "show": false, - "thresholdLabels": false, - "thresholdMarkers": true - }, - "height": "1px", - "id": 10, - "interval": null, - "isNew": true, - "links": [], - "mappingType": 1, - "mappingTypes": [ - { - "name": "value to text", - "value": 1 - }, - { - "name": "range to text", - "value": 2 - } - ], - "maxDataPoints": 100, - "nullPointMode": "connected", - "nullText": null, - "postfix": "", - "postfixFontSize": "50%", - "prefix": "", - "prefixFontSize": "50%", - "rangeMaps": [ - { - "from": "null", - "text": "N/A", - "to": "null" - } - ], - "span": 2, - "sparkline": { - "fillColor": "rgba(31, 118, 189, 0.18)", - "full": false, - "lineColor": "rgb(31, 120, 193)", - "show": false - }, - "targets": [ - { - "expr": "sum (machine_memory_bytes{kubernetes_io_hostname=~\"^$Node$\"})", - "interval": "10s", - "intervalFactor": 1, - "refId": "A", - "step": 10 - } - ], - "thresholds": "", - "title": "Total", - "type": "singlestat", - "valueFontSize": "50%", - "valueMaps": [ - { - "op": "=", - "text": "N/A", - "value": "null" - } - ], - "valueName": "current" - }, - { - "cacheTimeout": null, - "colorBackground": false, - "colorValue": false, - "colors": [ - "rgba(50, 172, 45, 0.97)", - "rgba(237, 129, 40, 0.89)", - "rgba(245, 54, 54, 0.9)" - ], - "datasource": "${DS_PROMETHEUS}", - "decimals": 2, - "editable": true, - "error": false, - "format": "none", - "gauge": { - "maxValue": 100, - "minValue": 0, - "show": false, - "thresholdLabels": false, - "thresholdMarkers": true - }, - "height": "1px", - "id": 11, - "interval": null, - "isNew": true, - "links": [], - "mappingType": 1, - "mappingTypes": [ - { - "name": "value to text", - "value": 1 - }, - { - "name": "range to text", - "value": 2 - } - ], - "maxDataPoints": 100, - "nullPointMode": "connected", - "nullText": null, - "postfix": " cores", - "postfixFontSize": "30%", - "prefix": "", - "prefixFontSize": "50%", - "rangeMaps": [ - { - "from": "null", - "text": "N/A", - "to": "null" - } - ], - "span": 2, - "sparkline": { - "fillColor": "rgba(31, 118, 189, 0.18)", - "full": false, - "lineColor": "rgb(31, 120, 193)", - "show": false - }, - "targets": [ - { - "expr": "sum (rate (container_cpu_usage_seconds_total{id=\"/\",kubernetes_io_hostname=~\"^$Node$\"}[1m]))", - "interval": "10s", - "intervalFactor": 1, - "refId": "A", - "step": 10 - } - ], - "thresholds": "", - "title": "Used", - "type": "singlestat", - "valueFontSize": "50%", - "valueMaps": [ - { - "op": "=", - "text": "N/A", - "value": "null" - } - ], - "valueName": "current" - }, - { - "cacheTimeout": null, - "colorBackground": false, - "colorValue": false, - "colors": [ - "rgba(50, 172, 45, 0.97)", - "rgba(237, 129, 40, 0.89)", - "rgba(245, 54, 54, 0.9)" - ], - "datasource": "${DS_PROMETHEUS}", - "decimals": 2, - "editable": true, - "error": false, - "format": "none", - "gauge": { - "maxValue": 100, - "minValue": 0, - "show": false, - "thresholdLabels": false, - "thresholdMarkers": true - }, - "height": "1px", - "id": 12, - "interval": null, - "isNew": true, - "links": [], - "mappingType": 1, - "mappingTypes": [ - { - "name": "value to text", - "value": 1 - }, - { - "name": "range to text", - "value": 2 - } - ], - "maxDataPoints": 100, - "nullPointMode": "connected", - "nullText": null, - "postfix": " cores", - "postfixFontSize": "30%", - "prefix": "", - "prefixFontSize": "50%", - "rangeMaps": [ - { - "from": "null", - "text": "N/A", - "to": "null" - } - ], - "span": 2, - "sparkline": { - "fillColor": "rgba(31, 118, 189, 0.18)", - "full": false, - "lineColor": "rgb(31, 120, 193)", - "show": false - }, - "targets": [ - { - "expr": "sum (machine_cpu_cores{kubernetes_io_hostname=~\"^$Node$\"})", - "interval": "10s", - "intervalFactor": 1, - "refId": "A", - "step": 10 - } - ], - "thresholds": "", - "title": "Total", - "type": "singlestat", - "valueFontSize": "50%", - "valueMaps": [ - { - "op": "=", - "text": "N/A", - "value": "null" - } - ], - "valueName": "current" - }, - { - "cacheTimeout": null, - "colorBackground": false, - "colorValue": false, - "colors": [ - "rgba(50, 172, 45, 0.97)", - "rgba(237, 129, 40, 0.89)", - "rgba(245, 54, 54, 0.9)" - ], - "datasource": "${DS_PROMETHEUS}", - "decimals": 2, - "editable": true, - "error": false, - "format": "bytes", - "gauge": { - "maxValue": 100, - "minValue": 0, - "show": false, - "thresholdLabels": false, - "thresholdMarkers": true - }, - "height": "1px", - "id": 13, - "interval": null, - "isNew": true, - "links": [], - "mappingType": 1, - "mappingTypes": [ - { - "name": "value to text", - "value": 1 - }, - { - "name": "range to text", - "value": 2 - } - ], - "maxDataPoints": 100, - "nullPointMode": "connected", - "nullText": null, - "postfix": "", - "postfixFontSize": "50%", - "prefix": "", - "prefixFontSize": "50%", - "rangeMaps": [ - { - "from": "null", - "text": "N/A", - "to": "null" - } - ], - "span": 2, - "sparkline": { - "fillColor": "rgba(31, 118, 189, 0.18)", - "full": false, - "lineColor": "rgb(31, 120, 193)", - "show": false - }, - "targets": [ - { - "expr": "sum (container_fs_usage_bytes{device=~\"^/dev/[sv]d[a-z][1-9]$\",id=\"/\",kubernetes_io_hostname=~\"^$Node$\"})", - "interval": "10s", - "intervalFactor": 1, - "refId": "A", - "step": 10 - } - ], - "thresholds": "", - "title": "Used", - "type": "singlestat", - "valueFontSize": "50%", - "valueMaps": [ - { - "op": "=", - "text": "N/A", - "value": "null" - } - ], - "valueName": "current" - }, - { - "cacheTimeout": null, - "colorBackground": false, - "colorValue": false, - "colors": [ - "rgba(50, 172, 45, 0.97)", - "rgba(237, 129, 40, 0.89)", - "rgba(245, 54, 54, 0.9)" - ], - "datasource": "${DS_PROMETHEUS}", - "decimals": 2, - "editable": true, - "error": false, - "format": "bytes", - "gauge": { - "maxValue": 100, - "minValue": 0, - "show": false, - "thresholdLabels": false, - "thresholdMarkers": true - }, - "height": "1px", - "id": 14, - "interval": null, - "isNew": true, - "links": [], - "mappingType": 1, - "mappingTypes": [ - { - "name": "value to text", - "value": 1 - }, - { - "name": "range to text", - "value": 2 - } - ], - "maxDataPoints": 100, - "nullPointMode": "connected", - "nullText": null, - "postfix": "", - "postfixFontSize": "50%", - "prefix": "", - "prefixFontSize": "50%", - "rangeMaps": [ - { - "from": "null", - "text": "N/A", - "to": "null" - } - ], - "span": 2, - "sparkline": { - "fillColor": "rgba(31, 118, 189, 0.18)", - "full": false, - "lineColor": "rgb(31, 120, 193)", - "show": false - }, - "targets": [ - { - "expr": "sum (container_fs_limit_bytes{device=~\"^/dev/[sv]d[a-z][1-9]$\",id=\"/\",kubernetes_io_hostname=~\"^$Node$\"})", - "interval": "10s", - "intervalFactor": 1, - "refId": "A", - "step": 10 - } - ], - "thresholds": "", - "title": "Total", - "type": "singlestat", - "valueFontSize": "50%", - "valueMaps": [ - { - "op": "=", - "text": "N/A", - "value": "null" - } - ], - "valueName": "current" - } - ], - "showTitle": false, - "title": "Total usage" - }, - { - "collapse": false, - "editable": true, - "height": "250px", - "panels": [ - { - "aliasColors": {}, - "bars": false, - "datasource": "${DS_PROMETHEUS}", - "decimals": 3, - "editable": true, - "error": false, - "fill": 0, - "grid": { - "threshold1": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2": null, - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "height": "", - "id": 17, - "isNew": true, - "legend": { - "alignAsTable": true, - "avg": true, - "current": true, - "max": false, - "min": false, - "rightSide": true, - "show": true, - "sort": "current", - "sortDesc": true, - "total": false, - "values": true - }, - "lines": true, - "linewidth": 2, - "links": [], - "nullPointMode": "connected", - "percentage": false, - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "span": 12, - "stack": false, - "steppedLine": true, - "targets": [ - { - "expr": "sum (rate (container_cpu_usage_seconds_total{image!=\"\",name=~\"^k8s_.*\",kubernetes_io_hostname=~\"^$Node$\"}[1m])) by (pod_name)", - "interval": "10s", - "intervalFactor": 1, - "legendFormat": "{{ pod_name }}", - "metric": "container_cpu", - "refId": "A", - "step": 10 - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Pods CPU usage (1m avg)", - "tooltip": { - "msResolution": true, - "shared": true, - "sort": 2, - "value_type": "cumulative" - }, - "transparent": false, - "type": "graph", - "xaxis": { - "show": true - }, - "yaxes": [ - { - "format": "none", - "label": "cores", - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": false - } - ] - } - ], - "showTitle": false, - "title": "Pods CPU usage" - }, - { - "collapse": true, - "editable": true, - "height": "250px", - "panels": [ - { - "aliasColors": {}, - "bars": false, - "datasource": "${DS_PROMETHEUS}", - "decimals": 3, - "editable": true, - "error": false, - "fill": 0, - "grid": { - "threshold1": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2": null, - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "height": "", - "id": 23, - "isNew": true, - "legend": { - "alignAsTable": true, - "avg": true, - "current": true, - "max": false, - "min": false, - "rightSide": true, - "show": true, - "sort": "current", - "sortDesc": true, - "total": false, - "values": true - }, - "lines": true, - "linewidth": 2, - "links": [], - "nullPointMode": "connected", - "percentage": false, - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "span": 12, - "stack": false, - "steppedLine": true, - "targets": [ - { - "expr": "sum (rate (container_cpu_usage_seconds_total{systemd_service_name!=\"\",kubernetes_io_hostname=~\"^$Node$\"}[1m])) by (systemd_service_name)", - "hide": false, - "interval": "10s", - "intervalFactor": 1, - "legendFormat": "{{ systemd_service_name }}", - "metric": "container_cpu", - "refId": "A", - "step": 10 - } - ], - "timeFrom": null, - "timeShift": null, - "title": "System services CPU usage (1m avg)", - "tooltip": { - "msResolution": true, - "shared": true, - "sort": 2, - "value_type": "cumulative" - }, - "type": "graph", - "xaxis": { - "show": true - }, - "yaxes": [ - { - "format": "none", - "label": "cores", - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": false - } - ] - } - ], - "title": "System services CPU usage" - }, - { - "collapse": true, - "editable": true, - "height": "250px", - "panels": [ - { - "aliasColors": {}, - "bars": false, - "datasource": "${DS_PROMETHEUS}", - "decimals": 3, - "editable": true, - "error": false, - "fill": 0, - "grid": { - "threshold1": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2": null, - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "height": "", - "id": 24, - "isNew": true, - "legend": { - "alignAsTable": true, - "avg": true, - "current": true, - "hideEmpty": false, - "hideZero": false, - "max": false, - "min": false, - "rightSide": true, - "show": true, - "sideWidth": null, - "sort": "current", - "sortDesc": true, - "total": false, - "values": true - }, - "lines": true, - "linewidth": 2, - "links": [], - "nullPointMode": "connected", - "percentage": false, - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "span": 12, - "stack": false, - "steppedLine": true, - "targets": [ - { - "expr": "sum (rate (container_cpu_usage_seconds_total{image!=\"\",name=~\"^k8s_.*\",container_name!=\"POD\",kubernetes_io_hostname=~\"^$Node$\"}[1m])) by (container_name, pod_name)", - "hide": false, - "interval": "10s", - "intervalFactor": 1, - "legendFormat": "pod: {{ pod_name }} | {{ container_name }}", - "metric": "container_cpu", - "refId": "A", - "step": 10 - }, - { - "expr": "sum (rate (container_cpu_usage_seconds_total{image!=\"\",name!~\"^k8s_.*\",kubernetes_io_hostname=~\"^$Node$\"}[1m])) by (kubernetes_io_hostname, name, image)", - "hide": false, - "interval": "10s", - "intervalFactor": 1, - "legendFormat": "docker: {{ kubernetes_io_hostname }} | {{ image }} ({{ name }})", - "metric": "container_cpu", - "refId": "B", - "step": 10 - }, - { - "expr": "sum (rate (container_cpu_usage_seconds_total{rkt_container_name!=\"\",kubernetes_io_hostname=~\"^$Node$\"}[1m])) by (kubernetes_io_hostname, rkt_container_name)", - "interval": "10s", - "intervalFactor": 1, - "legendFormat": "rkt: {{ kubernetes_io_hostname }} | {{ rkt_container_name }}", - "metric": "container_cpu", - "refId": "C", - "step": 10 - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Containers CPU usage (1m avg)", - "tooltip": { - "msResolution": true, - "shared": true, - "sort": 2, - "value_type": "cumulative" - }, - "type": "graph", - "xaxis": { - "show": true - }, - "yaxes": [ - { - "format": "none", - "label": "cores", - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": false - } - ] - } - ], - "title": "Containers CPU usage" - }, - { - "collapse": true, - "editable": true, - "height": "500px", - "panels": [ - { - "aliasColors": {}, - "bars": false, - "datasource": "${DS_PROMETHEUS}", - "decimals": 3, - "editable": true, - "error": false, - "fill": 0, - "grid": { - "threshold1": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2": null, - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "id": 20, - "isNew": true, - "legend": { - "alignAsTable": true, - "avg": true, - "current": true, - "max": false, - "min": false, - "rightSide": false, - "show": true, - "sort": "current", - "sortDesc": true, - "total": false, - "values": true - }, - "lines": true, - "linewidth": 2, - "links": [], - "nullPointMode": "connected", - "percentage": false, - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "span": 12, - "stack": false, - "steppedLine": true, - "targets": [ - { - "expr": "sum (rate (container_cpu_usage_seconds_total{id!=\"/\",kubernetes_io_hostname=~\"^$Node$\"}[1m])) by (id)", - "hide": false, - "interval": "10s", - "intervalFactor": 1, - "legendFormat": "{{ id }}", - "metric": "container_cpu", - "refId": "A", - "step": 10 - } - ], - "timeFrom": null, - "timeShift": null, - "title": "All processes CPU usage (1m avg)", - "tooltip": { - "msResolution": true, - "shared": true, - "sort": 2, - "value_type": "cumulative" - }, - "type": "graph", - "xaxis": { - "show": true - }, - "yaxes": [ - { - "format": "none", - "label": "cores", - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": false - } - ] - } - ], - "repeat": null, - "showTitle": false, - "title": "All processes CPU usage" - }, - { - "collapse": false, - "editable": true, - "height": "250px", - "panels": [ - { - "aliasColors": {}, - "bars": false, - "datasource": "${DS_PROMETHEUS}", - "decimals": 2, - "editable": true, - "error": false, - "fill": 0, - "grid": { - "threshold1": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2": null, - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "id": 25, - "isNew": true, - "legend": { - "alignAsTable": true, - "avg": true, - "current": true, - "max": false, - "min": false, - "rightSide": true, - "show": true, - "sideWidth": 200, - "sort": "current", - "sortDesc": true, - "total": false, - "values": true - }, - "lines": true, - "linewidth": 2, - "links": [], - "nullPointMode": "connected", - "percentage": false, - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "span": 12, - "stack": false, - "steppedLine": true, - "targets": [ - { - "expr": "sum (container_memory_working_set_bytes{image!=\"\",name=~\"^k8s_.*\",kubernetes_io_hostname=~\"^$Node$\"}) by (pod_name)", - "interval": "10s", - "intervalFactor": 1, - "legendFormat": "{{ pod_name }}", - "metric": "container_memory_usage:sort_desc", - "refId": "A", - "step": 10 - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Pods memory usage", - "tooltip": { - "msResolution": false, - "shared": true, - "sort": 2, - "value_type": "cumulative" - }, - "type": "graph", - "xaxis": { - "show": true - }, - "yaxes": [ - { - "format": "bytes", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": false - } - ] - } - ], - "title": "Pods memory usage" - }, - { - "collapse": true, - "editable": true, - "height": "250px", - "panels": [ - { - "aliasColors": {}, - "bars": false, - "datasource": "${DS_PROMETHEUS}", - "decimals": 2, - "editable": true, - "error": false, - "fill": 0, - "grid": { - "threshold1": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2": null, - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "id": 26, - "isNew": true, - "legend": { - "alignAsTable": true, - "avg": true, - "current": true, - "max": false, - "min": false, - "rightSide": true, - "show": true, - "sideWidth": 200, - "sort": "current", - "sortDesc": true, - "total": false, - "values": true - }, - "lines": true, - "linewidth": 2, - "links": [], - "nullPointMode": "connected", - "percentage": false, - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "span": 12, - "stack": false, - "steppedLine": true, - "targets": [ - { - "expr": "sum (container_memory_working_set_bytes{systemd_service_name!=\"\",kubernetes_io_hostname=~\"^$Node$\"}) by (systemd_service_name)", - "interval": "10s", - "intervalFactor": 1, - "legendFormat": "{{ systemd_service_name }}", - "metric": "container_memory_usage:sort_desc", - "refId": "A", - "step": 10 - } - ], - "timeFrom": null, - "timeShift": null, - "title": "System services memory usage", - "tooltip": { - "msResolution": false, - "shared": true, - "sort": 2, - "value_type": "cumulative" - }, - "type": "graph", - "xaxis": { - "show": true - }, - "yaxes": [ - { - "format": "bytes", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": false - } - ] - } - ], - "title": "System services memory usage" - }, - { - "collapse": true, - "editable": true, - "height": "250px", - "panels": [ - { - "aliasColors": {}, - "bars": false, - "datasource": "${DS_PROMETHEUS}", - "decimals": 2, - "editable": true, - "error": false, - "fill": 0, - "grid": { - "threshold1": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2": null, - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "id": 27, - "isNew": true, - "legend": { - "alignAsTable": true, - "avg": true, - "current": true, - "max": false, - "min": false, - "rightSide": true, - "show": true, - "sideWidth": 200, - "sort": "current", - "sortDesc": true, - "total": false, - "values": true - }, - "lines": true, - "linewidth": 2, - "links": [], - "nullPointMode": "connected", - "percentage": false, - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "span": 12, - "stack": false, - "steppedLine": true, - "targets": [ - { - "expr": "sum (container_memory_working_set_bytes{image!=\"\",name=~\"^k8s_.*\",container_name!=\"POD\",kubernetes_io_hostname=~\"^$Node$\"}) by (container_name, pod_name)", - "interval": "10s", - "intervalFactor": 1, - "legendFormat": "pod: {{ pod_name }} | {{ container_name }}", - "metric": "container_memory_usage:sort_desc", - "refId": "A", - "step": 10 - }, - { - "expr": "sum (container_memory_working_set_bytes{image!=\"\",name!~\"^k8s_.*\",kubernetes_io_hostname=~\"^$Node$\"}) by (kubernetes_io_hostname, name, image)", - "interval": "10s", - "intervalFactor": 1, - "legendFormat": "docker: {{ kubernetes_io_hostname }} | {{ image }} ({{ name }})", - "metric": "container_memory_usage:sort_desc", - "refId": "B", - "step": 10 - }, - { - "expr": "sum (container_memory_working_set_bytes{rkt_container_name!=\"\",kubernetes_io_hostname=~\"^$Node$\"}) by (kubernetes_io_hostname, rkt_container_name)", - "interval": "10s", - "intervalFactor": 1, - "legendFormat": "rkt: {{ kubernetes_io_hostname }} | {{ rkt_container_name }}", - "metric": "container_memory_usage:sort_desc", - "refId": "C", - "step": 10 - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Containers memory usage", - "tooltip": { - "msResolution": false, - "shared": true, - "sort": 2, - "value_type": "cumulative" - }, - "type": "graph", - "xaxis": { - "show": true - }, - "yaxes": [ - { - "format": "bytes", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": false - } - ] - } - ], - "title": "Containers memory usage" - }, - { - "collapse": true, - "editable": true, - "height": "500px", - "panels": [ - { - "aliasColors": {}, - "bars": false, - "datasource": "${DS_PROMETHEUS}", - "decimals": 2, - "editable": true, - "error": false, - "fill": 0, - "grid": { - "threshold1": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2": null, - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "id": 28, - "isNew": true, - "legend": { - "alignAsTable": true, - "avg": true, - "current": true, - "max": false, - "min": false, - "rightSide": false, - "show": true, - "sideWidth": 200, - "sort": "current", - "sortDesc": true, - "total": false, - "values": true - }, - "lines": true, - "linewidth": 2, - "links": [], - "nullPointMode": "connected", - "percentage": false, - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "span": 12, - "stack": false, - "steppedLine": true, - "targets": [ - { - "expr": "sum (container_memory_working_set_bytes{id!=\"/\",kubernetes_io_hostname=~\"^$Node$\"}) by (id)", - "interval": "10s", - "intervalFactor": 1, - "legendFormat": "{{ id }}", - "metric": "container_memory_usage:sort_desc", - "refId": "A", - "step": 10 - } - ], - "timeFrom": null, - "timeShift": null, - "title": "All processes memory usage", - "tooltip": { - "msResolution": false, - "shared": true, - "sort": 2, - "value_type": "cumulative" - }, - "type": "graph", - "xaxis": { - "show": true - }, - "yaxes": [ - { - "format": "bytes", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": false - } - ] - } - ], - "title": "All processes memory usage" - }, - { - "collapse": false, - "editable": true, - "height": "250px", - "panels": [ - { - "aliasColors": {}, - "bars": false, - "datasource": "${DS_PROMETHEUS}", - "decimals": 2, - "editable": true, - "error": false, - "fill": 1, - "grid": { - "threshold1": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2": null, - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "id": 16, - "isNew": true, - "legend": { - "alignAsTable": true, - "avg": true, - "current": true, - "max": false, - "min": false, - "rightSide": true, - "show": true, - "sideWidth": 200, - "sort": "current", - "sortDesc": true, - "total": false, - "values": true - }, - "lines": true, - "linewidth": 2, - "links": [], - "nullPointMode": "connected", - "percentage": false, - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "span": 12, - "stack": false, - "steppedLine": false, - "targets": [ - { - "expr": "sum (rate (container_network_receive_bytes_total{image!=\"\",name=~\"^k8s_.*\",kubernetes_io_hostname=~\"^$Node$\"}[1m])) by (pod_name)", - "interval": "10s", - "intervalFactor": 1, - "legendFormat": "-> {{ pod_name }}", - "metric": "network", - "refId": "A", - "step": 10 - }, - { - "expr": "- sum (rate (container_network_transmit_bytes_total{image!=\"\",name=~\"^k8s_.*\",kubernetes_io_hostname=~\"^$Node$\"}[1m])) by (pod_name)", - "interval": "10s", - "intervalFactor": 1, - "legendFormat": "<- {{ pod_name }}", - "metric": "network", - "refId": "B", - "step": 10 - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Pods network I/O (1m avg)", - "tooltip": { - "msResolution": false, - "shared": true, - "sort": 2, - "value_type": "cumulative" - }, - "type": "graph", - "xaxis": { - "show": true - }, - "yaxes": [ - { - "format": "Bps", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": false - } - ] - } - ], - "title": "Pods network I/O" - }, - { - "collapse": true, - "editable": true, - "height": "250px", - "panels": [ - { - "aliasColors": {}, - "bars": false, - "datasource": "${DS_PROMETHEUS}", - "decimals": 2, - "editable": true, - "error": false, - "fill": 1, - "grid": { - "threshold1": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2": null, - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "id": 30, - "isNew": true, - "legend": { - "alignAsTable": true, - "avg": true, - "current": true, - "max": false, - "min": false, - "rightSide": true, - "show": true, - "sideWidth": 200, - "sort": "current", - "sortDesc": true, - "total": false, - "values": true - }, - "lines": true, - "linewidth": 2, - "links": [], - "nullPointMode": "connected", - "percentage": false, - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "span": 12, - "stack": false, - "steppedLine": false, - "targets": [ - { - "expr": "sum (rate (container_network_receive_bytes_total{image!=\"\",name=~\"^k8s_.*\",kubernetes_io_hostname=~\"^$Node$\"}[1m])) by (container_name, pod_name)", - "hide": false, - "interval": "10s", - "intervalFactor": 1, - "legendFormat": "-> pod: {{ pod_name }} | {{ container_name }}", - "metric": "network", - "refId": "B", - "step": 10 - }, - { - "expr": "- sum (rate (container_network_transmit_bytes_total{image!=\"\",name=~\"^k8s_.*\",kubernetes_io_hostname=~\"^$Node$\"}[1m])) by (container_name, pod_name)", - "hide": false, - "interval": "10s", - "intervalFactor": 1, - "legendFormat": "<- pod: {{ pod_name }} | {{ container_name }}", - "metric": "network", - "refId": "D", - "step": 10 - }, - { - "expr": "sum (rate (container_network_receive_bytes_total{image!=\"\",name!~\"^k8s_.*\",kubernetes_io_hostname=~\"^$Node$\"}[1m])) by (kubernetes_io_hostname, name, image)", - "hide": false, - "interval": "10s", - "intervalFactor": 1, - "legendFormat": "-> docker: {{ kubernetes_io_hostname }} | {{ image }} ({{ name }})", - "metric": "network", - "refId": "A", - "step": 10 - }, - { - "expr": "- sum (rate (container_network_transmit_bytes_total{image!=\"\",name!~\"^k8s_.*\",kubernetes_io_hostname=~\"^$Node$\"}[1m])) by (kubernetes_io_hostname, name, image)", - "hide": false, - "interval": "10s", - "intervalFactor": 1, - "legendFormat": "<- docker: {{ kubernetes_io_hostname }} | {{ image }} ({{ name }})", - "metric": "network", - "refId": "C", - "step": 10 - }, - { - "expr": "sum (rate (container_network_transmit_bytes_total{rkt_container_name!=\"\",kubernetes_io_hostname=~\"^$Node$\"}[1m])) by (kubernetes_io_hostname, rkt_container_name)", - "hide": false, - "interval": "10s", - "intervalFactor": 1, - "legendFormat": "-> rkt: {{ kubernetes_io_hostname }} | {{ rkt_container_name }}", - "metric": "network", - "refId": "E", - "step": 10 - }, - { - "expr": "- sum (rate (container_network_transmit_bytes_total{rkt_container_name!=\"\",kubernetes_io_hostname=~\"^$Node$\"}[1m])) by (kubernetes_io_hostname, rkt_container_name)", - "hide": false, - "interval": "10s", - "intervalFactor": 1, - "legendFormat": "<- rkt: {{ kubernetes_io_hostname }} | {{ rkt_container_name }}", - "metric": "network", - "refId": "F", - "step": 10 - } - ], - "timeFrom": null, - "timeShift": null, - "title": "Containers network I/O (1m avg)", - "tooltip": { - "msResolution": false, - "shared": true, - "sort": 2, - "value_type": "cumulative" - }, - "type": "graph", - "xaxis": { - "show": true - }, - "yaxes": [ - { - "format": "Bps", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": false - } - ] - } - ], - "title": "Containers network I/O" - }, - { - "collapse": true, - "editable": true, - "height": "500px", - "panels": [ - { - "aliasColors": {}, - "bars": false, - "datasource": "${DS_PROMETHEUS}", - "decimals": 2, - "editable": true, - "error": false, - "fill": 1, - "grid": { - "threshold1": null, - "threshold1Color": "rgba(216, 200, 27, 0.27)", - "threshold2": null, - "threshold2Color": "rgba(234, 112, 112, 0.22)" - }, - "id": 29, - "isNew": true, - "legend": { - "alignAsTable": true, - "avg": true, - "current": true, - "max": false, - "min": false, - "rightSide": false, - "show": true, - "sideWidth": 200, - "sort": "current", - "sortDesc": true, - "total": false, - "values": true - }, - "lines": true, - "linewidth": 2, - "links": [], - "nullPointMode": "connected", - "percentage": false, - "pointradius": 5, - "points": false, - "renderer": "flot", - "seriesOverrides": [], - "span": 12, - "stack": false, - "steppedLine": false, - "targets": [ - { - "expr": "sum (rate (container_network_receive_bytes_total{id!=\"/\",kubernetes_io_hostname=~\"^$Node$\"}[1m])) by (id)", - "interval": "10s", - "intervalFactor": 1, - "legendFormat": "-> {{ id }}", - "metric": "network", - "refId": "A", - "step": 10 - }, - { - "expr": "- sum (rate (container_network_transmit_bytes_total{id!=\"/\",kubernetes_io_hostname=~\"^$Node$\"}[1m])) by (id)", - "interval": "10s", - "intervalFactor": 1, - "legendFormat": "<- {{ id }}", - "metric": "network", - "refId": "B", - "step": 10 - } - ], - "timeFrom": null, - "timeShift": null, - "title": "All processes network I/O (1m avg)", - "tooltip": { - "msResolution": false, - "shared": true, - "sort": 2, - "value_type": "cumulative" - }, - "type": "graph", - "xaxis": { - "show": true - }, - "yaxes": [ - { - "format": "Bps", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": true - }, - { - "format": "short", - "label": null, - "logBase": 1, - "max": null, - "min": null, - "show": false - } - ] - } - ], - "title": "All processes network I/O" - } - ], - "time": { - "from": "now-5m", - "to": "now" - }, - "timepicker": { - "refresh_intervals": [ - "5s", - "10s", - "30s", - "1m", - "5m", - "15m", - "30m", - "1h", - "2h", - "1d" - ], - "time_options": [ - "5m", - "15m", - "1h", - "6h", - "12h", - "24h", - "2d", - "7d", - "30d" - ] - }, - "templating": { - "list": [ - { - "allValue": ".*", - "current": {}, - "datasource": "${DS_PROMETHEUS}", - "hide": 0, - "includeAll": true, - "multi": false, - "name": "Node", - "options": [], - "query": "label_values(kubernetes_io_hostname)", - "refresh": 1, - "type": "query" - } - ] - }, - "annotations": { - "list": [] - }, - "refresh": "10s", - "schemaVersion": 12, - "version": 13, - "links": [], - "gnetId": 315 -} \ No newline at end of file diff --git a/heapster/grafana.yaml b/heapster/grafana.yaml deleted file mode 100644 index acd45cc..0000000 --- a/heapster/grafana.yaml +++ /dev/null @@ -1,82 +0,0 @@ -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: monitoring-grafana - namespace: kube-system -spec: - replicas: 1 - template: - metadata: - labels: - task: monitoring - k8s-app: grafana - spec: - nodeSelector: - node-role.kubernetes.io/master: "" - containers: - - name: grafana - image: k8s.gcr.io/heapster-grafana-amd64:v5.0.4 - ports: - - containerPort: 3000 - protocol: TCP - volumeMounts: - - mountPath: /etc/ssl/certs - name: ca-certificates - readOnly: true - env: - - name: INFLUXDB_HOST - value: monitoring-influxdb - - name: GF_SERVER_HTTP_PORT - value: "3000" - # The following env variables are required to make Grafana accessible via - # the kubernetes api-server proxy. On production clusters, we recommend - # removing these env variables, setup auth for grafana, and expose the grafana - # service using a LoadBalancer or a public IP. - # - name: GRAFANA_USER - # value: "admin" - # - name: GRAFANA_PASSWD - # value: "admin" - - name: GF_SECURITY_ADMIN_PASSWORD - value: "admin" - # - name: GF_AUTH_BASIC_ENABLED - # value: "false" - # - name: GF_AUTH_ANONYMOUS_ENABLED - # value: "true" - # - name: GF_AUTH_ANONYMOUS_ORG_ROLE - # value: Admin - - name: GF_SERVER_ROOT_URL - # If you're only using the API Server proxy, set this value instead: - # value: /api/v1/namespaces/kube-system/services/monitoring-grafana/proxy - value: / - volumes: - - name: ca-certificates - hostPath: - path: /etc/ssl/certs - # - name: grafana-storage - # emptyDir: {} - tolerations: - - key: node-role.kubernetes.io/master - effect: NoSchedule ---- -apiVersion: v1 -kind: Service -metadata: - labels: - # For use as a Cluster add-on (https://github.com/kubernetes/kubernetes/tree/master/cluster/addons) - # If you are NOT using this as an addon, you should comment out this line. - kubernetes.io/cluster-service: 'true' - kubernetes.io/name: monitoring-grafana - name: monitoring-grafana - namespace: kube-system -spec: - # In a production setup, we recommend accessing Grafana through an external Loadbalancer - # or through a public IP. - # type: LoadBalancer - # You could also use NodePort to expose the service at a randomly-generated port - type: NodePort - ports: - - port: 80 - targetPort: 3000 - nodePort: 30006 - selector: - k8s-app: grafana diff --git a/heapster/heapster-rbac.yaml b/heapster/heapster-rbac.yaml deleted file mode 100644 index 10cce78..0000000 --- a/heapster/heapster-rbac.yaml +++ /dev/null @@ -1,39 +0,0 @@ ---- -kind: ClusterRoleBinding -apiVersion: rbac.authorization.k8s.io/v1 -metadata: - name: heapster -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: heapster -subjects: -- kind: ServiceAccount - name: heapster - namespace: kube-system - ---- -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRole -metadata: - name: heapster -rules: -- apiGroups: - - "" - resources: - - pods - - nodes - - nodes/stats - - namespaces - verbs: - - get - - list - - watch -- apiGroups: - - "extensions" - resources: - - deployments - verbs: - - get - - list - - watch diff --git a/heapster/heapster.yaml b/heapster/heapster.yaml deleted file mode 100644 index 95a92dd..0000000 --- a/heapster/heapster.yaml +++ /dev/null @@ -1,49 +0,0 @@ -apiVersion: v1 -kind: ServiceAccount -metadata: - name: heapster - namespace: kube-system ---- -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: heapster - namespace: kube-system -spec: - replicas: 1 - template: - metadata: - labels: - task: monitoring - k8s-app: heapster - spec: - serviceAccountName: heapster - containers: - - name: heapster - image: k8s.gcr.io/heapster-amd64:v1.5.4 - imagePullPolicy: IfNotPresent - command: - - /heapster - # - --source=kubernetes:https://kubernetes.default - # 10255 readonly端口已经作废 - - --source=kubernetes.summary_api:https://kubernetes.default?kubeletHttps=true&kubeletPort=10250&insecure=true - - --sink=influxdb:http://monitoring-influxdb.kube-system.svc:8086 - - --metric-resolution=30s ---- -apiVersion: v1 -kind: Service -metadata: - labels: - task: monitoring - # For use as a Cluster add-on (https://github.com/kubernetes/kubernetes/tree/master/cluster/addons) - # If you are NOT using this as an addon, you should comment out this line. - kubernetes.io/cluster-service: 'true' - kubernetes.io/name: Heapster - name: heapster - namespace: kube-system -spec: - ports: - - port: 80 - targetPort: 8082 - selector: - k8s-app: heapster diff --git a/heapster/influxdb.yaml b/heapster/influxdb.yaml deleted file mode 100644 index e1edb6d..0000000 --- a/heapster/influxdb.yaml +++ /dev/null @@ -1,45 +0,0 @@ -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: monitoring-influxdb - namespace: kube-system -spec: - replicas: 1 - template: - metadata: - labels: - task: monitoring - k8s-app: influxdb - spec: - nodeSelector: - node-role.kubernetes.io/master: "" - containers: - - name: influxdb - image: k8s.gcr.io/heapster-influxdb-amd64:v1.5.2 - volumeMounts: - - mountPath: /data - name: influxdb-storage - volumes: - - name: influxdb-storage - emptyDir: {} - tolerations: - - key: node-role.kubernetes.io/master - effect: NoSchedule ---- -apiVersion: v1 -kind: Service -metadata: - labels: - task: monitoring - # For use as a Cluster add-on (https://github.com/kubernetes/kubernetes/tree/master/cluster/addons) - # If you are NOT using this as an addon, you should comment out this line. - kubernetes.io/cluster-service: 'true' - kubernetes.io/name: monitoring-influxdb - name: monitoring-influxdb - namespace: kube-system -spec: - ports: - - port: 8086 - targetPort: 8086 - selector: - k8s-app: influxdb diff --git a/images/Kubernetes.png b/images/Kubernetes.png deleted file mode 100644 index c27f32b940c66ca6199221e2f00522d555cf2c5e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 12207 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 diff --git a/images/dashboard-login.png b/images/dashboard-login.png deleted file mode 100644 index bedc0162018c5eed0f07e03bc2b1363dc2b9e01c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 96241 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

!m`Z%nvSH2 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 YCrh`El~VqK$)XYr&6bi36_b|NK{_~ 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 JR;k!T{0}u^pYi|z diff --git a/images/grafana-app.png b/images/grafana-app.png deleted file mode 100644 index 9d2118bb6773d54835df47f4566d3cbe9c04f96c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 214180 zcmZ^JW0YpgvTfP6ZQJZ}RhMnsUAAr8wr$()vTghIKKGt;_I~5NZ;bE9S}P+XGIC~S zM9v74lM#c3!h!+-0DzSc7ghiO0M_{PhlBw8^9HL`Yyh5{gvA)!Jx39p`bT16;gAd?un=a--20kvIyeR$m|#MZ7QxBp3oBAY?uS z5(o%zZY}{87z$|@;G)O(d(Qoqo0rUtr>6Fw-;(wwD>Og|5hD)|h9I^p?GQ-nT z7)em?3l{)|v4X2G3cv|zDjfngDx4uqC8=JdFKS@j4%^fAQ2F|*2fF6P&FcEuz$!EV z6i*z+E_b3U{=l9NL+XV^~@Gm1*hTGon1)OgeNXY0f-e3T&TR=pz=5>dyW=*-&SGHiM zkgE{)>n49j-bk@AKJJfoS3ZK@gS+V8RFn$%&6s*%0DjMeSg8Z4$ip9beIB&lb4?$k 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�gW2o-8mfI6y#!y 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

+nxBzu1Df9zjfU7h^&@+++Ai!QuG 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
^?~|7Va`iJp<*64>H4xeNC)4v(_SWS4 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◄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 NvXV*?m14%h{|{rk{DA-f diff --git a/images/grafana-datasource.png b/images/grafana-datasource.png deleted file mode 100644 index 7f2a5228a0a6497fbcd43ea5787f1776f9989bcf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 178654 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

{mo=fg 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

TI!XfA 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

+Ty?)UP8nEeP)XZ{j?82AZ^Ff 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 JmS47y`aca<*V6z1 diff --git a/images/ha.png b/images/ha.png deleted file mode 100644 index 989f9d19bfa83df1b05cc1b040f5a4796b258a8f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 65355 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 s1=?u7sb_02LJ#7 diff --git a/images/prometheus.png b/images/prometheus.png deleted file mode 100644 index a11abce2dea9d39ff92100774964e65170aa25f9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 229214 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

h> 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,-FE^c^{%c><@_02 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%0DZ0#rY6(f%B zSYZ{!ols_d>F#>(MPSHNXggvq9-4787Rqux72RA4)$GT-0B2#|BqRb&IO@>nTt01P zX^ueJ#bic(qY`jz6&iIPi$;y;8rOObhPTmU=NSWTqY9M#%Kt_ zYIG+YXw(=7gIi<%$PP%{vJYr0>cq208&r|)GSH&Md3-RjI}(Ejpilpv=-i|g2Hx}w zKKNo4&xfXq9^Jgs_9de8wARpvg(`^oIrjY@F|hh&80)o01eKFDZ@h!|=YNC;zB`LJ z(Mno<^oZ&}>(X{B?Sc-OKEsxM(=qy{`!G5;0LFtW@d?XiKUv=xEdrd-_0VCd9ER0y z!d9zfOEErM66{Vrcf^*h{4OU4R1_%Hv{-sFRixl7EN&HHb<4@|Y&ddpKXP+DkHeGq zy|l1RoI?w)?iU9mm7WmUnW@D!sjMr&fm4Y|h>TG7G8U++%w8iLs8nv;a3d_~KCsa3 zL?lOrR>3=dBWmhuha!#__~GI*lP!#o^vPZNWcxMarL4x>iy}M@Bl3^8>gd3j2_?oFbWA`OjN9f6YgQQ zgVT0DaJ=^*A}$hBTMonrKG9Te=$4S1fES*A-T_(IFwz^-3-ce@f%h|R#pqkf(<472 zQOveyk4nX+@$|K%hxwE+v|YO$Nw1Ti1LtGx_6Z0W`6QxPB`iQ9z4YZK3~%0-`)h!$ zE2l%F;ii0pvJ$Q4o|{3Wt7cqnJaf|!Eb@zybg4{#;P| z?mzM61`VdaN<$$-tqNHAsbW^QD@t${d0s5|+FOq_nO4tmHr?2d-5PczGG% z?^pawB_z0dxyje5xPYfP7nBQ@%C#Naq}P>sCKs!zvxfpFWHFD&`8{vJ0B0d)C#Mg z?1qU;zLT)!2g73L=5idLe1g4C_C-6*e!TO(QL-&Z#Mq`Ronu^#1*?W*X8(4Wee{&< zCg@r)ZZVd{-hdyLjYscE3(#BC7?Th`y(_jF`$Gh~vd~pj_=#7hN)A+VpyD_nEPNvD zwx^OtodY3!tLb{KF_nzROO=M;pnx)ylat1I%IIhv6E1Up{=t$4VI_8F%1O^;M9C`> zq=k3_d4PJZk&~gj5Q%kK2FVeNFu7SdFmsC3@=P52bo~4&)C`S)#z2=oZv$U3CG*+7 zzqroRYXqLmY~nFPos;k7qV@K|6)G+&x`E5hr3C?4^TwO}im181i&eaVWq$OIA3u(| zb?aW&9Ne;H3l8qzgs_mxRXgz@`1x0bx(s`H%*LzuJOzfE(JxweCGK@@bk@|C~fWfjC~v99_^1P&eaL4Cg9fb zpINJ#pbw*o;nIG@Z`*HcZuiald!mv2*(&U`D=pJy$Nm@`3@nRZ<)piUCxLkWEKu97 zPk*{~71ggm*J*i9se zP|$fI3MCa47f!^VM`++2Z!X}ntkLp);cD3HQjS@`6=PF@D?>IZOuU)|k7clxQUbI# zPfNdwcbM$>Cu2Ex^)dp3!zo026)QyN0W9N%N~gu?6eCRhb~_^S zOu$WJfRBE|H{xJC)7F(bx6p*ENJoyhENM5N%!VYCtPcde)FtTc2V@TSXTW@V(n z;8VOCmdn7dlZKZs9!F5fwXv{YsoXe!=v;fdIqzFpYURMCix-fco><9`a&W+GR&z7C zH#T@3K*QP%%K=I0YF1|>O{MIwNk=*wGJ1^KOZZM*AIgn$1|G#`S`mV8Yl~oS4FW@j z8=C9N&CIWlU_@*n{`~9_^nA*h)x|khXQg5Twx%o_uz6<9r&AhZdE5vFg?2r;CN%fO znm^t^BcAEA=J6;@EDZud3gsRViR`)ce_?pj037?`aoo<3)KaK)gG|(R>;g<}n~L6d zKbqWG!|p&28s?hff9o6YF&^ zbbls(unwbckCl76ke+}Q&yB~_&x$uu2|-z$>@M6-Y)KAJtlkT}rA&QZ{synz1&puL zgXae2r@R1)1S#N~%)=1>%T%OCeUQG*f65o`X^$aX`@yYd#o%{SGA^g4!KhC|=6OB&Tp~E94ZN)9G+9iSkejV29HOCEtruHp1mXEOoq{M_ z82bV~n9>*egcZo*B7oDRM0}Q2xz<(YqVSkqT>)%{lFO6A54x6#Mj4(x2%o^ly#!Hs*u zf>ZV+Pk$~I|{nN1&RCy8#!GMQ8ULgx5oI6kHY^G0k~yap{t4nuhQZ#m2L^;PY%ToCzN5G6L6XLIXo)~r!EB|rcMB|jA{7!{psj4Lzqk2V#${I=-z-hI76i# z-GwLG4#UkGUqd4)k4NGCV?SfX&^Gw8&0Bc?vCaq+{3eVamk`EO!e~4e-+nY2tqEIf zyqEAlvcZ?bxBIXOAXGls)T{Aw!?EBg(G*g2*@=H7(=&SH>^jlwITA$_!6yxM( z|I|~za_r0T;IcTy;!%4bj{OmZh0C)r_JI~Ko=?Q(zzEdh9;z%_k3SgI1J7;&Iz2_c zJVL(s5)c)ctV_r6%Anr(W$2e!c3&f$KbnZ3x={$^Pa)~AUHBunCb~DKG*4Rhtyzd$ z7`&mV`|u@eW^Viqk4B%y1NC}CJ|YT_;LOy%;GbF&OI=x zl|O2U!UyK#_Ze}hCB{rzkNofnZXWuAsBuX0If_ihd3_XW1uElRF`+ZY33&adV(YBo zXc{INhf_P&;Qm3+NW0|xwVN=YMNRUL{7h%P@ffsv4ZP3@Z*O=L{hQU4cv4U7#*FqO z@LBA1^yaCmr@np$!(Ldyy6;f`_*dvOCQtqR4OSW{ba8MQOD9~TQG z6wiGKecYsxvybPH*g>`l%XUQ`x#Ul-GF5WGEgT5d`ykjWe?iGDK%D_;(FFcl6%6zc z@nqs#oN`m~imI=wY|AR1r2ATcU8&r-;V!7s{GrJxz0YdF*OcBX2&POEvKf6urBU-h zOC7R=3rHEJ-F~ zEldP9ZKOb@O}VkupNfMW+Df7MCQ&PL;;ctSYSvLM!)e5_O0pxy>9>&9zAN+Q3y$+9eQ;2NA8swg&D7ZY)W3RKf*);;<(CK3KT8<0ZZp{RC)LTgYk zF#Nr5@Mw=H*~*x1gn{GeH2ej8cl8YJoVB}9Z(D)Js%r+;iQo`8xBxxJ&>6Glwnw+W z2I9>}J4>F6NM(ACBc{V3toimTVxH1t+8`=6ZFe8CmHY7KPxJ9rkBLy{5+}n5X@XRO zq`ai@5)wGe+fKsa`EdxNA~C1u7<`}_fQNbBQSbK-;`ixB)T*IJ>VeJpD7Ze>O{HSP zz}E|Aeuer&A488Gqw(&DnHaS$53IcK;`39Kg9vP*pp@bU3+R^l$DumZ^W`=$)w9>hY%l^0BFr;xsa0v|I&*uF2T2N zlwtgvZkSi>i#&7fS$#v&oOJjSeCh`m^9J_J&;-=lzIJjI^ZLqI&`z0c|6X$1pt7)J z4(z+2!P%4o0&dCOoV2iM;5N%bMXhPs@H!#MQ${C`&FnrC)xG6`2@BmtQ3M7N3 z^p-IJ!i%RfhS8dmuJxfX80Z1TrU0QOWGl*FSwmM3FRo6D7cwIuJ0$AOGR07_5y^OP z1=>9H4h$XVS#3a!JR?@3Gi_UhmAtKA+HZ?czu$|vXTc`Si>rxh4O(JwR6PkRY4?YS z9hQI%zr2dpRiZF(Ml4QQZ?*Br8r1Ch0Xp728lTT>!1ihQuy+eQ74j-he=IB$dejN( zgH8<3l}bZdV%Ml9ct z2X72O_mNNG8w%+n8R)^4a$+yGQsMe}-FtW`xVYbxNvxB}WcIs>`$MAS_2G5TqSeGD znEcUp{I7ik8uuK4jQLxwEen6;TKSuLU~b z_X^Z0zoNs<{SY+w2dwKG1&hHCSH1qivQOgCvSu2v1pO zHY2ply?L~q-|;M>?n}U){hy=0z9!nm^+YqC10>Sc4<16VJ$K;rMruNmslqgtlHSQO&BK$%g#U`$ymwhPP1415v-e z9?NGwi+!!a5KqPCmiB!RZWX%DAB(qkOTgG(cSG9F8gUPpfZ6_5(hMA4PCBRUWC0b8 z?@nS+tG;;f3@t`H+h=mkj5S>nWTrTjc`TE8)&X=t9XCBV z4p9I7nF3^2?e z15hKKCpMdD0ZYH?hsZeJLYoIuyfScJTLCLdB&wqPm2>pDu*g;Cd`{S|a)q#Imn^>i z6o@(TYZ-P`mRpd;{M7<^TfdYuf64ZTlakn)?mpF<;O1N*^Z{XQ#voa^>sV7{?FQUK zrKA(Te~&EnANcOH++t4|F$p^l=OC-SHBanUVsE5XM`_>j(N8FH+EOTLM)N+(tcAe{ zawrU2U&Nv9u>HtMTSEj^3B!_gdl5Ib9isqIfbOoiMBU8xCzkiblDwA1T?n^3QE$W_ zo0J|eZ%V)vDmR8|u^7RclHi;>xJM$$veTy&m^=pc$Pcm(@9xCO@$FDcBLw|tvGwHb z=t2LiS`AqyTTm&WlF%XEDqeHnlMs+~)_Z8YkbuKHB) zYaayBWCKwE6j((w&Misd%3be!GpXA__UCZ1Fr>6y590 zQT%G{lX#IX9&B&mvn^Rxr5zT2)K2LnKaD)YHHYwkhOPU;=gUuJsd5W*@XPE@2%oJq z7i;4qX5EBSi|)dWZS&hIwMBeZkR0MJLAi)glvu3iSyLWMa>d3GzM6NMJ9j*W(jKr@ zgodlYq%!mAD+Nv!{TKUYI`XGDaxZd%3X$zO8C-P~oQv!CZ>`g4smPT<#;_mnUx&}4 zLH+9aMHM4=PtLPk|M&2rT$K7Yr2lrLslo(g8?hB7 zDBJLP^1ID}I;gIt;*pb!Q)%ZsfXakR88z`oZ9D%s4`BH>fy_$g;gtd06H@DTY?{y% zJ&)NeHGqzSufguD1(CP8Td91*rC{t8$dzv<+@mSfJkM0D)Z4v`c% zfBE?k0_!VWQ5k4GBOH1q=7}K&9)3n6QGWjDK_pQw6~ghJ74xv_Oek*c(ir+niP(BV zjr$Z(ND_ypiLl87v6e_Fc zG-~Ko@KImQ&#R1i*WRJEWgXhpMm2%dbPmV<=2*U83*Ux;NJThW-&mhPHuPxF{3iIU zQ3P&o)n}-PG|Kc=0gL7|wIww_PxVCIb1v?>If9g@V%4mX_@((=yl`g>k!0t!Q_=lX z_OsHivSc!!Z=q0~*~9xVT)7X+XJh5*YPj{*rZ8MOiSH89xM$DWvA~yE(v^xuv({q3 zv|+gK#rN=3hatT0Y-miuFJ|`T<&R(f2IJ6JL`IK7i|jL4IHe0tRk;fT`u0M%#w~Dn zt6g||`IqEE7P9mPTs^Q1VRzpFWL%~joT8B_qO2KOY2BfFU(1Hj?mQqVvWdC!yGBhk zW1l}+Q_X655e~6pKbPe0`j!9yKmbWZK~(YhDn$1hi`WKyR$9)%y*C^1^KVAnIgGsU z^@6VuPS76B=tjp09=Kwlw9?vk;ruykTTxhY(uh5K)}@4!Tf3)4 zX@%r+VdVj_*Gm%7162jh6pU$CqWc6rdxJ;(&D;jDlUZp*U&y;I> zYdMg3-DfJ58#g=x7j)@-?-iJR+yM9A0K#n>_-csLc|+(%WJG4B%d>_{Eb{i|hV=|B zlD!OQRV9!@d+8=?oh5}6PL@l!+|kG#zR46FQB<@}+oPJeW(1z9`Yu-Xi9zd;v(c%= z_egz())#Krety+5OsdgZ3U1udNTHYlv~_TiT_$1gs@@3XhIElq&+TW7yEZ`GFoZ?l zjJvutK^2(8u1u9Hc|q&rx<^V<^4W4>bEWg8 z^h<@Boj7?OwQGetlvk-@XUTD>DNV*T{;BEKud*mgO|ESdZE4V42W@Td-Roeeo*QDM zw+=Om*}&&Y#0z&)=MLexRP@+wZeY{WnudY1kTJSGZ~16hI-A76>5-Tl*znNJC^pMPN3b z*^ZY+EyP;&m}UYX6ywZ0i^`rX0*0 zI2rXf&c!Wt0}*9aY)*4e(VY_(6GqWVn=2Gya*axyj@LPM`8_Z8z@pkaF_biiMn_8^ z#xvXS{OzNuAOcIkHi2 zcM`H2jKhx`7Nb+Ir?I-1pn(d(`qwf0@Jjp@KbjHZs0baoAc-?x*o$|cT1nSKM=mS0 z(SpcwAtWne0AKQW3)AK`$AU?B;E|6uD=?A|U~Zr3Sc(;h-58JVeTlcPtRiY5SQ;>S z-0P_K@#DB<^t=2Mb=*s{a0)(S-DlH2#`o{si=nS7@Y0T~!c?AFbPzu1zWGJ8&4Wip z^u6(zvEMzbr;1~!^&zy9>+H+Z0XibHqhsu4P`EdH*z)WP|GV@Ow3h#074)-)#q@h}MOQ&GhZCKZH_g&;-4EH=#@2eyrWTzd)Z3tP@tEQ&_v! zk-u$w_Xm!x!mfh_x;V*-wpDSIFbcw_7*9o0@5ON96rfZEf_oGM)uxwnAHH1YcpnP3 zD=KdE-bSo{w1c>J>$P@V@R44rFCXgfXZwAHD+;h6s0WON~18MJ%7! z6>E3cit@hO^zMrY=2omNJigw8he&v9w=3>$woVcr$MNSfq3|e42*-+Bo~_mY|F^b) zJB`OF5|+U-OBAK2PW*<;A;Odzp@~*Q`{%0E04ktEdPWwWdz86~^1raC_z%zI?Uif?tt-$R;X` zX(=Tu&IJcFYTP0O_}iSU3f8(W?}~8jE^N|`rkucLtviCdtWm%UfjSwF2HnRw6bo02 zf=W>D*_$zMFa>d^DFM$!b)mhWY$?a;a#gn8p6R9Gp||*;Y(p@~M*oD}yjt~wh-Ze|WH|9#$BRjJDQ z%$SH8u`xyVxn7l<@=19`vh(_?(0he)L!R*4C^`Kb1mluNQG5$mHtQL@1EJIVEE!-d4rWyTq;B6^$ASU$76 z2veu^aczQ6O-_OI-b8mUZ7TH-6tFukH-Ob5yJ7B&lf}A zG|Zu?Et7g?6J1j*nDgyX4Ag#&=&m+J$I(?|4c)8a8b5@lp;_3z;{cj<>y1d&S)Nt1 zhbECz*he4ek{yd|SRKFBc{_9*%Wb*B!f{6|SUVM|ANItvg$)n3ZiT*c7`Q{ngJ4}r zrZSJl73h_1u15|?i;`{smj@Z3mh*t)@7IIq@<3a}Ib#)=%*1D=i>gdHDyR>;{*F^; zGAN0+>+R{hi%a;Y0!Mf4p*oe4jL0gX*B)V&6y&PXrYN= zglm|xaFNH(Yl?BzaF5@yJ@H=l8K>9o@I4lQHQWi}qf(wNzTWuH@#ifz+UDluIHkdp zh1ZgByye|zu%(2-p4h(+f9n5+h}`2eefJK|J~tD$WUR#4u@B?1w>F@semfq0bdJ;J z9xaR=ioPvd<122cFHLe)u_+DAifmgc9J`m>xmguEFPPxkzLWBfvaE{?<;7dszv4Nd z^EM!`dUeGLD|TB5#a4JpGU}&X=VRD-$OA9=UCz{m4%6cBb1hxdj8c(hq)ozBt32>r zlU%Rrp~$^Tg_-|VJj2c`HcS$qMa2l6RUF^*K4%LD(@LO6{{Bx$d+p$D-%s`bKFYHS= z;n8upo$xXO6z*&};;auRY1)dt7}+WuNq?V2V4WDAZEr-{*`G13U4MLqj(B&|JLnn} z#x0Xn40+mo!q@X~$C&w;x%N+tY^+B@LMkHaN3!0CKR15|`f?$*I&-EZd_8jr#x2^9 zc9TEC8)Ld7RD|9&ref#PCoyE&N`|zWfYm&lvt?~Y#Nm6u$hy6YSvPAXrmfwJ2O9_C z&jaTX)r@uWL#ypVmY8@oO-pEKXwYoayN1zqfhw-V;cbilG=-# z_-!Cb6 zVb>b?mf(=7G$yxPU0cGxn874Fw8Ff zedIWz>erPAWcyIb5YhQeJTE9$M2oZb7okqHM4(}eeZftYnfHK^FQtM)nmA}!cr-$; zh2s?9MG?B{DmGN7E}g=$OF?MFgJ|20c^>1YtwNv=Lu(R# zY|DK35iN&e#~b_co_O;RHsq+@%01furvdyRNO#8z;xAd)jBjZ5}`bl%~a0x zT=F+s^`Gx>E1rm-OvMJ+_{IxJiXMOww|B*am)Bw^pZ!KnyWnm{Fj_*Tt@o`_(5HTn zkfqMsfA!sdG#bzZ2^-hq`+YZI$(ku>9;o0?jO>NMo$tn$_x`}km;A}v07U5bBYxRs z+&;J?dJK(3;-2-`sA-Mco43TUscrDt^lc7wR%Tq|fDnW5&N9Ll z=;b(hAzIp6ivS_&z;Fu5R1k!_nOdB^MK@Hc3}zl|YvxJ5CgpZY7^YmL;*GP+vyf1>M?5E~<#KK6f&Ipq}i+v@9?589_x_D~}=XHY^yZmE; zt(hFJ3bmpGS(Pk~4$DtOt@3A6x&>M?$wzTQG8rPesMS>3gn~r=QiqddO8&532B;8a zwj`W(vc&Tw6iX_SlA$&NY>o22^|gww%Wrl4T~#VK9=hihEewlcX!rxtaz&y-5`Uxa z+<0fanv1H0nNcSl4ZMPj970M+zAIaijS5txYtnIp>M9Rq&xQZx5Tu{KT%bkC*)&`z zxzRP$LaZX?SSY+ZNwy$TX?xy6liOxs!B2_k!*fBre6%>cbtU3WjNc}w zM1VFN_3q3;mURwI-1rna+>?qQ&c2N(uKMqMDgt-!dK*W!4uHOTEN1njf+6rGZ9~5X z12BYpSVpu8MCZZJU^5jdk%U3#@?Sq==UHIy%D3?b%jU`&S~2!7MUz`5VDOSXnAN8}&!XH+?g-{6;l_8OcFfhdQqc5Oc2AY->PuU~;>UGKtRMrZ5ytQVH9e+<;~knrJG2yfp}V4%gUHnuEUfO&^v*nT-JEjQu8 z0WmoE@f579{w7{#`?MXav2epdgyIaMTg*m_PTUi;R=l>2STpr@Oo&$_vta9FFypWOtKjT z1(CJyBJ%tzSd>>HBrFC&5Di3M`Nu9oOpwc_{1izMnysR<9WbT6Kw?dz&I(7$84|Oo z7h;u2%C`_giWZ1vL(w9iAf-rtT7>W?A=y6oO~GD{T|p(=+3;Br%Q7KAi6Proj3u!O zCbF9qc|Zhi(M5bHki@q`kq~+XE!JxJC6oyM$#&M>0*d5iUZItn>|lkcG~uTpL39@7 z0-hDLEK|BGr8ZEqg^*K4veF{ykq!7Ezu70R(E9w42{v4!yMiYls)Q#$M2!#}6}+LsBq`1LY3s-DyoiI= z?s=8AHdavLO9;{7YQE#dG{&&!Vw^T1*-3M#FXp03N+!%yT5RrlvFOPcxC=?JO~d^`rflx96^fF0cnMqBIn-2=RAz5lN;Fi2)X1PE zBi)OGrh!ZFrgX_R>DYQH^ojFfRJnXZWd|aM(IT^i#YWt8IeO9|jA?p~Q75b}L`{N~ zxx)qrIQe%1YSoF#FL3e7%yAltE1lM(Y?F0B#Gx`!$>E>HODLj3u@nn#1?hK=B!UVo zmjx?R0S^49l$+e7{h0ms-x&K$9I9GJcHzh_Ed2aiIqZ)89zxfq)f5(FU%;;TmH77H zIi3U95u^HaMNL0eUD%K3z5$*Y+C;1YxRg{ExFV2buX7{+?s=p|^m-~q(mJ`^wT z4;hJwPyYtXmMllYr1mVIgAqLJQ;%ePeR*LK=NVDq6lGlXl+TA%AQl3S z;EeZu0tLA2Ej}dcWlr=gkZeHhiwiW9bQXXq)s4KqqJzL~17ZbWgJUbV%2P_Q zt(hzJOJ4uOfL3^GM81`b{b}{U3N7b+l)(^zC=Kq&x{-Ya8&}M+@=o z4gK->X*a!Qy3Non;+2*NIn+m@cg|r<+FW zSFa|$nz%A!zIt7;~$_!srlFP=a>aRoT|4J+-% zA*w++8l0u?RA{f3F!|<5nRx)kOUlHTf^>xyrDE<9FDd>)%=GQGB~c_ifrZ+qXe zEUxL$q@fmmuQY{AZi+V#!{VuEUbko{+_Fk1SBtm;W*fT|ACDK!Tkn#>5QR%KXE!tb zbj5uUFK)3C$8|HMC5s7>Ris3mOw9dWUL@MU$xti)ST1S&fd0$=wBiXcB3Zx1s;q1v z%6$FkhfO6(bP$PdHLs27j|f^<(hjY`BU69HbIWE(YXo>utw1RgSJT8PmU%Y9P`=8kb@N;o+7|Ih5VNt80Hj=PEq- zbK7ajE4?WhU(R_2r)#ytElneke0VcflbeEm!C{$%KrAl#XB&woHV#1-c41=Q2?*#l z8iVe*9gP~_jtB3wJ`a?nRCX^QeV|~np4O83(EoT)0u%c_K~L}dJn>FU1QN__(PcV=|rsgeI_Qh>Wk5}=)QM69t$b7#5K`l=R4yt z@k|g#-#J*e?>%A^CO@apqNY_+7ouDri=To!rySr+_$OLSUVt{Crx@Gl4oW6T`1>HA z5mMwO>9X*-x+%l7qOBXp4El$FXEFs|(Vq$8`;6!SaVdMRpYXs&nbu zmO~4d?RO$w4k@R|pO0-$ti$S(b<-m8{8uafGs?}O^$T&Rz+F1Jbq&z{AvC!`tYQRV z=-}p<_svms8mPsZbJg(BeN7NV2`8w-U^M4x>PM5>qKW;?LF>*ouDGT&?1Q)#R*O#o z93rc0QWHKk0;NBzty=u>geWVv#pOMi270|#34}OIJeM2Lycp?1W66;1)SMiY)dBI~ z^3T~s!HH4`;9|W(z8r0BgfJ}R*u2ekjFZJ#E?4|GD7=Vwh?zeUErnojzO}U?WTbqt z2pTB_Q>4*yqnk>E6p`;7&Jxy%LRbW{i8GhxTQfJ;nP?&w8{G;XoF;V`@ib}ZzQoRI z5+vM9&D?BkrlKRhrE3HG+9pIT;Yu@fHaFE>%*NHrMudl4#_{ZZHa3>}+nLi^ZQok- zfvwHIO!zhtp2y;zC_;p|RFf}ao#CXkAY|Qi}<{cM6$rJLJ3W zg*I`MMNj_fq`$C5-eWRNh@@n)$v}T%`V!{~1w$kOQ%rVDyyM8xX3?M8NH`2fOr=P^ z0c5T6A=El?uS60nU^*(Bd3lO-3M5u)tK!}nV-*F0Sv8*{Tb&Tk=(?Q;TIgYUiVoYR z9uroQC@v(#qQ@Os2x#3FVt;$+|FL%+fKgRh`wk-*?|kGD#+l3<+f} zOx}C9oqNx1=bU@)xmh2g(}3|9K)%Pb;VaBsvEpkiF{dmkb9^y7FQ zrX2>17=hf@NAZGDLTkH?*7GjJtB;OC*7Sd1{N%3~KhOq(qE{^(X+tr3)X5m0>PP=` z{(_XwUn0FDccnb+C2Df2;N5oq8G-n0m-km=+oL=)bJ4@N{+nBo`G?yvtQXB9EL((| zCf>~i74BaP)-d0b;k*7a{N3-ZJgbJ0tY_^- zj4V!Thh>EZ(P=UAVNww3rv9dHhY8|v*FR2Eo?A$v`Dbx+@ z09OvG_m{PzhL2uG3!Nn%o^hd(o2t%1xOd*uKLX(bqzh|$jpuuaP@*kP0b#CYge z-3g9eLQMj4PzYytauiDaL3D#kZHNk{Q$^G)EUUScR$l58)E@BK?#n%WCC z(s)kNX%5yg=txdPT^J0gNA2@2f91!RviMIJdvz?Hdiv);eRyb$#AeUfiYg|yO`|FX z$xQ9epaln1AgVnPUCFzYFZvyr#+Q#TCq0GFdkn{|wJZ6Z{Zw)p>1Zdw_PB7gp4|ftuR7nMDFmO;9;#zr_gL|}A!tLc^4Nh7wu_j|NCVn2M z0}=_rB701()*ls>gEhGP>(e;Bgh+JcXC`hk4u0wA@+S$4-ACdwI1y=LVmcjQ%saR> zit=`%E6r*ryStezclVFWQvgTNuJYs#Z#MFIXxvZzVcRxNa7EJ5v0#fqDb9Z9G?|&$q(7|5G?s@KsY4v2c2fVaT+Q%;F=~1WxPCzw>^tf+ zRFf)6qIDWFW+aLY6D*J-5a~+!Ugp)_4;d(0Zz=Y=Q5f?5$)}5P;*}XlqUzX*-1p#` z#Pcz3bUm7u!2%%tMNXQ(tQaq4J6!BTfx%Q(g5{Gh!Q=fu#PxsZj`YC;4cy$d^Kj#} zuVdk9{qWU&qtJ=FC}(vxLD={McVj+q;Gfr6-`w&;YI+az;rVqDZoiBi!!1YQr0y(N zuYouzv|NKm;^dKcqwCzeF{on_85&2_Bc%M9lZ?_M}pcbp}-ZS5UO^Rz7e<0&u{P;9n9E|_MpW*-bdSrTrp~uk6 zaZ~9nxcZ4{c;mW}xZ<(txI*z*-{(8**k|F>ib7k04pF_7sGg^0nq*j&5sWw4$*nraU2YM@{K>%b&0W&l03)kT+fJ z15--1Vw>`CUe>>$6S1gPQRymtgQ2xQm5wW5Esl@~&nJpA*a*Sc#CtjZ8`=g0Y|2_= zffY~@Xo%Xtr+HTyRCu|HXx4YYFBC`eqMQgjHj@U3i9<2(cvH=_L+d2n6U<8Sg09dP zOBy4d>lCes(OR6CT|a3B{dDhFg$|r5LmV05XrM46+IhZBmd$iVrj&W;-9~|{-9;Z~ zDVZ11=@gX^zdXU^ohw|^_3+u z*3oayAX(`pdNu-Eu9@BhCzfWdLu%h1NcI;Yxg>}9B@HDyjI@oFnHnIeB3?s@nXTy*OM62?3)^XShQd*}IRONsQ)|DK5a5qBU% z%nF^<)FwU++&UI`;HgsFG2v**!xe(>8MpNGJJ8?0921{fj*K45v1s*4xOGBCK<&ju zG=EmFUS0n2(@#I)*VSv0MhjF0g#}26PpJ9HyItaWv1DF$4&q(0C@l0M(UpWeZsoWV zS|FRImg8d+P{?~{5)%_qR91+@qy*#_)sb&qa0B6m`Nc?#N#fa)LK?baIhk)R|;)BK(rVTqGv2JO%lPrwUVKo-L3=Jjim@uDk-c+c4kKTpZiZ ziS6J2jNSuNkej!jm!c9+dBu%-78E#miDx`=a!Qc5)s5nO7k=$diHkpr8vwB=V7+2# zrqaW5BqWm1&)o@kA`ckm7SW#zLtbQ`p8O)->`W^w1vG3xycg&0;30mV1Io)|JH(Q? zD~{Onk@mwbR6j)NY=fc58iR;Pi9bW93`#VR^0b>d2>82F^RIGm0|b zz^p}_^tnjcxftp>XxJG@jq_vE(&<>Z)bjtwjMX@YI~}WEy%s~?v*GNnTQT*6MIq@j zFp}k3rE&%G3FfC~pNtVWw6zUOX1>pIbElD$zJt;>UuilnVH_pKJ%gZ>pybK9_O9H$o)B4ebx6{dE|c z{h+dc)p+5)t@?yZXW)@AE2EIguKs26x1MT$(HeHs|H9>K_5X1BhK>(~3y*chGw{^U z1yAi1GA^pMgDG!i_>!ELae}bvDR?S>0Ir{sWVK`PyYf@;7*71lB(2~F%PYK8ZGW|s zr07=p*d8RJB~-F8f4_Ex4IZs@Mi5pNuJTtonNH6lZV7Oev>{h@oIXCUTGPJY_99>WLi?oD?}Sw)-2>RF)q=p>j^v)lw06Me0(zU z@+;s4;nwGA=&fYZ6BMY$sGbGcT(@mpM|03NAr57{DkDkt;kud-+age}cs^MU*1I9k z1kn+NT%QeINJqsJ9_fU5GLXV|d@S)AptBDTnlN#ySW$Kq@(J z$VG^nh&EAQHLI@!yMCp;_>OHF`1Dqf|Jx3vq;^2T<{TW9b`W-CZbF-bw(Zy&-pzSv-?0PBvkQr=$2Qg{hRJ8TZ{9(5rZ{ZRq9mt)lRFuT)Hdr7vtbL`w`_y$ z+jgN7RhF{0?8HGV$L4K$IEd<4o40##P)v)6KeuF+pd-)bY}v|owIyKlmNLR^hs{~k zaN>cC%~@Fyd&W>I<>omfSBw)SltAe$j+d%|PMQJrav!_=sU1fOom?!Jmpa8dI_dQ; z#0PJ2OI-fuJLuoQ=T8gq-m-5{!aEL}B1)(x;UIhoxxSe`0}EI#T_))#Tsto&iw#Jv z++@n^KTpM5i>>goKzJF;HR}yZ&QvbOukg3hFZuj^tYChsACC_O;E}lS{)8ECETg}b zUnxzD>fpTa;b;6(`h)jPlu}|RqN|K&nQYo^4L*NZfayyZkKfKJ{!1v96p`;F(c)!# zZ3lZxf5x=emh(w?3>RK$v6Oi58Ya`kCtT@oFL>vDqoV3mJbs@)`E%Sqya(qS58it4 z9(X+}AM+>Pl z`4nEgg2#GV`3Ij?zKUO>_(ZVk>tw$X(Ip~H@u}xn@ua^+GzW+`5rrc5%BWb&UEET3 zJQ1tHYw$?~neqsass|Bh>hGuOisJj!zTA>mzb++F<5WLj-*!=YTt=eNS&Pl<>)ZMMYbh zSy#WMbddOvgxAJ$S^b+k>HJo?yfS6W`l$bl7#H(lm;n*_hBziZLY_h4gLaWsUcZ+L zDQ3J7uKJzelNk3hy^F+m35jACiQN)1cMcKNBGwHYE8ie>SO%M z&tN>lV}DY5sU?~8%ujcPI0;wZg0K0+WyUX`n)le>gm)sM93B%84=gXAhAAUn%EX-M z$$v7zZ`#2yV^%s@1anB!Lj8|B2L_({A^W{g<6ixdaO7{nx7yqK4*FZ;Q1g=7#XJpj z#P2FkF>S?#KCYt$Xt|5)*wzB1(DLK99Zo)5^XUydxAK{cjT^Rd=f+L{YUYb!pC^d!nwDbO+gOIaxGm?3ggZ1pt$Y(o~-cy`KMu%5S zq_v^2wgkx?+9SJQGg|UGgUCEn0{QS+!hDlShY?Q84y}=uQwVn&nMYcEP3jPf_WpeE zxM?+}CdlkmB3=)mk9~aSrWDKPOu_v1dDyar`ex;>zp_2E63(&j2m7)YHny6h!W z@YuUOamTn=Onh`cuDb0ibdatWjS)<__bGI}iaR$>T3mZ-7yfeVVOadYQ~2`u%Q0a{ zs!1RG6Uy9t`Q?{bm-#JHyH?RV2}a(HC#O@h_*)0%$XV_F=30ZG3ycUU{RmX0FpH&w z3%(|A`9#vGo|>pdbSAV;LC%6q#B{M?M{Z`VU|ihwO5`Pr^>q$fJSo}81>@*Wupf~F*(E9{_D$VPZ1 zb!tl%HthPF{$_TE$^)6j?sOwb#4Ys*WuV+bd%+0IT=FlZ^WgfpzNdjF+yagajEF7s z#rP^df0k~4X!>A$>pA@D+i^no6s(^AJSNXvW~DBV&KJEaufS_XdE{vY>2J_zhNb;T z?3s#NSX3Fx-7$}0`Ab7FXIvlLFpKq6^RV1jzE+;_XW-E(X^F{!6!jr*?a@XfNyguC~ZL(_|TIr37qsflpQaj|&LD&w$uCOjv0k0fppRsu5A4g&8>6c*^ zA(ZzE3k-eg;aJacPtU^TC-tQQ1|8MkrcS&bcf7fjALnA)cYjBB>9!ijb4P2Y;HcC7 z8uSP}hhzHkf5H914LEt+3}jq08BhM@WL>*N-YysOUb+icOqw2u%X;wt!*iBnc<0p^ z-{(}!I_4gH`|QPpFV(t$)70fzhTD!j3mG%M#_(P|;AI>$mH*+xkTGW&hCAk<-yg>X z!YUpax4nkvuFNoX+BEYv9CyRifEKMElW1Ohg!3cx8+wCj<4XNx@Qrx?p)1NSW!?1k zEBM0&6EJMzCwS;|;HLBwVJRwBzzV(*?Z%n@sz34wc$!Cf0|g>RZq~Xh zhCa#VMlu=rSTe=covysJWYNK%87@v}I|jqU`6*1ybRuEJ8D+7MxjB$fWpYy8Ugwf4 zI;Efo`)FX^r51r%j^XDdxV^~**Idn{ac6MWuonjH4ix%aeUku^7 z$bh-XRBKnz%UOGwA*x!nEn9;{ayNuuU0Hu*xVbIN|W4c&x&rahYv37u~t3 zhLU~3!-+ma&#$nLCNs`YNiB`0pgB4ck2(o>ZaUWWz8qa+w`2ah%hBh|6L^vWL#MC-P?x}8__Y~=%TwtQ0M9xVw zy*9!nSygLJ;Q}iT$^{0OiDV6GE50Uz%70OeuF9+tk5H&Di1OlR`{N zq;!UfsTtpFH&SwEbc6|$*f-@AvFwmeF`w#UWjd`-VA4Sr@vHh&cZ_TLke-#D!9eg2 z1FdjwISB+wK@kU)dLJiv&b?MVv!JSOEJASd4ggSTEiBkDd-5dA4uF-fTp%gms+PzE z2mVwEBVMTGVp33EYb`8{63nx_jSr7mJk#zbM$j|xwEQy8AB6#j7UL;OjzfBBmAJuA3#Q55 zBv(QBJMSr6L&hd|#XLOsVJ=2oJsfA>^-oNDc^JMLG6>yUQ4+j#F*0*#M35>e#j7*T z8OUI+)-ww-G8jXh|I&f?pFb<%QB?!!dVZ65$;Y$qF)*<{jJNy+r=Yrb)R;?=4JSHV-8|tli@C2 zjZKv5QaI1c2t8E)HAt;gq*G2fk{1YW!V7mkj~`c0p;VS<3e*t%pHC#XIp^gTR&T|p z@41$YO)frt@kQkJ9)>dpUW9jU`V^BT`Dc*}ie0FCR;yGLLj+q4cV+*Ge+ALNr;Im< z0Jg?u#35D7&@z0YerQ&XYT?>35@BkMg+s4>c;4eT?aL}WO0j)%aC@PtZe*- z*e0E01b18ynNoMi=u9rV5!;Nj3zOtoMMOa*??L2=f zxZ#?}!^bB+M#zf?w zGB+=S;BO!vSr)Q{m>rFk9WlUJPpU4Zb{aM-}VA-8$A&1 zbkim$*ENf$VcdCth4xZ1#=nTCt{O<`I*G{jtLYPPETT$jNwNr0eL$$vbI9K@|39OU z!b9_!JCo6)3r!qTGXLF+cj1DG-0vB3BW67|27O5o%XvImnES*HxcaA)@n5EMZ_C8C zgf#S^NZ+$-DdzqF9DlsEW01RI21cE91AZo$TVI%kt4>Ha7le9tuECps8;U#Lw`0(q zQ!(Y5?s)T>BXQIF288t|F@@@#Nr>mdSXew7bAG%H{Zgzlnmv7RT0I0jZ;Oz%+<}Fh( z_};hi#s%H6HOGxkDywG`X1}`(N1u5Ttk3UpJFP#y!DN>{G7S@khrpS10&d(i5l@|G zmFLx^v+?*;53V{d-57{S;+;478VW0>;E>_>m@=RL$cOmHslYvloPz(TBgyeOsE?J$ z{Ab4C9&Sl^j~j|{M7?I#&Ln)td&oM)vn_L} zlTRG1*Wj2z?eG;38;h>O;7OQxLAu`P{K#oRiSWjk zaOS9&EuzLY3JZV8pl-$@j6CZGl>F&_bYk8czW)gCtYMNRPvLcKgmJDLq2}o@0N<}! zjTBBdo?Xi@`Lbb1zWaNer(0N&iqW@?!neQk;Jt5d!!b0;Ez24nT3hmL;QZF2jB$tt z;z2{qhT-US5MOBg;^Kck#BUe=xO@y+cIpUcff|+LZ|Hqk_1p-a13e4pKEB)xjpybp z#h}6&NPm}RzHcT@1e)V*)fcbf_^T)3zA1}vUMCN7+^JSMfBhaG{@}(br?O2sW;1`B zj$_Wfm5DT;^RES}V%*WMsxwTB<{JiR9jNL=fL3B`Occe|=+>{oDae8wfUh7%wdQ}T zFy(m>rUlN*KeVg{Cg(1z;L5}*m;Rb*M0o~$t(8V!%9%0rYE3+R;it(sP=`P|`CD~m zX;lv6m|n^0W$p+waV*Fd4y>$om|H)kD*v%if>3Rpvofwx(b5S306+jqL_t(&2c-~z z08FJZxeCV&3gTb+Do2vC!KhZe^1loxOc~l#8pUT!Qy?*;%GKm+LikD?#JIVx@mrQa z6~`DfA|Wgxfdpi#7AXM3Ot^S`LTd*N(IA0wNt2NA7qjWrTEh4ye+v6#S2dOy#85~m z>zT|+fSDId#E3RUmVn3ja>s!Xs4qd)M0#-S%fhErCB00mJT-Q7VWk9pWe#deZ~@k; zDm)}GLY$!uEEx2z=4>`HaMbs8P*u@R*y<~xPVFlzY5{(vqP-N)T29NOOE|}(n|pl9 z+cg|$7Mf_mkv$G3T_v+D{HelW@}%KdvouRi8qTS_I=7`?Im~boSvI?jEbwR09uh}5 zbaW&jYWYW9WejLW*?(N?Los2(p&|8gqU*p>nD9GF05~wI-dgUQNnJ5&!UUtDB)xQw zC*z!L`(wgY<6fy*dm2@KmB;00lZ39jTt=?uRq@Zp5U!Ks4>oQQ0c1WDgnOcxJ5 zFop~5<4F=Edy&7T1S!tWm2#=?M`@84+3U7ei@tNkZ%DY}P{eqPv3_GKq=b2KFO^j6HSw`_{*S+i%%hk zH$g+rX5~f{5#Oi~$E^~aT&zOmx-K&xWxP3ASZ#VN2gF<4BAd}rm7PC6 zT=w8t^res;g<06i z(2}xugQqdySkDI2A zCu0N5e&G>p?KT{j9e*5d`S%>W`{gq9BQd#h?nn4|M-onF{Nzr4oHKbQZlr(Cs(E;E zelAWMJscPO^GR%+bsQci015Dn`{65m{>xCD-Wyo>!Cct?_BJM+m5yAd`}e20IQ_EW zIDgV-ST^H0_6?>GVe-3M@ZP<{kd#XXZSp*HI(0M#Uoa6bt#})=6Da^7?mERS!}~LG z@TcJ!IQ9HgZ2a+KeBkJhKlSU6OYa75yH@JeFrT z%d=?qT$IEQHErznWMcJ(T$DL`;E=58mxx4l8c1*qgYT{%yp1)@XdW;^6<4(97lmGM&c;eXBWcXv3&%?|eX&5%R zKSp-+VDZN@;O;*heGfkwfA4ua?pkJvKSZrd{Y5*{hH_`gD!V|Zq(sCGsT4iv%yPmHB{M3Sf*S}YmIBcNPd)V0q{M_`B&>vr7Kk0lJeV>V zMP;y<7c0aV22e6O1Dj8E9fJdTnrI9OX2gD0mkX_ziL12b=_^tjuWFGi!mT&P67e3+ zRmn40{&2A5XZo21v{G(Lr(d}fNUC}Je_BH!DKB1ja+lNm3&_CABUZfFa&lnfxfwa- zrB%aPIpkB>Y3S%z;m9}@m%v*@=7a)Nr-MdpY%wfwrBa#b@=^Pk;a!n|c@q^7>I5S% z)Fa%xGStow*E&BJ2fHq<=GjR=*x^?PCii->!&F5q>2>rU@%z#+359PJNiE8%8$miPm&TaMvtHm2q)0XO;r$B-WL|2jsFMd8 z8|$`YIeGY9`zN(KO>-i6cNCU#o0cSQk_+)7cq@%|u{p`LXVl10siL{a?9ha|nejAn z?ok&~KP{!cL=u^?Whmx0Y!LSGoHCO+ImWh2#;*&1j%ab>dFaue$O(T}Jmwy;9lPv? z3`YWY*jiHeH-U#@HEC3Jl0nHo_^TSOkUHikBpK9dQ7vK(Y4wD=b40z-%QcG@GYBWO z(e$M)dWYHhtK2?X?8T_+=c72UBGd$!Z^vXVP%Rju!UvpH4=QB^=Hc95-bO#})|~sq zd_4HaG_!i?dkh_=<7fSDG?tz-8O!e@ zaZE24iC?kdl^1~k@a$kAa`DQD{dHi%;N@ zB|VY#(VJ9WJp$L9+8w{Vcq``Mu|RwqPC1hBc!uMe6R!Xb!Qr8wW3l#MC*kb7PsdLm z@=l*tghyg*+uG@P`=_ynxq0Gmk6`4iF$~DXw5OlPTE0E?b`RWtQ94e&E}bO5oF8YN zdz``Z_isOo*{is3@$57lI`JF~I%OO_*`U_;V8&g;aMMf*4f-y_sMIyM_RMRjT00tt zt-c${ZPIXQx)?penfwCDX5O9ic27J&I77#-!IM8`8Rq86J0C&2dxu*2-7^F?%w|Qd zd>w1YXJEt)e!TYa6*!6wzUI|w=r{QH=s~7a?VFXo28&uAVRnj`xV($GTcqL`N`B)s zrFvH5)roguO2P4X^dDDXz-8CrtY4Ob&Bgq#$94B{8|A)LSh(_D(|^pase{b+&(rb1 zTN`oK4cDRnxwqlA*WZNaj>+gBpM^&czZ^+3mI)-X*oUpTLw$TK84v5i({UfNQ3>B4 zr}p$<(Q9|%{CE8L&m;HZxQq+&^yqt$%Q~QJHLe?e3BKX$`Zf!2--+GP`;ANR!$oJK zhhqtD`3EiQE$9Bo%2#majdw8?nXHBDaV&La+_s(=a9R(DA7@FhX4Y32(#85RUgi&X z*8cBz_#xn7!<+czf4Af60RwRnOI~v3K-N1KpFFV~#~!Ol$>@2A3p4(HCzcT)&3(Hd8y3(R$bZ<%#gE|qht{8c@ty27i&*LVpyc3x@Zn)5Z~98)lG zcb+T_|5u*#Lh=!46-Ym>xyJl)T@_$dD@sVY=@-^1qTp8v)K$Dl?8B=EVo*dvpXLs# z#Hjq4Q?e7bgw~A36@|>0v`WOJYNnJrc@To>E>xc)EzeyJty^R)On60p5*v!X@R6wT z(uhJSg%DO8Yb`Z})oxNn67!}K3ci!tB{o{>s2XmXOS?aD6bcKz;PR(yD`YIk5;s)I zl%Ix)H*LUjlMc~272WR^LsdAbqzCI}rKHJauF|TPaRkcT`C~#Rc1b9pZ7=rU&WEHi z3f0@V%SBTs)TUuWNPSPbcEQ3E4^jt|hKj|MTiFIOx7vXFy5Li)YEm83R&4b$aNudMaiD2?I~Z=MgmcHoPs==p!r!;CNqmnUzSfG~w~>f-vjhwZZ!bK9TH4-phgd^$PFmzBz}L1kH)fiL{h z+f0Dm5wjETQV%F4j(wa^U0gt7b%K^Iu&kJO;XWvY-S*2jMqhZ!+-10z%#FK!I(ly~ z(XegBT&ta)TZGIT1|rRohMpZVt-#zYEF&IlKW{VBDm9;p4_SgD`T{>q@WK>7*)=Sj z=`NQaRx;kez&FD@tY>W79>^F(2I_?4t^5OjsS0j6o~g*=Vk+%HInS;f({D_7H9pYj9LLsOQ(;wlL@osEpy-yV1cM?T2|;eR*>llVhn zCT8Y*fcMv0LJNBecT{#-@pX5DIj*r~6}}^buKt3YB7+NC+GxD_(h>5p+=d~z>1*pX zl?yk!5M2^3dgL_{xfL#@V;^h}phf*euKyJe;5F;j{Pm=y!nQ%L9-5!mf@fb&;s z`nvOwGl(V5{0I{l&&21G&%osCj>EC%UdJCXwCQ^k&U%LP5z`iAVI}8AX&wki+m`>p z`G&;nx;)e0{H2_4MWcmtDmH%>MnWRcPvb%A#b)OuBq-dgvQaL2YUBjx6O(Uf=8B*( zWhDr-snS|5;BC??nY9iDeS@)TezLS-i9C}++3;tU9lZz2WxPYnSS@=cs)!tl4+GD{ z7r}4U-AW$JP`>gPMuJ$8Mjq^v86RQD5cakbZ1x_E_O$C>%n2{9b#Uj( z%ERQ%{IuQdW!m7hCo`aap29BSspQfC0j()aWpFW1;m{|>f|IhB5)d&N(((7Q9fSp& z-NRioDpXP5H&`F~8XesN#+QC^0tK>h2E!~o6G`G|c63+>8<`FpCu7p}rQrWnRDyK#N)Lt=I z^!W7{w<($BITu4u?2BQeuf(|9tvJ5Ty6Dw%KAxG<#ky#phF&Cm&0Yd=ZrtXDc;Sr= zl(xg#KaGXBq zxI1%gZ;V^fmwHjjxNY)9NZG)GW z(l;H;1m{x0`33%g3bSDw$9g-ZXWOn^5+qY*WBTIzF#hP%ad{W+hOC*1CmbIl=f$Zw zl4GHmhxw7a7_omK=itf1cMiAdx(nV}2G1pZk=o}rygL5^r0$%GW6zkx%&88ZAOM1-AnoP;5n_~?n1JpX8rhudGChl>u`gv$nu#zOVT_8j|+wQa|5oa^{P)3DwI zE3Pg{mCL4Tak9cV*OXC0OthliA^muX>MRo;!(CpL?Y-Hr;rGrXS%2PpL9fMI+_>$S zBd~45ckoGah4=B@#s`qzDUH@QO;S+X7nt)LzAqes{ukW{4|n#K&3YA%_*`CL-N`D|r6VR%{7bHP!29oLQ5C zAHk>gX7Ym{*0NRpRm+Rol)|<$st1=)g-vF(!#Q>9VAl>89_lCdt-elo7!~n8x%{2G zI9CQI>-wgy9@@bt zE0ECT011t!IDy63MAu}_Y|I%JZJAbeTr7eFZ`GjScOqZ(D|dt^0$T^&suJ0Tgwnjo zJ3A!Z)S#AWW?2gf=Yo@EZ4;Iz+qm8ZD9YiELp)_evQ!f4l$a}@p9nGK38GEa<-qpq zN0MDXW9*<3zR1*&DT|GbK^B!*I0)dzgJ>#*n}G8tX0vkRUL-{ZP@z#q=wcb7lm`_Df{&OtiZEJtEA zK;)XwkUs`)P!CS=XeH0rMiiu+zP0UdxtKPG;O-kw2;|8+k{Pue@e)TClPZ12ae?-d zu+=$MIX|t}t=y6e^k|26y$561&|Dlf*ecuBIai|hl~3YUo&_#O)Z` z(~UXvt~O_im=H4-ug3kv^H3UZ7;(cRNPFoXjG?ODrjNhE7rU4*XKlM7cnL=+VH$@B z-f{xik41ztTyS3gE5=Ca2ej1bgMB^pnfUhbA0+WK=*Xq@z~Y4_1R2Z`>@mur3Us-qzt|qY5mW} zqnCV&DJ3I$HYt^Zh=w4ZS%slD1AWiDAJ@+RE0QlB&+{$78g|InXD!A#eKIh9>Le_^ z^DB(MVJJg#vG(PwctLXj?<}j#F^}rL2{#-%6f^m4^Y=jyp7+6q#dwMAo?jC$alWz8 z&+}Osxc%X)aMKI9xbsHk$6cdoU%-6~Uz2FG;DPgS>lZz7GgZuxyAV^qEWs6~**Hu4 zf5E2BY^r{v@c8+kVs4x3adKzou!cL2U%ZIh`Kus!Z^qcGSg#Sc;p&gZBlCARU=-Wb zv-H3CU+G|6NN_$9k6wI>H$Pd0{v&$QSj$Ely!ebP@cB6FqESdY?O@z;#94U8-IdHu znmLbX^&k?26hKJ&p>Gj|x@Uz0pI>woumrVeERTx6R{DzXTHl0X{=}ddr%A#9v_1pA z!B7)s{3-#_M}@G>N?G?`?Isw8rBYtu)2X}G=0b{GTeNCnrY*JJk(oC2t`?)=9%5W% zQPfz#3?i^nHkuu*cCF;y$Pb-m^{nF^b&fbg{90Rp%2e>Gw~sHE_0F%d<~FJf>_s}$ zTf+5Ni)VSeim{64JfR6F(vC1GoHaUg5}Jg`Uh;+3B2&VXDq&L8?6q#&dUWZ~jYo!K zjQX9lRhrh(2o9}Z6>t$Ow6|zl(EA89E?-gCSPT?zEW?gOhf;7UDRG*9B9lv^ZHm>5&GdaGZ3!JdnGn!}jp%0H7Hl!MK|)5j*X5ivI%!GQ z$m}UU(~RQRn5ImyIjZf<#3Fd<&!R9l6K;yBqREj7PwPvLgKIt#Y29tO;;qGC5kwn7Q9P;NAY4xY$+4b<}1Ot$pEPMYx z-1bEY`wSUsBWSSTtoUUEJR``gjQKl?t~(Lay1s*vCtQJF#mY~D0|SYFsNS{sjuFU6T8-(C{6K%3 z=|k#Y>PGrKa^ZF8`{~O#ZrFIt9HxY<|BT0Q_fnSQpKoE_gXdzzgg2?6rJzhaPczS7 z6Tmh9?2mVDJ^|xj;enxm^HbMk>Euy(K4UJ%3?79UvqmWq4GP?g2}{^tNWBNuX^K@% zsaw(@kHGG z`X?sHv-2nX`|caz8~!!ROZ;-DQ}})J@sII0F*i#;!>im?xAQE{lkZ%Hzn?W24{qFI zrQP-|p1k%o9Qnn4#5H#dXrk5(a+RC?%6v<=pH3HF8UoUM)&7UA$l+;baJ|(KIe?rR zLL23+tT}(ON>!X#s^Dm@60{qiW+z1RucSbNDR}(VRx@G4lt3@~HPV?ZG`9zSwE}M> ztZK>4ns797xM=5*_|;{vwYj|FooL}|U0alTh51MW6q6S4P$;E4U(6OvC8=q>ve~Uj zYU&ssW_4)CRSW1IcWL;61V9+iE3%kOT|QnfN$36<6-ywjJ%8O;fgyb6ZdCMd6MK{D36&0W$pKyif2s-r@w>uuOZc6F6 zgAwd0e;GHCmw1M5@l^o5|D)9yMJfL3m#@P~Q$a~M3Hg}|DT3MrWP$-V!>rg>YwE<#+>!{A?>GUkv{z1TH&P+8Hs+WD&jOO zsuD9}9@fYHRi}muEI+tTq6!>Z>ko4w*BZ=xoV@_M{8Kiy*(W zd&QM-jCGe#QqQJx#k6F3!3)o#fGXF!92J*m)&$?PBO7iS-PzxqP@YIt(j*F;WymLz zO_24=T51UdXkT_Xk~_So%ts-nPSft;4qm09&g*szdbR9a#kb<~K)u8>%G^}+f!%r& zbF=K1MM!DS<837HYa@w87!~ufxxxbKVR|eb*WChILn0TqNMlLp8r^Ws@O#(^f}LAC zX4=rIRU3s+M_FRq9)#cAEzmJ1n-_OkxDmc|X=w>fV_T{jqDgp*aEwe`x(VDmj95q3 zaM4s^VSHPpB+#h9n&l|r*`CHaRn?PUfI^nHIKQeSx3RgCzhhg*Cni&$m&Ol_?oq?? zyyag{BQZYw_WxsFtj7r6=aD(>MjSKtjcOU2UTk2761>%-Rq~kh85yQS*e2oJ`f2Ds z__}Z*;r+BWgc7{rV>Q~>3=#GrLw$wjCJKmWkD<<D+cA}(oC+AiQhYk>@`7X|tz}>NyJRZl1FT%ZGSdUAP*0Ohv*gQ~~8;a?p zuCW*>-d=#s8#bUIJKIQg8=GHfdP%Z%ON*%88Y)(Tz5%E4CL&kArgDO0 zHjX&jnht8PcA*_TINH_zyEDNA^W4oRCu~`H;t1Hy3?h)MiL0$CH58-_3YdSpA-t-s z_O!=|cD~y8k;~JQ*>RQT;9#mq#_4{VJ?hy1>}`2gwH>X2y5T6ugR`_km2{7S4ra~< zD9zbQ<&Yv?8oc{##)|d3a7Y)~`>&5vtBWR!990^y7UR1`$R*;tn|ByqrBYd3#3s^dA#WgAxa&ZlAg*0eh3D=ftK zaeYuk6V0Jcv`y3M>sCNlNqp1+^t!3bPYY3zYT^>^lNTgZu4fSH8!z5(4u_j>@;^F< zA|h83-f+%t?hIi$XbEe#jIa9)g$ZsJ2yD|f@)1Ig?eN8DX|A9DTk{*BoS=))R{Q&~_PyJ2-g{O^VpFURQZJN> zY;#I-!*_cN347u%;R$3ou#)o1qLm2WrgG&3c7#=CYcIbh>KIPftg#jw!fuA4S6)QF z3<1gdWw=Huj}_?`BhHC*rYPa9*+(p0U+;XkXBVOE&YXJ3k48iT7@H`znhOI>v3xaG z-I@&U)(*UQvQ^sd!Q+hXr#Z6{61OG1Kch+KR+hMw=T7o?#wDBf1WS#jq1~%SV^ej_ zj7Ks}_U=qRceliEn;`^Lo3nb*l&MJGFyn$rSW?IT!P89feMxnmS zPRC9B4!Vi&J%dB^G4c&8^j?dh6ISENDbM2cew|E|+>HzI_mj`z(dvHmf0h2$4v=Tp zO8n=>47hK8x*~naRXFjkm3Zo%mvBbE&Q|&jU*evjBk{(-2l3<6qmjdd**$wQj0O`n zE}4qopYtU?`S0UMTJjWrf7wKn=F%rWe@ub_fbjg9!7Gt?3=ouRVzT$W1qr6!**`=sjBTag^e;d5opSiHif*zb4R0d zl8R28A#Qc2u%tRo>0&4`YL1-`g%6nG4W z+zPFg@jO#fw?UZr%`~k2-7vzpoDNDJfBQ$c{*OE~Ee42aOls8=m)tiOD`p*sOzKqY zQZxrIyHq;`-H&q@Ah-9QfK?0e#W$;P`+ugAfl0#Zxo=|L_D;C)>_K?wqi3;Vc6-Cv ztp4=hn6afN#*RJ#f1dChZk)yReNF{dF2I*xuf<(2O($cMgf*YPfiIZ;f>Fod;W@8j z*4@QOX1!8+w!+ubc$TRDnHX^R*?2bNW~|%(IEMXx7%uSrlefJO#^@ov;NJcLKIL66 zHEElR;PLYU(WaH=2C=56=72pj4@jjFMY35Jb)guD61kz+h`vWL5XC?^4AfsGEnMoT zUsGTp%G^W%%Q3!RXyJB21ah*nFlKUTqdvhAZ+?+9lUbiaN-aVchQ`xsn%| z2W==rJk`mP@?s5drL&Kr#{5L|mr{Sn#Y^j)G{30J>w@8yr8t^{6<@@J+_)fdPqWRW zR$^$0s<_yP{NyAI;O%*_r8SYWAvGm&?hEMV@|v7xaOws6?c6QcF;q>6tAThW|7@IR z8cx%+Tu`LHqwKfKztj`50Cs^Pm^~0q9-x< z{1td>@v}IB49wFJp?Yao*tnaef z&vM)f$2GhCmDu&Lf4Fr|Q`AK<5XC?g1I>&9hbs>57Uoj1CM}7b2mSrL7`LHr*{WZW z-m_yvlZB06MC-PVak^tJ>Z)TP%G^}PNrQcQQG(q);yWEWRA2dEeS-_O4<#t**MU<1 zIK<}_;-C`l9?21>HC-lZMF{+r+75SUba7>wE)NTA=a9eQ{snlRB>_$v3MlMCqXnzh z1QJCbn-+geB>aS|0_(7tC+jCNHgXfOX3MomO?9JB#%SJs6Lh`Mqk}b(w#~Q^zpM-T z1F4-4<43^EafNr_Eya4e1&6yk`f4=<_q{sA@;84yDEjage9`k|9GiY3{ygbKaC39cljglV9nJ-(0}M1_;Z=yZos>f=2t{Gz}}*a z%>mZndvSHm-8+s@aY*wN*0M_3^x_O@8w7=P5ve(47WS0>_0G!f$c4XU0&)wQ`P@yR zR_vyByLZUHWt&+1wzKitI+3VtxJ$evk?+2qN0hnQ*IRHuDSwB&OssbwMeEMF*x_hT zt#e*|DOEE~)G=Iec!Rnw%qorHxuk%ekPf3d$<*l1pU@@A?BWEZAwKr-7@l45ZY;#X zuI>8?wjxvw!z@(fDO<-@G)oO z#6O*g^kHLg*7%1^CUvF%`nOn|$g*tT6|O9=VgAqe;?kqX;Igu0c$Q5KFme^;JCNS? z#+@6xorBfhJiAF|25G`W{8jr}#0lK00P6VG{aZ5a&}^l=v=vju8ODZ8j&4o0=~>0;{L1FIgU~HI9MM}P@&Wic z>(%+V>)c*EKQjbBe)%;vC3Hr2@iv~7nDz2cIO6;Yq^#ad>0b8~v_0e)oc71V(0}k@ zG(Z4k%{~WxE`Amh&+m-+_YTFs7F47OzNH??GcUs*#`0f1=-z!8{(ak7_}7<*;Lh8| z5Z*?3sA+iGX`Rr+b|cQePhYMA$cr{%JE}JPJCBfhY!c2Ln;YW_PgGv}vj=aZL+63hltf zKy32C6w+F|1HwY#&UHvg-T^-~ijoU+D zG#E*#z0h4%D%^;v6OYB)WDI&!J&XsO_;cZ@i^n4U!xwN;ug(}SSP_9WpFM_arnoU| z;^9c|)e~#lxM8#dtziCLhc#kodJV&!%hZEdTG{dIs` z0knixOf@y?~GxyMW^PW_s<_8C$@7a*!}kXl53wqQc`&4rnX9F3_F8rX4^1z z=7QRyA${-}=$i^`dh0zbsx@XsVESNkLkkvQS-{JJ1;To-A`;(}clTCgn&=;ls|fW? zUn#TbM-&553`8-o4`9F%p>sz$IR%*V%3bxY@%9}#Xxk>)NQHE;A9h~u8@K?w-kC%o zVp*9NUT+EaPen`BkFbvb*lJmLsM20kTu38Ch0R)yY6YvoY+g|j50_QmZHPd&2UHe*S0dVMUypCQAIWny{UTcTvKFN{ zu5cL=+8u(NygK)RA_{w7%WP26kC&$Owex(Db%?zwp;m__`KHc0HA2o=J=1#n80j?WSc{ZxK7uw_+@N}>&LH_4 zDn$!svYXFR-mer1=OtsZW^?@yyJu(TA*UoVup?3aeIbwa>o=oImxK0&q8_kij50R| zY}4;u70)4q=*r!Je&RV1H;Xo1Ab`sfcfBjXGWBjEJieFO|%1TR7RFIGSylm@& z?V2L)2mYHjZ%67uZTE_r9MS*yy`mg@TOp#%O@vw`xpi8T60hNkEeU8$d>fROmNYBj z=7?zlPe~C<_*0qc<6?X{aKzei(E3$4sZHm~NjPEq3Ugr3+XXiTj13pYtT%=Pa>zjC z`IAvt+_bwlTQ_d5T%RWRl4^p-8&x%E0#xslAogWr0wQ3|-6#hL z9(Z=;qlmv63&P^r^6Mu+4qub~*Eh=C?7wZh*VjyhtJ@uin3z};lu-J|8!5l3uEaipCPJ^#WEyBw2weE-XZ0 zULHKg++ht7o6!64V~(W-%2>oDcSHWxr4fZ36WR>l5@v=AK<3KA@1@Wp~uj;OZCRbxzG1UVi?4zz{$k^s4VpT7xaEXv@ zY8OG`HF8DgE?lGzHAb#b(VQBA0WmfuG^gCZW0wZy;*O6+a!Lm>IL)Y<#)-n=q5%MB z9Q?NWU8~WcO4c_r%i;4od0mH-s`b2nqJ~Y8joa3vQ%b||T;C!np5{%-o_K_bXP9(8 zwC2<$;Jpb^R}BME=B64-8t$=U%Vy+lj+%mQIOZx+$WD8%jb~ztb|CTKBP#+T@TR+k zoOx`YSjk%=zbh1hA~raSm>6F471zS-dWB1T;iy!^&;A_W{jeOxR6*LaZtqdyGWFz2 zU>1YgR)jr;5H3Q-`j;W1Ygv)@6#NF{TfCo)g$7jl0FTOX%Dcmi`RQhrcZlOv0h+ZC zfxbX%eHyb(Jycb7UOw#;!yO^mE=Md5Id~9`>U}!4HXzUZf^6h$Zh3%@jd0bkfwM7D zJ7MGc+QP%-7ximO3`Cimro?s~u%sps7oSL-*M!|uC#oa=`UcC|ijx<4IdpMm6OG^Y zEz_{=*Pr0w4omJHxL>qI>&|GK%6o49`y1N(4yrFIs>SnB7uS<5J=i?>%bEx|)k;Aj zG?fPmkjr1q?gU;~dcuItHAjes>{l4DJ2-zNB_SrU1?-O6r}lN*s573j`{STC#M!6{ zX^)A6%|R(F1q;pR>?rlQXjsF+o$}@*q(x^I721%O%TZh00IIY35Eq4f0Aau#??S5% zNpK}_$E4YYi7xD>YFvU7J~!!(X2QS3bfqpEinys=XeZ-Y13tEFScwjud+pIu3jQu$ zX}S~MTJe$Jwi$Q2_9zA#mwD|gVB_*WU{c$+mch9tGMcI$6dsT|ud7=B7v45|PEDqe zn-}&x8-D#Z^v?Tzpo>z%8Jmy*Hwji}EN_qA3!IHixP!zi&D%9A@hZZ(OvGymiPzE^ zR-q=qmo{mNc$sxxF4aOj&9yAEqB4%RGw`dk-kq^*U7eBklL%^)W^9*c#$sHeo150| z<|kg`NW8{3Kk@1%Em$05tCe_diY6@MahFvtp+?>7BlkI@JrMoGrTn7vZ3rp&V zvzG*Sr7$+S^SzfeM)+bxnVax<+2g)WcMM`%P|BK+XsHS8afsmo*m>cVorn1SBvhMo zhF!hrTO4}XiO9FnPJZ@p;S1Xc-;y#LR($#u5__HiZ%N&Ru(T$Mi*3|-_48M|&TAuz zRd-UYdNS}9HS$&qt`0on)fK~Cn&eoxNwnG=b@%70$jjWi25IfPSM_f2w~ZDE?Uelb zNVsyNx7nQ}uTkQ)*_)w;0_;P?YYjDsxOa1MH4(4OfsPLVx`fUu04IOD`JIh+Kl$jsitXh5QP@Szi+Z6vF9N;jL|1$0`2Y5~neAR3)k_PQde1&~k;uKhcf=fMBT*Kqtkkvk?4 z-XhQ2gj9PBifyTIoz@8+>avD9A90aOf^{eLTl4vgx~dq660cP;vaf$fC6D`h3r5Qy z#lY@kAjV-wQmhLJJl|4ek3~Z3=23ZOG2nFhV0ZFPndY?KXXh0R_97~p<&grYTTruO z#YVI_q|@#ujW&sG@N04XZ&$7l#@xJ=Z1bX($WI=O|2cU$BI=?TIKVLw zl|1f09U#u-B%$g=90f+k2w5{%O>#4r%MXW>XGt792o@=GVD+gNf%|P2Jl%@Qb_gqW;6p`pLX5TaYP#FS6@es-fg8i;23p# zD+Z#>&EDEF2Uxkjjw?c9etY=7S&6oXbckr}OLx&sLsDmK>7pH>{lgS=L=hCtY_G$B zlNQG$Sxuy5l}6Aa?y^>|M7th!Tl=A=BneeYR$WrU+ZzbQAn{rdAYL0nkwg}ay6`ZE zl2s9{zNRuO8Kw%m=ok4@ieUilj#teB=iSMz?lgj@U-NZ~y2}`ivCm_mVC8ls^lH1$ z*JFRKK$N-JpIdhys#^)Adu6F9@NZs?HSc~M(ULnT+4QHKiXR-!!`Qf;4kVLMjdN2q zP-4wyaw3vlE)u8?S)^%dsv}ILi3^{-7#`klBrAcnZM}y{9WgJN`z-S386q{;mmRTu z8=KJ{J&wmCf|*#{*djK4`Y7?*^f-?~jA9^)fl3&NGB%aau~&XXnVSeSOG{b{aRzxJa3D5ERPuNrwtBSA2Ow zuA?)rRb63G9^!e`KvOw8bthZ!9=#U4Qb3mpG?x=5;z8jvmp=8o zC(OqBI&3lK$9?!(YfLdL;{E^M-k1MKZe-~_GReF%>+DnNyIaysw>&Ma)(d02p2Nl( z@M5tG!~ckXHQ;~5|AT?uwPE`Q@7P`$11vl{nvq%>sntid`l#yaIm@!iGEMCRO)_+j;R+kLcG=ILBzmfSj1e2Hd>jASSa)@-UfvNupAA=|;oj487_?!abhMga zAm_N`TMl^^2MIWO#;|!D@F`jlqYoEvlD3XtV-C3KJR}kMyX3y84wXCoFUP)DV{5D|>6pMS3dkw1S+PCxKu)osXo7S;FGf_2`hRZ1GadD_2A$6bh9EJ{AC@_3qB`|5cXB$J2TGR z+1n~${o3izBlZyK*;r}T>yYclsc~O*0ULbpH3i6tCgR!iHM)IE?AqXH8XTN`ORX63vR*C#S%iNg#;%B-X9DSV;v7 zuHQqb*T~lE@D@o8)>GEU5A+#-FK~;a6}F;IPflGBLfhqtVdHC!OHRj2K754Nv{|-I zU651TIX&F%;j2Y|<0NmgmX@rFC8F2%PLq5++A|;#MKUB*mVr%%Ae*_WYH%X}@&Sb- zdfbcoIu)z+Qzac(N%atRl2gSAIUz|a>8OHzB8udc8rOK7eEdyso1R<$4@W+o!~;e} zM%p$O*2u)P{eP@3Q=Ul{1_e1-`1%%8xECCsJD)6n0$G`S;rOF{OC@*^TT6L5Jyadx z$*G2j0-V%TW2@wNHBLMd=$6nFKUb)MlqNI9KWq*^>WafJq5iU~fdi|x11sgE`-8FM zF-=l*(Sh%Euh*ll)tRVAs74J=if?(8nVd#JLY=D+PzWdlq9G9f`5CP~b#`**T;abqMyVU7+K~BS(_LI^|<@rep*(}Lbmd7mhmeTbsBfy5gLZO04mT=Vz-l?-~ zt?lkmeQxehr8@M`u$CvBf$h+xiGSf4NZ0YmvMlmaa*zAq-ck_$z1!(fyR`>Sk(6oc zbU1CekE(JU0X4Wej!EP_J6jgL)Mi1GSv6V6so02PKPtYDwFouZHhxb(D%~632S|wK z>OF)HZo-)cmh2F75N*yni~-G``c+!ncr{+OI-(FbCkQCZqqvS{H^4j+1)F9G>oxF7 zjXEtVNEOyYhkG6tj7UjJJ)Q*x3ABUtGbw>If;GQ8dfg7SKu&EC<#fyJ*NqI@yR*}x zovq67tNI%PfgfJ3)Aef?L!7BjNeclrxJe6nRqr7LHs5a1FYjEZ|GfP*J*7V!I(Fy_ zzZ0ie%lMvq1@X$<>A{Z$B@M+DTsM*dz`gB$t# z=v-*n>9y&P?M3=)kWV)O*R6kHUZC~$H&m-%2-bH@11b|MCda%!BnbT|3$Ge9hIt-G zu}O2feiT>6%d!w%rvoC|V)7>oVCh*&NAXE>TUj2{L|@gd5Kst2LqMZqu?+XU5*Zw2 zFXi%V8bq#BX5y*tS!X_?9NLE>G3S)1w8p$DD4Q>SVL$NeR^9$kPlDi0P$(F~! zM^gf>=V7rjlh0PONxYp_x%MgXm)oE=LNCV>c@Hc4)EKUvuMNU8vpel7r}m(-!V~1NVTTV+|39 z7r0NcJVwjsNG~87BWF*CsCy<7c)sd4ZMx<`2oMDoQTr+Uel!kn2F36_^ zvd5`QqB6!D!m*cN(MRwYe`I9EVxo#V4kZsn@Iin;uLEgO2T80?K2HvavBLoaqF#So zpI3{XO3J9#eenB^Gy-(&lq7R)33B}+RrXyoF!p7mH74ApPykym}sPXD` z3N4$iN(1DhSghb(4eQs)%X&I#Vy|M?yc~ya_VChXy|gSB##E z)`5unJrGf5SYhBs6LPS82ISKK!8_%m$dtyzB6^Tww+&@N_WwbP&>j#^55(BUI;xNu;q+Xw0AsrN~R(Ta!|$R`LWET0~T zQRKp;6Xe*&pmvI@PpobV?}QWOco^(;0N5UQOD{69K2c=son1TwHbFeu`sto%c<>exE*1y+^fpGU?>#PGf&={YoMeKNkd;^$9GVQLjdO zK!{xvq?4!HPtk23h7&dxFK^NhE8o(^%X4r~6K_RoHrsS@`5Jxq-3{tU5Eq`uSKA$r z*5M1#jp6cg0+eTX7vG=9AMR(k!HG3ZSsoLEcB0^7!Jyh)o=Q~{#+-?#rh3pQ>SUDh zd`I3}CRb?}*bm4lfOO^^vJCmiT-&gz0rI)4i+^`bi~UB(3$4u^$}g!PDART2EMiTA?!t9lKVoE%lE7pbxJLMRZG>S7Q` z;8N`~`oAw^$rB{BiAq=k2$bQ&&z8?p1v6SH5>cZ7qFI6K9f&5T35B$D?Zx+W`No8N zQW0z6#KA5so;EC=-3b=Yh+<=%9#}lh9&P2?)YU}I)5TILxOi%B!1z@w2?~L8k3b30 z*5(oXq6#kn#ATSOY<&BSmOr{Z)wPo@GT;$Xf}Oa45NI$tPdat~SaD`K7Wb>n#D*H& zWTKnSzLLLwX3}5$^aefoZbFWmDPh=n*Txk65 zX>n0H`FdM-Y1ixqq|*)g06$q$vU|6a6`!v3YX+^*^K^AkwJQV$2r$R2n+X1bPYEtn zvXuf@a7p*c4C3yJF))Z~BYZDN$AUB8LpZT1(kSe~Q=(Q+D!j6T$gsQAwYT9Oi}jGQ zl$Z_x*RG=>?Wc*fCaS5}@IOmLkE{z-gBt-oxOAgP^?$N(q9nFxvJYpUXtEEdTo1+} z(cISCWj~D(0)&ioLr*hy5d;FX<_b|~c4u~e^v(i-MSlvUS2|r&fdz5Ycj!QO( zrsZstWlgheX7 z^VHx*0QRru8ua{HJhv%$Ix^A8oefB$`YxA{_NTR8F8+FF&~`?N|w(7I6B zNeL@p4bwdG^3<@nKZmJmSxbJzqA45EJitt&9NF;bLP%ebPRaN%NN^9Na|hPVt=SRc zj~JZ^KI4)TO*Xv7G`=3(9%@S=kTC>w_{mnxDpd_c)YP#aH-`SZ-94&TIeem+!Uo*} zbSffR09KZX5h_dyzYCCu2X+S?39qLPy!5d!g$@bQIQWa*Lm(iIJ08wBQumUYbvvY5 z=Dw)Gjess&1_{mA(utPFKBJ|;l8LEl$s+wQCD)l$dL2AN@ME3u1YW7M>9tp*PdZC< zd0q^e_YpD9>tePH0Tce)GlLp``Ide@?||SQp+%Una$(WzISr7^See2E+)X1Qc$t7a zO9e(0JG`lg=3zXt@J(4B#q|=qs8&HVD@HXSbrT+Q;wn8wl7Y>rBZ;DX^b(OK z5k{WLr6zGg0OI^kpFLTl z+jlP?kr@AL9G&9Vezqj2!Ht0aH0)(sUx&$eQ(K^0(&ZsP%Axp8sKyE;lE< zj(HX%VnVcCglb;8U8M4YOO3ts`f0k}Rab>Upn!ygOfbv2l5}~24CDkVf@l^r*fC{! zdkx&Q*~)4_ryTMG=?G&jliMuoMh+V%u%5t@$X|c#4H=(kjum}I56JR!I0;^vbvsF4 zwQoEEoF*fmFC)zszaMz+CSLjElPmEAj9ksnIUVnYU`}a@n=Y|b6eBujaZ?R$ve;`W z>ug}kxfWO|EBH}P7>GpB^KI*Q^!Q?qRzI&(s}&}!cC=-8m;S9sm*@@MnENrA2_!{~ z(9|QR;*o|2nt>6jj=Vb)r?-w=Ig76vFHp5WFnd@-AhDJ801H{Y;w7391Xw3o9@$7D zQ<>sDFO&L8mm>%;vCNxg$^}Vtj~tZbYoBN$IwEGiq+6N^!=4YfB^Rj!92*`8f^yk) zwH+$!@$=kxFp%_+u(-o(c%+=^;@KoIGfFEft90|GxB*U_+yDLtvOT%uv_{;uYH%X} z%j?E6T_{`?AZZ{121^YOuzic=6cJFwDKkmZ5%;c1r=D`Ge(44VN*L5&UCg(iZ=G^> zw8NLLRB3l@vlK(lkmSl?SdTA}x<15RPlT6rn>n z83+&q5@%Zu2weK4f*p8m2MGs}jJS)BD8d^Ki)d%H10UOIGZROvOPw7afktDGJSY8` z(LCJy3;7Zm#=&zcd@GVYlV^JZLoR;u{2N>Pi9o&=SM~HCLvdS>$n|P)BLG&vi z5F*QYBb5utq^=uZ)30y5PyP*&NFrG#HR$KaS#sOE2*DE;Q46eA!;Dq|)8M92MzX&6 z)8GPC!}K>#gR^xKdcpTy=ED5Zv0Ydz<(t(S;>IsKtJ|Ya2N4Ht`4&mFf*4PSXS8Ip zJPvVGf73t!i@yD3#qY6OF1>T5rBL#U!}QP=~PLwTPJyz zn~5ZUX6+u8L&T^>L z(=Hz~@10hQ+8~z}M?q3WA&@}?a!7hvDp!N&7C*maDmrGU*8yn6i_T|F6^E%CI71}L!NiWOwVBS}lXH;OFLfDmsBdUY|A%0#l;mTR3$yoQOrS|-b**p{6QX-pmiB3Uehv>DQlFWFUxNoCH{ zF%V84dvII?4`U(;BV8LrQUce(Q&EANqqPUO!mVAh+q0kf$#pF5QN7vaw0m=9i>sr5_lhrBFpGCDh3Xn7qfd{mY2Ohh)SRj+KJ)k|; z2`rJ#-5t0KiE+bOTD(d{WLS3dYt$B;`Ijxw_3kam&C|+PUrXUDFYabhlBPw##Ef34 zgz&v^%jqYNomNtE*YUl}?l?L8)8RrWYD^i$@))LdOe%e>6ZAR`C1ITmqeGZ;GyrHd zyVQjnjyA59}a(fZhf-|xcwMf#{xrr+*78Vdw3kmh_6RkMPe5|d>Ph0N&{shakQM^!`I#2-;pTJ)Xn?CXL;#CUqO~k;c*X z+L*|;X>)YfiQC0LyH9)D9V$0B=%@aq^#H@mdE^n+f4xgu=@xCgenoqqzeHphUQ?us zLg4%&pe&E)x9?TUr$<23;VxLKQNCKGTprOq1+Sl&UbDkjYB18}5P1y#X0RzucEdLJ zc4(m%KNR#~4I+Mn#m@6#fOHJ%S#r2Ij<&#YHEK0|+S`T8BitVIfa|R!eQ(jisH$pv zfPfm@2)GqG>kZmm6C1u*fLfUn(R#c|#Y=TsT)Ix1J1atU=llv*%cBYgpgU?{BNSUD zESm_(YpW*E$B0W}%rw2ruT@xjBnHT|Jt+7Iv=WmYeQJb_!r!-tnAMQD&nLDjN^A)mG5XwDqX45#@p9ofEY-rRWWVbM)qW^>#5%RCBnvXNS*kl0}|H6QmYPROIsXh#*wwf zM%R|Mx#=h-asQ72L|Gok0Hby*1QY^i4uM=wr^;LbpFHJE7^C=KK#Qj1Mlat!rE8b& z#K4I|#qcsz)DNo@|Knm9$d6ay59Wg5O~{8il>DUSs%BA4P^UnFGxVPt+z9B*jmA8! zt)}d=Dxe){ig@tg0j>Y$AE;7pQwjdeVak5gHuwy?6Ot!x(kd@s_5iGxy^<{3v)Fn2`!N)hWK+ra%b*oj^fH6-E_$;dSn#b08ba~ z;G9^~-UBQl%C<3`}g`cM=?kB?+C8KEdtx@$kYRa--uMi8RZg@@M+O zeQD-gy7S{jGW88a9oGm!BFVw;!Nz(l3;G<@Gw6TlsJk4f2w~lW`|sFU1EqL>v^BxH z877SP^li@Sm1=O4)t)w-|fvX3$*s-*HpcGA99aA zRD@KegeU~2Mj#K;ScX-xRKrUe@90^SQ!S57S_fp22@Bg9%_2x6><;i43`k?Z%kW~K zG12Vf9YHMOHi|9W{}lskY4RQ1W;V5ZaLw*<0?GZ3-LKHj?~zr&;3i_} z@cE--h3L&bTqAeesJ!9PX(lH4#{jS9q{_<5D&4$!r7xcA;&L3?{{G?rj86jNkX+%@ zVGZi<2m)$wGXjR%Ob>xJ7X076|A5~7-S6;v6;lpE{l1~f;sQN;;?u<&bu#jCpTc4E z104i;2`rie62tC-g%VFWBb#y&GVn0xm-g^?QP9M0m*ga=IQFc%mI<)ZCVlIRRb?NDX5Bx=w%Ac(`A zLxuSwbhd}2Yd%{Q4|O~eqsGi?!fh`YE){Yt3wWY_@KJJdY*oxb`tU7GwD2)UB-{&V znC@eZ6D*3OB>Zp(Ga6iuHK@Nk#{YT4gU(LyvC)q3Q35!QG#))K zDc!=z9pE1CZVgjW_;Xr#47A$e&sS%LM__+o6aEr)=8O>##Up2|wp`U+c)v`G*Ox&0 z4&Er>60jPA9N~j`Q!pXFZ;={4#6>j$FN1&-f~Fk20|ulJ#NaSt8L5<68X|`=`QyUG zNP`6}mxt94f1_FrMOl8xNl!Bq3f7!O<4Kb!yW zmxEp!?uql4@ybD0U4tFXXHwg@BswFO#G&PO+Ij*D-Lw~X0O#g=s$ z+!nHs#UAwQiT)v=nW`uR6av{p;Mnssdrdg=8mI6&JA0TqwGQj!5;hCV;j6}f zgLfwgbrXXq)a8$|f$`U*b|fMxT)z7W{q}ENx_|o)Z9IP}RPCH;(6i@7y8X#KH4DF) zo=_hlh=GzRk-}2};;|J7BCE$A*~;k9Pd44ogFedgcpiFLwNW9U5J&<6_54f%Rk1SF z;6?zRnzv25b9$mm0afkKbcm28lMK7~lIn{WY1_U<7w=yXs+#2%Y4uy5s#hDdZHb>L z5UQ*arVy9`0?P6@1CUh}3IT<{nM6Q6KjrUMHMo(#kIsdLJ!^xm|Kv73`d{zp%}enK z#cqAPfN0R)oeL~gBNYOtA)qXery-<{D+Ck*X9WQrF6D(nnevD*(qDTTuVo7ldCg*y z1#a(HbI9v-ISSoGtM*AAB}uB55!q^RlaY=(4{8>cH_1R)LkA14MVE`WUD|dItw<1E zg_5Tb$P5C?@|c;fN=4B;@}w~lGz>%~OGSfdm1Z6ne;}gc{t) z)+6UwpQf`yHy`{FJ^A9DP!yJ~R!OV8K_X9~VwJFSjsO$DLcRO;JEIS-=PBvxx`f&K&POB9VL8~WvC8nHhR$65Tfn6lG?lhte zZnD$5WHgm!V3SPi&W6;iy_L@f>gT2v2z^{A!2(!BI9-k-I(`}X?%oz6`Z`p<*`|jV z>Oq3A91?^DxhaBBzR~AiIg~F)Z7Y~fdevSJP@k(WBL_s77)+pkh>*rn(XvATeR2?{ zmI+jlMNCN?7c}xR!Ri{EgA#fHDP|r{KdodwKE`P&CYPi?frr!3hNRj7G*2XKi zjSUAi3AMgnUZhp;c|y{aScO1#5KxxK?DUn=R3V@ckP89z{FJLdPSQpVZcai)?VC9Q zn{VIHorgc6#!laTOtb#I^vH5dE>!{=@1ZIVRvOLZTX;qIxKp}9}5IFk$%)|Y@ zRH{(kEY7^Cx*x{Pe&%YWUZEP?q}~Nefgu83PkfZLq3p$lEA;r;KMudDzY2kKjexQ| zp6l*UwDD|6Dwe8LDps)8(wMN)GEp_A63%NZd3|Wk$9hXF^MqG;CJRTn^YK1)+ZMT} zL?6w2d$i!yQg5f*=}~v9N!Mn_t?;%%dK)sDaPyi~n=U6S~hHlAuO4 zxJe0kRqb&EUVQfrUAlLJEK7Vuq2^}ec!g?@LLeao`UI~+#X^NlgwvIcBVD-g{@9iW z1WyOS!@tZEJj?47JOtXvLUB75^+4{rTYH&^1UC*-o4RDv#<;_3zeEV^bUWk~#pjlj zsENW=86DUN7p?>fK|l>|gutkTj3Qu~c`B7_2$RcGwBfQOY;C_K*RiQqUZPFw^{BYm z+qLQf0ttK*$XQyt5=22eO=zFs8K8GY<_I1Pr$n|-ZqEU+<8ZmBwN}#O2vck~JJbQu zt-Ec?Mkak(XT3q2YgNQHz-r1Ge(cr8Y^^p{$?_m zMU?s{ZXx0o=i_w4bzRC~bgha)AWZ~zSJvplzr0QF-idWd8@7qpKy3f+hv8TCR}cbb zvA9p>!nz;|syen99cy89Smu0bZqBLoPPkMha4H1&-pSbgGgUj)MYBdgmVwQz+ntsAI-L#~>+9=u<;s<; z=q#n4rTKYUEGA_65Y=MIt#QrQf1pAOR>FkJm5aA%{mXCZ@*n>j+Fl=I^-QR)Fk(F) z1P-B9n84XqhF`$E6efGiVZwA#hR->j)X8Ld%rMYOb%lUJ;2a{Lo}Y4e`pU`*8PA_T zSA(0F{j|}Tr?u6&m{QL7<$wO~enG$eoBu+^PwUj}Mp>;B4mWSDLpL5ipm(h~`T?^< zswf1`GXl!;c%FM-wS5){6iOzQ=89xi;o>K8Dw0A|qq*whsgP(no%D)9UJ0L!Is5p! zMpj;<78YXIdVFKzMY>Li6h8CPgYMhp(w63sGl&$_TsCK}hwK%8_0?BoynFYK9zA+Q z4<0;_U0^CM&a{9*3=w|8K9MQ(->r=!+N8WFxG4lF09@JfXRpcayAQvh4Wd zv&r%^eDqhp`W1cm-FIZvYBhTDyOLgi>n&djzVaA&3~&ssxL y9oU>TFa@-S*Vw#x@q)hm@=JRB_%T(hRr>$?CE>3&31El-0000V}NDNlBiuqm%41*wr#tM-DTUhZChQoZQHi7%dW5H&dfRQ`R?7n_F9P*kr^2o z@nnW6$ce-K!1@6M1Oz83A)*8X1R4(n1kw%#@%_fPs73<_2t(LRSXe<)SeQV;-p1I> z(g+AhBPdA|QUyi2{%UokkB;*=(*Zu-AwCmPBe}tFlt==FRJ%9u2SvOH2{gn{L}2KA zC?qg2(A-=CDhL$PPT&QPueY4LEjKT@X-_Sk@86=%CMyh32oWO>4~8I&fP|?^U}Y^{ zb$tXiy)&8u5Y&zz7m$dOVM|qGBe?JQ^^;GsjR6C_wpd}4(TB_1*RK;#Phv?RfhC5= z$1swho@Xu~3L_;~5fq>k(p0*i*r@OZuoa~Gk-n&bwL5H&+k=1CS3J^LjmKy=NQW zN5qO5f~{g|$i>svt{+98MFLkp<6}baqF5TPox9)Y#Cs#GT)HTJ;u%?Wmt%)B#+n*;mV-*+XaITX1Gx&a zXm<)?K!F|j6%~^{FIz_-68J;yAb9#M(2rf?$#K)>-OR%e1Uxa^g2(y1o?bS*`eUSa z0Yci|5<$GVD;c?Y{d;&Kg?%}pf_=oV?|*zSrxUxvDUW=yazQV#VpOeLeTnWDy~y@s z{DEa4!yt~t2*)i7niJ6Mk;iQrD^O81?|yjAz~_y@6PnJ?$t{_c=N&CW{F=)|*YG#f z5HHZHzxzDCQ0S{sAx*@SLQX~)7h^0~@k5b9#FIoXf{UpHQ~oNmxX;1-vKrT`v#sL* ziv}+VK>lckSlC;T@+q{`I?HKVSsZ_hX}texc=y12{i?}9cxU@!C%>h*#i~PJ^}7&m zBFX@wzoo0gT#f0dkNT>JTIROce==?2eg*5b|5gPLu$;QC7Liz)tP`vAwFr^#xu4&} z9^tL=><3lnBY;v(hg0e0CMzsC7vFJPXK#zL8U4|ocNlRgCliti`BfY@45VP~8;0yN z|GxXM#RLO1wP%yA0N0VVyW);79v&UKT9ns>Zz=$7x|7uh(XzWj`eRxGj{+1f7ZlbH zvj*g`2i&#C8Qyo<3@j8JngHC;*D@ATE&xOUcC5!p0R~GD*%TZ%7m^1orWct3ygG^V z2A(FsMjy_ffJVd@gMcj*63L&0z)b>m&L5T#W(3XNuY z0cg{oE0@m{%KgWr0L+ZZ2{}ku4>1O!Hq`GxSRvHB2nO*L;zz=F#5Y7hsN(?RfTjp# zK7<|ete%0&xm&iXjS|r63DN3$iNc=3uM=zr?Kap-tr)z<%Lcg*%JA z6&TE7o_OAq-orVvceotQY%^fMGK+x~fL!yU%Mct9kU=`&DaV)%!~WL&tyZH!gRKTq z9@f~0RI9iGd%nyr8dOj^9A+kiyi=B*Sp%ZUlaYpK#%xCL##2VthIj^_qkV(<<9p-rqe{a} z6SrAO0jeR3DXbBV*$>d?@@%?n!c7EC`iP;z#1T2ld;MwuU()Y==`L)yFA$1PWOw06u6=eCgcIeXUox;wvjX7>p1GWS}? z>qo{1%Ez%MJd&FuT+(6^rUU8Is{?I(ZKCu7xBd8&y0gDpfr@XYje56lSM4zCGM4IhY5iQqvd4KD;Yh7d=z~whUzCuBuYF=Iw~Kf z6vZo*u0p25AB8#B9wLv=SCrd#QVDtqrJDJim4oGnMNWzqzcS=AN_GD7mJ{dh z7dS{BM^&X-=UPWyLGo&LLUm%hZ$B(PAU~|b#X<~0XhMJn-v`47g9p<`K1aPr{f$bF zN{U3lYR<@&osf;rh|I80ivNtslcK$>iu0310VfgjbQ?V%x}(I!JlGmj@EPe1;+ zgxg#<1h0^(l>5coj8?m4Dk zLL61lZjiL^LJnGjEH^*JG!-_5ptGVgLN{5Zp)S5GT}5pjY+bT>w2`#IyfOS3b`i0@ zeB675cwsl3FqClOHVJcic;GZ>k!31MLt5pU;g0S`pKvc}B602M=qdL?^KAZ_edD!X za_Z7|UD;jyCHWNubm{xibSPLsG+W;}NT>U^JsvqipL1B^s(eQmODdlRHzz za8=V%lV=-t6M1v`arP#EtryJ@(}DsmdKFw87X;^er@*=b69dykHV5K`X9%x_vm`+zPbD2jhelJBDU|({ z@QTKYvn4*#j}n*Sr;@TWKhJ6ayJxUxk)e?QVl46SnEdGY7>j;qt$?ZKpSM@gNW7w@H8 z8@(Q5_cQEa+6nW#3GEbH4l+-Qi*+YK?v7-h?r$$d6Gh|Mr#rsm5c(7CQtBhBDY{R$ zI8VF$ftCZ~GFvlm%wn2i%dU;uj%K08{4=Dtq6=y4q`aj06f1fc)iM=To!yRjt*FxI zD&11MYBy~Qg>`LmRduCl?Hn&u?WnG{m7PU~CDW}HH`#|@n@)M>qU;#fhMR%bcrC3P zC^IaZ7jrz0;}>cs5n|&}>vPT2S}(s~t{FB*tqLrqZPweceO!uoJG{#JyZ2Q~OpX_L zk39->*mOWQk2aq?BHgbZ&K|cqtKGUAKr}+;bo5SrUIt*GK zT}Q1<5A;uKE6RP|&9{7neEce(g_o7?iw>SA%Dwre<4k%>J*sXh?@R4kT{i&j!TQ=$ zg=*8{IKPU|{ioyWi!rS;Zo9X$uw{YKyyxAj+Q^a`2cv(B1FAqD>h3XQ&#@E`6de!) z4}|ZW6+8QzYV6G+C~!9}q1g#;J`83Uk`QgaG()xq-vx>&C0(piwtbfQPd%B?{4Hr> zv535^qVwYJf!I-up@R|2k-Y(|zT{r-xPl;uREsdkVd{~R@oUmp3JnTJX;-C#5{!_R z_=pcgj5L}qVH9b+wR}L{?wupRlX>!p zWE93;#3H5qN?eNL%kksSw_RXmW-X`kATjw!wXIU!^4mWo$IE(mO()a4itJx)aS#Q^ z4YHX+rlUY@*OQ@cRpL^4?DW5jw=TLqBvwtSzE|t6TK#KKnbK*#v9pC?M|<}ggspDV z#I|X1)#_Az_;|UtxTQsShR@TMn zBu5NX1QvW zPHsYZMlpIhzG=<0ZFO99Z6K6M0W3~h2387M4ptIc7Frrs z9w#4j5pzRx6)8u18GB15?KwYTKo}%45)u*uUbsA0EDmIK^hQJY{ZfAc=5;g?^J@J; zy{vu5XE<+if>!pj{W~D+CE>i}^j37rG`o@WSUpz3wWIXib3CYbPaVBGWpDg>EQxx8 z&P_$Ehq~}aO2{z|NMX(uZDP_awR1OlYuTx3vqT5Kj<+Y)^ z9=CYvGo2gJY|-hFfBfsZ_U(Z015z8Iix=mj+B1=5hlAn)J%;YBti^=uWVRVf-=xKB zd>@*s&h6*AeIMu<@HAm$DE0vl!=Lu3N#Vw#DSr|f5O%RIAw&t~VAy5d0;RIgNcl2q zLTW_3vWJqB!<#a$FgnQtaEQb063hHKqX*-YLY#swfjywbaY|5ADA)&hM;)TrQ|M#2 zB?JWYk-NlMVU8n2!hS`Bg;z!(NUBKS#nvSrC47?16MAS*N$dXl3=ty7!M{kZX=20&vNRp$v#a#u+1ajFC*%W|IBgXZtE>!S?ZAL&LRFh^qGQ)8)u}5IeUOH zuF=YI)Y1rA4?uutBSRs><3q_l$hJ(+&!mbK%YiTQ;o`|*bTQmL37MGI+^+LEvcwZU z_;YJJ3{7q-&y@X#b259{EBLx%hcgZYAXG-wdKZqa63$9zo^+C&o)R~vOchSws4Azc z+u5gGsbQdut(2mw=hj&MyUp%{YaA{pLrvCiGQ=jSpqr;}O7 zX_J?C+N1k%mM7NjWX9)Nah>3(_E_OM^yTD2V^-wC@V#D|-j12Idb$JC9sPsxseCFX z-RkSwyI`FT!w86~Vb>QZ2iv&_D6z56jV!Yki3+HO3`oBk;^!j($bA-;AjQFF3IR%v zhZ2Z3)9wdwP}Vh$AOY$Wsf{n;4Pw6E0f7ev-V`vt05ueRARf_AJEYlQ4UsycsJPk@ zssm;e+A*jksAI!%TRb$NV_gRfLK&c9tUJW=K-qyug&Cz5Wfeuw;k2D_+Z;++N@+^= zQth&IK*h7`JB&YYUT}IESI{eQ6!|1WCE_J6mr)ypyV)xj1ZJ>BqFZD5Tb*`@phH6J4O0{JrQAJ%DSJhIfw+yjqOj>aZ zn(lePW2jvHm1w8T2L&j-ur#rk0WC7CvM4jBgC>lobZh6W+Sn2nTU%4Hv-4v%JYjU0 zoZA#CU1in2HT7F6?*gx+?r^BpR*sj5m!voPhhBUusH9*cA;ALe#g%tiXgCGnWWAOS zk^%69bPEqo-d@sH^k!0sUpeajiEdG~59mwiFHxVqMbkhv(mtWeqo^;VsC@SxtSYX} zE+gDsE6-4yY_^Hmn$*9IO4t`XPA>5RxGa#5iz2L2MY$W55p!~hvWRQ}oGuhcl<)_l#E(1VP4HA~RgP3BN%{d9-#3RK6>+UJsqEa0#O$wGktz1+!fD%y z)rkoP5hf*ubSjI!&2TT~k=GIi8(|alV>bsZCmW}Y!=QtOt<9|?;OK_)7UsqWsf9e1 z9)+ZWzK`@)`Mzw$3IKyt8?UCcH>Yvh%;Z()WM6WCj5-o7Cp9!?PBr(p&%EO-6YIi* zgT<{Ou%XCN#S!lQ;^6~!56&U#Hc~z;DhahKe0-bMM!I$RU?$ZG< z96xQuPnSo>tbASLcuMeyJ1sl09n& zPyvQ}bI6zeE?rwkTG3rS;{#uNyZ1m|dok~TUcW2NfF=`=Nud7-k;-EP!^?{b6Gd=%d9Q!wykbg9KzaebaD6IF~R-htoaQ;4U?QRGyP+TXmX z5B%B3<%Ac7A&Wqp79D*B?}ZV-&<|@snZRGqa|ak)yLj z%Ry92V_1`2t6JwPBd<`=7l4}ZWc=eO49&|!vl66o-4gRs=)waRJWDCdMEhZr>T#E+ zk7qda*On^ZM3s@I$V=i6yB{!9u?~DD1b`$(1XWytFS4MuRaD=GeJ&y@=qM=sDMIu8 z^Y^;6S~84&b*ZUUJ^Ve?Do*;SZ=M)qZ&aGsuCpIyk!5Cj!bKHE6jk}DfPx|-umt=$ z?O*~C>;++4mfdfX>M_mvl~G4X+D}S z5q2aYKHh(3MgcTBw&J@J456OsX#{w9_+T6&xBn2=Jk=L!6bo!@ekYsP1I_F0QS{^W z!J@{HQtDfCve?*I-|u&M2E)-c4Gkz1{~-@Tm~Ttd62Y^@a#fz&-4PLyMQj-gDVQU) zEhOBwft{UQ+iV@}Kc&3!g$|9aAlz|tbCZyf5gAXWwI~oZ2DtAo1Xbv|FBz2PPQ zj}h6~{rQtnQ+T6VuRD4u3cJ6rFF#l+@z3`ZQbYi48+cX&{_h5*w-}NI>&?HN&roEh zgL@CoREr+muC5ds&7w9QFBKJcD+AeuJ+fCCjko- zkVQ0|%?EeBTniG5!s=boc>MB;Q^kOn)CR|d#mHX&@-TGu>OX6;m)GdLl5Mrvfns7}o@{lt zcZEpseXo+gk~=eb!Zl4z!S(eHtkUuQ|6vcXr24k%U4Ozz5LcgOvhGL;V{Qh&AyfC9o9hpGDVkhRre|6PxRLk|jh%mf9c|h|7s# zB#F)OyInK(9u=^TcRN@SUH1^YhQy4Gjfrk=jkH_sp_|SAWP{ZmY=wpk;SB18c7%pT zpyw%-DJbaIG*ySq$1(->=!FAqJ20J2>75ZL4E+H9-(^k;Rj9N2BWKqlR+Ff!Zqvac zM>qxbj1+Qwy{aPetQh-ZZS1PTG7Kz2B6dfSB}VKS1tU(sz>3?0RG#N>5*oImChB5p zELp;U8!7H3{g!3WFMOZFp#4{A3Wi@sB75_!?~ic<7qvkoGjXDL@U$iwzVLB_Q%jQw z-c`jD3Adc;Cyo*oP7+emxa6uJE+;CNq|Gib?$*oV{&Fu9oO(wAduK8knaEvp8_?yu z5?e~TACfG;<<;vf>rz>m_8_Fc9aSz3i0Aa`%8KuGZ{1ZlwR#l=vVM}2rR)HJ*Zj{P z5c%7VQk`~ZSrkg6e|xtt0T4ID7lMQo!QP@{Y>n(~3C^LS^>YpXp);#2*MJ`tLdF3> zBr#zs8=8$ob*T@LsJXvn?D3|w(qa!7&tZ3YToE`>&VDX!Y7_<;cir^J8>c~57aH($*abQ9%Ud9FYS49SATY6z6?l)+iS zhOXx0-L*`M9=UOCVR`b8>Q$c&-~}(cyq5N@j4zSTp;MN)r5UqYYfv26`XI7Bp2F28 zQund3u~}JP->x<<)c#)s5ZbYkCBW;p(GFza(vmXagev#R37E2eq);FwHl6&_@wf_c zcp?6EEG^?xMvpVHl8A>MJ>S|m^EZrmZlCz4u^|F~%-Z1I^I0e>SPKz9JDy(m6X}_=RRl8iC&D`MEyH0wK447W-I~dlS(+-qpQ#o;CTt;`i7#DL zD=+uJD!hPaP12R>uRxlHI5$~*%zg^n$(1tRB?-^kLETnTm{SYSrh(IXNmR*y)f=M{ z&uLj$P#H8|srlV+Uw>@TA`*W%%R-Lb4*@4s-IWDE!PMUdI1DB{f}3U~`1LC5ifGkY z>Jsm!6^D>Ad7d)Y)Ynt*vqF*2k6T6iK{wYnxEMHIVTT?G(-nsmFO896iu@XxgLz~ot;H=x!$71)G2t=4#~*CZV{IB|Hn=ROQxVN z7UCJ>5}mqNa>;M-i0lElZOB1YUmnr>j1e&eQL}>SyVgo3-mO=!eR0fJ5?yQDzHzE} zeF<9PcDWw1NY6feacn}or_1-F?t1qknby^1sQrZR9J1o` znUv;bdVU2t;kUva99ld?(kJ`$1VW5uSSiJgf;>EKyR)!C#II0C>+t&vo{dTNK6Jfz zgmveyXcT7ZKqK^>>=gRfW=ml4I<>lWZD7aAvNQXJuZ-w-u#yoc4xW1gV}*mn>&F>q zia{?ww8A?J5<{K-Xj^@06)LnSfM3+ME6EV~pSl=0ee>X}`{9%>FhT`f5PYwDMCYpw z&A*{~-Y?*H$J6wvdQAQ%wozeWl$cSkj`*8PCYjD<#BdR|wzdM+)^u~DRyzMNg5*14 z_(!rr)YE7ftbp#32&kdPd!B_m55(<{Tf#OL7g642vKs(fuip)}6ac(NSedv{OMi8p z>;!NrW$Es~v2nI2R-bGIlVM~yW}VZ6&5zSF1H=yoixsuikQ0|wFmV1htxq^A?dfZ5 zqPiis_+^@brEDs?Z}m6(mcotN44NJQY*p~W;cXUh#doN9Yd$~bc1+5bcT;pWClC+UY*nVQjp!D zRgEY^M3>F8_W~Tv&F$^2)ZqD1S=pug!x^PC(4vZ)QuM#f`v!qfKT(>T3+iggTr;_V zN4lK5MD_<$?Z@PmVau&xJNyTLv^BRa_1t2JQE+Ng+O@JC|5wAUXo}x{86I}3X$NU* zFc*BoD+IVfecOo~5o?N5JaF&#T%3#CBH@ScDT`o!C~t8})ypDghTN&4xn@b|?tu=a z8@%W|4I0h!eeZ@z;JW1TDbEUP`H8~fwwO|!_fvKoa$^Mtl@&eqbE{aR36?5N!CAG6 zv~@Jb3H0_XuR33NpnJ`FJ4Zs-*>rXlsvqYTpT$n*8f{f9%|2bkna$f^s5 z4To(&GZIzd&LV&N{j_#r`LL;R2~q^~Z@-Q&(t|@*As-$j^Ukwxq8|1yG>l;!p@MIGW8h=` z_9)R}E2y~_U}B?AI}r2~00&N_?08F8ZTby$iI+^W|_QSw@q7l;=o3 zzjfyJp7H{G&g!LLd2W8!+ICB5=|bFiz;JjogNZQ@Ti{i{Kur2=*EYcOWbpLDT`{8dxt@P@Poct zroWfobgyK(6ghVSNx?4y6~`7`GYBmbn6o9(tDWA^%4MKc7HXoa%>qr;)4>0U9luuz zR>c|7uoKi?9dB%$YsgYKNu!d00qD!WW6K>&MaX?@Sg~!7C|@l}^K(Ps#wb0@vO*5I zeV)u_s$Hx~;ME2*<rf z7nr{t+V&=mViFT@BAF_)G6@Giq^;dl5zs_KipBTFM;nt!e`K0-_uAYe)#Yl%TB-=1 zdTB6$$T>Hj8hr`%d#$FxzHp?h3=*yc1egReV#r~D2SBMqb$`EfaFPx zBz8RFt|hzJoj~cQd#y_l`lwDtq>1c!7u#)|wCLCWl~VQa`}u~sNJ<)mGAnC2db$y@ zO=Ace5PSW6?q%$Fw5PxLJYhEK!_h%iT53|=e@y*I1s{5{kguxDsv#^w4tC8MDz&y4 zp)&(1LDFx<-m2({<r@U&_%6DL`_xXR(S8* z_cEpi*75m8<>I{mYUn@B6*fJTVH;_1G{j7c1F+(|-H+{2T0~CjTUv*e9|SE|`*0(5 zow1%Rh^t@wEM&_wn(U+CM7l$IJ6Zi~cEIxFn`zkr7|Po~5+>2aQXxea7gHG)mFti4 zqLR|Yl4>E!TUS#*c}Dhoh4k!ys7ZKN>n+li#)FT4@<;ntaZ~4XR2eDhVekMJqj9+t zHB~eP%meD{nWr*210Wg-<&3IM)(rmMPNB)8^>kc7EmQt8(@a9FvEstn)rzoRWy2P+ zt_WB_3@F*NtUfl=NMp3bwUqok{C$yVsWIa!l`yNPUwOo!DmP2>u*C(KrsazwS5k_V z&tKRY%1lO13vGQVu3=*D^$!irm--!K(mV&70TE0EEm;*1L{yEaxylvi-W(G6KYw47 zhlKzy?lI~fStIce-*}@yu|TY$EzH|Gvm=-!WC(9k!Q%#Igo)ahiW9B%WbrrP4Otx&lgj-iS+++xT=|I3nnf0n`n zJ79aDz^yU*H9E~Y@TOolUQ_ct%tG@#Dr!#Sl932R@GwNl&`K~ZX;YYqSGLA~1(O2e zad@`EQ?MCWZWv^x)7?g&bwOHBmi$^fv6aj+4{+^&v%1&{`x#kDwfp&3B<7QHK2(Sd zhp9S%wSqVOg{fS4IN=6nZlf1OKtN}COam^*EchYqjQb4VG~v{{GBvq-uoqAZ!}aH_ zj+~V!o`xofb9`%rw7jTnSt8Jz9b8)M?YD_GsqsWzMBIuGgWt}MKF{a#{@{?v?XyHQ zxAR4+pyBh@fk)!C>SoWmY+ccfHzYMRbx}f?XgS!wb}s>_4I7Y0IxE0SUDUIw>G+$D zYT0cR5fM>1zg^N85#le9i@EgVOYI`=*ng)m+^;Ac4TQC}r=#Mr zCXdpmBqK*{NWyrIM#e3gcK2X4r0IvLb#9$I+Wp_U37HNNe@acOF(%>ix{=LfCCmGU zhGb1Yksp5IzCGU?u)c*wxdymXMt=g}CZ3?tVtFa53SgDpnMA$`czCD;)D;Q*Lu4K* zu(3Im7^!u0 zF&+)U<5+qR6Ai4iM6I)^t^4V7xg+VerK}jyI0RtksRG}G$L{`QR!Jy+Q@0>L|EfLq zz%Jer)kx6nq)?DGQYai5hHdz{P1Cl}%>@OfII@}vrTzdN1nLNAj}E0tA{9 zk2T2Kz$=hO6y{$X0U^mZGHwBxUyFEkPBBZrSZbJO8BE3| zSI7pE*i|bdH!6xTc$vBPoebRd?~+sOJawd~h#F))4mDV!N7D6beDCBW-0bYEL>}hE zm5F}dnA3<7!BawA;=jQcj||A4xP<_|mzIpI9Yl#BFg7|JCA7*D zqOmR(^zYa<7-`3Ym4&4t(StH3&T^?Djj8^uNIE4pqg8io@W4TcNT^>>T#J>PB-+~B)#H`pzwwZ3;y0i3c)ZZO;nlX! zr`)2)e4=R7StI&4-trUA@^w{GyM-Pc8tNM#m)2gO+9eqk+EFC#u`cqwzU8I)r?(Z# zHU2LW=t~}xBPA!Nh9^cnLMHib2|W2=8WOj>p4~%2eEB7`lSuzG4|4qm%hfvnH{Ef) z1`xdcg?bZt4lb@w(P@G7@4@cL;&!p!=>ay9DV+HS1panKm>^;ercF?z>Axw9{tZ(8 z*X}+M!3G*1@BxhDlK+NF|66Dt{S8Oc4Jb*W|79=#TlC#dMB8n`chN7(>a>Gy**y-lBC0bkZC+HUg>rR- zC~WrN+S(NtJTQl{f+MJrib~dDrR(@A-Olif3(E%c#UIJZ$?o{%nEwItKKa1v>gsH- zHaImjG zv)H)^>+Ach%ufE&RG1CqTTLvxMbH#&r8zC84>7uho^W^IZJT_-2*A=(QM0POf8L3D z{^LQEoz4aRDR-EtcLBAE_>ZNbm(VjBtAIoVezH__2g(hM7WcSK0~w9yci8EeEAP`& zMEC>EvjWYF_l?MC%@Jd{Dm!)IM^n4YH4zh&k{gg_rjgw!vSeKgkJA~-*>ZJ^ z@nrfU1}GgrV982EM7MYKE)J?4BdEf|ES1v<V@<|;+*WJjjg$q{VRl!4Wo^?lE-eu-kK7fqE$= z0{6Z@ee)g^Atgzx#ZvA3l4KG21FI4>&a;ozD<4&*T$@Il9A@l|kc^mKXJ~reTeP@X zU2+`_&FTHe%bh$dHWN^--Ll=q^C%X2yiaiUVECd%sW2t-<=Sh$UXHF5a+OZE+@3x9 zBQ8f^ik>I@r`1P;EcHh=Zm>^x9avhC@>p2yfJFpfh)pHWKsKD9C02wqd~uBsh&2IB z2Aid5R<>-elG!}P>KJC$8Y`u8h1dsx^~f4FC<*mu@WSQhJ=0~T-Hx_s!Tdvc&|orC zK8{zPi_F=Dx`YDtPha$|j3Y?VaeB~!_dj@Cuuabnr9KW6le1WBUz1V8b6_% zY!qaqh_5ta%yVqzicdLacG2U1vFql-P zC8)RAKEN-A&m$xOA+^oyG|~70fHs?50ix@vb7uX$1Ci;A;G7aQk?+$9VZ^vft>)nJ zatlhp(eAEb+c}<)urMMHP9!`oSK^p~>t*5oNt)+r`h$e5Y`=0p#GbA--&JAppO5M8 zKgRpPHD#(1w}uI%D+~c4O|->^VJutX({P4Hfs~pUqkCZu9ul&0f`Yv0C<{!YTa6g0 zB&59)b!fLVmU%?N%4;FleZ{iexpJUZiV)p*k)4(p2DF1~;guaPDn7g=?%_r$s}4Lc z4`&c)apP(gO5tfNpQ6tV_f=|fs%Y_TMDZR#XG>)|mBASHwpnY@Em?^bP-E$62`1A) z2IEV(;b|Qf$3Tu3CkT+-+(mAbj=gx~yRPp8l$IMJyl78^IK18<V zSfWvbmXXo!*_&7MrRx<7Sr;#aE{h9Intr49rmx+>SlGz?FQOaGCrxhndJrddbnbY! z?yxOAb}4CI_&^@z83h(SOo)2L5S}y4#)FUrQvBoKALZKX z47cY;*B@<>83E8b76#k#%{P}DUj)V*mK`&V&zz{-Dmhsb85-O+gfse~_q~ZCB(enuO&pTS;_ zWZ1$mkG`ohy2d zexkjd)o`CMWM{JBRpK;+vw-(zED@c&$<7VQrg@lllMKh-h$IlopyA=UKX+i>m}*vij1#}Myo3K88d5PJ9I_MBdd z2Rh3XTHvX`Ic7v?Onb^nz?1mYQpg?BB%>-WNY=Kon zrfy{R7ZJD9Szw#fIo0$SX_O?5yLnvc`C22jTqcKKO%22I>#G_jXv#E~!R1hnT?ma| zG1`&@G2?2r2N2sw8@5>*r$&b-?Kh0bb%~)fT^p#BT9S;nJph$SmS9GTYjqnT4aVfV z{Jl|$pnnZT?4Hd=xb?S2VMD7P_2=f{g>%ZWDQY8*BrAYren-o-#(|FERoj%^-zdioQ#lXt=BKKqt4 z)B6o8r|J``m;7x%3O%H^zv?37eUFyXAciYKW341PZa^_CM2(8bo)3C>S&}2&I1b!l z4JZ=(#s?$&1^3rEW%3y1XRkoD|JK)mYj-f`sE-l{^w$-NIxcRqH)aeX;svRfu*{o@6o)?tKxK)_Sn`(rx;@pvJj zpQwz8NMM}`bc6&v4V|<*$=TIgLg~lH(>AJ$Iyvb1{%xxqANu#b19(F#8Go1gp#!#! zIPX4L+k=Cg7H?+!(Nj$l(Cfa|uGdV*^<12aW&Xb*yi#`~uPK><7r(#!-EsspR_0re z;uH+K)s&?V8W9B4&YMOuKOiCvsx73{niZ?fr40WNj)KI4MhtlV4cQFhj2_N5o;x-X zt@84e%WQ7@&OJ3(kw*QR%dsV#vC;6FLKm9UsL3=(Zi9+(*~?_B$KGmp5)|T2TY{R^ zDG|$PZQiN{pF~CMU)r57^Uj-rl*zhO&W0A2rmsC2Wz%osrUqSB`yLh}9JvPlqbXOz7y3Xj8xB03GIdm-^6bUa<1~IB6nVGPn2L%yDoeT%{ zH!o__*)V=TTSOo_iw8B-INh*X1b8Jn6nEo#l2=h%YJs&D{yi^#eU%xYM?A}xHw@Zk z-R67NpTz1|3R!2u=}pQ~P?R~k8q3tKJS4X zNrX6RKi$!VF9yyAe3jYrQpj_#5lMh}8isB%*{6W76#whaWQsPE2odw5^H z&V>#V(PxfzrVj2*foj?5w1;fM_W zE!6>w^W~Pb!8B3NmSq+Q7sdX}^g!e%UcE%52I z-u<8qDF2m?iHb_JY`D?JAa7U4b8M&`K3x>6YLI-msdsb4wZ zwKsi3J;03SY!dr^T?}htVFCsBeXVD0E&K>$OgXz8wmK?07dl*EU$%bT*-x??n4!K- ztep6RMes{=mGd9{fy#cWh#0q~Wrt4a1Ec05yN;9-S2xaCtqA2!e8 z4e$oX!#+J+MIrUDT0zoeV#(D-pL!#ooMAOT2#p^tdfX4_9?pz9UIg3&;rbXt8&~ti z=#uKlDxVT|i$b35u7y<|pAd4A;uZVnJRwzmHq|V)aeX<9ZzjjLWvvO`k-kD z@r7U&JSma^9Z_S|#ZBbxjXn?2Ag~FO=DM_wB3N%~x!Jd+(QwM%z!WoJ(O;Z5iOF5) zwGF|XGCBAz=`dq_#RPlvpmrc7Gh^9+!GO?7J~7-R7*%7liveq4htsWtAgF(-Et0bt z614xQ_^M5VwFm-NF~*z3gw*ugaNFt`-3iPxJuRHnpg7N_-V{fEGaP801xL3Lk+85s zW;CcFDT($S5Cy zN%uR;fYwaTu@>}g}+c03IZS~j)5^A(>{HQm+KO9o zae-pU_0Em2k zKk|tw90$34w#a&u6^tl+1X5+H;qJ&@4Eg%5rgp?+Wu8gp(+KO6lp}1b%htds^RDSu z19Z0cpICdA<^8KQsOd;W zF&~h@`Cm>VuC7Le@zd)GA5V@=81vN+xzzuT!u^Y7CPX5Dpo*t{qTe(6h@y z9vALfs#dinmI(Bq+^vk?+FHpO#f!N=hVfagvIDN5X+9R)eq7~o($R9>#swZ96|_G& zI($f>9|P!63nTyt-u_xB8j(){Y1 zqPFX{T>vs=^sRoj7;2t47ou#NBXFJG98>FPsYM#In8SPHc=|(?Z>hQG$ddZ?w|!#7 zxyLBCUEi);Td_pDf&%D{BRZ8=+hqKxY`{aZrbw1-KVn*UV4-YwPj|CmOlt4N%V_SF znx30(1^!^)Hjn5;CNsXgGbJZHj_{XB#}8-o#vx0?y+??=mmemiSlcjqk{Y{~nmsR8 z(~pjGCGP8&pSYIC6 zT2`%#={?sg!0bHUGoQR(6B-pKmD<}jmhGTAR`C4&u=u9RwWN=T9e|wQ~K7jkDIX-i^BLu;_RZz+p2*g=%O|w zy?rsJi$jtHC`B(g4uhd}UJ`GT&c^ItqYL^olP2l_S?TNuvQ0J6^ncRs5riuL5?B3{ zh}S*7C&`+LL_Px#V_$c?7f8gnH#RW}LM0};ffwb$nVpS1-V;-1Zg-^-(DKnj){M4e zWFoJ{i4Z_Tkd7D*f@B2~lG~l^M~_m0j3)jO2@&w5`b-Jid;&Ny%dEqce4e0?z+i1x zuyP=L>Tam;$orA;#qdNy_x2K4u{W^J-}1PhZ;tG`2>IbtuR@WQt$CaDw~Ko7oQK_|s}` z8KM$p3JBT6YuDm=9MewFaB6AZCPj8g;d1Lnt2g22J}>>2E%6A zT|LQm5&_G73fY1$KFivrN@EJMS_mvmO&0iHO(%Iq&=s2YjQ6&>v#Oi*<5|qyxKB7a z!2)#jQrIb@eAYdY{KIv@IkXDS+47%#wLsX&ZVTbP={Jwnw6t3GAn^XtTv<4LBM4ML zT#fuWs0F$&c^LAOa(Sx#rxfTUE{y4UZ;~Uk$a1fX0UDLG`hbJ%+t2f`8v9QJMwD9% z1=rPw+L$XaMH_Fy4PrYG=QJ9bjki&&Q5SVVl51Zh6{UzFO#=UiXGGA?uor9SJ*)A4 z+&4~K0C@l9f!|GkT>d-vKC9+uk^7|5rd^Es+AWw7N#n4KmwNq0vGbWm9ma2Q885@~ zReuKX9BeW{ICWXaD92je4_EEX-xuCRZWLCc_u#t&k;lE*^i%m>ieICCuiu%Bn83}k zTx5v*3*IM8=7h=l$i3f2w55$*zk{0`0iO$zry4mm)=v_PoSieS^!V>4r-yKna|5b( z0zjb@zE8_j$q9F*##!{5u+!aSE@Oi<+}>wYd;qF1{?Il@4#lQ%1AZp^wFmi->B>zi z+};VF-(lDSW!JHRTH{*GbP;pgANu*`Re@q58Lv1lufWgu?uH5yG=&X@9tFbZC}ZIy zI$(VnTp}v=fGrubm2C+(tOARML7hYqxh!+c$`Jg4&FhfMzCxZ9z_dK6I!kO{rV~$c zm_`YUl*mqr6nAOTpu*u<;w012^TF@nXZq~aNZcFM^_ll#;8DPFR}l#LWuy3h6kmJO zjrC)vHBX=smZX zb1Es>9%f3$U5oA7sHhJ1Th+`rda5@JO#>?VzU(S)O^&&wqI5X{S&9Zb$A+$&b}f5; zW{i^AV~-eIH7hSl4WHF|foXS%ol9m8XtPpB4UQW#2^g2kDgUEbY+O0D7-Ww_lWB_K z*8gPFQhuK{%YeH5!|dzSLd==-HeMz>z#vRA-F>_5J$iUztkFV(Gq=N_8upfk+^c*k z=Wo^Qk@WF5ESr}Xe02Z>dc#`PJ>X>dOgrx=9=`qY^;@_9)pu-+sG+hOGG~_RjVVA; ze}6wsU1%+Ih$yPoO#OSQ_(C0!wVGHF&vzL;4=z;FE=a#Un(LnQkJ-Ezri@DmMg=ar z4z{Fgay3&fB+E~9JC!y`eO0IgSAS}>rQEJK1P*FScDj3foN4#%GC0Iy>TvrJvyx~! zj5H&XTeON#zye$QD_;qP@bEl3N6yP8~4tJ+JoS{Tu=Y@$0lUqP6v^E@Q3D3b^NyL;gJ@5l=|60K23{! zWsY`Iw@_U07gvWt8>uz%bQ3}rW*GFZ9aQG8+?Jza%flResavKIXedP?`SZ{BBIl#w2LW->*`jDP40 zlpTDAP+MOXNS~b|5~h)>>C~Xg%FV!G+MFdY3ZrEu@kou8`V*=$Y9Tvnfrf|vjI+NP zP>8N>Eq7_}s}npGaf`0X^fgNExHVj)T6IEwRm$_b!$1N^r?B*Tdjne z_~d=ET|8C#s)?NK4_@o$vWMU?WT1+%wY#t#g=jE3tLzh1igtgz10D86Ph}2s>+Y1!&iE({oi2Z27aI~0Q0G?z%N3P0dHC9oP z+JcgP7+k<0x`v>tB&N#aEVgC7eco=%=Y!Vu@l|~Douo9+gPdAecjz#dX%v;4NMavNm0vG~u0?#mk!v2*qC?e0Cuh#(15(G2-nbu%)p?)f2flY?vKB zqGxQ+4=t~(wm#b}fgj2nkW;21L&XD#0Y+=88$o5v#7jx@kEoAQ(t2h`0~*pz$!db! zyGa=QC!nas$rrrxv?!4}HBI8%V^ebk*fAK^up$Gj##GJs5P(cU#?nZ)BP)VHURH$A z!~0bS32@;&kg+~NB{WU`i%J)sN+*v*S6V#zt7C`>=1bP!GZLe-%u-Bajc#=o>nsXi zOaqe2o?%z2wS36h^MU2bOBa^+zE=!uHh&OQRB;{CjCz{Yv0sVUJ%N8o+g%<-e%}Dm zQbL8sK1d4GCIoAsGQ zz^*(oOGOb&1nquUuKgE2w;K06q22K*kC3)N_=4ze&4@pV_(#)I$(5ATzG|}EschUI zhEzoLiir6VMDm*jqTKPyqld$~vV(+J;1KK)sxRQX>})+05dM&*G-jgyP&Qd`I14bK ziHRQkp{)J+xr9>zA$7q%?t6`E90Gz%tW$KTWB{kU@reI)Z;5+`Px^d0NneOUok^G0 zDxn{YT7WdXV4uzh1e!mLq)t)=ki9^vVshsWMrh>pu;D zra&mfzdU5WjwUTWob+SkVin=7rOc~4?YPy_tfHcs5982~X3le#7r^&_K*u>zFdYTe zb?tCQllIDgrtj64>_pr{)=`Mfk{ThSX-?pSyl!hKeYGX;8C#X*CdA~ja&~f2#igm= zt>!XF9(~tDQL9Q}rqO*yM#dtk+W1@%`^(Zc?Miodxq z6)*;d4obrV&=hTy+~@}ch8Ux-?@m|iR=k2KZjP7JJ+vdMca9T>-4k8;vRU7e?U+PP zle#2I-IUiVDbf5E6vT)7a}6tVRQ1K~G97stw|hq~cF*r)Sm+^januR?h(82iiCJo_ zv@%LES-qC)RdoUM{8J_F!qZ5|Qys>L4`y55%ahZjeagD-rkZkXd))kqD-87Jd^@|c zGyc1VOuNT3PJVe{(piSeo^A1BP`A)Q3d@ zzc0R$-`&|L%LVo2Ne>5Zm4Nxh-CPVJ4t1>-aU-jLrIB;w0HIS$eX$ROruK#$n##j*BY&9 zYbbBfWjSK~9NB1(#Ly|tzCoc*cTn6e6ZuiZN1$j1@$YX*L#qT)~)TK?%8GF+`w>PmBz=BkJAT#ccqXmaX& z?0m7&$agJV4MeBIY0(<4QXQER2J~34TA6A^f_*%lW~Fv>uFSNO$sY_6-L~%tj@KMxBbVL7U>(-+ zxWgahT*K(;w*A>nj>~qhQJ|ycji6Wu{ov4uIG>8Aw@Tc>vVGSL+7pbA3@B4xTyE}@ zCa5`&Y`G{O+UwF%fPm-KIb{gMMT{v=?4ITHV@>Q%gHTpWEik;kZ^D;-XA+i@SCBXj zHn+$AsB|v*3tDl%?Dr;mRLmY@*P^L7?XlR=ICz-k zuGJZLkdP1a>tJT?2|HQY6p;h!Pcnl$9Ww2h9~Woq7suvjI*tX{8UsE2^xw+NF^6KJ zZ37%z{l5!9nB8Vo(<{#Ub-RL=HIDWjZ9cUAm@HS#=`)DQMxLpWpb0bEn!!mE<`#Mr zWcX&aT?S729lwHYpgj2#o_#fBiT{=IpI0HX29jBv=%yZ+j9ndd=vLxUACa;DP<*UBf~;iInEpyx!dLMit~U2X3VCm&EH+Fwv{D|f z2g9r4Z*;3}-*MH7=}Y&bTJ%3e)zIO?xAc<~rJEQG69(VG4E+sKLNL-k5uJJd_GzNa z9$rQ(Du=bT<_@Wk*Q2L%*E-P5XZa(eiL7^ccJSH!Q zV^<^Y7oo$WvogrR{fgNG_s5ki5nq4`w+sLYSmn#znxz?Cqu7wG_#w-_ z8vYpheGx&q!%XGXfOW77UH*c8@XS(uNz|f;)!8_mNyROK}Ex`h7~hlSW!g=f}WSZE0Pdst>r&@xrR6eE5Y_hy1@@ z0FOQGgdgsD`XU~Tc`F9QIDIs_S9*|yVPU5qBtVF!8tydVybe3?A7Efc#?XZTo3sn% zpC;6I_m|UFtmYWp7b^7z4h1Hv1S?~-|ntae8E)UisQ)7`~-3S;NCzF=n)ID0-z;|tg&F-M54D>K?TMAMg|^_ zyd!ObN>GcJTtlvAc*rnVm#@(z<~Z+2=D;grc%<9E@49;ZQL>G*RwXq=@;^od2l5+U ze?`l+U-0?Tnl=w9vvUxXj%eVn>yF-&^ld5SZxn4ed{K!v<<*l!SJ6jckY$j&6h(Zn zu+OwLm)8xk!`)kSWU`)UKjOBT%|}oiDLoI)<#|UyFtPaNS_NwSn=OMo5_=8^TRKVk zv18uD`Dm894}Gb_`^kWzHDg>z9Jg|Yl{P|7Pft&j$b9?Od!jIPhBPm?dw$JX;1!8C zZ84TI)o5h9m@;JJR^xnT8@D1oHCfsa5LIFW5YR?IDmvoYF))D^}LqNUblWd z;0@|Gi^_36#r*JAxWDuE^W0J6lJ~6iIx_=x)CTpULr#L%Q_{3*OLni{Q0B1@92}68 zm&DyFcAd}rJYA@wZSh!Q6{X!^kQlE&?WXy|e;!yaSDX~P6Am(n7hMfNkJoesKM|9F zm{`rl`bY-?%xjk1R-~GcNqIW^+0evUH3teY5F~V2i%b8o5D)DZDx!*fiAs(v#HFHO zP%RlA12Lz?+IqZ0pT=EIDo35T7{QiF1Q+(yBk{Qmm%0ulXK^RBl%1Z45xL@%inpuM zB32FjIBG-X>ZSDtXzavf5g1gwzMdaacRC43ccoa^!C+FyK~=Vh8>Q}EKP5L8sbEa$h+Lsjx0UJi?=7(X!5!xC6RpLm5>L46&G z)^o}zJUJJ)tn5T-d*ZX(!u;Z1S*OhfxB zLg$w|y<~J%H2m~$9Zc71PQc{$we!86NJ2 z3~;+$__q^3ay||1>!Tr?kjOwD!!gTbu9kkL3R-*++*=<~+n2O2aoSWd>)UF^e|RcW z=;TH|gIQpnZfR(jE}9+*fwyrcQAG$Blir`A5>I4R#nRf$UXR`l;x1?${JmSaWha5= zZkfJ7(s!<179hcm{6EO>f8Q2~?7|wp+MPv~eL{Fh!sYzg&%~4RJo9R+`JpYnYt9XZ z7V>0_Mf~^$pp^A^dLGKT-65h`pna>LORH!~(cdZq*-aO*;Y%dd`yxBSi9Tl!hY~#)OyYWa=p8>Cv9< z*Ajh0>vZ}|4aA(`+}&6P+BA!A{;g=O|u@6s33jC<}Z^0 ze(;j~M3R{Q@8Z0lK}AATSs_aI-_ZV_N&Ux-=7#89+=40*FZw?x{GYM#cYL1CfLQDQ zy7@l`IdITu@g9QlbpM~RpYMtfBQ(UN{~vYF|1TmRCf?|OP~!h3^8HCZ6pE(TlK-ns zrU|jr`WJ=jRu)+!gY(b!4lLii*lFE)K0$g=S}_0hEgUxtJdO5T1r1a9dTAQXdsX zpNV=v@JF;d5vXKqIT2-pK^}F_P1p%9sV^ZfPrH)zzaKRf;-BQi=BxWPJuNJEXNnEC zQM7#3zoW_%mVau@2SpiwN=3>C0U0Ivj{4~860AK>_+E@K zb|&!bH>G^H+F5|ye&=zb0z96uRx`a(e(H#J2veY?r2IZ}hmF3p_t&pc!}0K-q>~Pl z2ZOv?a0h7c7gU>J{+`yyWGfgnqqV@g9laJfkoW5OU z4|Z)Ro`4VE^UDhegR1?t^A%E7JHh`F9E`h3iRR9WHOs6kHz-<}%G%;`LGuh9z1;kz z%mHqzU0-+ctpTn7Qfn=1BXlccZMb=Wj)3(bqP6&%(XTCjQgb+KtiZRz)q;#GKl#-nsQUwcHeLur zWuiCO7^?^M4HFa7DJJ$dG|*uFE;|-P3GdE4MKw4QQj*R~2Z8Oec%TwBb9gN;&-Ls$ zQH0)0jj#M&P=FkEMdL-Bpk~*6c^HZm6C&-%xDs=uE&_PDnc>34(X>IVN1$V?>hIqg zAoML)mPs0+K88g(i3(K9&a$fni!+Z73-ol- zOEIHc*=6g$ICvT_I-xMHh;*{-3YB{xLFoVF>6h;6?{SlPCnf)@hX)j!am&S2;Tor+ zh?Y$r9tCdyJQDM_Tj5bxf%57_f}dmZw06_8a<@y3sTRgJ*=X}FiudRor^U9yA&e@;C&B=FBS&rR?nL745`h06AnJER}Ih!2~=1sKsc z#{WIy(B~$!OscO16)R_8`g~)IgoyuxA!Ufcp=;h;kJ6G}G=LEpTb?U1i4nH~U*TrN zT!N9%hf}m%N%#(Vp(AJt*5wLF0n$6^op0HXhdypHOh!7lKS&(sZ}BLB7)O7I%35O{>?JH=z~q zMFI~GlV6dvoGE+50OH_nb#gks@A9XxE)36%K9tsqtqmA*bU!0*?s4%&ObRJT+l?uV zb0=^K4N{Vk(SLUi)UtNX%~3J|4!&ib9R%TutHmv*NzOfP_`Z9ZNGlI5dm1p;1*A!j zu8AJ-xr5@z>ET`V!XIvDf9RV>fp1JzVNm-~Hr-RXCi`9wkmz|aXdoaM;VJb!b4aTXP6$cwJjs53R(AJ1H@F@!5;|FGfV z#YZ8Z`nyu6bqn}-ZO=pY(Q9-+0y9y`wl8Cvw83ETAT`A|a=74_ocrF@1!hi~>? z-Qz*AsSW8bVY+ttHlx=eQCr3fakOkvdV8)Np_@G=%#;0I?172&4wJ2ITca!Ew1oB* z<-}Q~R8}~+Kz8Kw09(;GRZIB6vGpVp-GdRV&N0W$wNggRT{YaTO<{9_ZDFa7Htx@& zBOQqKlDB^c@cg}@ux)-X`b)|+HdIxMe8eI>(Hq8%y$(uJ{PPKh9j>Kr8p3Ew43_4+ zN*mPdfN?LM+BJD5K`=2H9%%hEV|=}@GukZX)6wYg+mCBhgO?qtN|?;&TIzpos$V|% zB7acvNE_yL$T>J+J2Qs#W8fFpCF08qsA_%T&HJi>I=C7eugnG*PUvr}rXNZmh?Q|4 zQGD6RwbqR<;$0-XG?N=Z0dl4HW5A!G5$*qvN1jjbe-3>V4M z_EWHel+nH$U-k=vs*H)b=sxxm3TRpD*KIgfgw|;-NpG@xjI;k#V(ye zd!$KSrn6pFdd%1;ap|GEm^YWR+LX${6Dgt+1<5v{;O1|(Z*2h|Ux>YK$F^ml%EAu+d?gvq{@R60a4^n^_!cS$-yceOD)+NAXDhI|F6~s73v= zz{~IR7xHayYbKB{6>QEXBr_d^fGhyg=A~A3UNw2Jb@eehqGW?eVH>+jjS$XM#~g5? zr_B(n&z6z$0lpUXBzUZIor*3ahT3*?XDTR<$!MIIZbdE=1)4!3f(!% z-YXOzw70mQE&h(5OU>z0Q@*>_M-qxxZhH}$Y~FW}GC7|8$UpilqC@_t}> z?}(;%da_)V5K>IgEbN+G-a0h~GR{si`Ab7}s1ftfpDTM{GZCtS%;OnRp>uh_=nj{a z2kRGqU|LDLN%*BgxEIk|(_?w^0$v^p=kFIc=_Av8X`)CUIW5k7-lT?^!w9wj-H8TD z^WtVA_Y*QgH5M+{@1a<{2mOUaM+Kk*Hft6SRlB;Tr_nx_D}!pJ0+gUfmxln}qvDir zVB6=0PX@l;m#?dqEn|t+|Jg$}KGJy3)7AYj)_}T+qAe5j*|?}FVvgg}jq3LkwN49e zw3W{xkO3`*gE^ME2C9bv*~1|H{cmj()91AjlKz0nH|+ z24&jvhfU3fY<~5D-*j>L&hE>*r6kaAT!dne|5nR77&Tjn7W`t#7G6Sj43SETUud}F@?LW{z(;Z4?-cv-dDWGS?o{CA zvk9OhC?x%{{znBC1?Cu0uB1M#Ny#~(0ds)J&hm2JMXnh2vYT`FfK~%h`JF!{N3md)^xU=(lW$IND4&k*6-kM$wx z2fn?~+vtWS&sf!>5$&oWrCQJ+(0U|hN_jyn|Hu-}}5oXEV3 zeA77mJIZF)4-Yp5e$6`ITIsUMY!0o@7x@;V5Y+l9ykYm#BlSFEwSGI-rp=4K%B`Ol z^HFO!TuoYGTM}}Q2;`8K$nqPAtYn>5Nz|koS`?q>vE{0>t*WEdb@zk?Ahi`ZIgv<@ zn4;+*Y`Pr}z4g?D-~yh1I$B%hOnBz(T^H(OOTY2MvT{y;TJZj?+A#@b=`z>bkFkri zO?Cc}I;(G^Te@o{lMM6FHE_cGQexx6cw@Ix5XG5I_C##m)rsGwplSz|O7Gr8kkR6E zYi|(b)^>pyXTk8v0&^yp9y$&5eCubK(hF0QBEmEg_r5wdnEy##C66u zpO$2)0$jyT3DK6Hg?gVQnHzW323L`A(_hxluU8+>T2EV-TseAmvqMfjJNCWC_cN~f z*16a3AGM=ruRD`a;+sCcM7F-29>_w4`HC3i5?o>=x05Th7jI5KaaY9AZ8#6BF@1$6 z@`L(7nIU*r#rFvAE`$_x$s4lQUP%;*o+eT+ zh>hH#EgL;N?pw~Ja4qHe8;Q2Vyj~yY8Q%-QnrJLDoET;`se#odamryL$o0J)vAqV^ z6}w%w1>0m&nW?2;f32%uXGAd0mqrjxzk7nhz-E_t&JX|AYm`bkJ3d0j`AGkw>0{>G zRRZFz*6d^(u#M$LOqUj|@G0{&;Vmf}J0mfG4DURuhLp$(hKLN+6Pyn|l+|O7Gcq}J zdcoC1Xw+ivF`H0xt=q;MLssdHd%UwHbFbf-d8p2t2Gw5J&t$>{bNGx>+C}mOGwe7b z<}>q%mZ8ra*Yxi8fgG4;{1QBtU&|MH&N%T_!*vc(o`=sgtdBG7S7o{2Q$u}GV7p$KOx zMTARKaz9!Pi_P8lQ%A4}xZf72>+^!2*W)sRszfo=cB-JLvfN32B#U+|l$g>ai9N3Qc-d21#pGUn7U?N z>!`%ZnK!UrB)I;B^f)96_(<50$POe(gg$*5G_~Bfq_0?OYN`rD%4Cu#9M>aJY4D=X zgg66r;-q&TJD6*Y&&()8@gCQ#noFmk-E|kziP}{JJg2X(Vw0|inJPdUWX20JKpXH$ zRVl~Uc7WFP=7}Y&N9RvVEc(Rhu2w~I>pHgtPN|NJc+`=!2X+S{ zc14CZ&m^R@NhJy-54o+gv!jn59-cpDI5g^9Dnt%l%5(XY^OD(@UBZ;@Fo*r|5sfs$ zv&Z$@u~~=};%~3?G2-GNYCK+c^p8X~agpyGGv946RzomH>zT@eRu}VYgXX}`my@>D zs_f^209EfcujbM9dPx_HpV);-n-HMdSbmUVSu$gytU@BW{jrpL`@Z^NRd?L|eBp6k zsu1c(usiDx1~$39G^S)vviu19!V0NQ!&qz*8su$Nhn_vOeqvUnq_+E&aR#b<+wl_* z44UoZPF5zB|Mjox3$lR}o!==D2OZ!!x1-f*jY}86l%Xa<%!ZVyrT0 zghC1RAQg||T5Xkn%7tOBPZOq~FxWz{MOydlKL2)bFwH=Gxb%^f%<7Lz^Ff0ergfWE z>7iyTW>jJls#>hd`Wm(PTfPZ>yz4(NeTbm{hoK$-8zS#Qk#byRBPx)BkS=LcK9lxk z+ctR}7%a6MDqwWfrrzvrFb_s+he#DMSd(*X!{<72`CWrjlN+5A*y(v21gAUvKBYTo zQ93Uxx?jElVh1(j;;Us~Vh*y6dPY<~86=kQ2+w#{byj9Z#^`_Qb!+RwX}#f6EXmO7CfRND$bn=;nKon|3AcJUnVfRE(|G*9VeE7^}JA zo;M&~@G=5d!bco4^PR7{{JN)=o}e1%7y~wO(8FNk3wm$H{uHomq?z8VnBtR}osLd9 zjL|lLK3(mx&VQMZjjQ$P|37 z9WtEDsV0@aXu;w<$8ea%Y@jl{`LhIfS;3$Kk3N9VoYFRWi9BE%XK;3T0!YI=MKS_h ziGqDOf(gwAWw7WtT;)CSqLIP~g+cGnO{H{6Sf zJFC%@IQg0Swz5C{TEb}Tv<}U(KUX711jwygusez8G!`0ZbZj_~)1_cMcE@Ia@;O`) z>5X1oHqt(yx|&|FWQ(;*HEfLGFnr=TZ>~@TmCjap-Vl|&n=Bi+zkzE-SDfptND1Y< zEsZM`nD?yA7Zk){_>b|-O9E8gformp1ooMl(PN`2%yXWRywU=MuR}|fjhHJYmMeMl zj8cqsHcRST{a*B$Sr3{7M~UrWAYbCg>;|9sbP$Da-`%N06#!?qP_@D+HF}4~bd|^5 zdy3@Idtc6$DOEb|PT-0*pw-+jCH1UKVIG&wbljm39i)3z7uMU?Qq_pZqRkU+#)yj^ zUtr9REO`5NweOW(vbnbH#i<4T=w&IZg{wAGV|OD^!w)CIurTbI?iym#`@7%4+QbRgZRi@)w{%f zuaBp6tf+Rogt9<0QGrF|ZDNgG*cOSBZ^tHx+_ zH~%|+O+#~i>10a^EehmfAKd72nYX62GconmX_Dxib7l4&9lwtoU0iBD2OI~Yfy0!O zPCS$iZX&HypPJYX^K{5xw#K%2INnad?s)Sp(QoB^MWi@-l$L5bbRn!~UdeGfSA};l zR*-(&X@=o;T;2YKHhSk7r)K%i1Jr5oKpn#pxi^7a0y$yB)T0gl zZ&U-LB?68F&ZJE$t7v-AYilGQ;fx5)fuO)VXrx5+aJ>tGX5Oqi6;xr8)v9xY2x?w5 zZ%M2H0%Bhw#PE04SvV+`eu{zHtu7X$D_WAt6bPM>`NeL z$P6mywY28~T+(2v6!TUfG;c>7z|hcmz8^(%7Bltr?1MSy&nE&sc2!l7k6e zh2^+m)(h9doO~FnxoyPt%4L{)y4~^XQVpfXygBkNGvyP7)sXjX2jatW+SzVe#uK)* zaZ#2TKB}nDNHzoKs(YF01-MH)Z}$XkVmR2%8fEoTs1uA%|MQJdBfEHgICEA3JUfw4 z?t4c*?x2+re=xTBic;ZPxYqVLgAT6Mlfve_goW&U{JzJ?&$o%dzI1Hr{UGtD zJ&w`(O6|_Ly&JtHow{FDs>^2Hr0cVQ!c%rA0qJbe65Y1xzCR3$6xl zeY^rs=z?9*YFji>`-P7AbVXEs zzvAR}z0T>H^3LIih|399vyOn@gfH#Yu0uQKkr*n~`k?%+FCsD#?jgVjl79Ak{tIVu z#z1y5yGkafcJSIu8OmBBKYlC%_{^>2Ja&94O3xK| z=P4Iog=rI~Yi-H%_z(p30iMXt0--6nH7D9)6}bv>)#?r8SWU&AYr2-wyY`Ou>cH*@ zQ(mfe3l^!L!p1OU*FGYBTfWNAa2EB&S2oV0TfV6I8;zX_s`I%*k(|x2zvPUF;zf6{ zt6A|GLC1d4?|=GBNZz322Zmnfh_E!M@Tvlpc^?`1=u5eD)D?31%kF8PzZTe}QG1I` z%oMud8ozzL&ENGl9gc4;8yW-{8qb!4)&z5!P{;>dl*sjWkxFJww4=$JCqiRs*hdDn z+K-2hJXMF3R&k}2of2kk6_pf=4hPfpoa3Uvu7i)Ug*Nda25^Id)(}kgJ@eCX4qX%5 zb9#D1f#g@7ty9OkfkQzw4CBovF6`Em&xgrVR!r2dj;WLOp^+7eYB=)v6wJZ`3CsKI zbe%71;vW23FkxTWmKN&lWB3^|EdqzPc#e&`_IP*gPm?KleG`mX*X~Z8kCLj`Lf?OO zEBtk*)Wp*02r|bFkY1ZevBd~0PDK;37(Yb414i@Y8o=#~$zm@(UP2uvqf=fx2ll0P z;832oY=VQwE$$59Wa92sqmpMk0g3L%H>p)ao&^(q*E^g3bM<%izlJ^#Acms^4w$+7 z4z~p+PB(_D78&I)z0vK<4S$_c+-b!qQOx_@a5`gjY$6|5lv&`v3ZMGAjcLB5W2tsC zMX9D!<@%+;t*l3`ih%fb7w=`dZT0f%^&EqE6JpHAqkYYlnY=$_Q6Xuuy!e#dJoaH? zQ4XgiM9RHW%5mA{sDGC`?I-V3eoaZx>vl$AIofy&WEB0p3`pFh$6jAJnDy0NFx_-K zi(iYO?V^Vd@!@XSb~guBDyej#IF8iTC&QtODBZBog1+cJKB37uiovo}E(myX7dR)yu->L&GwV|etZI=;vm`Q~ zNUW!*k{c!utv9~A|9%#M0&*59tIJfGx1RgLDo%7rclB}=ta+x@{-cFL63ip}2r9ft z{?xMZ*;W5%)qMS&%VTL|k#f|F*v_8`wvD+bd^q+b+_wM;@+er_%;M{t{=5d&WFCm? znuq`_^s7BB8z>Ou{OZH9Mb9Gc8_uC)VU zT4J474_@hZYcKgtBvqUD#ohXYQz~DMYp6H%_LKVf*BW8n@OCjvpRM}NB;DzO@r6rg zu=EH*i^+gJ%bx&W;*RNXdxMC-haI3!0Z*=s1%}huFku6urg@X{ImRdOUVypl3ASz~1@{?v6nqwqU{ zaA`Yn1etioEZjfXV#BQytMt8u%zSY%`}46AAdI!IWog{!b-tU;r*ojzJ+HOdm~MP*^~jUgU$XWxbo{IWj_LUY%FK^4=_UXQn8L^e z(DrI)Rk*|T-w7kPcDbuD<5XGA%*5WZq4`H!2@qP0*<_0<1bj&2n{|^tDVv)J>O_fF zR1sK}hOs$3U|s!XCwl{h-7NDYeh!g5n$u>eD9uVW-c`|x9=tDW+Z1gLUhBkhU8TdO zb%~A3Gbk|aq)?ODc3#+wDfh{Bet3(R(3=MKOD5T0uY_L*?OjtJv^H*6Pk>Y4%~B`Q6~i zYWb?WpX!&msJ30clCcCmJfb<2SBjYay95|phAF@VvxW<|fbF>Xf*eP=9%Jk6pYz6b zk20C5ec=Z4WsZ$f0ZZVRFW@1^cBy$k>p1;RcBgkJtlpbeL;|@&B>n!_VJUw0Ct+2> z(|W59j`vWBJMLxS=p10mG^hf&pY0|pP&VhXkRJ%SL9cD;+>VxpjDN`;SlADYzo5bw0cuz&?DB$ zwK&)ga~YnP=|9L&H=oNfh;C~h4>hA{L_x=%JR~S#KSn8e*mp8j)<4v#7MxzyL&Q1H zE*y($3~OT-%vZs;2DfPTD!tUbN^ajq+`dKa?}a`WWy8kJu|G&(17OJ(UQXPSZhq!v zEaWR|fG^wW#u|OIufs&Ep!Iv>6f6hleVxT}I$=MAq)tyu48yF0!w+ z@1s8bllvtIj$4WXTo@;R@$Q=3-&8brF4LLvO!Da!MuzRoUEdz>OEhb#j*P~r9?;Jo zDSC9vq*jigTBq#Yw3{8ZG18BtLE2dq-v1H2Fv1VUGFz`? z_wZe|NzdjoABYc|R^Mb-dZ;64Fh}<4+ZEWB|H4=!B;X?Um={*SFHy={G;FE#DqAI-bwr z#xnwkx5<2x?_3?Z<2eV_Jb<}|Z>#Z&tub_(yqZGEZFKZcW=zahrEU9c%PXWK`<6Ew z6~FAH8Ri#ucBl?-FTQK!Oq``J@NPFJAKf;2XfW2hB(o>?F39 zPGhx5!+U3wz}x951mQd*-=BNuPNRi(_N_;Zz>JWK>zmi(txkH1?)^=zo%B{_b3y%)gdvdb}=ty{8? zYf&J4L!-iT5ImGzuUTcSu^i11E_AB#XN@2nv@ahdV}gK z@)T6XG;j8^ud1539u3BDsEhK%cFPxB9D})i<-gX)?0j@pEzi21pzt8f1fGnKdX1G= z-TGjbbF2qr96ddYxmV4v8w*azK{W8lmDXG3A^f}TF2aaue%|OB`g%oy{7ALVVqkM9pd`LH^P@{5&#^ zX5(C4QFYrHGAeLM&*JFRb`#Mk$gFaAf@$t8$%@UNs~0>&)LiCXPj*NeCHHPC^r}4c z@0j;Xq~PBD-(T}If7=i`eJE>4&to<9wRUdL_m{UXy-H+K#aI;o7klp=)MV5Ck17a) zh*Uw4-a8KCHhmFQ*W^tM(LuSC zz>-#(lATpZ@^xC9_S5II)y>WE%&pf)VXdZp;-z;AeNFP;^KS&n^A9UL`=L(Jr&>lg zo^)6o*EcrFy0aH-sWoc3DlAJ&k(K=@ax6e{Bf6ydjN|w@D%H`rPl*3#Q=wY)qP}oQ z=qHJt>(h5v`UfuuhzO-AHB_+IIX){i7G~d$Od3x?s?|iwh)HD=MCr>|$K{C?V&0V;HB7Xk zEm1oO!HLLY+CnDUC1x4p4e@y#$Q6#77wom{1DFz8_z{1kN{n4zMVk)#M zEO?(HmQ1y&U)i3kEh15nQnjhtv2Jf(-?({MNX(>J!ngJ1^3F|!S_`GJ#cQQiDes1j zxD0mAss zG^@}1-h>;MKV$)=Fg^X~Zr`T&WU)KREdxeT(i)eFJ?$L#z}7nRTxOL`jY!Dy>C(>d zhJ=CQT2Dv=Oyrzvtwvr{Qw7#~0J~e*C!SuMXiiA9Dzfemo6cEO?`4~PLhXT6lYb>8 z{!=eji?L94;knPGBD-xJC9H3xl2!%kwmsUMe!ROC%M8~|rBGb6=q-#H_7`|2Js5te z_;nfa2<#1qgzkZrzUc{ommqV8Q^r)DG6SFFO9^P= zvB8d>BDRN63NX(qt0FGDCljXyQM+@fmya+T7xkT;PG+o1qAvR{g^3S}x%I}iKO7K9 z?x{D1PnV77st_+uhZ};XDrLT|_4G2|%wNq8!xncsT|Z8(TA3OAF#7y>^DX=Ci*A@An>KTjx9R7H$T1S*tOz7| zWBt~k{%2&Y&y#~ohLl>7kvi2yxT@1?(m2yO#)giVS&4;K=SeQ-MAA$#g`TN~k z{TkW5+q1oCCO`L^sE?csw-7r(+WuSMrU6ZY-&TP>h|fc9RqVMuL4A z{b8}(I(YE{V;-(N8@18FkyMF=(5Ber``;G`@Y!Hf&wYGK%#Z4*7f@f5RM@Jv)^|~oY+8tht>%uL*9>kxE4H6J%{Uv$i;f6bczztdw$U}dRPX;d+Wz3fOs#S1 z0RfR{cc99-mspu`b}tn>xH#9o&EO&=t`ScF^Wm~|nkllJ5zJvt9xikFdHj;vYhNtk zoJB1XB!CG_zRYY637ZBTg&jdux02mV$62q_*!*4K4;-dvmq~g(rbeCC3{#h0yIs0D z-Ol}`KXcd9f?JbdUUgs09|-ac+Me9K=wOWMFa^*S%8q1XZ+by~?4jfJ(&h#4&3W@x z#Dsm)>E(r6bCue;G9J@Z%Rf({OmS7A=D_)s2M+ggneEO!m-%R2wc1j!#RZcdf5(o= z(~1wsNyyBB-O^d1dm8LwFpSNeVkJE!GncgZOaClp(B8iEJ?WG#*0I$A15s&IZfB6`Y%ur-exWSG=!`Jfm< z$y@~;i7jnDW>JCFjjS2HY{fcBo8oc&j4yn{;7B{uD&RdtLXdp!=#_y1nVos9Dwks73|2oiH!T8xZ!_{Qe)f>fJoxw6{*9t{^3#C;xuEl(>Pz6cx-r z@yFA^D{A!DF*>zYOdZ+&eAvHbhmbB>f~L#n7eo9{{UWb#JZz3Sy&x5%x`Tz@a#jJB zgcxbv9UQgaB>vAkGIV|z4{UofNoxNj6!@DTAn2Iw4-&74y}>L)M?p%SOoUD*@Z|0P zBTo`iYHvO4Xz;uAEzbmQomf5?GxkdWB;Mkf{Z)^~jsJ}1?{SqO!gU`My!!;HRzBYz zl|(J>+EHmWly)@o@u^dwf)|id@G;Hr;#f_Ff|iz-OdF-1%x`82&!~|DQSiMTJHs zhCHRxwDStdboyOXoe{^z2~YiAHsuZAm&6*UdOevrh;4m6ahpydaKv zz>i`uMFwKQpFsJds6-in8}MQ%1+7V87`a#c{|7fL=x23cbl#lED zUzxcZ%5~uy@WpnD`sFgEd_sa?=uOkv;wUDwZU~s5-VaY>9qFu^y?3Jgx?BYEX^klmZ_wzcBh<)J z!sx7(=8c`v&rB$njWY1D^9rrqC1y|0;E2g(TuA$PH^*DAfNLt9si!NRxGxdJkkA{S zV)l7)X^D^cXji2048;jAf-ob&rHC_^FC;IQlS9$lczK2uwjdh2$-NzbL$t6Bj{cegqnI4zAV(rkCc=5 z!0f{;w9=IN*s!tTll(xh8QD2g<6tu5srr}jke15C+=!)#Qlz02)l7k*==MtLo-8p@ zCmNb@Dka~#%dCvqHX>Hg+win#@#`Ji9K~QK(*ydLpHruc`I}y5y@^wBBSqKq8e8(h z4|{f-Gsa?Wc?xiMX%-u5G_}w{$~OE&-;J3&cBMn8Y4GM3?l`Ool3dwie#b|jDIHgo z>X`D^u8Ey^cQ(H+ji+6@WIBNACiILzI>>`RsyMIyQ%Fja7qB3E{Bp{8kPaUHt*#)U zR3de}cKc?bLDQo|kA`3V%72xGh%d%#vGLwKL)yp5gMtV7u8E9#)!SJT<)(&-9`sK? z=cp%fy8KAj2)*=4_io@`_7|Iot@=2~o10^oWP7?qtaOt658Bi+E6xrqPmAXT`FQ{I zH-XF;*1m)?9r4EJEC_0r?pDF)gFAOm*6?>7YF%SViRbM4jv)Gqmg&=txi*sT7=+u} zx+CL1H<<~|#W-6zipYLVFl2vPe>^?>a)MgtEIttjdPM z&I?}UP{rp6pL7x7tFLmFDZ>~c`D zK8Xh8aV`6*IBQ7dv)%k3LuLxe70mpSU{6{-u1zf+alvRElGRL2foYp5aTROrmDT1D ztH0Ry1tHtM4BT4V0(`M-iGSj`;zTF;;b{i=PLZ?c$4V9O{25iECUM+Jl7Z{9=ZO** z_Rcmm$V|A}U}TPxcCx@3IbQ_2kZIh;cuk}9#{F^kr`qSc$4kMBu}eNV7qpp6o_ZsZ z8wu7{p|w2KSf`wA9UeX6-R(oucMCHtbjTRc6k2{|ODO-i+WVWauA_B`X2^xGZCX6c zHL-)XHnY8e@n){~N$aG*N^E~nz1ae{uF~6a9*-pxdNl3z@*^JUXhBi?8mVJ3)(uGW zg%#iKURcj=R}MIU>~!gMZhoksOAn`^=a}B=_~NGqc-d_+YJ)gfu=0WpKxWw%i-B?Uxm;WPh6S*&8Gx zPp~K0;gp>|erHUlUBd_EUU#;J{T^A7hM04=Rstll*@RUi+mq3?M-P)Gr$6~ zLRAV%eh75SxF~UVe;W^*K^5$IN!Wl|2V*(rR9Ka*VWY7+wV^plgqr&QUolPbH^ba0rY=e0)SDaws-lR&&`wR7zDZ7W$ zmf$9f=A4DW;VLs{k5%2~j|LfssZ^phDv#TpW1>4K+Z6+0f0?HRm06J+vC<(cA+Yy? z5D~^|2w|<`wlDbo^~LMyC1g(^exH~SnmO@!+>2AIjD?OObL58kweI^!;BIU*FEfBd z@ydh(SFv}c2tsp!dpl*RSEt-&xDVFHk{%~;D9?Y5U}k2P=g=u;v&ih3mktbMLhqHv zD-8Kvs!rg1;;v7x@i4JtcOWESl}u_dyM*e6L^OkP@KBEOYdGBJ)RkQyQ9S9j-PrUw zUBUyNlb?S&EfDaR20OdbV0pQ@oxqM9E?it(__J0FaJ5}}F{J8oim*M;^5F)v6S1pu zZJ8$gacZ?IjDp*#dMlAfkfU=u(|cv%{Ni*weGIsH=EQmFTQVbX;Z_$>?6nKADrrjvo2V)$Yf}A6OZp^Z-`X4+AK$s+`02uTRWbKl~qM4#BDl;QIUy(;o;%t1SPvC0j3%TrhhF7fF}k1 zk31=}astAYg~^zs(;5)VJ&R0u7hj^>AkCvt7jnV)mnxy7qY-%N8>(phQ1Vcm5g9M+ zJ6!k;x%I;6PpuD3@8dFm5|*`64S^q6ab(h(B;Y`4GAc1N{Sh53qwqSrT46A-J)ELx zOk&iG2ajDj%c*f;arEsR8HEtm=Z!`(YaJ6OYYVWs!n1L zl&B@zJHR^nMl4pf2?)JZ?iQg^V#iRgEc!|ai<~Z+tA-ki?oKdk`pdxOGF z+E*i-12h;au}Sp+ZPYYg0t@`WiE{MSmj(mSpvr>Pau(V=1q9*|Dv?b_3Zj=1vjYt> zsEgl3_s2*LfS%8~7NhygIPpqAga1zrHQj^LC%|a{7MX2cXj2CC|I7T2$SpOx%ybhnoIw99z)1OEv=z6I=D^pkJzG5G3XqEv%v8T1etorxB4vXm0m>7h+OPn zYL2i&rR7CCBjuwvdYMYqpG}Q8|Mm>CO!4$KEI(K5{)~z}7oA-}pNcGC-hx<6u+VxB zyaF)n#$Mk5IytgHF*fMyEp)ExBm=k#xty7;h{ivGK=JLA@VjUP1M&|{J-km^5nbcm z0E#IdP;jCTFS9wm z=vpt{CO}In`s{c)b8)scs242dyb^r|n5p)IaQm4iL!A->4})rOtk9C5uao#zd^{<* z?3t|H+hjDVWpBO0PQENaT6}v)f4B$ir|zKjJEOgLLL58F2u24oa+@w3@mf zA}!1S+bXJ4s9hK<@pCrlMZi3;4V*rKQ#Wx)O}qz}&7voTc{$A~(movkX_Sw57js{< zg*AD+7Ja_RYusdzB4i7B*QS|x%T&6#_WgLo4e@Qj0C#ia?fp5QbT|PI@tB5&hRiym z>G?f&7r0U{H>+p9_)dE)Q`a7%pk`-3cfRkq!xuyog%Kb;9n9RpT$S!e1d^ndG4@6V z25BStbUBn=bzsk2X+7!x_0Hm+Z?;8x)*|u zz#a3sOw7!p-J9K)oTUw#mXFEe-@HoO<#xvFc^in%1SWUc;$;S{52k&N3@wa{U4O)> zOT_@N#7xtbJL1@OS62jN2s7VJftJLmrHdUWk}rO#ahOj_>E8h94h;^PZj6`1?PsLG z^{%jQSBXf?XO5!49_92YaI-nG&^BA<&gWbhVM3 zOCO<%sYQBTHp0-je*Zsh(x&0{H94N=;B0Riqj%`s_@1nX2BFLouw z0k?UXCfnO1Y$ulDEw0yZE(4b#rLoihUR|$bT9V}0els= z(Te$Q&SaRND8jsRw75q8Em>r+*P|9mA%QBELI42FmpERC)BLDiNY!R8-5g9n>l$g& z7IwGyBGY9QJP1%owa$kIwBF*;U<+7yg-enqiGz=ypd80yhRa|ZfMr3#sumA;X2x7U z%g)+4qbIANNmQbaOu^Au%x+UIN#6SdifS*-t_P1KLQpjh*$tN$r;Z0By5c?NZd;S9 z!+DS&t6Od_UVI?AjVuR?0xaHBj_>yM;`}r{tJLdgOA`hG?t?w~OduVm%8ubQaqRN2xWs0B^*T1?RGie*+wn=ik32b|TSb^+WS8iucA z65yS{@zfMJA6QLbUVN+Ok@au^aG`9uNw7CSjM_D8AMozZIw^^E)o5yFGSyuMx=V0fdz6@@KoWccPuqk;~^d_`Qd=ekl*E7?vz$Ytw@P z!o`sr81qNm4I_wTyWZ2q*Fv1x8TKh$^IYxvV>%h2PHK2Gi5 zZoZsGCIDQZTw&gWv6VOyi*!`6yYQz7O0x=x!NR+c*2zxDG!1xz#YW~_JA}xN6zOo6KRXQ<=zVD|4Es6|ixn$G z7as9rjRh~qCKEWsg#`oi!N2@`esOF*GOK#97VZZrjrh zIwllcT16fbnS9U2+3Id>BX~p?7WWf(knOOg0wlsZQMLgU5)5wfz`enErsf1Gr`8y&(C4y17~FhXkv030p5AwwP2KltO(EC%9s40}~${_Y|*S z(zKhqrXoHqZDXSuE9vGPs+ScarDSEboz~>A!$C>oturx~wV#28(8thqy=NPg$Rex| zyRy}iQkr$tc^m_*zr+F!vzfqSK|1K~K_>hzo&pT}KV*6Wy9E_(qR0xrO5s~fTvsjVBuNb9V{(WAjG=eUV)<35?0y86ws zLD-^j?35%%lHZB*|0-X)84NJvYwyxT!E8a=G=8%%@1rTV-YlMglxoN`UzHCbeLN1xZapJi3- z=U{>(!RD$~k4Qlzov4sr^h7D2^kOYS=tnelsUJMRt(ao7oC*2@TGfEmqPyJia7VMG z$K-7Bd9WaCd`E<373i>7>Hgx7G}0^8zMK2}eB1BH*r0ewr+aB;dth2$`qBLy7B4tT z67M1qB$O47_4uOmgb&hFd`ZVY8b6X!i9%G2-8(5wow1rI5hSmI=vNcuV;N?uB(CH9>JL#|o+C`BTaBO#4x6}KOP5Y?QGi6H%5>!gGsdTY|erRphni1U&lkT z5^a+4!%Y}d&FvqjWX_kFr|R7ITIr`}txtgVfVf-s)X9`k^KxAM6^bvYpm6hIM6*sF zGv2sOOV%ePp=Z$}?@ppZtg8yI;^jlmLe;j;o2Zd;mz!kpmPwkO=RN8$+#lsk6Rh`5 z+k4}%z9n*%eN+F@?6~;Y!dc(#bhH6U^W-}%>4cO%@=q+|ah=Tj2eyJ=bd5aPR`o?Z zc1@SNj{poI?ek~~4MgA(9zXXxN`6zNNQri@H~8;N1a%J69u^5!1w1RZD#0>zRn>{J z5G*8H7-!_X6>Bp~iATJd96ahbKy&lO^{0m{O+qI{2M(3jdIDQaK%?zDZ|>W@3{#Seo@{KzghJUh$f|iQ5TlWgdM0+tZ zR3GdL%uKPK-j+HXH&L6>Dl%*W5Qqi9ck8Rb@gmE^&soSIDe9?Owuij5&eT^)6}ER> zLNY4vPDl&&MZgLFbYHYv;>v7wJ$pVT+_F8o^4mslZUgXzgY_tvd%2?3722Zq!+jlA zeS$Ece2d)4at99#UWDe5db0_RM9azttm0@wrVO_h$?t zyfCMUlGIYVQZmbls0nYOX0vxN7)gg@v)MvoABHQZ@TtFS?PB$@&fC@PxO1N@36F$! z{y*4DO+J8o!cFD`ni7WlF+yVPk}dKRssyW4K7mUQkL8)uQFfW_l;fsgKU?KRHzw%xW(-2&^mK9w zi{q`wAMSfv7shKN#$?*!BqL8{u8>OYD(exFkA0@Ths|ue;k44zxL-Z@S7J=$hCYnb znEh$@|Mcpt*s*I_l<4Gb#%>1{-Jf=VG)$&^Sc$AF zLks86VjynkKwd`K`OxF6-C@Q_DC94E%LZ8AwkhTX-m4*2Ua7LN>L;dV)S{y2AzL!$mQThe@3no>z2A_wHTEY=sl|20l1 z?iD(R`1>=?BFtSdl>JED0xl);&=>^}{g+q|CvpEqj|e-WfK{Pyd`A#^WwQX3w*Tax zzd+V#S^$AKV~e@@UrloLtA$mDZZ-QE26`!-G{CXPPZ$W$yW_9!FEgmv`gd@^_r@*e z=(7{`7+&FJ3#Zy;WIDs{+N~JFlgEEyjv@|Nz?0s75sK5NQ%x`R~q0kM#Mri`> zU8RqAzb7@#a174lMGa>x#5m=9EgU5H;<>=n?Ya@78-6sQ$1RNZCA&P;$9v9(oR_NH zm-_^gy9DWK%H4HM31f3w_Qz8eo?j3a?BG45!?yu=^MLPrq4S3gZpr6TDBts1W7FXm zQI#1>4u?C>B@vsQ$?F2Y(mwxZb)WVtq(`HAx7He=c(}eEXFJ$N>CZw<25!_%%NnFL z(~9jtEEI#}xPMk&cT-re!&FmG8gssuF}EkMr&ne!Yc0nfQ@)&|vS%6N$McP{ABoty z>|`uD44E8bFzkgbO?~XCZrMMQGt4)uGtkglz{jVwIL0U4uf#?$Ry9;qPF`9b&v7^x z+V!2tzggW6sxyiUW3X6>0=bRwb5Yv@XQ(x8K%>5m((TXbtnz;^c4ocjv%mb!#Oc;| zbP0GFi1&(Y>4JI?^<};306Rv2=W&uF7Mmo$>cT-}^3&+|8P3OJ#8GFBua(Y~V%n<| zwyE%MOK;BgIDtMphu+%j5J1`QAo3`GTKQWQK7JL+$0Za?E*hy(99%O zQEFx-rs-g)O(D`pr@J=4R=B^?rDSBcZvfKA*X+5FZMQnO{UD}rUGA}!hSiXr7|Ivi zlZ^$}QHT-1!d7zj2(Qb4pHPhf7&)vu5 z8y&pGoA|qvRrMo>*pRnX3jG*QizqfAoQ9*DBs1zz{0=T0gHpjXyEWRlDk?YMOi%E# z+c0I@@kE1)-vqN7$U1lp+$~*N*TGviHL2-)SfnNz^XAF-8*Mt6);*@{R?oZ*9|d+y z8lXcpta&om*KT9dc95saJ*?E>RtRE-xrJnGVPr20qS1^+oDIBD-NUXv+hlw6;jNFU1WOQNaWyBQ_0DZUV1 z^9_4qhv3Vh)lBDx)v+D*mptpGN$E=IZ2UJSpr=J^QMpNCIoSS$`*QL_&#XPRDFiY6o0H~;(O14YByWa zbNleoX&-p&{O#{1qMPk0RbQ=|HnKmN^PXC6+e*W9Mh<7VCyZbeu*)WWn)@;xpkrid zdR>&XH3+KrV4rZ8-K0pU=I^HjxCInN+%ec$HDPu5X~ zHR_6Ph9v<7;*d39TR_^Ar`+nYaR(+13aP0O(42run ziP%<$yLbD*VK??rt!t#B!pgitF)j?hVQ<$lO3uny6M9GWe^U%at@*VOtYmZhqLyL; zW>y96@q&`N=1#`(eHLB|dNdl)1`xrvX(h#{D7Z)bBvXBLPl+Oj>Gosfrn>#ll-6>Cto@2|3S%Pg1od9pXXTgf|CC6ISY;$Jo)(|MuBnx-;RO5z`=Yq zDV;@4#(T)%KD&-$tZh1v;zVf}HmKRdjZP3AG5hRdCsE!c$dV%ikws8T#^*2`kp1=IB z)N26?ovvTUjnT$9>m7irzdgQD=7Cl`YYI3R63E_rr*F{|18IefP@8c!EzV@&Gv5^;Arun4CAw(_7#SX^af7_) z=9hdoqmcv?7+vc1NsRBl-TC}0E*7Ar(-PQ`v6C7p>i_MI>Gj3p@wyvv$mhRN9AL3R zuS4QdTooN~INenVSN=^wJn8kKP>E4Uhm4L+Uc$dY^jSF~obsh&`Ghd|#s`!|*KdK( z%EA~;t18fZl4z)Xs#^Q&{rnOcr6bsI9|%nQAJ8=H{9_kgUF^2fE;jCAUzV zsOTk&s%RiwVAl8P-{CZ%>lduDOBW;7sdFw-Y;xU%Sb(#jAL?TblM>t8yTy9+RZ0~t zs%%ybPS27is_LBe-VGP(kEL^;9&IN9A&hR1nJigMWi_>42aub9ZlMAA1BW)@(Y+0n z)tJU*rSG|z=m(IGy7=Y;+yUr(W~#8bS)E6hyn@)6!I975*yrFooj~?U`T>V-As0-) zI_B10PV>I6zlqDnNh1tcD4I7)B+u~TnJwWtkq^qA@k@f1H1W6Z0{C(Fyn19}2D$Nu zzWMdpYyxSf?dH=+`wY+n`+G)F0E(>3J+eyvf`VrHYoPgRz@$&;Ab8ZR^E_)k+y z7khBGl}c53Vv0@=Na|lMCK~x32(At-Yl?2CA+A^K*A(P8>|My=ny1n>kdoD}g|bT$IHJK}CzKe&rDbHgNd zO8vUcl8&5~YR6!2A}BkL_WT@|sKw$L&Pz8~rFkJtkG5;HXgoF?W~%yiqi4RDWM@QA zytzYibg#~(Sz|i$EWr3qOi8+!n6SBSvC+Iiy?yfm88|24y&s2hQ-eXy48DRSAB00* z@sy0);78o;#!Vg85N8XB(J7C^rps7;h5Ijg=m?f+!tCTAqTe;ozvcKmeURV95I*^1 zbK0Af)_|-?P~vFv5Uc~IlobZ!FGNsM<>uvfHq_L<5PVrZ?O5S`++!m;A1;t?<94Us zu<0G&BaRj7p8MF-D-CLw3nbu^3H!lnb^GJFb}Vq0MU$f~Iy#n^_*& zHF9^K$=KV_u8m3e6mFh5ToCNe0Ff-(<-VlanakN>YY1pzHq|a3IAL5RQ|0vWwv>(R2Nv%$A7groIW@R!HUdob_zNL(3m08===#dKdGA-2?0Ugfy#0}N?BGbeG}d>M{k zmO2eisOs#-WTf5Y-gY+fI`%oRK3?nQO_$jXzC7=%)quPqkj`Ks(*sjFPHYasR9L~M z?X6PG^Dv$4%%J1KX3M}S+RQ&qGjD$MO~d6OzSi0#%KSb z$3yyJJGj@|_qU}G!HDRJPpq{NjxXr{wnZji?gr|U7$WySSn~-r=wJ2D@BRX0H>I(> zM}SfGv`9Wn2}rFHjQu8r0|(t@`D{8kEiwq zz|nN=jc2jm56r?ISfRAPHcCxbgYvJPFZ%g7En|85?C!MZe)d>awn3!Ak$Xnc&$3Eg zhwD=IH>RHo*`t_v8-FyM%?I3EblW_6E^E3vIJf($yHrU|?$v(dhGXGJ*}YN~-xzA~ z2I26Er0(C!t_6cWz``PZf{jC4XB(7|VZ7l=Ml~^?P?6}vwf#{CwpL6NJK#KI&CU&` zy)7J4dE{CSXsGJr^&n;m087umVjKNte(SW6<58Ou|okdQ)>Du+2{dnyWHk z^c1H4eazTr)uub;J)|c))%V1qY5X0=ROQz)bs&Jeq0Vp3wizJ^IzL{P@AY0^o6Ed7 z{_z=Qw(zu87PDrfvo2Udbj`uycAy)p8Zi{2A5A(`_P&DPkv;YI2Npf{6o-xsQ zbe`Mwmpx}JhiHiB`9=N=9@6Z@SZ%Go?NE~BI>q#B!WWF`_N-&u#iVVexf(4t6Ja+8 zcRO4*-Y)r`!Y27wSZ4YvAYLn(#h)*Pjs2J_ntnc{@vzJpy3wBKwmI6FYC4Pa5hKJ+z*Yei|BMh?ha{)1*(GbGRNgEqp9pIuC24*GOLkdACe zvXi$=c=J^=xGWynF-6=LiuRK{el@hVB;99D9rX+~T-clEY1Moxgd#;aE^@$sE@zs3 zesj=!cCbDwUX@7Zo#E#@x>S@nR_D0CF~ZrsWjBKWy|I#(!y7CRmBh(7R7D$AE;;knNg2ImtVhmvvkkT!=dE3IDi=uX8LakHt8j`AEUhoV@AsIgqWdu?|;)ivhU@jcX5XeaKNW+a^fsQQIo#aF&} zqVrD2M(rA9DXPR*z^cr}jorISOQi)SeP%)P3nPkfg`Sk%{c#J^k*)-_xa2{xc#k9= z@}EMJ8mTRMDFPM<`wVeD3xr#SU>t6IhR2~t`9+j{r+hY1!Q zXd@uyn>@7qdGx4x7AZf$6Ma|#+Qyd71G(5f2VZ%{#_89M$?vZOFiclJZBOv548hSMg{QgX5AT6bw9OVUy8 zm(?VX4tv$W2Awm^>{Zt0}LE@ zb6qxU z%KXQ6$^@jk*&e7=4GqDcHScqA9m+_~I7K6zuGsC*WgLMeH??e|u2vr4>f^#rRm<=nt`mH9-q#|TyF)~uR&7+R66vVWZT zD=r%l%UU*@PrE2ft<7>gE1OTyh~+F)lP3A;Gqzc(pi`dH-rkKAfx&1Sir^3dC?p5`0`<-ugGKR!KE;qAPebdV6b-OMVv zZ(cg`s;;xKsdjsFga&FBwS*JD)wFD6L2D!7FSD9_DFN$on;E@djC-=Ne4til39>G& zf9@aG2(B=P`%XbNFLqM3QmuQexeE}A+2f#%>7;#JZLYmvQ|w42^4^-s3EA#n0pxCN zjKb0f#%wAzh0oUu`A+VIw^v$$tn&NjZ^p5T_W4)(TQ4OUi?$}E3iq#{Q)WSG+haG9 z_4oXKW^P-^BU&-xN$F!kFtWiexOsH~hdeaPy?k#{_3~|bM2N*X)7aTXy}-9x!M>@| zbCu1xzN7PVTBLCMZ<|g`_iRdL!{d`Hb)_k0kLsm&-nc+2Y$Woay821;d5}`~n1D&V z(>kkF=dRz*!B}q(gmb8?f^K*JYsBKYGVKbTq;0x)fN%OlQ_!U6sfI<&h!K$NWGiYS zFu9(3dB8u{CyjY`{#%7_y3pfdNmelp_;rtBuJ!5X?FX|R!Degw>gla6Tz;EkE?-KL z4n>H&kM`f?o36EAj>MQ{FV>P9#YU!!VR0n>4#d{txOX+w3OeBo8SqngZ@|WGTo7F9 zb$#or8x6Mzy2DW>ZIx-XkwPWt|4lua)sqH_sn+&-25!!08proc0*w zuCIY%PH@E$a5^>QV&K+HBQ$ATfD#JiO5MoPiF1Q9->;prepGEU#Q-?M2M3sv$jG2y zh+CNcY&<^G+xv-|zrd|{i2yChXf6+nc*b9m%MQ?Njx8!>;yNEKI&zd{d4+O~CJp`> zQ@R$QrAEi}L3`l9o~;Y6UMtXg{kQA5k74#OY%2v4ZUOGOlUH zo6)+l{~P{od2)lNKx2zd^j1?1TQ|>7qu<%aGRk*xYD>X2r1CxQ6RgbQesLWk8#@N$ znw-j$VJb+nj?iz&F@Qv#E=N9BbJyy~(ecS<*+X15ZvRSnu_|Zk@9?3FGLa>i=b?Gq zXo67!10Hi$k~+Uz^6o&a>{@HHa<9g0N8qsQ3d?_K3JJAD+@K(FK_0NdfU$7ufU-M=}m0mN5z zyigOoi56tRA&ms$m~$eUx6q=E8ZUr4RK681$)HcnCm`C#MWy%{eUIbgaG;J*(Ge;( z^h!j4K<4XtCHCJS%fFeqGND&>@a3mqqC>T}6alFAB^5jRE^aoytMv3GZKo{sO6G80 zne(zpN=lw`P5;JIUuxpHOJux2`jr&6ed<;CMR%A+OJkl`fa%(tHh^>_0y#!_1t9Jy($-G$oQHihy&_eGfc^Btep_b5STieOp)+ zf@cIZTBp7KCJc`u5ChJ3i>-?TN=Ha1Lr0IRdZ>J{JlUzj@|h{ljF_d<4V5gs-FUjS z>t#+eljhWS-u>gH!F1J)n8OZ7qE)}XoLk!MJM->iPr^^#XzjwDm*W%DUBCKRI%23F zt%Y!IzQ-ATIa=*1p4xzE6MaL;|LT(x<}bBuFeLm;B6fEg2b7d7WF+obOtfa6z$All z^&z}>3abKc*tQU7?rj!Hzk^Sk; zch!MEKb2A#z9g}m4})$u+PU7BdPf+fs8}hl!y_d{C}-a7p_c+XITQ~mFx_H*Dih_hX%ez<;q@33nlf9iX`OPhJ= zvipD7;!HVf`aSHDisZG0qGBrz@vA6T@@LJTLsL)W)B3BuZpwexdqN>Ktrar<y z{ChV0WiWuft4H{eqyyu5A6Buv@Ep{V{`nH3v0s^CYb#O>y|)xHu1&JcY$V1?nJpgd zNd|McRIuXZ_$EkDQ5QJi*!1?*2*NzIUy>^SOU(tngY_w4f$li4&?a1HEkA1y=2eqW zzhaXBnb~JgaQWY+D@bg0@P2wilvw1rw>Dgr=^P>N90L0aeX-y@R#qoj1T8M3$Y`J| zp~fEn4C=dC9ntc093iF1_rdV~?HKs4iLhL~u~u9s)@{%}Lr{7mf3g_xBF#AH*%Q7B zgD$;1W%p?ca!gLyD3^x3&3TJT`F5P`sS%G9T6LQ!!K5$GcjEQ9k}2O3QDdIYjR|+X zS&!pra|fA}cGv2kRJSIl8G(NBqO*h6xeAI@COAQMBFo+sCHr3R1zJ0*MqiNX8|^_Z;+VzMhG z5@0Tq)w?$L{=KVQfqwaC^>y)Kng;)gL|{g@g@&P1i3 z8+hmS;CxKS32A-|w~n*^I9uDmAU@Tt9$`_JJ;KZl-wK~AxhWtB5Nj8huHL=3zi5?` zK9Y2h;xeuq14$q22i=W2DiwRv*q&b2y~|)s!xmU^7Cdgxl-#!%JKoNZztaFB#w^Sl zk(2JT`Sv*`@bMF9LIq-sNrBGbhR(LDP#UXIV=jX#ZBlq;RNC~Y`)Ojwg}{Ak1|viK z$ZfJWP?CwP;8#1oEYF*G?RtW4*;L^%d2PCA8mHkb_Z{8+4z}`Yc$Ik}ySB!D;O8mp zb>`dS;O&=lFZ6q^w_apX$K<=G4DC^KG9HN&9-3+u)4lPp6jTQBcH9c{5qZyB*UrCj zvVV@dPxU6j1@?xTvova98b}@1S(v z<&4MT;mX9mCwenHE8H2wZJ$qO->2W)Nq=?161se-{+(KzU<b9WIf%b_~3kiwe9VqI1wW>DG4qb~o9I~3G&5LO4lmR=IB}!Nj z7p>j8-xB??uuFPEpXtNb=dmlp4`%U}Xxn^(HW`XP_9C?$D&74y8=s%coBBN9!#?s( zhsxz3j_o^doxU=S>LJ?6%ji7CM($MNun3-49Ukm`*xAUFkl_BlZh^`8{(ai?m$F)! zY0pr)VVjDm63NIJZ#Sw-3GrJ=hmkE>n#=88w|*Q|e28YjIIP+{?spN$l&GMl(et4S z-c4J4-W;P)X4SFTynuoxnlct?$fdgYioW$U<189>KZsHa6o&hCbx>k@XRHmuZdyBsaw8mn&58p zZvzpK$NZ0)+z2l-Q&j|xupiQIsN%PU?_D?-NA*yjY#O2+kxW4ZM z#ACXz#&5kFV8>Pui9Y@DlIMbbx>piQ-W_~0ZTMxr;{3bAOr$dv7gsB7uALx=D~Gf0=BUzV2-C}?e#THGG41jrCAZ8BR)RGX99zAA(o-U4f|81QhAPML2h}c zLN`-d>2OgKl%b=yCtrgFYLj9;$sVSw7h>shLhr0R>m>_Uhu`i+qpezx8}YDd7Q3!- z_uWX1yjvt`sSX_-yf!C?OWB6B^8F{2iep)$@iXG4mBETK^n z(iYTOa`Qg&V_20=wtSrANl71n(Y58P(4+oIPX~+1Vb9fImF4_1XDR-kV8L;(AvK

Atgi@MV>K>{IlDttaIU8@@O8DfxIndrL)59{;b^g%2v$fQ*~^+b+Jby#V40lRWf z^=cuK*-N-ER(g#+Yn^w3VRH=~GN$3j!L$i~ zUZU*A7$Vt^BatOeHQR0s=MUonFk~XzdBV$Yf+*b!N}?w0Mtwlo*9D-j0h*si#B_pK zDB4CreY{6#`&bnwZu6w%j#WXRmdB#qVmG%+{u##6q@boo<8ZKo7N)z!BGEvvkH~I8 z3yF|R^&pSRve}+Iihkbpo4b#yvxD|t${FYNu6U{vXA!WmrnFtx+g%aOLNb7zt7uc^ zs&w2fT;IKXrLV%5%kv{7Y*YEUHHLnp%gLjz5UN+wrRvvvr5`jj3E$7i_GIfS53puL zXUz#)5R8||s;nU{a}2-7EQT<{5-r1=+LV~^+xq*l%U^5=t*>w7d>JBlNFp6Z%y_S zk9&AcU8C-5jgv&DE`Nu+lOp^Z(U{X_V(B=uGYv#*uv!OjQKi-THEPm)wI%vjsq zue}4La*^>KkLP>S^{XFK7`YsWAz=n#?tEs@n!pXlpmn48i6W@$@b=y^0wXoy=3wcRP;ra%HKY(?uOw zc^2ew$Z@1r7&Y$CdyhAom036x0j*uXKyju-(Nt`FNy_vpTW7$LHv_VPK5n{o%g1f- zrkDEFGnI3Ok|V71M1q9Oic!@?+hloU*w!{ee(c@G){3@dh~ zT?M}E3c7ch=Csr-5qkMngoy`GAPlg!yA<{xy(WDzzo(M$vN78eafD_i+(@H{hrklQphgir2DEsbcbWxGCF&A?7J%p&T+TpgPIVxs=mR1M`6e21uVTp&ia|v6tbL}ptV}*4}!rE*Z!}BXC)iQiOxFJQk zeU6SchUEzrut&vlnUSzsh-IqRtg@3UySQ&E!b04sYZhB4hgq?v4&#XRTLhvhUJI?u zS^7BA#9fZXB_NZ^j$61)^UFIDK+oS(B1j#A%tVNf@PT0kW%-r4&sbx9#RkAR z!!0Z?kHp}{@u^drg4~^1hVY}y)<;uz9n{@4Qb^nqO%bJE2 zMLzld9X1O{#)S9v8=i5D(&dso|0zfeG2}J4v3Fo6Rwh2kAq2E=xt?a3|32@*`%Ldf z$%mBwV5T3^g*5PIh2+yK2J1;;o65#fyq6zvj~mb7h8QH$sPe@QP-r{043cS6cO1eW z4R0%v&X$F-B7bvC@Nv!ZZ?F(kXG=M_$nkHCli-xib-iQ#65b{wtj-3f2muo)QZr|d zNGhczQ7A?vMx2_U+6ze47Y^@CGai%J-uIujYtnVR`!whx(@^=i^uP+T-lM-f>BQ7_`MSN> z8f33BX^r?)hWxCkZ!!h(Ak%kXkVr94s;&RB7NsA2O81KKcU@YvNy*KjCGfDLl zYR=%+JCScfPAJ#K%=Z#8x+A_#kA7H8EJ;v4Cf2rDEs-9CqH%D*Dpn$ZhBZ$%xWEFs0WAxRD-%d?QbduMtiTzQuk*m$K{Fvh_J6Hrb+BxpbCxzYo^TLHJ;(aXx4o^qsxA}xn{?0c$X=tT_M zB#(~N5sKHtRp%gJmC$0uvgwZhC1jk3yij`9T6u_2pevwqNk;w@|SgI z+|y6dqeu_}Yvt=Q4X{oePrkHt7ty3>uttDJEOacbb3IX1f{7Cdlz(M;>NDR z9J1)YWjNq<*M-Q&5S+3~US&Gx8p)OH{UACukDqd-O5f2P`#J1tQ0-zr)ZjIic3*gC z&MnNd28RwG6%DsWxkZ_J6u-JWJnyC5U{Z4-i2Q>pNmHatYfbbz4zEPn)~!N_#+js9 z3L%?5@nzpM7P)uEk#&WCRY@b-sVPN97-d4m?wBsB34u8J8w&#ZMMz>uV`}Db zZ`Cf~DO@xauS-0btv~00q-$juP~dHNt>iGk{1?1(hIZ+z#JSVH%Sx}t zkk2Ks+0)?i{`r1>l%z{_>jEpJ?~TKIl*mZa@aBgd?-y(%8YbyKitsFS=q8zkSq1)n z+4gmT3nHlBkl00#U`yP6eyKTTv;`!f*-Fv*lL1Dws-0cX?_d9#dVtSFHa~ZYS@TIU zlg(eo@ZU4Q!T%k?hY?e9km}I&8zlRMe?E*~VrYyQ#E#z3f8H(q6g54{%IiFt>|YS$ z(}y!C{JOt}$KP8CLYG873NYGf+Wa?S$O;0^d^kKZ_}vqJ^#|b7%nOE^Tx*eU6ZEeF zyoM2iPi`L$?Z8!m`-5}(2~tI^eic_CbE!-(M%ez~!TOG_IQ4fW$uasR-|+g2O#7A+ z%x2~1V}EbxjnY#9vACf;3UmciDE>Z;bU$-vqoD?$& z-Q8WvoMv};q2&ue@hk6)M5xCI8lq9pB}JlG3yQA!g^_{6gN1_X&tT)8kpN>m-5W+~ zJqSC9Y~)7PX>Y>Mpwb)L4HJ%43)(Z6eO9YC;u$e;pT~!}<O7&wNczAjkPfVJxp+iwB6KVr*RSAdKGQyRgL{+r8AltEEE|zTQb-t z(n^A_8R+KiAAIj*w-;YLJl_cw_?gqZZA7g(>|w$TYw~w^xQPH?)EI86nB`)pFFlpy zOG&`b?OQ8s<>+5SGlV}%D`41*c*pA}=sPkYSpR(YF`Nno&>0JVED`<>D*S*D`yvCq zga6SH>%Yzjssd+J-RvU&*+C`RpFzP(68XCR8P)&kpy{+w@O_26_2NJ0kpJp8CgY6kS)p;+JzhK^e+rWk@A zjy81zS<^~u2UB&=+<^Tn3%~6eY;In#jDl+*94}Y#+3w8FaeI1!D(R+!w0N=kxhWD)x9NAj>sKf*UW8o8 z*t znIa)Y(f$hz4E^;Ph8nb(&1B|$NcS8thjN<3T*&a5Z+*9;BL=z&U45SucIIBI-k_(* zK(9z$QKvCID>kTA_;;;{xI}{p0HD6m(Omx`6=ZotF_I116CEkW?&B8)T)Ft)tkB2)1&#xr*M{`*zct0zyMPMLv5&nJgtE0y!0r+{oUoWH#=A75&@`>T-Fn_-ww_w!kb>Q_8J6tdHAT) zl*X*aSz{uvceLbaI4V-}r=W$X*K%g)O4nos7=NXC_lY-3J@DSf$>1zo;f9I}2H8{j z{oD_SQZ!F0ze(A2pEN?T6PkdP7_>pmXpZf<@uP9eJmPa#es-&Qij_77n|epynVRq} zohf-?WYjQmqlMLBzU_?*C#=YB&%8X+KSJocZF|TZy2EIm36DnwK_cAD?|(!9QXb3s4Je zOhrTY4xx@H+Ay| zZq7a*=&q$HE3J7ZwD%|(HP65U;=QG(YbF6g_0!KF=@|fmfHR=4)Tr^yiq1!z&Z7PM zC%CAMFecHkYE)O0j@_!tv6l2BvB2O&qyjo-Cr;&4w0s6&Ojt@68po~T_dRMT<47~; zZ1Zt6kQ#a0-26TGneoEv@=gD+xlpS3m|x^ko_16pnO+r}?nUz0%LwWDIPaU^FnZ^qrHsby=@rq53g4 z5@PQqkOWuaaPTH~@IzR9xf*6P4VUr7+xYQY)(52Mf;h^97kNOldK@@g z_h>XIy=H$kcdzLP?2;rS3oL$1Q7F^zI}EDQsE&zeYpe}LjMUDUSNl%Bk;nNoeRE}E z<5io5ulR0c9@S3-^3)kQ2444+3~1Kd`Xk!^G;4g8IE(LoS>Ot9TOSZPOUpm7B{J(Y zCS_@A(GY)msX~3!o1Elz7qx2aX>VK4F*c@-_UD9fom7vFRnlhUHxlO5y-S^HIGEbR zJ>R+fE&y|Kz)VXE|9Yhq9v(g}{yy%WI`%$r?fxsj`-Eeh&-q=0X}Heww1RNi>9*73 z1c+X0xGEm-Rg}FP0&eR?*U|F>i=Xv;cqE$r3}rvYmk4%irU)D?JaQQZ{!~(ApA`Bt>?;M7C2DuC2fjUcKL7pay9lQsaYaBwNB+mY{%uwH#mNGZ zUgJf*2;hc45!1h)H*&s0V+RtNB>#IWAUwkSg3t^}fE_r{+J;Z?&jJ8u7-$k3Jh^`!@=!Y8 z9b3!u1;@+>6HyeX5^GV8Bw=eM=&QPJQ;S$qQ$unEGQch}oE4wa08s%&gNO^>*It~f z3OF~1z}(2D7u-Shx4HQ&a!rauGXg#1M;i;^ zO)W4cCMHCE3E?rO*Vr9b$}qPR10CIS+qPThlu~{Df7NOU41}C~(c^%xtE-Eck#V?L zj_*{3_s3T+Gm#nOWzU)Edn0pk|sd#YZ`mcc#)gBB3p(md&!e)B=XuolXaWIjsXr&zfOOj0^ zoN0>Fi_)fjZYw~vYGrQ3=gy&6tFF|*r!R)0C#&F@P3xtJ)nY3_+x_hUv%`jrvY4=W zn$MjZAXq{eODX%_o!-*WxoN(7zRAUQFo|PCTS<8~)d_;F;t#>LY1(7Q=d^3Dg8dy8 z`Ag@8xe4KUQzV=bHht5v};LJ)3uOjBguL*Is7K%=J% zP`v<#DH z8lOUqOox-XDErHO?(b6bYQrdgF}^k?)-M9 z+I&O6_vXeEfshwF5n&5RFyj!loUJwSRFyBh3ljf5wfn`&E=^Y$QjUqo&Tcy>`pivi z66EP5@A7n>0W;r?tYF&#rCc(o!C_PAUbeK>{nX;sp7q)8cT9oo61_G;Wc~|c{_EXW zFi)PS&LXDFooo`;!B-|cg6u!2XhW1Y|tg?>Fxdnt;fSWstQFYU^~r$iN_bf$o^ce zgjvFEI%Y9IyJ}r@jO#R9@K%1cXkJ|psctDERAmlsB_(^y@RWODnkE{huX7^JBFXG$L9IWPSV;i^%Il5nsR? zUs6)?=?_3~I~-6;j14~B&P(fwA`zAe1-4b;WBn2_?3c{#RH(UAQAx+tR@!Jzy$$&%8OD~(nNK55Ch&%NJoI*{RVdbf@2(5U3UA@r@l z1-M)u(>|Y$ZRx^@mT&Eok@qF;%tB3iYRS&x9JU8j! zBz=h(E&x6b%K{;|a6m%!a{>E6oM~EHT0!Uw1{Tc$r^229EM1N0@Hxn$Wm(Hp9XV+S z_^o55s@(f!WS{oY3}M-hMnLNh4-gy6(HxWV*`9JgxiQa6F)18fFIDlkkb8V9{)zvb z6-~UVvgj?C-1(}rLeBEr+!J@X&bDGtI5mM^E#ZSQx+SJl@Y7eC2@nGmdys;Q2gH)mIK!q5B!Ko9cfc^pElFZ1FU&O9$-;KHP z{jdvN{=H2PvI(3)oN%Rb%N&Ne zdbLZH~CaknbI7 zDc57i#vu3>V0oGIZ$u*E$Jf-59i!JB^GDIlZh1GJK#KW}Pz4d%x_AB3km2%Lry>=8bsoQ@bBn=QB}8 zIDntnLz=$m20@*OH!)QmKfD&WJBr)_x}~U*h;>_?kdTnfbYUr_KAiG7Oj*ad<5nxUvs#2UZmDc7iSI za*KBaCHI9zr7R?siJtF&vMpsL1v|IEv-yfx`_7Y^rZ`9W(byJFmkWUQ4`#YN-|5E$ ztyMkcQ{5BG6zy|rcLPKw-Yb@1w6h4)>qp*2O z>mk-O8gbg1X*K_Zn{QsXPo2lPql1g`gWV@sd5Z5)@-)l5O2o}i<*Ql>3(BqbCi6A5 zw0N{5(texlHgr`P0cnt@N{SFJ+Pb>Cw#zBNU<_W$%wKt z;Ru`mJ@5bVBl3BmWEo8;u#2w2%^k6i9((cy+x;osf0>VB(B9_~8ylDt)5P-Z1b+Dv z_e1gKjk;A7|7+3#SiE4QQTigu*}uyb1~?_Y^C-^$ieEsd0B8Q+Tw^#-(hIdaT}==W zuF__>13#z}Jtk38_2z%e1dt(9eHW{0)n-)`*~iWapoFZ~MXf;l$&WlVYSdM@mZzJZ zB%FCmfNDyo#-C^$O;Ty>!FE?$=8^U3uA_ZiBNV)fhW7W5BdQZkSN2rDupBj~!_q(N zu~J{pNU=K~>Vti0Tgc?~e8W37IJo6nzg)bn@T`*Gyo4n-rjrkEXV+W^Z*bY+s%**>_ z^Au-?V_A5b$-zRPt`Zg7L7!BuEiDA)C7n)onNH~US^Ux;5Dx}$WCk|JEi}U3+B&p) z-<#IFx2>SBUp6CNziUS1>Qy8mt$BZ#8vL0vlkVz5M+7>6$GiQ7$P%Q=eX6pI{uenJ z#S8}Wqa3NawMyW(%Rg!)#F9ONJ?Amt%zNKYDbu*EL>^4V;zOLx{d*^N-qyBxD^7){*4WIFzCP{#*@R&kuYxEn~M zpY}ldvgW$ih`zHSfhR7dUsoqQmkx!gI~DdRZ8e;T0JbiG^m4^Pq23WkZCxsDZ{DsK zGfO8`Nu0J-qwz_E^E?xm8wl&5z*S$}q$8CRAye;Xocq5)kV_>={jw*~mR&!q1U)xgPEaYHdR0@K!<0*Hw@!cN zMDnxS9yJ2uP}gqV3lizlNYI}D0)Y;5Lj{4sXpMtMSMM7_IlQM~gzu$Cc42xe4DITj zs>ZkT^kw4TV!XggFVBYM5)U;-GDe_G;m8+adXby^R;TeXPpx%toc6hHyw5_@(;avr zW^Pkho&8;75aHMSAV#4%!e` z&~VLZPuGAune}qe#aAwrSB#Fx)=rpUyYKeOG0`Ybx*}yddvX$bw9Fti1qws$0y(mv z3wl({q~u~!nGLfZDpC?95hEkg{Z_lE0{T9yv2r?P=bXz4C(H6~bK&4`?cb+g+I;zYfg zx%AVE)KLP-q~~2^H2M`Rsf8O|5X@&NXacY;I^4Ao^ZkEfY=Y=0X75M}GHtgG{UkyV z#AYuRKs811v35gTmKBWk=q55m?_E9k<9y0HK(9kzXTWpW?u#n7KlNx39^K+Y^_^_D zBGv8=0#z73O)mlUUZl2AR8JJDZkYFP`-?3=aL?jPNN>zD`#>C2FmMHOJjg+>1I?$Qz7w95QyqkJT7cLN%jZ%eIQ! zCquALY07dTazWh|$sohy0ydKx>=V(qVaJbncZwC~t1L422}JedV{}$Duh@oRtqZBs zEdLg(RLK;{a;=>8xx!O?O`NfpT&202mD!AaFN!v+1~0AR#m5su38eYI1kvQg7@v`b zg*q&C)@{5M4=g%xcUz8FcXj&WKA2dA&C`Djvu$4!t|#@?Mw|3$+ERgI$|le6b^I?- z%K8Lq)~oIFrG$(lPg{+uhSj=p$s6P4h_b`7fNR;63BFkuePbykF{J&BZ&?P*W<;K_ zi+7&`!IpJ~<9?)Fb%-4c^ViYV2Y%T|%b-xkjzFh^i#Nlz(<$Kw9v)%X({Pp>B|YA# zA3dB+R!_!54kz=>spIbVcyYt(C%~>Q4y_YqQ^UOj9MPKgDFg$Mf!Hjm_xDH z_I=6kAJ~%4-@545PY{H5r0A{c9dj5AozXk+4<#=K%sKO+RNBC8>?)n&g{9`5iF}z% zAq|wSkiF(Fjvok3ba_;y+_eXiKp;x+caEDF(Fx^HH`O1^J|3O7A#g;@X*@qv7&z6` zfg_}PuuCR|iFwYkJ32d2F)&o_fOuQ1;Oo~=H$afwbWsEAcU@nE`tmD(P#QmrKZT$k zlyOHVsc-8PIpl~oP;!OO>!u9IHphr|!@^aqNbk%ErM#p@Ez40BGVCmw{?0w65c#~T z2u}03GQ`-rqaz$`GI2L?KyzK2jYlz>&`Cu(BIp5GO=m-yZs8zMR8)k8S0llpe|Znr zS6RvO^*-9`gc>N0HR5@I;V(GV%p2w;0at^us60O;hoyP7Iv8}qPV&ve+y@`AqL-DA zTpqRHaWDZn=@=220m1(u-4EV96Ld{zw3P;4^Zy}y{p5l7@R}o5_!m5D<_5zrP1hZl zg~l=46$b=~Jk4iWM!fiRmE3UUwlnuVT6sOZnaU6-kyBOe5w*^*=0kG`UJ3`Uapn)7 z^q>~MO}ZI-lwr?v`7*y@V=KlAO#_R$Czlu7l!>}P~Qf(?bxi!0G?d6kv&OIAFx zF5^CS@^YFw;)H{Nhno862f4>X{^(u1;SHl^W@*`qj{m3kyOJEPm{3ukBlP&5E#x^j zH-dxLF5YT-Xi$2E6x3_jr(XvxOTW&7X-TAu5+d#X%+SjO$GfHyh9}#HmYm8Nx#PYkpko8#{E6SS zNbh+*Y>Vq_<}*n(hXhDSYRqTbNq>}+sFE41YpJ6mRf=41%osABC(G-{LMT}F24w0C zv^_yhQp?^OqBPg&FXt8(HA8y6sb9Aqe#P`V4<%veWvY%jXk+I(I!BcA?;km)UE0S1 zwl@z{P31_T^HGlWxc-4=)lVy2|M37H$KP}qiP@{B|MqMa?Zz+*eSY_~7|KW*TFC2) z($p8vSDIRBzckP1Y>kTjSdgB)2nw9FGraFVvuIqf_@IRbYXrShx7(2?-PVnhciQRC z-1)ensHD;MM4}clJM!h1o5|_|O>0nVs(xqDCd=Pe-cXocG=eQKuN*={`j(;Utc^<} z1oZ%GwVKlf?rAd@KL&-1zk2hSErPIBz4V|t0WE8*uy9p7g4a{12!1;Mei+U!TQr)I-gOUB5&W8j2M4XAO(p%I~?wYuB!;czf zL7R*f++MRgHKwPTIddYf8MgPrpC?YeQC>B@A% z+D#x`$Ki;Bklnx-no)3&^3c?2sS*$XZ>Ko?VoFzTF|T&AHN$Mj)0c|#;5M)*Q{NAe z{$7Oc(MD@R4s;aXgK>=OnMkl*kYgxHy9S&AjzPYirt|Kfe$=7ga!_Pr!C zArYoQ*Cfp4O__tR$RS8vpRC^;1i7y%#oG=$9iS6J->Z%N{y1r?Y@A9<0{Dx7VWs}NRbhS6n+uN@D z8v+pwr94db=Sro`2$v79)!)8T+G%KKM~#psEpO73p$LI^tHC*NoP6 zf_3c}po56{-?_WO@}tQwjqm6<;bY2APDh3^Q`L-F)|%PU^ti-RC=G&rukXN;UpRIA z!x&vM)mrWMKDO=52_QCrqommog}r1%tgqi8=C4@lyWy?Jt5_8l-HRW+McP9Nd$JNP z9d~z@rt1H!yD3k<#$u+YEHGf{&Q^*^y@Ov51uAcLRuts+>XdaDt8C{hatPB&3n_Xc z#F`$Lx*>%gR?lxVa$sBGk?%LIKDw7dw-G4 z;LZ1Z)1$`?$dDmNszK-~q4ipfN~&l;xG9ci2vqLBn4 zoP<=^ek!uL-aJUDmz$|^(d`4h?=#IoL_j zi(9IxDD@fM(jL3Fc39b5X&IuW?hI>XKS38u&CM(mbgYJNyAMa~Mi!SkYUhw!-uUsz zJ+AHy%v0dNdQZDj9y)04Sl3qeGP+jUzPfzS|MCr?_`C&mk+HA{ImAo(3m(mRL6Q#d z$9YD-kpUgTBj0lZiHke)sw>P2Fc2}0|lz7|y3}PTs z2$FnPc>fC!0q_Id1m9~J*MP!Gd1tZ#^eK}AW_$xH z$)6i{#rB|aJl`JXt55%@pFMshWjrlns|)8Ge4zEpyTWfLYYXuCqbk* zHGzn>Xn!u4QWtjQ+lwRx zz*=6CU51UlMMC9VzOx8amo3i96(BXsOeGV56%jP_a{0_+zxB?vA7`4x}P>+__S){yJoLblh}rSA=b-6?Pu=$P4TB^ngN+6 zVSA9}it$QZn=82x^fXySwgmy(DRmcm$*b&R!Yok$>NMph+F1NFercJAP$9N6l8&{Z+7mYFl6qHb!HNzgLd*~P&~QgU>2GK?Wer6T3I&zSvmNl9WF>}F3I{ASNHS8VECVN(2|gUv z({~=_yWXpu+!|X4OKNA46wv0gl8m6C+8B0U7p^G9%PE#+MSO1w$KGDZvXsi+LxDp_ zWFH7I`&#@d=gb4u1G23go#!0szd}3WLg|l-Tymy!U2>}zs~93K%3IdJi;*HSU8r#* zv61v9b%;m=1L8UAAzu}&;Y6|Gw%n_9v$$PaVUd}VoXK*+fE7ZE=HwPN`|N3wKM!py zPcVnlrhcLM*UI6tiEQb_YKcv0h<4w=bz^gBYbnR4!=LQ%8$lqSud+s<__jSs^|#;R zs|R)a@kcxe$Z7SWtXZJWVF%V zh)GROo>MmVtbFe|uCxja48F6VNI!m=H}EDNS(20#ND+~p5aFF74|p9Fh`a;m@^wW*S)s#AHj-f()NYH$8vY`QREO6f)KoZI&hU0{4XJ6c zpe(iC^J8dK5O-S5;;d+(pt;L;lpJ;1b#&?*UC+Ng>LJTs1PL_3{gARXQcsAip~X)lNbosjRR716{Ni zVw%eHI~Nib8>Cm#fomZV<7*82xdtM9RuEadW5o*1EQJw|{U*KDgAp|%3+1xXZ~1j{ zqMtd&bND89w)dmK?-pi8-QrO*FIj`bo80JjyccFoPrq6~Cl|80(ZOwbQKL-dx-++Y zw})#34^~17PSk`B4)}5MJ{k2@A?Zzd#BK6F_*DRj7a$<7MHfr2|IUqn@J<|I=0vk= zErKP^3G<1MFrwXcMYCt(w~gync;n;T_O*KP3@uMH*qwH+!q_yOz8kdEWN6y7B-B+d z^fwR{$w04pPh6X(e4rJubQPcxXR`wH!Nr)qZfOGpfy(#S^lHC=lT$yJh|N;dtH=s$==0KH}_`u}sPjQ7aQo4wKGhOZJM zBEc9S(0<6_`^R7DVT7!lyLw#!`1ei9SK00eGH3GB0%5-G#iatb>zr2rT8!8Sdp@Qx z1EKib#E(8E+jTD0m4hDS#<00QMk%oN7l~$*o%IM>SK*A znd`9NgD@L|fIb>$b!C_Mnhj3v^jFBQ?%@C)u>%oG-$Qu$d?&F7Nq<4NNA?}CXz zN=z!RyTu(mfeU(*nagi{_Fz9 z!5-HnO!8v|qR{d{)v^TP2Un*|u2<#mUo46xTuOv-78sGnbHhZ1J|;V4zr9OFoL;dj zK;Jt_Kc>>xjv+7?DE>0(7=#ZMSA6j_dRR%M>%0?`Ep=eDyijv-Gy51Mhwr~e0+(Cd z8sG>L1i4CeM*B6Cl?f)oXP&{;uU0DBnXF5}@rWTx39_Ow)z3Q@qeapNO04kyO+I8z2ct9*RLDJJF{*zo7XD?8M8_|z#?{aUo<&N>sf!A!9c=il!MV_~ zN*-#mWGc1;*^1j2xY^##e(VsG+Hjg~L45rRLa9hfrZ!#*xXaOi49 z7Q^!Nq=FH()Ft@3Ss)i8bIeYki{>pBtzqlLNw}4~LzytuUsMkyMhz!FzA%u3XYYH| zX}H3){od##!h+P++*ti0_@SW_KME=+phyk$qtI*p%{vi+zDge7)QNQ?M-%E@t zzc_eXjPHN}aq9lc9TP6hRXP%cWW3s*p>1T`(3OwD6j#gtgolM-Y=ga?-1HI-RTjlM zw$+fw8G{pbDvyJa&-9T>eqb64Y)j6`K-oy|9P-B7Zf3lm)IE4`ajU@ksr#(|X?Fst zCqefY34RXL6nrF3?z5iiJJjjQAxu(QT4ekAM*W@>BW;03^fBdZy>)`pR$0_6mJI~d zNNUEIBU3UR-GnFHoW!QLn>|(BD!fInY!m#=CE4lqnqhY;MOcHJzGNTWqUf!)cjV0a z@dNRVdUP~{-HjRdwqOlLd!v57(2liZin&@&bfW$inQ{JKsZarE3ftJYxX?jlWdRXU zoqu}rH~k;U&*9*h6AR4UFgVLC^(xHkg(fifx_S)TmyW64nx(;R%d5+z>iQGdT7Q|* zX~6!b$?N6u>TucP7MnxqXl>A-V7%AKJu#}%J1JI-ToPY<1DoV?)y1TIs5)2O!w5qv9-PFE%GpIvD zQoez!?j&alGu%pz!?$8=#j}fT-_K-JBJtYs9#sNf2g!;Df>uu&@w^hr;0#|{BT(%m zZ-(8P`LnC0Z8pOV3K7>cgPwp}+EOU^a;GGBHS4dE@uPF|q;ms?axOVUoukv(j*xMp zZv%CP?Fr~iZc(l@-A|KTjvN`aBM5#RWQ1f$VB5{^KW4I5u~p8z;yA_cU1o0};y!1k zDd1z#(++olrpMjF_yXI#NLRJ!YBWGh}1((_Q^YPnQd&HkktAL68_u+cNTYdk z4w}WaEaGi+L%PfP(OsI;y8+Wvh2Qi_}EY&L!NA>?B4~ZE|xnCt+PcWg5_arQj=@M25ejjG7TNHgqwvc4n5Z<=|Lx?yhvR(X5bOaW?j=Ju>faC9f#jhWlHR5y|_ zIIAxOy>R~4x2Zqz&6ouV3va4H?la|b1CHg!YWQjCqg9~0lncp;Q6Y7f80xG}RDw0H zLe@Xm$j+x&G`KD^da_VKdytf!pCmz{5hducTp$sPuXehQfn>9;kr45ad zDf`7~lL07X{r&;@)G$wqmYz?VrZ=w*MVbUuHj=&(RY|ElnZw>VrAQwS4czBHu12FYaHrCc8^@#D zTQ)UWD4Sr3vmq-waH_8uB{50Kz8%?;c*kllKmC(+1BA4uv?Vd~X$gl$YFDB^UdGCP zeoJB{DWCo_t^P*WsyQFB2KM9L3H~dPQV(-O zIMctI6zKdv1r%={^M@G#|9;o}@5e;4bSp;Bnn{;4v8yDXP z-LAiPdN>e#MFt>VgErVre@MK4i$Db=HmvovKDPQ7pC%E<4`t65aCBbnu>boya=S{{ zQ8Ks6uT?s~Tk3Bi&2nMF#93%rG83HB=6}a^{bo?V_804L#r?5h&<5YWA6+b4AD!oF<4T?37YEGF?~{+WSAZB98jY zS|?0gTj2fx=DZt3$@K9f~galS9?xF`PdC1)v)r+l83#B_dypXT=*@J3j$DC zNvJttU%&qH<9+j5_%8|z;1w&FLL*q0ysF&r@N*}9{N?#}c>0<2_2vMy8v^*WrPi=$ z-~DGa^KWF_PY`%Z95a_})a$I}Vn3^zZ9VILm=)|K%eKeS6xaVveX#oh5BAFr1zo-K|&7@I!GW$D53ZA9xV3*&-eX! z|GsP8S^NlRopW}ZJ$tUnTr=YE2dWh0jVLig6-EVTLR+%q2`$+XA92d>Yr~$@9UUDn0|PS_K~)|_Z6D7wFyM2MJG^n~X>IvM+#e7f-rwr$ zIYdM*7+1K~$GZ(v2GqF`+7Mf-WLfUK&Q679$qp3%ClEc zR%%V=-{rJ}mNn}-*FbZfuaEkGB>VK-|DZ+N<+Qy|g$QAjF_~~7L|boGmZzsvAlK{I zKKOQ;rp^+^$KT`P#GF5S?|4XV&(}$#*rYs!enpI*+`6<2uovcm!1S%Gf~)i|KOcn# z2P^gqvo37+X}+X%a|8*hk$EPcRY`3yC)m15BA!SX4f3)eFZNv^g}fG|xWr_KR@>lQlO0QJW%R4x((#LyS-5g#Id)i)Q?^c zl{9aC1O+|mNV?aPgUh~gT?!yK47%Wq4L(2i;r{e7cb~B!=s0#48)cmUPyNbV4jB*` zbRB@uyQsyB(*v>3tU0A)r;Gqr%6lo#VzIPYJ7lrL&?|23)KMV#S`@A8XM)^WDV_g% zdSRxZZOqbdRS#B8D{U0pOJ1OL>S^mB-*RyNk8`xI?dT@i>c2>GrFy%b-|KxB5Kt`< zqJcfNuqBLk#OAYTE8d%|ODn1GT;?p3rbEBR%p(;BVw}}BdJHTWI|R>1DX)_@mO{oB z>-$RO?mBNdeH?m+w=n!i`R#vsdW*6P?qq0Y#<5BoF->V3DtEcPHQkeaTi%J#99>F? z0nd*wU$@=J7#Z-5PgV3jy<@{{$t5)rOpUe4qTv}f9zxg@J2`>|X=G`dheTSPy zmJk@F%RW?j+iQWd1k-KKoTidDa;MR9if7!j)e8@K9eh}t*lE%W!UhX%=~`v>ws{ah zI$zKFYLB(9f;3mGnyA@uCA?wa{kwOTAuIbV6~%(fP-35U-jhBc#CHK;epqZSPZ9b7 zwgVt}u+QrHeU~I$&x`;CETX4NfjZfed)rH;053o-8o9SMvOX}ftH&`9#BQj`TtX~& z@VFRA@KA+^hqufru_634WOlkJjOaso?0`y4(AI3@iVGhA{5_CxaH{Hd)=2Q zo3APr22tP*pEf{)`@Lf|FIH!{OvN?joE!FFZ(ED&iXmoW${LvJI+x|W!kBy~80yVy zKAqQacsg2Te8Odl3G+L;_sjb*-;1p$0Tf zw$nPWjp_r~ylwoF9daw?%6TS-++0b+kjf|z)$qA=WgSx5wLvkj_0J2>Koi|~Th@}0 zGN{xRV)>`$8kRn>8?_mpxJ`yfhl)ampVpl%orpASFNRO~opJ8c-T zO0w4vhyb~h$^3lNjLmei))XfZHYj{%Pc5W@FtZ<0u%J|s_56Tx2i!6zj@GokS!QuW z5U5N%rcw;5y~L<4Nxo$BUjNdpu$+bKXOncl8F|Cl&V*F6S55oIqt&4#78l8Hn3dF9 z3BPSG!rWi7#`@%uc8!a4s{hPff6?jvV(64D-Jgeg%mbEGIz}Mz-|J4~v+?)A2knhY zp2l^Horl=VmAZXqHJuT-#gXT5Po0SN4>Efof5)4j@`GEtYhH$ux{jiEBT1}lE(1dr8*5LPgO+XU8euRW}5vlrNJ zAAV#{O-(g6Hr_PLjk&2*r!{RJFX1MVBq$)zW|X?boh=qijAs?GH^`2p%}|N;Fotu7%brz=bK$)w{(oBA`+!-H=^kwGEynU;vEhXj4Qb!+xV3JsrC-%`X6 zi8Wh7jGb*+F3j+MBloy`d}=jc;GjBDll^duJTEdBs9t{xi2Bie08U5UIIR_)Av!$VW%+o(wU!K2#=|ZvMOaAMHBtvn zpS~%Ap6L`SNoUe)cT#3A16*{}a5t|=_uh#4!Zjl1mRk8zOy!l4pgdCOd3@noD0|l| zS0I9lOVR6H;Pq(3Xx>MLvHie-L3LjU)-kCRTvGH<-WB6aCA>n@cQ|iGoX#=14BIV? z$I44+zWTe!$e4*+ItF^yrx|X1BYCe$lv?X$=VayLH#Rm>rCOT$X?VH0<&>3E=6Vo_ zjI^RMgK;Fau!nvkV>i_l=as~W2|1z#TxQA$Z`ERUru%Fyt~awHWZ$aV{$&*{DcFQ< zp9Atm@Cm$UW7^S{0RN6o0)n^hebBln+)?`c`H+#mNq?6riYS&9y4J4ZLXYurm(Y*0 znB&yS#Uk1)TrzS~A`$kp3r|QXU`h*{j6H;-(ZS{Lk^AudMRKm$+Ru(UzA7_*hB1_6 z+sO+)gGs5>Rx6@DkvGYax6Kd-AGtEB&OYiluB&f6F)ZV~diiKeQcUiY;_x-ge*p$9CEGv6}tH`~%b;O>Lqe!g;Y z-JbjZ-537%z`##em$CfybpJC=o}yLT4f%;;0wC^6MKz?lJ;ZKjW*x^numR(1?bkX9p{>nz-;&n;hsT$$@A#= zl@^4p|}9&7}2-le9GcJen>;1DTA z<^-bAN=|~};^$ZuHn<+raU~q?9F&Z)pBVh$c<9EtH_r!lk)CeHW^`Rfj&9E%IYH+8 zjG~dVY3xE2qY;r2Qm8(tGBL-#4L`--@tTC>eyk+|-smR`X;&De__v@OY? zTfv6mfyshqv=O>Sk1RE5{SrnH+lirWY)Y3@$eSjcD<_bxdq~m_aySTCv)w9IV#riO z%9+YHKA9|VW>B!IYVmphMXnp5nBCc;6GgjMQ7h%lxYJPXcHaFQMULtpzdy^8#?*Ht_(PLy3 zG}kGvqt8DTf&F}DGK5XOO3GQ9(1fsTRZQ{Y7q&wR)8%)uua`QL^FCp##oo2HaoAZ> zMJO%zaUhD3q!1ROz~@7-l@m%f~2(`y6hSM8YB46bcbYsum2;@m59RU5wTO%c3Uz#fdR-kuOhYmLog zS{dxstY0hVcpg=~4H9-)`f4VTVujL6sqXX6Wi8I7>dpmE7FzF0r8X(PZW^x{Zx`8Z zDM8_an0vY6&R&s%p zX<>btugB1gDE8Y6OlRYzffNBkCed^fr|8L>OI;y*;- zwa2Fb(yS_g`_yQ8PM%>53z6Afht<>TC!17>%pscrBV`QMYZd_MVK4LASX|DAB6#Bg z0&%RcvNxwbvkLw9Vq_`>C}keLyA0Q*@SMk2=m`wfSg*m9O-9^Y6B0Jcjv_k4p#mzT zY*2iNDP71eKKR~LHI5+#IpnMi3PVMh#@ynXjWVSJbK|-bF!Wu4r=wDNT?fRfw!RQy z4dZ>b_M}TwNk5Kfy2R0vg%SsNgPYN%PCd-Fn$mNjYrR+1Oo}CUb`qbY^##nnDHjz^ z!I*eU-TO!yS-TXOU{uJ5a3KyZ&u}Rb@KmarfjgUF-c!(?tgY>iX3L{Y_Xk`apZzIXpilOr?d-Zix#Y~X6Z=|(+xE)f^AWrw2<%UsN@S5qa2+E z{X&Wlf)OyAVM`mFLyOO9WEnIiaZWhvs)3@r*Ugg{cSPZH=dhhGFXK@o_*bS)`0Rm~ zUU7O?_!aPrTNH^lRrz(e)D{Tk+uP1X!q*D>ua=A*5WQM*O4uFcVrk5KL5ogGuDGyk zYB61%J6}%=BumVdUfyREPXUPsvV95Znl0K=Q8$cZya8uHYFeVV_-sL&^c3I@(EwnA zI|j^Lb62(s;74PD91UUqRID*309?)_iXk?ai7uK)S%uQezMh|~*pYRcHyKGT zPrYS=MR+t~A%%B#)3^{e7k1j%gv3``x$wN z@3cD~S;t2JRPJh?N~z^`g>H8;v_aZFP)`*dcE60+T}srT<5E`zZt%qPU4EJ1wfKE1 z($FD8etfL{HC9uJHKG;p?!bU_9r|Dv3y;}Pq0*o#0c< z$Ej5-W{VBW0oaQIuMe+P>#NmQjryJjwHAmWHy|c$Yl{^V1IR+@yWQI~z&lIlgrweg$hODbN{T+D`=T!t&=Y}dc*p?JIFe08yvg$DY4nkLbp^h&&N z5j>#NVyO!ku;`G-jO7#v!C*~l5_wZHlWJ(x0?$qND~~OSaZE;1EmuR6735vOIs-W2!eD<_Jqw zTsOskj>+DqK2#^aXK1JC$qA~9d9Kc6a*Danj}lLrACEQNA?ow%J9pe;NZH-lO1r8O znG9bdq;Ms;bKcXA4GQx*7iqWvst1j*>VdiPyNZFC_&b>W?`%riUCqvQbFKv zjA&%docA!6-lc>$L3AueT4K-daO7fxz}Ww1YIoK~YOI3C0e4v0V)Dl zm%joo$<*WCacgU(RmwGGZp)AsDlguCq7#8ud>O>W_O$jW*cd*O%EY|>O}tt0HBK!- zvg}k?aCN$!^u~Dj6u`RADmRa@|5Sgzhay^25CN!^%xQ3t@Yg5!1;S>TH24ZzYs44N zCI36d`5p9dh4)&oAFph&^z7akxxE;8+*M_A{Mj9WTo*}6jnLq;4xGx0MGG-TRY9&= zRO+V9%ri!bZhFBra(>?%`q7>69&5hVwNI6biv?o61S$9;xule#ubE$wHu-XE?2(r2 z9xnf-lVOUg# z`9$Z{QSYfndpd1z^tf$Z&HDO0aU&07pH*|l`JkO}mf@$6#VRk#jkVuMb3486u58d~ zZ?8R90-LsmTc1^wotmZ26^j-N9kR<$6|Xvt*81p9+{%nnx&*fbN>-|4TC->=KGj3+ zjxoyYZM0zlM!3mr`es4mP8L(e1|e2k)s$7n+iRtCwj@EyGZm=Om*Tw>165myCwXz* z8v(MKL{dqwkHWfj^^0^wEtnu#8F4a5Z(>jO&Qvlaw1y*eYkMsbm1#Uxq)_3~Qqp0d zn=LUD^SmWVW7gPXQygvnJm$xAFYKB_A}yFzRLTAoC*E^|jnZQrUxFLcyCQ`Xya49M zONoMvtaU^U*Mu8H2$KV1kC9p3@A{n=H`{w>MN*G~$tdhSkKLYZMoA;ZC-#P6#CLlG z@Aqy44%JlJ-%6B~!A9mp)}$k6ZM_Ft8nKzoq2RA`G~07+j#~s5SoAB`2WyQZ%Zo-vFf$|m4rFT#&O87LXuQ)ya?%y$DPj6$v;Q6hGgteMjO;ea zB~{&p*H}O(do4oM_R}f7IwIye(@R`1@toBi0^geJ>n*LZ9Q0fS95UH+3LAjqEg2*M z@3&1$0kpYCwi`|Nx87u~%&4uo3aB{Yy+!5`#x?JtCM%sw7PD5Q;g*sNgXwz6rEmT+ zd9T4)sF{HhD80SKNnFd&SkE~JfxNN^3GeL@!qy`@08jiqrR*zZ15%4~NK;8n7e5MA z_k#r|ifC^RFq`U|>Tuw=WQ!4qIDuoC+^P^O$!oIDYKt#Fwwo?qDp^(E2Pco0P8TLF zi!4^M741G%khe7I^!ICYAM#HSFhTuU!{2Sy_8(&|QgoVCfZzQCXnuEK!1oz@8UJ=f zmC`=Q`KMFzN9CO8%*D?im`1YV6Tn5obzaZV19#H&`W^EfzxEAw{m}ELkEuDT1nHvm zp{GgRp8Lqg2cp9+Jvn&Hj(G>~Ik5kR&yUDrfLudwBl$h83s?r_eu1spNOqb;=WG&W z&{n1NI_@_lDmM2?oh>0nUf=`8Me-S^-YTQt<1iNA?_Af3q;nS&p$lTTA~5cqlkZH| zcJ{8N)Sp3noQ8o)E>Oyn3k+ySZgEsX|Rtzox8}9@4Oq0 zb52%Q+u-#k2>ekMy*GVsEIL|BMp5s{701kk>!AzT?mL0EB+5Qylp6wwG1Oh_&sy#~6=L>^1mBLw+$?)x@)^VVYqq9&A5PR4$>RgeoDiWu;J;@=*7&j7y<6llGPbA| zS5DQQL{z{p!`?pP82@c(aTCg|Y>G!jL5J0=$hYUyn`p`Am z4_DZgBVj>@L`_yrHZ1GS&%d(tOQ?L_K4X8>DX4fz_JohhiJ(qy?>)wlM+H4Yzpu_nX8R&mkg^GShqZY3K)fXtj)#mQoHM~Y}?GJ RRviI8_wT9S&5?iX`#)Qk12zBv diff --git a/istio/crds.yaml b/istio/crds.yaml deleted file mode 100644 index acdf539..0000000 --- a/istio/crds.yaml +++ /dev/null @@ -1,1116 +0,0 @@ -# {{ if or .Values.global.crds (semverCompare ">=2.10.0-0" .Capabilities.TillerVersion.SemVer) }} -# these CRDs only make sense when pilot is enabled -# {{- if .Values.pilot.enabled }} -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: virtualservices.networking.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: istio-pilot -spec: - group: networking.istio.io - names: - kind: VirtualService - listKind: VirtualServiceList - plural: virtualservices - singular: virtualservice - categories: - - istio-io - - networking-istio-io - scope: Namespaced - version: v1alpha3 ---- -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: destinationrules.networking.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: istio-pilot -spec: - group: networking.istio.io - names: - kind: DestinationRule - listKind: DestinationRuleList - plural: destinationrules - singular: destinationrule - categories: - - istio-io - - networking-istio-io - scope: Namespaced - version: v1alpha3 ---- -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: serviceentries.networking.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: istio-pilot -spec: - group: networking.istio.io - names: - kind: ServiceEntry - listKind: ServiceEntryList - plural: serviceentries - singular: serviceentry - categories: - - istio-io - - networking-istio-io - scope: Namespaced - version: v1alpha3 ---- -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: gateways.networking.istio.io - annotations: - "helm.sh/hook": crd-install - "helm.sh/hook-weight": "-5" - labels: - app: istio-pilot -spec: - group: networking.istio.io - names: - kind: Gateway - plural: gateways - singular: gateway - categories: - - istio-io - - networking-istio-io - scope: Namespaced - version: v1alpha3 ---- -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: envoyfilters.networking.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: istio-pilot -spec: - group: networking.istio.io - names: - kind: EnvoyFilter - plural: envoyfilters - singular: envoyfilter - categories: - - istio-io - - networking-istio-io - scope: Namespaced - version: v1alpha3 ---- -# {{- end }} - -# these CRDs only make sense when security is enabled -# {{- if .Values.security.enabled }} -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - annotations: - "helm.sh/hook": crd-install - name: policies.authentication.istio.io -spec: - group: authentication.istio.io - names: - kind: Policy - plural: policies - singular: policy - categories: - - istio-io - - authentication-istio-io - scope: Namespaced - version: v1alpha1 ---- -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - annotations: - "helm.sh/hook": crd-install - name: meshpolicies.authentication.istio.io -spec: - group: authentication.istio.io - names: - kind: MeshPolicy - listKind: MeshPolicyList - plural: meshpolicies - singular: meshpolicy - categories: - - istio-io - - authentication-istio-io - scope: Cluster - version: v1alpha1 ---- -# {{- end }} - -# {{- if .Values.mixer.enabled }} -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - annotations: - "helm.sh/hook": crd-install - name: httpapispecbindings.config.istio.io -spec: - group: config.istio.io - names: - kind: HTTPAPISpecBinding - plural: httpapispecbindings - singular: httpapispecbinding - categories: - - istio-io - - apim-istio-io - scope: Namespaced - version: v1alpha2 ---- -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - annotations: - "helm.sh/hook": crd-install - name: httpapispecs.config.istio.io -spec: - group: config.istio.io - names: - kind: HTTPAPISpec - plural: httpapispecs - singular: httpapispec - categories: - - istio-io - - apim-istio-io - scope: Namespaced - version: v1alpha2 ---- -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - annotations: - "helm.sh/hook": crd-install - name: quotaspecbindings.config.istio.io -spec: - group: config.istio.io - names: - kind: QuotaSpecBinding - plural: quotaspecbindings - singular: quotaspecbinding - categories: - - istio-io - - apim-istio-io - scope: Namespaced - version: v1alpha2 ---- -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - annotations: - "helm.sh/hook": crd-install - name: quotaspecs.config.istio.io -spec: - group: config.istio.io - names: - kind: QuotaSpec - plural: quotaspecs - singular: quotaspec - categories: - - istio-io - - apim-istio-io - scope: Namespaced - version: v1alpha2 ---- - -# Mixer CRDs -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: rules.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: istio.io.mixer - istio: core -spec: - group: config.istio.io - names: - kind: rule - plural: rules - singular: rule - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: attributemanifests.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: istio.io.mixer - istio: core -spec: - group: config.istio.io - names: - kind: attributemanifest - plural: attributemanifests - singular: attributemanifest - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: bypasses.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: bypass - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: bypass - plural: bypasses - singular: bypass - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: circonuses.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: circonus - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: circonus - plural: circonuses - singular: circonus - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: deniers.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: denier - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: denier - plural: deniers - singular: denier - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: fluentds.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: fluentd - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: fluentd - plural: fluentds - singular: fluentd - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: kubernetesenvs.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: kubernetesenv - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: kubernetesenv - plural: kubernetesenvs - singular: kubernetesenv - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: listcheckers.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: listchecker - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: listchecker - plural: listcheckers - singular: listchecker - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: memquotas.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: memquota - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: memquota - plural: memquotas - singular: memquota - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: noops.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: noop - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: noop - plural: noops - singular: noop - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: opas.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: opa - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: opa - plural: opas - singular: opa - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: prometheuses.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: prometheus - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: prometheus - plural: prometheuses - singular: prometheus - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: rbacs.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: rbac - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: rbac - plural: rbacs - singular: rbac - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: redisquotas.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - package: redisquota - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: redisquota - plural: redisquotas - singular: redisquota - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: servicecontrols.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: servicecontrol - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: servicecontrol - plural: servicecontrols - singular: servicecontrol - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 - ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: signalfxs.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: signalfx - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: signalfx - plural: signalfxs - singular: signalfx - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: solarwindses.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: solarwinds - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: solarwinds - plural: solarwindses - singular: solarwinds - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: stackdrivers.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: stackdriver - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: stackdriver - plural: stackdrivers - singular: stackdriver - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: statsds.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: statsd - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: statsd - plural: statsds - singular: statsd - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: stdios.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: stdio - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: stdio - plural: stdios - singular: stdio - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: apikeys.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: apikey - istio: mixer-instance -spec: - group: config.istio.io - names: - kind: apikey - plural: apikeys - singular: apikey - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: authorizations.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: authorization - istio: mixer-instance -spec: - group: config.istio.io - names: - kind: authorization - plural: authorizations - singular: authorization - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: checknothings.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: checknothing - istio: mixer-instance -spec: - group: config.istio.io - names: - kind: checknothing - plural: checknothings - singular: checknothing - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: kuberneteses.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: adapter.template.kubernetes - istio: mixer-instance -spec: - group: config.istio.io - names: - kind: kubernetes - plural: kuberneteses - singular: kubernetes - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: listentries.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: listentry - istio: mixer-instance -spec: - group: config.istio.io - names: - kind: listentry - plural: listentries - singular: listentry - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: logentries.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: logentry - istio: mixer-instance -spec: - group: config.istio.io - names: - kind: logentry - plural: logentries - singular: logentry - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: edges.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: edge - istio: mixer-instance -spec: - group: config.istio.io - names: - kind: edge - plural: edges - singular: edge - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: metrics.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: metric - istio: mixer-instance -spec: - group: config.istio.io - names: - kind: metric - plural: metrics - singular: metric - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: quotas.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: quota - istio: mixer-instance -spec: - group: config.istio.io - names: - kind: quota - plural: quotas - singular: quota - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: reportnothings.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: reportnothing - istio: mixer-instance -spec: - group: config.istio.io - names: - kind: reportnothing - plural: reportnothings - singular: reportnothing - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: servicecontrolreports.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: servicecontrolreport - istio: mixer-instance -spec: - group: config.istio.io - names: - kind: servicecontrolreport - plural: servicecontrolreports - singular: servicecontrolreport - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: tracespans.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: tracespan - istio: mixer-instance -spec: - group: config.istio.io - names: - kind: tracespan - plural: tracespans - singular: tracespan - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: rbacconfigs.rbac.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: istio.io.mixer - istio: rbac -spec: - group: rbac.istio.io - names: - kind: RbacConfig - plural: rbacconfigs - singular: rbacconfig - categories: - - istio-io - - rbac-istio-io - scope: Namespaced - version: v1alpha1 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: serviceroles.rbac.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: istio.io.mixer - istio: rbac -spec: - group: rbac.istio.io - names: - kind: ServiceRole - plural: serviceroles - singular: servicerole - categories: - - istio-io - - rbac-istio-io - scope: Namespaced - version: v1alpha1 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: servicerolebindings.rbac.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: istio.io.mixer - istio: rbac -spec: - group: rbac.istio.io - names: - kind: ServiceRoleBinding - plural: servicerolebindings - singular: servicerolebinding - categories: - - istio-io - - rbac-istio-io - scope: Namespaced - version: v1alpha1 ---- -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: adapters.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: adapter - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: adapter - plural: adapters - singular: adapter - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: instances.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: instance - istio: mixer-instance -spec: - group: config.istio.io - names: - kind: instance - plural: instances - singular: instance - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: templates.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: template - istio: mixer-template -spec: - group: config.istio.io - names: - kind: template - plural: templates - singular: template - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: handlers.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: handler - istio: mixer-handler -spec: - group: config.istio.io - names: - kind: handler - plural: handlers - singular: handler - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- -# {{- end }} -# {{ end }} \ No newline at end of file diff --git a/istio/istio-demo.yaml b/istio/istio-demo.yaml deleted file mode 100644 index bbbeaa2..0000000 --- a/istio/istio-demo.yaml +++ /dev/null @@ -1,5134 +0,0 @@ -apiVersion: v1 -kind: Namespace -metadata: - name: istio-system - labels: - istio-injection: disabled ---- -# Source: istio/charts/galley/templates/configmap.yaml -apiVersion: v1 -kind: ConfigMap -metadata: - name: istio-galley-configuration - namespace: istio-system - labels: - app: istio-galley - chart: galley-1.0.0 - release: RELEASE-NAME - heritage: Tiller - istio: mixer -data: - validatingwebhookconfiguration.yaml: |- - apiVersion: admissionregistration.k8s.io/v1beta1 - kind: ValidatingWebhookConfiguration - metadata: - name: istio-galley - namespace: istio-system - labels: - app: istio-galley - chart: galley-1.0.0 - release: RELEASE-NAME - heritage: Tiller - webhooks: - - name: pilot.validation.istio.io - clientConfig: - service: - name: istio-galley - namespace: istio-system - path: "/admitpilot" - caBundle: "" - rules: - - operations: - - CREATE - - UPDATE - apiGroups: - - config.istio.io - apiVersions: - - v1alpha2 - resources: - - httpapispecs - - httpapispecbindings - - quotaspecs - - quotaspecbindings - - operations: - - CREATE - - UPDATE - apiGroups: - - rbac.istio.io - apiVersions: - - "*" - resources: - - "*" - - operations: - - CREATE - - UPDATE - apiGroups: - - authentication.istio.io - apiVersions: - - "*" - resources: - - "*" - - operations: - - CREATE - - UPDATE - apiGroups: - - networking.istio.io - apiVersions: - - "*" - resources: - - destinationrules - - envoyfilters - - gateways - # disabled per @costinm's request - # - serviceentries - - virtualservices - failurePolicy: Fail - - name: mixer.validation.istio.io - clientConfig: - service: - name: istio-galley - namespace: istio-system - path: "/admitmixer" - caBundle: "" - rules: - - operations: - - CREATE - - UPDATE - apiGroups: - - config.istio.io - apiVersions: - - v1alpha2 - resources: - - rules - - attributemanifests - - circonuses - - deniers - - fluentds - - kubernetesenvs - - listcheckers - - memquotas - - noops - - opas - - prometheuses - - rbacs - - servicecontrols - - solarwindses - - stackdrivers - - statsds - - stdios - - apikeys - - authorizations - - checknothings - # - kuberneteses - - listentries - - logentries - - metrics - - quotas - - reportnothings - - servicecontrolreports - - tracespans - failurePolicy: Fail - - ---- -# Source: istio/charts/grafana/templates/configmap.yaml -apiVersion: v1 -kind: ConfigMap -metadata: - name: istio-grafana-custom-resources - namespace: istio-system - labels: - app: istio-grafana - chart: grafana-0.1.0 - release: RELEASE-NAME - heritage: Tiller - istio: grafana -data: - custom-resources.yaml: |- - apiVersion: authentication.istio.io/v1alpha1 - kind: Policy - metadata: - name: grafana-ports-mtls-disabled - namespace: istio-system - spec: - targets: - - name: grafana - ports: - - number: 3000 - run.sh: |- - #!/bin/sh - - set -x - - if [ "$#" -ne "1" ]; then - echo "first argument should be path to custom resource yaml" - exit 1 - fi - - pathToResourceYAML=${1} - - /kubectl get validatingwebhookconfiguration istio-galley 2>/dev/null - if [ "$?" -eq 0 ]; then - echo "istio-galley validatingwebhookconfiguration found - waiting for istio-galley deployment to be ready" - while true; do - /kubectl -n istio-system get deployment istio-galley 2>/dev/null - if [ "$?" -eq 0 ]; then - break - fi - sleep 1 - done - /kubectl -n istio-system rollout status deployment istio-galley - if [ "$?" -ne 0 ]; then - echo "istio-galley deployment rollout status check failed" - exit 1 - fi - echo "istio-galley deployment ready for configuration validation" - fi - sleep 5 - /kubectl apply -f ${pathToResourceYAML} - - ---- -# Source: istio/charts/mixer/templates/configmap.yaml -apiVersion: v1 -kind: ConfigMap -metadata: - name: istio-statsd-prom-bridge - namespace: istio-system - labels: - app: istio-statsd-prom-bridge - chart: mixer-1.0.0 - release: RELEASE-NAME - heritage: Tiller - istio: mixer -data: - mapping.conf: |- - ---- -# Source: istio/charts/prometheus/templates/configmap.yaml -apiVersion: v1 -kind: ConfigMap -metadata: - name: prometheus - namespace: istio-system - labels: - app: prometheus - chart: prometheus-0.1.0 - release: RELEASE-NAME - heritage: Tiller -data: - prometheus.yml: |- - global: - scrape_interval: 15s - scrape_configs: - - - job_name: 'istio-mesh' - # Override the global default and scrape targets from this job every 5 seconds. - scrape_interval: 5s - - kubernetes_sd_configs: - - role: endpoints - namespaces: - names: - - istio-system - - relabel_configs: - - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name] - action: keep - regex: istio-telemetry;prometheus - - - job_name: 'envoy' - # Override the global default and scrape targets from this job every 5 seconds. - scrape_interval: 5s - # metrics_path defaults to '/metrics' - # scheme defaults to 'http'. - - kubernetes_sd_configs: - - role: endpoints - namespaces: - names: - - istio-system - - relabel_configs: - - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name] - action: keep - regex: istio-statsd-prom-bridge;statsd-prom - - - job_name: 'istio-policy' - # Override the global default and scrape targets from this job every 5 seconds. - scrape_interval: 5s - # metrics_path defaults to '/metrics' - # scheme defaults to 'http'. - - kubernetes_sd_configs: - - role: endpoints - namespaces: - names: - - istio-system - - - relabel_configs: - - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name] - action: keep - regex: istio-policy;http-monitoring - - - job_name: 'istio-telemetry' - # Override the global default and scrape targets from this job every 5 seconds. - scrape_interval: 5s - # metrics_path defaults to '/metrics' - # scheme defaults to 'http'. - - kubernetes_sd_configs: - - role: endpoints - namespaces: - names: - - istio-system - - relabel_configs: - - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name] - action: keep - regex: istio-telemetry;http-monitoring - - - job_name: 'pilot' - # Override the global default and scrape targets from this job every 5 seconds. - scrape_interval: 5s - # metrics_path defaults to '/metrics' - # scheme defaults to 'http'. - - kubernetes_sd_configs: - - role: endpoints - namespaces: - names: - - istio-system - - relabel_configs: - - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name] - action: keep - regex: istio-pilot;http-monitoring - - - job_name: 'galley' - # Override the global default and scrape targets from this job every 5 seconds. - scrape_interval: 5s - # metrics_path defaults to '/metrics' - # scheme defaults to 'http'. - - kubernetes_sd_configs: - - role: endpoints - namespaces: - names: - - istio-system - - relabel_configs: - - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name] - action: keep - regex: istio-galley;http-monitoring - - # scrape config for API servers - - job_name: 'kubernetes-apiservers' - kubernetes_sd_configs: - - role: endpoints - namespaces: - names: - - default - scheme: https - tls_config: - ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt - bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token - relabel_configs: - - source_labels: [__meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name] - action: keep - regex: kubernetes;https - - # scrape config for nodes (kubelet) - - job_name: 'kubernetes-nodes' - scheme: https - tls_config: - ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt - bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token - kubernetes_sd_configs: - - role: node - relabel_configs: - - action: labelmap - regex: __meta_kubernetes_node_label_(.+) - - target_label: __address__ - replacement: kubernetes.default.svc:443 - - source_labels: [__meta_kubernetes_node_name] - regex: (.+) - target_label: __metrics_path__ - replacement: /api/v1/nodes/${1}/proxy/metrics - - # Scrape config for Kubelet cAdvisor. - # - # This is required for Kubernetes 1.7.3 and later, where cAdvisor metrics - # (those whose names begin with 'container_') have been removed from the - # Kubelet metrics endpoint. This job scrapes the cAdvisor endpoint to - # retrieve those metrics. - # - # In Kubernetes 1.7.0-1.7.2, these metrics are only exposed on the cAdvisor - # HTTP endpoint; use "replacement: /api/v1/nodes/${1}:4194/proxy/metrics" - # in that case (and ensure cAdvisor's HTTP server hasn't been disabled with - # the --cadvisor-port=0 Kubelet flag). - # - # This job is not necessary and should be removed in Kubernetes 1.6 and - # earlier versions, or it will cause the metrics to be scraped twice. - - job_name: 'kubernetes-cadvisor' - scheme: https - tls_config: - ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt - bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token - kubernetes_sd_configs: - - role: node - relabel_configs: - - action: labelmap - regex: __meta_kubernetes_node_label_(.+) - - target_label: __address__ - replacement: kubernetes.default.svc:443 - - source_labels: [__meta_kubernetes_node_name] - regex: (.+) - target_label: __metrics_path__ - replacement: /api/v1/nodes/${1}/proxy/metrics/cadvisor - - # scrape config for service endpoints. - - job_name: 'kubernetes-service-endpoints' - kubernetes_sd_configs: - - role: endpoints - relabel_configs: - - source_labels: [__meta_kubernetes_service_annotation_prometheus_io_scrape] - action: keep - regex: true - - source_labels: [__meta_kubernetes_service_annotation_prometheus_io_scheme] - action: replace - target_label: __scheme__ - regex: (https?) - - source_labels: [__meta_kubernetes_service_annotation_prometheus_io_path] - action: replace - target_label: __metrics_path__ - regex: (.+) - - source_labels: [__address__, __meta_kubernetes_service_annotation_prometheus_io_port] - action: replace - target_label: __address__ - regex: ([^:]+)(?::\d+)?;(\d+) - replacement: $1:$2 - - action: labelmap - regex: __meta_kubernetes_service_label_(.+) - - source_labels: [__meta_kubernetes_namespace] - action: replace - target_label: kubernetes_namespace - - source_labels: [__meta_kubernetes_service_name] - action: replace - target_label: kubernetes_name - - # Example scrape config for pods - - job_name: 'kubernetes-pods' - kubernetes_sd_configs: - - role: pod - - relabel_configs: - - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scrape] - action: keep - regex: true - - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_path] - action: replace - target_label: __metrics_path__ - regex: (.+) - - source_labels: [__address__, __meta_kubernetes_pod_annotation_prometheus_io_port] - action: replace - regex: ([^:]+)(?::\d+)?;(\d+) - replacement: $1:$2 - target_label: __address__ - - action: labelmap - regex: __meta_kubernetes_pod_label_(.+) - - source_labels: [__meta_kubernetes_namespace] - action: replace - target_label: namespace - - source_labels: [__meta_kubernetes_pod_name] - action: replace - target_label: pod_name - ---- -# Source: istio/charts/security/templates/configmap.yaml -apiVersion: v1 -kind: ConfigMap -metadata: - name: istio-security-custom-resources - namespace: istio-system - labels: - app: istio-security - chart: security-1.0.0 - release: RELEASE-NAME - heritage: Tiller - istio: security -data: - custom-resources.yaml: |- - run.sh: |- - #!/bin/sh - - set -x - - if [ "$#" -ne "1" ]; then - echo "first argument should be path to custom resource yaml" - exit 1 - fi - - pathToResourceYAML=${1} - - /kubectl get validatingwebhookconfiguration istio-galley 2>/dev/null - if [ "$?" -eq 0 ]; then - echo "istio-galley validatingwebhookconfiguration found - waiting for istio-galley deployment to be ready" - while true; do - /kubectl -n istio-system get deployment istio-galley 2>/dev/null - if [ "$?" -eq 0 ]; then - break - fi - sleep 1 - done - /kubectl -n istio-system rollout status deployment istio-galley - if [ "$?" -ne 0 ]; then - echo "istio-galley deployment rollout status check failed" - exit 1 - fi - echo "istio-galley deployment ready for configuration validation" - fi - sleep 5 - /kubectl apply -f ${pathToResourceYAML} - - ---- -# Source: istio/templates/configmap.yaml - -apiVersion: v1 -kind: ConfigMap -metadata: - name: istio - namespace: istio-system - labels: - app: istio - chart: istio-1.0.0 - release: RELEASE-NAME - heritage: Tiller -data: - mesh: |- - # Set the following variable to true to disable policy checks by the Mixer. - # Note that metrics will still be reported to the Mixer. - disablePolicyChecks: false - - # Set enableTracing to false to disable request tracing. - enableTracing: true - - # Set accessLogFile to empty string to disable access log. - accessLogFile: "/dev/stdout" - # - # Deprecated: mixer is using EDS - mixerCheckServer: istio-policy.istio-system.svc.cluster.local:9091 - mixerReportServer: istio-telemetry.istio-system.svc.cluster.local:9091 - - # Unix Domain Socket through which envoy communicates with NodeAgent SDS to get - # key/cert for mTLS. Use secret-mount files instead of SDS if set to empty. - sdsUdsPath: "" - - # How frequently should Envoy fetch key/cert from NodeAgent. - sdsRefreshDelay: 15s - - # - defaultConfig: - # - # TCP connection timeout between Envoy & the application, and between Envoys. - connectTimeout: 10s - # - ### ADVANCED SETTINGS ############# - # Where should envoy's configuration be stored in the istio-proxy container - configPath: "/etc/istio/proxy" - binaryPath: "/usr/local/bin/envoy" - # The pseudo service name used for Envoy. - serviceCluster: istio-proxy - # These settings that determine how long an old Envoy - # process should be kept alive after an occasional reload. - drainDuration: 45s - parentShutdownDuration: 1m0s - # - # The mode used to redirect inbound connections to Envoy. This setting - # has no effect on outbound traffic: iptables REDIRECT is always used for - # outbound connections. - # If "REDIRECT", use iptables REDIRECT to NAT and redirect to Envoy. - # The "REDIRECT" mode loses source addresses during redirection. - # If "TPROXY", use iptables TPROXY to redirect to Envoy. - # The "TPROXY" mode preserves both the source and destination IP - # addresses and ports, so that they can be used for advanced filtering - # and manipulation. - # The "TPROXY" mode also configures the sidecar to run with the - # CAP_NET_ADMIN capability, which is required to use TPROXY. - #interceptionMode: REDIRECT - # - # Port where Envoy listens (on local host) for admin commands - # You can exec into the istio-proxy container in a pod and - # curl the admin port (curl http://localhost:15000/) to obtain - # diagnostic information from Envoy. See - # https://lyft.github.io/envoy/docs/operations/admin.html - # for more details - proxyAdminPort: 15000 - # - # Zipkin trace collector - zipkinAddress: zipkin.istio-system:9411 - # - # Statsd metrics collector converts statsd metrics into Prometheus metrics. - statsdUdpAddress: istio-statsd-prom-bridge.istio-system:9125 - # - # Mutual TLS authentication between sidecars and istio control plane. - controlPlaneAuthPolicy: NONE - # - # Address where istio Pilot service is running - discoveryAddress: istio-pilot.istio-system:15007 - ---- -# Source: istio/templates/sidecar-injector-configmap.yaml - -apiVersion: v1 -kind: ConfigMap -metadata: - name: istio-sidecar-injector - namespace: istio-system - labels: - app: istio - chart: istio-1.0.0 - release: RELEASE-NAME - heritage: Tiller - istio: sidecar-injector -data: - config: |- - policy: enabled - template: |- - initContainers: - - name: istio-init - image: "gcr.io/istio-release/proxy_init:1.0.0" - args: - - "-p" - - [[ .MeshConfig.ProxyListenPort ]] - - "-u" - - 1337 - - "-m" - - [[ or (index .ObjectMeta.Annotations "sidecar.istio.io/interceptionMode") .ProxyConfig.InterceptionMode.String ]] - - "-i" - [[ if (isset .ObjectMeta.Annotations "traffic.sidecar.istio.io/includeOutboundIPRanges") -]] - - "[[ index .ObjectMeta.Annotations "traffic.sidecar.istio.io/includeOutboundIPRanges" ]]" - [[ else -]] - - "*" - [[ end -]] - - "-x" - [[ if (isset .ObjectMeta.Annotations "traffic.sidecar.istio.io/excludeOutboundIPRanges") -]] - - "[[ index .ObjectMeta.Annotations "traffic.sidecar.istio.io/excludeOutboundIPRanges" ]]" - [[ else -]] - - "" - [[ end -]] - - "-b" - [[ if (isset .ObjectMeta.Annotations "traffic.sidecar.istio.io/includeInboundPorts") -]] - - "[[ index .ObjectMeta.Annotations "traffic.sidecar.istio.io/includeInboundPorts" ]]" - [[ else -]] - - [[ range .Spec.Containers -]][[ range .Ports -]][[ .ContainerPort -]], [[ end -]][[ end -]][[ end]] - - "-d" - [[ if (isset .ObjectMeta.Annotations "traffic.sidecar.istio.io/excludeInboundPorts") -]] - - "[[ index .ObjectMeta.Annotations "traffic.sidecar.istio.io/excludeInboundPorts" ]]" - [[ else -]] - - "" - [[ end -]] - imagePullPolicy: IfNotPresent - securityContext: - capabilities: - add: - - NET_ADMIN - privileged: true - restartPolicy: Always - - containers: - - name: istio-proxy - image: [[ if (isset .ObjectMeta.Annotations "sidecar.istio.io/proxyImage") -]] - "[[ index .ObjectMeta.Annotations "sidecar.istio.io/proxyImage" ]]" - [[ else -]] - gcr.io/istio-release/proxyv2:1.0.0 - [[ end -]] - args: - - proxy - - sidecar - - --configPath - - [[ .ProxyConfig.ConfigPath ]] - - --binaryPath - - [[ .ProxyConfig.BinaryPath ]] - - --serviceCluster - [[ if ne "" (index .ObjectMeta.Labels "app") -]] - - [[ index .ObjectMeta.Labels "app" ]] - [[ else -]] - - "istio-proxy" - [[ end -]] - - --drainDuration - - [[ formatDuration .ProxyConfig.DrainDuration ]] - - --parentShutdownDuration - - [[ formatDuration .ProxyConfig.ParentShutdownDuration ]] - - --discoveryAddress - - [[ .ProxyConfig.DiscoveryAddress ]] - - --discoveryRefreshDelay - - [[ formatDuration .ProxyConfig.DiscoveryRefreshDelay ]] - - --zipkinAddress - - [[ .ProxyConfig.ZipkinAddress ]] - - --connectTimeout - - [[ formatDuration .ProxyConfig.ConnectTimeout ]] - - --statsdUdpAddress - - [[ .ProxyConfig.StatsdUdpAddress ]] - - --proxyAdminPort - - [[ .ProxyConfig.ProxyAdminPort ]] - - --controlPlaneAuthPolicy - - [[ or (index .ObjectMeta.Annotations "sidecar.istio.io/controlPlaneAuthPolicy") .ProxyConfig.ControlPlaneAuthPolicy ]] - env: - - name: POD_NAME - valueFrom: - fieldRef: - fieldPath: metadata.name - - name: POD_NAMESPACE - valueFrom: - fieldRef: - fieldPath: metadata.namespace - - name: INSTANCE_IP - valueFrom: - fieldRef: - fieldPath: status.podIP - - name: ISTIO_META_POD_NAME - valueFrom: - fieldRef: - fieldPath: metadata.name - - name: ISTIO_META_INTERCEPTION_MODE - value: [[ or (index .ObjectMeta.Annotations "sidecar.istio.io/interceptionMode") .ProxyConfig.InterceptionMode.String ]] - imagePullPolicy: IfNotPresent - securityContext: - privileged: false - readOnlyRootFilesystem: true - [[ if eq (or (index .ObjectMeta.Annotations "sidecar.istio.io/interceptionMode") .ProxyConfig.InterceptionMode.String) "TPROXY" -]] - capabilities: - add: - - NET_ADMIN - runAsGroup: 1337 - [[ else -]] - runAsUser: 1337 - [[ end -]] - restartPolicy: Always - resources: - [[ if (isset .ObjectMeta.Annotations "sidecar.istio.io/proxyCPU") -]] - requests: - cpu: "[[ index .ObjectMeta.Annotations "sidecar.istio.io/proxyCPU" ]]" - memory: "[[ index .ObjectMeta.Annotations "sidecar.istio.io/proxyMemory" ]]" - [[ else -]] - requests: - cpu: 10m - - [[ end -]] - volumeMounts: - - mountPath: /etc/istio/proxy - name: istio-envoy - - mountPath: /etc/certs/ - name: istio-certs - readOnly: true - volumes: - - emptyDir: - medium: Memory - name: istio-envoy - - name: istio-certs - secret: - optional: true - [[ if eq .Spec.ServiceAccountName "" -]] - secretName: istio.default - [[ else -]] - secretName: [[ printf "istio.%s" .Spec.ServiceAccountName ]] - [[ end -]] - ---- -# Source: istio/charts/galley/templates/serviceaccount.yaml -apiVersion: v1 -kind: ServiceAccount -metadata: - name: istio-galley-service-account - namespace: istio-system - labels: - app: istio-galley - chart: galley-1.0.0 - heritage: Tiller - release: RELEASE-NAME - ---- -# Source: istio/charts/gateways/templates/serviceaccount.yaml - -apiVersion: v1 -kind: ServiceAccount -metadata: - name: istio-egressgateway-service-account - namespace: istio-system - labels: - app: egressgateway - chart: gateways-1.0.0 - heritage: Tiller - release: RELEASE-NAME ---- -apiVersion: v1 -kind: ServiceAccount -metadata: - name: istio-ingressgateway-service-account - namespace: istio-system - labels: - app: ingressgateway - chart: gateways-1.0.0 - heritage: Tiller - release: RELEASE-NAME ---- - ---- -# Source: istio/charts/grafana/templates/create-custom-resources-job.yaml -apiVersion: v1 -kind: ServiceAccount -metadata: - name: istio-grafana-post-install-account - namespace: istio-system - labels: - app: istio-grafana - chart: grafana-0.1.0 - heritage: Tiller - release: RELEASE-NAME ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRole -metadata: - name: istio-grafana-post-install-istio-system - labels: - app: istio-grafana - chart: grafana-0.1.0 - heritage: Tiller - release: RELEASE-NAME -rules: -- apiGroups: ["authentication.istio.io"] # needed to create default authn policy - resources: ["*"] - verbs: ["*"] ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: istio-grafana-post-install-role-binding-istio-system - labels: - app: istio-grafana - chart: grafana-0.1.0 - heritage: Tiller - release: RELEASE-NAME -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: istio-grafana-post-install-istio-system -subjects: - - kind: ServiceAccount - name: istio-grafana-post-install-account - namespace: istio-system ---- -apiVersion: batch/v1 -kind: Job -metadata: - name: istio-grafana-post-install - namespace: istio-system - annotations: - "helm.sh/hook": post-install - "helm.sh/hook-delete-policy": hook-succeeded - labels: - app: istio-grafana - chart: grafana-0.1.0 - release: RELEASE-NAME - heritage: Tiller -spec: - template: - metadata: - name: istio-grafana-post-install - labels: - app: istio-grafana - release: RELEASE-NAME - spec: - serviceAccountName: istio-grafana-post-install-account - containers: - - name: hyperkube - image: "quay.io/coreos/hyperkube:v1.7.6_coreos.0" - command: [ "/bin/bash", "/tmp/grafana/run.sh", "/tmp/grafana/custom-resources.yaml" ] - volumeMounts: - - mountPath: "/tmp/grafana" - name: tmp-configmap-grafana - volumes: - - name: tmp-configmap-grafana - configMap: - name: istio-grafana-custom-resources - restartPolicy: OnFailure - ---- -# Source: istio/charts/mixer/templates/serviceaccount.yaml -apiVersion: v1 -kind: ServiceAccount -metadata: - name: istio-mixer-service-account - namespace: istio-system - labels: - app: mixer - chart: mixer-1.0.0 - heritage: Tiller - release: RELEASE-NAME - ---- -# Source: istio/charts/pilot/templates/serviceaccount.yaml -apiVersion: v1 -kind: ServiceAccount -metadata: - name: istio-pilot-service-account - namespace: istio-system - labels: - app: istio-pilot - chart: pilot-1.0.0 - heritage: Tiller - release: RELEASE-NAME - ---- -# Source: istio/charts/prometheus/templates/serviceaccount.yaml -apiVersion: v1 -kind: ServiceAccount -metadata: - name: prometheus - namespace: istio-system - ---- -# Source: istio/charts/security/templates/cleanup-secrets.yaml -# The reason for creating a ServiceAccount and ClusterRole specifically for this -# post-delete hooked job is because the citadel ServiceAccount is being deleted -# before this hook is launched. On the other hand, running this hook before the -# deletion of the citadel (e.g. pre-delete) won't delete the secrets because they -# will be re-created immediately by the to-be-deleted citadel. -# -# It's also important that the ServiceAccount, ClusterRole and ClusterRoleBinding -# will be ready before running the hooked Job therefore the hook weights. - -apiVersion: v1 -kind: ServiceAccount -metadata: - name: istio-cleanup-secrets-service-account - namespace: istio-system - annotations: - "helm.sh/hook": post-delete - "helm.sh/hook-delete-policy": hook-succeeded - "helm.sh/hook-weight": "1" - labels: - app: security - chart: security-1.0.0 - heritage: Tiller - release: RELEASE-NAME ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRole -metadata: - name: istio-cleanup-secrets-istio-system - annotations: - "helm.sh/hook": post-delete - "helm.sh/hook-delete-policy": hook-succeeded - "helm.sh/hook-weight": "1" - labels: - app: security - chart: security-1.0.0 - heritage: Tiller - release: RELEASE-NAME -rules: -- apiGroups: [""] - resources: ["secrets"] - verbs: ["list", "delete"] ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: istio-cleanup-secrets-istio-system - annotations: - "helm.sh/hook": post-delete - "helm.sh/hook-delete-policy": hook-succeeded - "helm.sh/hook-weight": "2" - labels: - app: security - chart: security-1.0.0 - heritage: Tiller - release: RELEASE-NAME -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: istio-cleanup-secrets-istio-system -subjects: - - kind: ServiceAccount - name: istio-cleanup-secrets-service-account - namespace: istio-system ---- -apiVersion: batch/v1 -kind: Job -metadata: - name: istio-cleanup-secrets - namespace: istio-system - annotations: - "helm.sh/hook": post-delete - "helm.sh/hook-delete-policy": hook-succeeded - "helm.sh/hook-weight": "3" - labels: - app: security - chart: security-1.0.0 - release: RELEASE-NAME - heritage: Tiller -spec: - template: - metadata: - name: istio-cleanup-secrets - labels: - app: security - release: RELEASE-NAME - spec: - serviceAccountName: istio-cleanup-secrets-service-account - containers: - - name: hyperkube - image: "quay.io/coreos/hyperkube:v1.7.6_coreos.0" - command: - - /bin/bash - - -c - - > - kubectl get secret --all-namespaces | grep "istio.io/key-and-cert" | while read -r entry; do - ns=$(echo $entry | awk '{print $1}'); - name=$(echo $entry | awk '{print $2}'); - kubectl delete secret $name -n $ns; - done - restartPolicy: OnFailure - ---- -# Source: istio/charts/security/templates/serviceaccount.yaml -apiVersion: v1 -kind: ServiceAccount -metadata: - name: istio-citadel-service-account - namespace: istio-system - labels: - app: security - chart: security-1.0.0 - heritage: Tiller - release: RELEASE-NAME - ---- -# Source: istio/charts/sidecarInjectorWebhook/templates/serviceaccount.yaml -apiVersion: v1 -kind: ServiceAccount -metadata: - name: istio-sidecar-injector-service-account - namespace: istio-system - labels: - app: istio-sidecar-injector - chart: sidecarInjectorWebhook-1.0.0 - heritage: Tiller - release: RELEASE-NAME - ---- -# Source: istio/templates/crds.yaml -# -# these CRDs only make sense when pilot is enabled -# -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: virtualservices.networking.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: istio-pilot -spec: - group: networking.istio.io - names: - kind: VirtualService - listKind: VirtualServiceList - plural: virtualservices - singular: virtualservice - categories: - - istio-io - - networking-istio-io - scope: Namespaced - version: v1alpha3 ---- -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: destinationrules.networking.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: istio-pilot -spec: - group: networking.istio.io - names: - kind: DestinationRule - listKind: DestinationRuleList - plural: destinationrules - singular: destinationrule - categories: - - istio-io - - networking-istio-io - scope: Namespaced - version: v1alpha3 ---- -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: serviceentries.networking.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: istio-pilot -spec: - group: networking.istio.io - names: - kind: ServiceEntry - listKind: ServiceEntryList - plural: serviceentries - singular: serviceentry - categories: - - istio-io - - networking-istio-io - scope: Namespaced - version: v1alpha3 ---- -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: gateways.networking.istio.io - annotations: - "helm.sh/hook": crd-install - "helm.sh/hook-weight": "-5" - labels: - app: istio-pilot -spec: - group: networking.istio.io - names: - kind: Gateway - plural: gateways - singular: gateway - categories: - - istio-io - - networking-istio-io - scope: Namespaced - version: v1alpha3 ---- -apiVersion: apiextensions.k8s.io/v1beta1 -kind: CustomResourceDefinition -metadata: - name: envoyfilters.networking.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: istio-pilot -spec: - group: networking.istio.io - names: - kind: EnvoyFilter - plural: envoyfilters - singular: envoyfilter - categories: - - istio-io - - networking-istio-io - scope: Namespaced - version: v1alpha3 ---- -# - -# these CRDs only make sense when security is enabled -# - -# -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - annotations: - "helm.sh/hook": crd-install - name: httpapispecbindings.config.istio.io -spec: - group: config.istio.io - names: - kind: HTTPAPISpecBinding - plural: httpapispecbindings - singular: httpapispecbinding - categories: - - istio-io - - apim-istio-io - scope: Namespaced - version: v1alpha2 ---- -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - annotations: - "helm.sh/hook": crd-install - name: httpapispecs.config.istio.io -spec: - group: config.istio.io - names: - kind: HTTPAPISpec - plural: httpapispecs - singular: httpapispec - categories: - - istio-io - - apim-istio-io - scope: Namespaced - version: v1alpha2 ---- -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - annotations: - "helm.sh/hook": crd-install - name: quotaspecbindings.config.istio.io -spec: - group: config.istio.io - names: - kind: QuotaSpecBinding - plural: quotaspecbindings - singular: quotaspecbinding - categories: - - istio-io - - apim-istio-io - scope: Namespaced - version: v1alpha2 ---- -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - annotations: - "helm.sh/hook": crd-install - name: quotaspecs.config.istio.io -spec: - group: config.istio.io - names: - kind: QuotaSpec - plural: quotaspecs - singular: quotaspec - categories: - - istio-io - - apim-istio-io - scope: Namespaced - version: v1alpha2 ---- - -# Mixer CRDs -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: rules.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: istio.io.mixer - istio: core -spec: - group: config.istio.io - names: - kind: rule - plural: rules - singular: rule - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: attributemanifests.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: istio.io.mixer - istio: core -spec: - group: config.istio.io - names: - kind: attributemanifest - plural: attributemanifests - singular: attributemanifest - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: bypasses.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: bypass - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: bypass - plural: bypasses - singular: bypass - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: circonuses.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: circonus - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: circonus - plural: circonuses - singular: circonus - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: deniers.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: denier - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: denier - plural: deniers - singular: denier - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: fluentds.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: fluentd - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: fluentd - plural: fluentds - singular: fluentd - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: kubernetesenvs.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: kubernetesenv - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: kubernetesenv - plural: kubernetesenvs - singular: kubernetesenv - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: listcheckers.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: listchecker - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: listchecker - plural: listcheckers - singular: listchecker - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: memquotas.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: memquota - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: memquota - plural: memquotas - singular: memquota - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: noops.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: noop - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: noop - plural: noops - singular: noop - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: opas.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: opa - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: opa - plural: opas - singular: opa - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: prometheuses.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: prometheus - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: prometheus - plural: prometheuses - singular: prometheus - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: rbacs.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: rbac - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: rbac - plural: rbacs - singular: rbac - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: redisquotas.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - package: redisquota - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: redisquota - plural: redisquotas - singular: redisquota - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: servicecontrols.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: servicecontrol - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: servicecontrol - plural: servicecontrols - singular: servicecontrol - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 - ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: signalfxs.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: signalfx - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: signalfx - plural: signalfxs - singular: signalfx - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: solarwindses.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: solarwinds - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: solarwinds - plural: solarwindses - singular: solarwinds - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: stackdrivers.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: stackdriver - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: stackdriver - plural: stackdrivers - singular: stackdriver - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: statsds.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: statsd - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: statsd - plural: statsds - singular: statsd - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: stdios.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: stdio - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: stdio - plural: stdios - singular: stdio - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: apikeys.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: apikey - istio: mixer-instance -spec: - group: config.istio.io - names: - kind: apikey - plural: apikeys - singular: apikey - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: authorizations.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: authorization - istio: mixer-instance -spec: - group: config.istio.io - names: - kind: authorization - plural: authorizations - singular: authorization - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: checknothings.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: checknothing - istio: mixer-instance -spec: - group: config.istio.io - names: - kind: checknothing - plural: checknothings - singular: checknothing - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: kuberneteses.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: adapter.template.kubernetes - istio: mixer-instance -spec: - group: config.istio.io - names: - kind: kubernetes - plural: kuberneteses - singular: kubernetes - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: listentries.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: listentry - istio: mixer-instance -spec: - group: config.istio.io - names: - kind: listentry - plural: listentries - singular: listentry - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: logentries.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: logentry - istio: mixer-instance -spec: - group: config.istio.io - names: - kind: logentry - plural: logentries - singular: logentry - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: edges.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: edge - istio: mixer-instance -spec: - group: config.istio.io - names: - kind: edge - plural: edges - singular: edge - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: metrics.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: metric - istio: mixer-instance -spec: - group: config.istio.io - names: - kind: metric - plural: metrics - singular: metric - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: quotas.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: quota - istio: mixer-instance -spec: - group: config.istio.io - names: - kind: quota - plural: quotas - singular: quota - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: reportnothings.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: reportnothing - istio: mixer-instance -spec: - group: config.istio.io - names: - kind: reportnothing - plural: reportnothings - singular: reportnothing - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: servicecontrolreports.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: servicecontrolreport - istio: mixer-instance -spec: - group: config.istio.io - names: - kind: servicecontrolreport - plural: servicecontrolreports - singular: servicecontrolreport - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: tracespans.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: tracespan - istio: mixer-instance -spec: - group: config.istio.io - names: - kind: tracespan - plural: tracespans - singular: tracespan - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: rbacconfigs.rbac.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: istio.io.mixer - istio: rbac -spec: - group: rbac.istio.io - names: - kind: RbacConfig - plural: rbacconfigs - singular: rbacconfig - categories: - - istio-io - - rbac-istio-io - scope: Namespaced - version: v1alpha1 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: serviceroles.rbac.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: istio.io.mixer - istio: rbac -spec: - group: rbac.istio.io - names: - kind: ServiceRole - plural: serviceroles - singular: servicerole - categories: - - istio-io - - rbac-istio-io - scope: Namespaced - version: v1alpha1 ---- - -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: servicerolebindings.rbac.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: istio.io.mixer - istio: rbac -spec: - group: rbac.istio.io - names: - kind: ServiceRoleBinding - plural: servicerolebindings - singular: servicerolebinding - categories: - - istio-io - - rbac-istio-io - scope: Namespaced - version: v1alpha1 ---- -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: adapters.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: adapter - istio: mixer-adapter -spec: - group: config.istio.io - names: - kind: adapter - plural: adapters - singular: adapter - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: instances.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: instance - istio: mixer-instance -spec: - group: config.istio.io - names: - kind: instance - plural: instances - singular: instance - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: templates.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: template - istio: mixer-template -spec: - group: config.istio.io - names: - kind: template - plural: templates - singular: template - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- -kind: CustomResourceDefinition -apiVersion: apiextensions.k8s.io/v1beta1 -metadata: - name: handlers.config.istio.io - annotations: - "helm.sh/hook": crd-install - labels: - app: mixer - package: handler - istio: mixer-handler -spec: - group: config.istio.io - names: - kind: handler - plural: handlers - singular: handler - categories: - - istio-io - - policy-istio-io - scope: Namespaced - version: v1alpha2 ---- -# -# ---- -# Source: istio/charts/galley/templates/clusterrole.yaml -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRole -metadata: - name: istio-galley-istio-system - labels: - app: istio-galley - chart: galley-1.0.0 - heritage: Tiller - release: RELEASE-NAME -rules: -- apiGroups: ["admissionregistration.k8s.io"] - resources: ["validatingwebhookconfigurations"] - verbs: ["*"] -- apiGroups: ["config.istio.io"] # istio mixer CRD watcher - resources: ["*"] - verbs: ["get", "list", "watch"] -- apiGroups: ["*"] - resources: ["deployments"] - resourceNames: ["istio-galley"] - verbs: ["get"] - ---- -# Source: istio/charts/gateways/templates/clusterrole.yaml - -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRole -metadata: - labels: - app: gateways - chart: gateways-1.0.0 - heritage: Tiller - release: RELEASE-NAME - name: istio-egressgateway-istio-system -rules: -- apiGroups: ["extensions"] - resources: ["thirdpartyresources", "virtualservices", "destinationrules", "gateways"] - verbs: ["get", "watch", "list", "update"] ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRole -metadata: - labels: - app: gateways - chart: gateways-1.0.0 - heritage: Tiller - release: RELEASE-NAME - name: istio-ingressgateway-istio-system -rules: -- apiGroups: ["extensions"] - resources: ["thirdpartyresources", "virtualservices", "destinationrules", "gateways"] - verbs: ["get", "watch", "list", "update"] ---- - ---- -# Source: istio/charts/mixer/templates/clusterrole.yaml -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRole -metadata: - name: istio-mixer-istio-system - labels: - app: mixer - chart: mixer-1.0.0 - heritage: Tiller - release: RELEASE-NAME -rules: -- apiGroups: ["config.istio.io"] # istio CRD watcher - resources: ["*"] - verbs: ["create", "get", "list", "watch", "patch"] -- apiGroups: ["rbac.istio.io"] # istio RBAC watcher - resources: ["*"] - verbs: ["get", "list", "watch"] -- apiGroups: ["apiextensions.k8s.io"] - resources: ["customresourcedefinitions"] - verbs: ["get", "list", "watch"] -- apiGroups: [""] - resources: ["configmaps", "endpoints", "pods", "services", "namespaces", "secrets"] - verbs: ["get", "list", "watch"] -- apiGroups: ["extensions"] - resources: ["replicasets"] - verbs: ["get", "list", "watch"] -- apiGroups: ["apps"] - resources: ["replicasets"] - verbs: ["get", "list", "watch"] - ---- -# Source: istio/charts/pilot/templates/clusterrole.yaml -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRole -metadata: - name: istio-pilot-istio-system - labels: - app: istio-pilot - chart: pilot-1.0.0 - heritage: Tiller - release: RELEASE-NAME -rules: -- apiGroups: ["config.istio.io"] - resources: ["*"] - verbs: ["*"] -- apiGroups: ["rbac.istio.io"] - resources: ["*"] - verbs: ["get", "watch", "list"] -- apiGroups: ["networking.istio.io"] - resources: ["*"] - verbs: ["*"] -- apiGroups: ["authentication.istio.io"] - resources: ["*"] - verbs: ["*"] -- apiGroups: ["apiextensions.k8s.io"] - resources: ["customresourcedefinitions"] - verbs: ["*"] -- apiGroups: ["extensions"] - resources: ["thirdpartyresources", "thirdpartyresources.extensions", "ingresses", "ingresses/status"] - verbs: ["*"] -- apiGroups: [""] - resources: ["configmaps"] - verbs: ["create", "get", "list", "watch", "update"] -- apiGroups: [""] - resources: ["endpoints", "pods", "services"] - verbs: ["get", "list", "watch"] -- apiGroups: [""] - resources: ["namespaces", "nodes", "secrets"] - verbs: ["get", "list", "watch"] - ---- -# Source: istio/charts/prometheus/templates/clusterrole.yaml -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRole -metadata: - name: prometheus-istio-system -rules: -- apiGroups: [""] - resources: - - nodes - - services - - endpoints - - pods - - nodes/proxy - verbs: ["get", "list", "watch"] -- apiGroups: [""] - resources: - - configmaps - verbs: ["get"] -- nonResourceURLs: ["/metrics"] - verbs: ["get"] - ---- -# Source: istio/charts/security/templates/clusterrole.yaml -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRole -metadata: - name: istio-citadel-istio-system - labels: - app: security - chart: security-1.0.0 - heritage: Tiller - release: RELEASE-NAME -rules: -- apiGroups: [""] - resources: ["secrets"] - verbs: ["create", "get", "watch", "list", "update", "delete"] -- apiGroups: [""] - resources: ["serviceaccounts"] - verbs: ["get", "watch", "list"] -- apiGroups: [""] - resources: ["services"] - verbs: ["get", "watch", "list"] - ---- -# Source: istio/charts/sidecarInjectorWebhook/templates/clusterrole.yaml -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRole -metadata: - name: istio-sidecar-injector-istio-system - labels: - app: istio-sidecar-injector - chart: sidecarInjectorWebhook-1.0.0 - heritage: Tiller - release: RELEASE-NAME -rules: -- apiGroups: ["*"] - resources: ["configmaps"] - verbs: ["get", "list", "watch"] -- apiGroups: ["admissionregistration.k8s.io"] - resources: ["mutatingwebhookconfigurations"] - verbs: ["get", "list", "watch", "patch"] - ---- -# Source: istio/charts/galley/templates/clusterrolebinding.yaml -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: istio-galley-admin-role-binding-istio-system - labels: - app: istio-galley - chart: galley-1.0.0 - heritage: Tiller - release: RELEASE-NAME -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: istio-galley-istio-system -subjects: - - kind: ServiceAccount - name: istio-galley-service-account - namespace: istio-system - ---- -# Source: istio/charts/gateways/templates/clusterrolebindings.yaml - -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: istio-egressgateway-istio-system -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: istio-egressgateway-istio-system -subjects: - - kind: ServiceAccount - name: istio-egressgateway-service-account - namespace: istio-system ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: istio-ingressgateway-istio-system -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: istio-ingressgateway-istio-system -subjects: - - kind: ServiceAccount - name: istio-ingressgateway-service-account - namespace: istio-system ---- - ---- -# Source: istio/charts/mixer/templates/clusterrolebinding.yaml -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: istio-mixer-admin-role-binding-istio-system - labels: - app: mixer - chart: mixer-1.0.0 - heritage: Tiller - release: RELEASE-NAME -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: istio-mixer-istio-system -subjects: - - kind: ServiceAccount - name: istio-mixer-service-account - namespace: istio-system - ---- -# Source: istio/charts/pilot/templates/clusterrolebinding.yaml -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: istio-pilot-istio-system - labels: - app: istio-pilot - chart: pilot-1.0.0 - heritage: Tiller - release: RELEASE-NAME -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: istio-pilot-istio-system -subjects: - - kind: ServiceAccount - name: istio-pilot-service-account - namespace: istio-system - ---- -# Source: istio/charts/prometheus/templates/clusterrolebindings.yaml -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: prometheus-istio-system -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: prometheus-istio-system -subjects: -- kind: ServiceAccount - name: prometheus - namespace: istio-system - ---- -# Source: istio/charts/security/templates/clusterrolebinding.yaml -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: istio-citadel-istio-system - labels: - app: security - chart: security-1.0.0 - heritage: Tiller - release: RELEASE-NAME -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: istio-citadel-istio-system -subjects: - - kind: ServiceAccount - name: istio-citadel-service-account - namespace: istio-system - ---- -# Source: istio/charts/sidecarInjectorWebhook/templates/clusterrolebinding.yaml -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: istio-sidecar-injector-admin-role-binding-istio-system - labels: - app: istio-sidecar-injector - chart: sidecarInjectorWebhook-1.0.0 - heritage: Tiller - release: RELEASE-NAME -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: istio-sidecar-injector-istio-system -subjects: - - kind: ServiceAccount - name: istio-sidecar-injector-service-account - namespace: istio-system - ---- -# Source: istio/charts/galley/templates/service.yaml -apiVersion: v1 -kind: Service -metadata: - name: istio-galley - namespace: istio-system - labels: - istio: galley -spec: - ports: - - port: 443 - name: https-validation - - port: 9093 - name: http-monitoring - selector: - istio: galley - ---- -# Source: istio/charts/gateways/templates/service.yaml - -apiVersion: v1 -kind: Service -metadata: - name: istio-egressgateway - namespace: istio-system - annotations: - labels: - chart: gateways-1.0.0 - release: RELEASE-NAME - heritage: Tiller - app: istio-egressgateway - istio: egressgateway -spec: - type: ClusterIP - selector: - app: istio-egressgateway - istio: egressgateway - ports: - - - name: http2 - port: 80 - - - name: https - port: 443 ---- -apiVersion: v1 -kind: Service -metadata: - name: istio-ingressgateway - namespace: istio-system - annotations: - labels: - chart: gateways-1.0.0 - release: RELEASE-NAME - heritage: Tiller - app: istio-ingressgateway - istio: ingressgateway -spec: - type: LoadBalancer - selector: - app: istio-ingressgateway - istio: ingressgateway - ports: - - - name: http2 - nodePort: 31380 - port: 80 - targetPort: 80 - - - name: https - nodePort: 31390 - port: 443 - - - name: tcp - nodePort: 31400 - port: 31400 - - - name: tcp-pilot-grpc-tls - port: 15011 - targetPort: 15011 - - - name: tcp-citadel-grpc-tls - port: 8060 - targetPort: 8060 - - - name: http2-prometheus - port: 15030 - targetPort: 15030 - - - name: http2-grafana - port: 15031 - targetPort: 15031 ---- - ---- -# Source: istio/charts/grafana/templates/service.yaml -apiVersion: v1 -kind: Service -metadata: - name: grafana - namespace: istio-system - annotations: - labels: - app: grafana - chart: grafana-0.1.0 - release: RELEASE-NAME - heritage: Tiller -spec: - type: ClusterIP - ports: - - port: 3000 - targetPort: 3000 - protocol: TCP - name: http - selector: - app: grafana - ---- -# Source: istio/charts/mixer/templates/service.yaml - -apiVersion: v1 -kind: Service -metadata: - name: istio-policy - namespace: istio-system - labels: - chart: mixer-1.0.0 - release: RELEASE-NAME - istio: mixer -spec: - ports: - - name: grpc-mixer - port: 9091 - - name: grpc-mixer-mtls - port: 15004 - - name: http-monitoring - port: 9093 - selector: - istio: mixer - istio-mixer-type: policy ---- -apiVersion: v1 -kind: Service -metadata: - name: istio-telemetry - namespace: istio-system - labels: - chart: mixer-1.0.0 - release: RELEASE-NAME - istio: mixer -spec: - ports: - - name: grpc-mixer - port: 9091 - - name: grpc-mixer-mtls - port: 15004 - - name: http-monitoring - port: 9093 - - name: prometheus - port: 42422 - selector: - istio: mixer - istio-mixer-type: telemetry ---- - ---- -# Source: istio/charts/mixer/templates/statsdtoprom.yaml - ---- -apiVersion: v1 -kind: Service -metadata: - name: istio-statsd-prom-bridge - namespace: istio-system - labels: - chart: mixer-1.0.0 - release: RELEASE-NAME - istio: statsd-prom-bridge -spec: - ports: - - name: statsd-prom - port: 9102 - - name: statsd-udp - port: 9125 - protocol: UDP - selector: - istio: statsd-prom-bridge - ---- - -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: istio-statsd-prom-bridge - namespace: istio-system - labels: - chart: mixer-1.0.0 - release: RELEASE-NAME - istio: mixer -spec: - template: - metadata: - labels: - istio: statsd-prom-bridge - annotations: - sidecar.istio.io/inject: "false" - spec: - serviceAccountName: istio-mixer-service-account - volumes: - - name: config-volume - configMap: - name: istio-statsd-prom-bridge - containers: - - name: statsd-prom-bridge - image: "docker.io/prom/statsd-exporter:v0.6.0" - imagePullPolicy: IfNotPresent - ports: - - containerPort: 9102 - - containerPort: 9125 - protocol: UDP - args: - - '-statsd.mapping-config=/etc/statsd/mapping.conf' - resources: - requests: - cpu: 10m - - volumeMounts: - - name: config-volume - mountPath: /etc/statsd - ---- -# Source: istio/charts/pilot/templates/service.yaml -apiVersion: v1 -kind: Service -metadata: - name: istio-pilot - namespace: istio-system - labels: - app: istio-pilot - chart: pilot-1.0.0 - release: RELEASE-NAME - heritage: Tiller -spec: - ports: - - port: 15010 - name: grpc-xds # direct - - port: 15011 - name: https-xds # mTLS - - port: 8080 - name: http-legacy-discovery # direct - - port: 9093 - name: http-monitoring - selector: - istio: pilot - ---- -# Source: istio/charts/prometheus/templates/service.yaml -apiVersion: v1 -kind: Service -metadata: - name: prometheus - namespace: istio-system - annotations: - prometheus.io/scrape: 'true' - labels: - name: prometheus -spec: - selector: - app: prometheus - ports: - - name: http-prometheus - protocol: TCP - port: 9090 - ---- -# Source: istio/charts/security/templates/service.yaml -apiVersion: v1 -kind: Service -metadata: - # we use the normal name here (e.g. 'prometheus') - # as grafana is configured to use this as a data source - name: istio-citadel - namespace: istio-system - labels: - app: istio-citadel -spec: - ports: - - name: grpc-citadel - port: 8060 - targetPort: 8060 - protocol: TCP - - name: http-monitoring - port: 9093 - selector: - istio: citadel - ---- -# Source: istio/charts/servicegraph/templates/service.yaml -apiVersion: v1 -kind: Service -metadata: - name: servicegraph - namespace: istio-system - annotations: - labels: - app: servicegraph - chart: servicegraph-0.1.0 - release: RELEASE-NAME - heritage: Tiller -spec: - type: ClusterIP - ports: - - port: 8088 - targetPort: 8088 - protocol: TCP - name: http - selector: - app: servicegraph - ---- -# Source: istio/charts/sidecarInjectorWebhook/templates/service.yaml -apiVersion: v1 -kind: Service -metadata: - name: istio-sidecar-injector - namespace: istio-system - labels: - istio: sidecar-injector -spec: - ports: - - port: 443 - selector: - istio: sidecar-injector - ---- -# Source: istio/charts/galley/templates/deployment.yaml -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: istio-galley - namespace: istio-system - labels: - app: galley - chart: galley-1.0.0 - release: RELEASE-NAME - heritage: Tiller - istio: galley -spec: - replicas: 1 - strategy: - rollingUpdate: - maxSurge: 1 - maxUnavailable: 0 - template: - metadata: - labels: - istio: galley - annotations: - sidecar.istio.io/inject: "false" - scheduler.alpha.kubernetes.io/critical-pod: "" - spec: - serviceAccountName: istio-galley-service-account - containers: - - name: validator - image: "gcr.io/istio-release/galley:1.0.0" - imagePullPolicy: IfNotPresent - ports: - - containerPort: 443 - - containerPort: 9093 - command: - - /usr/local/bin/galley - - validator - - --deployment-namespace=istio-system - - --caCertFile=/etc/istio/certs/root-cert.pem - - --tlsCertFile=/etc/istio/certs/cert-chain.pem - - --tlsKeyFile=/etc/istio/certs/key.pem - - --healthCheckInterval=2s - - --healthCheckFile=/health - - --webhook-config-file - - /etc/istio/config/validatingwebhookconfiguration.yaml - volumeMounts: - - name: certs - mountPath: /etc/istio/certs - readOnly: true - - name: config - mountPath: /etc/istio/config - readOnly: true - livenessProbe: - exec: - command: - - /usr/local/bin/galley - - probe - - --probe-path=/health - - --interval=4s - initialDelaySeconds: 4 - periodSeconds: 4 - readinessProbe: - exec: - command: - - /usr/local/bin/galley - - probe - - --probe-path=/health - - --interval=4s - initialDelaySeconds: 4 - periodSeconds: 4 - resources: - requests: - cpu: 10m - - volumes: - - name: certs - secret: - secretName: istio.istio-galley-service-account - - name: config - configMap: - name: istio-galley-configuration - affinity: - nodeAffinity: - requiredDuringSchedulingIgnoredDuringExecution: - nodeSelectorTerms: - - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - amd64 - - ppc64le - - s390x - preferredDuringSchedulingIgnoredDuringExecution: - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - amd64 - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - ppc64le - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - s390x - ---- -# Source: istio/charts/gateways/templates/deployment.yaml - -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: istio-egressgateway - namespace: istio-system - labels: - app: egressgateway - chart: gateways-1.0.0 - release: RELEASE-NAME - heritage: Tiller - app: istio-egressgateway - istio: egressgateway -spec: - replicas: 1 - template: - metadata: - labels: - app: istio-egressgateway - istio: egressgateway - annotations: - sidecar.istio.io/inject: "false" - scheduler.alpha.kubernetes.io/critical-pod: "" - spec: - serviceAccountName: istio-egressgateway-service-account - containers: - - name: egressgateway - image: "gcr.io/istio-release/proxyv2:1.0.0" - imagePullPolicy: IfNotPresent - ports: - - containerPort: 80 - - containerPort: 443 - args: - - proxy - - router - - -v - - "2" - - --discoveryRefreshDelay - - '1s' #discoveryRefreshDelay - - --drainDuration - - '45s' #drainDuration - - --parentShutdownDuration - - '1m0s' #parentShutdownDuration - - --connectTimeout - - '10s' #connectTimeout - - --serviceCluster - - istio-egressgateway - - --zipkinAddress - - zipkin:9411 - - --statsdUdpAddress - - istio-statsd-prom-bridge:9125 - - --proxyAdminPort - - "15000" - - --controlPlaneAuthPolicy - - NONE - - --discoveryAddress - - istio-pilot.istio-system:8080 - resources: - requests: - cpu: 10m - - env: - - name: POD_NAME - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: metadata.name - - name: POD_NAMESPACE - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: metadata.namespace - - name: INSTANCE_IP - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: status.podIP - - name: ISTIO_META_POD_NAME - valueFrom: - fieldRef: - fieldPath: metadata.name - volumeMounts: - - name: istio-certs - mountPath: /etc/certs - readOnly: true - - name: egressgateway-certs - mountPath: "/etc/istio/egressgateway-certs" - readOnly: true - - name: egressgateway-ca-certs - mountPath: "/etc/istio/egressgateway-ca-certs" - readOnly: true - volumes: - - name: istio-certs - secret: - secretName: istio.istio-egressgateway-service-account - optional: true - - name: egressgateway-certs - secret: - secretName: "istio-egressgateway-certs" - optional: true - - name: egressgateway-ca-certs - secret: - secretName: "istio-egressgateway-ca-certs" - optional: true - affinity: - nodeAffinity: - requiredDuringSchedulingIgnoredDuringExecution: - nodeSelectorTerms: - - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - amd64 - - ppc64le - - s390x - preferredDuringSchedulingIgnoredDuringExecution: - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - amd64 - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - ppc64le - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - s390x ---- -apiVersion: extensions/v1beta1 -kind: DaemonSet -metadata: - name: istio-ingressgateway - namespace: istio-system - labels: - app: ingressgateway - chart: gateways-1.0.0 - release: RELEASE-NAME - heritage: Tiller - app: istio-ingressgateway - istio: ingressgateway -spec: - # replicas: 1 - template: - metadata: - labels: - app: istio-ingressgateway - istio: ingressgateway - annotations: - sidecar.istio.io/inject: "false" - scheduler.alpha.kubernetes.io/critical-pod: "" - spec: - serviceAccountName: istio-ingressgateway-service-account - containers: - - name: ingressgateway - image: "gcr.io/istio-release/proxyv2:1.0.0" - imagePullPolicy: IfNotPresent - ports: - - containerPort: 80 - - containerPort: 443 - - containerPort: 31400 - - containerPort: 15011 - - containerPort: 8060 - - containerPort: 15030 - - containerPort: 15031 - args: - - proxy - - router - - -v - - "2" - - --discoveryRefreshDelay - - '1s' #discoveryRefreshDelay - - --drainDuration - - '45s' #drainDuration - - --parentShutdownDuration - - '1m0s' #parentShutdownDuration - - --connectTimeout - - '10s' #connectTimeout - - --serviceCluster - - istio-ingressgateway - - --zipkinAddress - - zipkin:9411 - - --statsdUdpAddress - - istio-statsd-prom-bridge:9125 - - --proxyAdminPort - - "15000" - - --controlPlaneAuthPolicy - - NONE - - --discoveryAddress - - istio-pilot.istio-system:8080 - resources: - requests: - cpu: 10m - - env: - - name: POD_NAME - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: metadata.name - - name: POD_NAMESPACE - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: metadata.namespace - - name: INSTANCE_IP - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: status.podIP - - name: ISTIO_META_POD_NAME - valueFrom: - fieldRef: - fieldPath: metadata.name - volumeMounts: - - name: istio-certs - mountPath: /etc/certs - readOnly: true - - name: ingressgateway-certs - mountPath: "/etc/istio/ingressgateway-certs" - readOnly: true - - name: ingressgateway-ca-certs - mountPath: "/etc/istio/ingressgateway-ca-certs" - readOnly: true - volumes: - - name: istio-certs - secret: - secretName: istio.istio-ingressgateway-service-account - optional: true - - name: ingressgateway-certs - secret: - secretName: "istio-ingressgateway-certs" - optional: true - - name: ingressgateway-ca-certs - secret: - secretName: "istio-ingressgateway-ca-certs" - optional: true - affinity: - nodeAffinity: - requiredDuringSchedulingIgnoredDuringExecution: - nodeSelectorTerms: - - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - amd64 - - ppc64le - - s390x - preferredDuringSchedulingIgnoredDuringExecution: - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - amd64 - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - ppc64le - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - s390x ---- - ---- -# Source: istio/charts/grafana/templates/deployment.yaml -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: grafana - namespace: istio-system - labels: - app: grafana - chart: grafana-0.1.0 - release: RELEASE-NAME - heritage: Tiller -spec: - replicas: 1 - template: - metadata: - labels: - app: grafana - annotations: - sidecar.istio.io/inject: "false" - scheduler.alpha.kubernetes.io/critical-pod: "" - spec: - containers: - - name: grafana - image: "gcr.io/istio-release/grafana:1.0.0" - imagePullPolicy: IfNotPresent - ports: - - containerPort: 3000 - readinessProbe: - httpGet: - path: /login - port: 3000 - env: - - name: GRAFANA_PORT - value: "3000" - - name: GF_AUTH_BASIC_ENABLED - value: "false" - - name: GF_AUTH_ANONYMOUS_ENABLED - value: "true" - - name: GF_AUTH_ANONYMOUS_ORG_ROLE - value: Admin - - name: GF_PATHS_DATA - value: /data/grafana - resources: - requests: - cpu: 10m - - volumeMounts: - - name: data - mountPath: /data/grafana - affinity: - nodeAffinity: - requiredDuringSchedulingIgnoredDuringExecution: - nodeSelectorTerms: - - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - amd64 - - ppc64le - - s390x - preferredDuringSchedulingIgnoredDuringExecution: - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - amd64 - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - ppc64le - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - s390x - volumes: - - name: data - emptyDir: {} - ---- -# Source: istio/charts/mixer/templates/deployment.yaml - -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: istio-policy - namespace: istio-system - labels: - chart: mixer-1.0.0 - release: RELEASE-NAME - istio: mixer -spec: - replicas: 1 - template: - metadata: - labels: - app: policy - istio: mixer - istio-mixer-type: policy - annotations: - sidecar.istio.io/inject: "false" - scheduler.alpha.kubernetes.io/critical-pod: "" - spec: - serviceAccountName: istio-mixer-service-account - volumes: - - name: istio-certs - secret: - secretName: istio.istio-mixer-service-account - optional: true - - name: uds-socket - emptyDir: {} - affinity: - nodeAffinity: - requiredDuringSchedulingIgnoredDuringExecution: - nodeSelectorTerms: - - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - amd64 - - ppc64le - - s390x - preferredDuringSchedulingIgnoredDuringExecution: - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - amd64 - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - ppc64le - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - s390x - containers: - - name: mixer - image: "gcr.io/istio-release/mixer:1.0.0" - imagePullPolicy: IfNotPresent - ports: - - containerPort: 9093 - - containerPort: 42422 - args: - - --address - - unix:///sock/mixer.socket - - --configStoreURL=k8s:// - - --configDefaultNamespace=istio-system - - --trace_zipkin_url=http://zipkin:9411/api/v1/spans - resources: - requests: - cpu: 10m - - volumeMounts: - - name: uds-socket - mountPath: /sock - livenessProbe: - httpGet: - path: /version - port: 9093 - initialDelaySeconds: 5 - periodSeconds: 5 - - name: istio-proxy - image: "gcr.io/istio-release/proxyv2:1.0.0" - imagePullPolicy: IfNotPresent - ports: - - containerPort: 9091 - - containerPort: 15004 - args: - - proxy - - --serviceCluster - - istio-policy - - --templateFile - - /etc/istio/proxy/envoy_policy.yaml.tmpl - - --controlPlaneAuthPolicy - - NONE - env: - - name: POD_NAME - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: metadata.name - - name: POD_NAMESPACE - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: metadata.namespace - - name: INSTANCE_IP - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: status.podIP - resources: - requests: - cpu: 10m - - volumeMounts: - - name: istio-certs - mountPath: /etc/certs - readOnly: true - - name: uds-socket - mountPath: /sock - ---- -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: istio-telemetry - namespace: istio-system - labels: - chart: mixer-1.0.0 - release: RELEASE-NAME - istio: mixer -spec: - replicas: 1 - template: - metadata: - labels: - app: telemetry - istio: mixer - istio-mixer-type: telemetry - annotations: - sidecar.istio.io/inject: "false" - scheduler.alpha.kubernetes.io/critical-pod: "" - spec: - serviceAccountName: istio-mixer-service-account - volumes: - - name: istio-certs - secret: - secretName: istio.istio-mixer-service-account - optional: true - - name: uds-socket - emptyDir: {} - containers: - - name: mixer - image: "gcr.io/istio-release/mixer:1.0.0" - imagePullPolicy: IfNotPresent - ports: - - containerPort: 9093 - - containerPort: 42422 - args: - - --address - - unix:///sock/mixer.socket - - --configStoreURL=k8s:// - - --configDefaultNamespace=istio-system - - --trace_zipkin_url=http://zipkin:9411/api/v1/spans - resources: - requests: - cpu: 10m - - volumeMounts: - - name: uds-socket - mountPath: /sock - livenessProbe: - httpGet: - path: /version - port: 9093 - initialDelaySeconds: 5 - periodSeconds: 5 - - name: istio-proxy - image: "gcr.io/istio-release/proxyv2:1.0.0" - imagePullPolicy: IfNotPresent - ports: - - containerPort: 9091 - - containerPort: 15004 - args: - - proxy - - --serviceCluster - - istio-telemetry - - --templateFile - - /etc/istio/proxy/envoy_telemetry.yaml.tmpl - - --controlPlaneAuthPolicy - - NONE - env: - - name: POD_NAME - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: metadata.name - - name: POD_NAMESPACE - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: metadata.namespace - - name: INSTANCE_IP - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: status.podIP - resources: - requests: - cpu: 10m - - volumeMounts: - - name: istio-certs - mountPath: /etc/certs - readOnly: true - - name: uds-socket - mountPath: /sock - ---- - ---- -# Source: istio/charts/pilot/templates/deployment.yaml -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: istio-pilot - namespace: istio-system - # TODO: default template doesn't have this, which one is right ? - labels: - app: istio-pilot - chart: pilot-1.0.0 - release: RELEASE-NAME - heritage: Tiller - istio: pilot - annotations: - checksum/config-volume: f8da08b6b8c170dde721efd680270b2901e750d4aa186ebb6c22bef5b78a43f9 -spec: - replicas: 1 - template: - metadata: - labels: - istio: pilot - app: pilot - annotations: - sidecar.istio.io/inject: "false" - scheduler.alpha.kubernetes.io/critical-pod: "" - spec: - serviceAccountName: istio-pilot-service-account - containers: - - name: discovery - image: "gcr.io/istio-release/pilot:1.0.0" - imagePullPolicy: IfNotPresent - args: - - "discovery" - ports: - - containerPort: 8080 - - containerPort: 15010 - readinessProbe: - httpGet: - path: /debug/endpointz - port: 8080 - initialDelaySeconds: 30 - periodSeconds: 30 - timeoutSeconds: 5 - env: - - name: POD_NAME - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: metadata.name - - name: POD_NAMESPACE - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: metadata.namespace - - name: PILOT_THROTTLE - value: "500" - - name: PILOT_CACHE_SQUASH - value: "5" - - name: PILOT_TRACE_SAMPLING - value: "100" - resources: - requests: - cpu: 500m - memory: 2048Mi - - volumeMounts: - - name: config-volume - mountPath: /etc/istio/config - - name: istio-certs - mountPath: /etc/certs - readOnly: true - - name: istio-proxy - image: "gcr.io/istio-release/proxyv2:1.0.0" - imagePullPolicy: IfNotPresent - ports: - - containerPort: 15003 - - containerPort: 15005 - - containerPort: 15007 - - containerPort: 15011 - args: - - proxy - - --serviceCluster - - istio-pilot - - --templateFile - - /etc/istio/proxy/envoy_pilot.yaml.tmpl - - --controlPlaneAuthPolicy - - NONE - env: - - name: POD_NAME - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: metadata.name - - name: POD_NAMESPACE - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: metadata.namespace - - name: INSTANCE_IP - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: status.podIP - resources: - requests: - cpu: 10m - - volumeMounts: - - name: istio-certs - mountPath: /etc/certs - readOnly: true - volumes: - - name: config-volume - configMap: - name: istio - - name: istio-certs - secret: - secretName: istio.istio-pilot-service-account - affinity: - nodeAffinity: - requiredDuringSchedulingIgnoredDuringExecution: - nodeSelectorTerms: - - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - amd64 - - ppc64le - - s390x - preferredDuringSchedulingIgnoredDuringExecution: - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - amd64 - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - ppc64le - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - s390x - ---- -# Source: istio/charts/prometheus/templates/deployment.yaml -# TODO: the original template has service account, roles, etc -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: prometheus - namespace: istio-system - labels: - app: prometheus - chart: prometheus-0.1.0 - release: RELEASE-NAME - heritage: Tiller -spec: - replicas: 1 - selector: - matchLabels: - app: prometheus - template: - metadata: - labels: - app: prometheus - annotations: - sidecar.istio.io/inject: "false" - scheduler.alpha.kubernetes.io/critical-pod: "" - spec: - serviceAccountName: prometheus - containers: - - name: prometheus - image: "docker.io/prom/prometheus:v2.3.1" - imagePullPolicy: IfNotPresent - args: - - '--storage.tsdb.retention=6h' - - '--config.file=/etc/prometheus/prometheus.yml' - ports: - - containerPort: 9090 - name: http - livenessProbe: - httpGet: - path: /-/healthy - port: 9090 - readinessProbe: - httpGet: - path: /-/ready - port: 9090 - resources: - requests: - cpu: 10m - - volumeMounts: - - name: config-volume - mountPath: /etc/prometheus - volumes: - - name: config-volume - configMap: - name: prometheus - affinity: - nodeAffinity: - requiredDuringSchedulingIgnoredDuringExecution: - nodeSelectorTerms: - - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - amd64 - - ppc64le - - s390x - preferredDuringSchedulingIgnoredDuringExecution: - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - amd64 - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - ppc64le - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - s390x - ---- -# Source: istio/charts/security/templates/deployment.yaml -# istio CA watching all namespaces -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: istio-citadel - namespace: istio-system - labels: - app: security - chart: security-1.0.0 - release: RELEASE-NAME - heritage: Tiller - istio: citadel -spec: - replicas: 1 - template: - metadata: - labels: - istio: citadel - annotations: - sidecar.istio.io/inject: "false" - scheduler.alpha.kubernetes.io/critical-pod: "" - spec: - serviceAccountName: istio-citadel-service-account - containers: - - name: citadel - image: "gcr.io/istio-release/citadel:1.0.0" - imagePullPolicy: IfNotPresent - args: - - --append-dns-names=true - - --grpc-port=8060 - - --grpc-hostname=citadel - - --citadel-storage-namespace=istio-system - - --self-signed-ca=true - resources: - requests: - cpu: 10m - - affinity: - nodeAffinity: - requiredDuringSchedulingIgnoredDuringExecution: - nodeSelectorTerms: - - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - amd64 - - ppc64le - - s390x - preferredDuringSchedulingIgnoredDuringExecution: - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - amd64 - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - ppc64le - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - s390x - ---- -# Source: istio/charts/servicegraph/templates/deployment.yaml -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: servicegraph - namespace: istio-system - labels: - app: servicegraph - chart: servicegraph-0.1.0 - release: RELEASE-NAME - heritage: Tiller -spec: - replicas: 1 - template: - metadata: - labels: - app: servicegraph - annotations: - sidecar.istio.io/inject: "false" - scheduler.alpha.kubernetes.io/critical-pod: "" - spec: - containers: - - name: servicegraph - image: "gcr.io/istio-release/servicegraph:1.0.0" - imagePullPolicy: IfNotPresent - ports: - - containerPort: 8088 - args: - - --prometheusAddr=http://prometheus:9090 - livenessProbe: - httpGet: - path: /graph - port: 8088 - readinessProbe: - httpGet: - path: /graph - port: 8088 - resources: - requests: - cpu: 10m - - affinity: - nodeAffinity: - requiredDuringSchedulingIgnoredDuringExecution: - nodeSelectorTerms: - - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - amd64 - - ppc64le - - s390x - preferredDuringSchedulingIgnoredDuringExecution: - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - amd64 - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - ppc64le - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - s390x - ---- -# Source: istio/charts/sidecarInjectorWebhook/templates/deployment.yaml -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: istio-sidecar-injector - namespace: istio-system - labels: - app: sidecarInjectorWebhook - chart: sidecarInjectorWebhook-1.0.0 - release: RELEASE-NAME - heritage: Tiller - istio: sidecar-injector -spec: - replicas: 1 - template: - metadata: - labels: - istio: sidecar-injector - annotations: - sidecar.istio.io/inject: "false" - scheduler.alpha.kubernetes.io/critical-pod: "" - spec: - serviceAccountName: istio-sidecar-injector-service-account - containers: - - name: sidecar-injector-webhook - image: "gcr.io/istio-release/sidecar_injector:1.0.0" - imagePullPolicy: IfNotPresent - args: - - --caCertFile=/etc/istio/certs/root-cert.pem - - --tlsCertFile=/etc/istio/certs/cert-chain.pem - - --tlsKeyFile=/etc/istio/certs/key.pem - - --injectConfig=/etc/istio/inject/config - - --meshConfig=/etc/istio/config/mesh - - --healthCheckInterval=2s - - --healthCheckFile=/health - volumeMounts: - - name: config-volume - mountPath: /etc/istio/config - readOnly: true - - name: certs - mountPath: /etc/istio/certs - readOnly: true - - name: inject-config - mountPath: /etc/istio/inject - readOnly: true - livenessProbe: - exec: - command: - - /usr/local/bin/sidecar-injector - - probe - - --probe-path=/health - - --interval=4s - initialDelaySeconds: 4 - periodSeconds: 4 - readinessProbe: - exec: - command: - - /usr/local/bin/sidecar-injector - - probe - - --probe-path=/health - - --interval=4s - initialDelaySeconds: 4 - periodSeconds: 4 - resources: - requests: - cpu: 10m - - volumes: - - name: config-volume - configMap: - name: istio - - name: certs - secret: - secretName: istio.istio-sidecar-injector-service-account - - name: inject-config - configMap: - name: istio-sidecar-injector - items: - - key: config - path: config - affinity: - nodeAffinity: - requiredDuringSchedulingIgnoredDuringExecution: - nodeSelectorTerms: - - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - amd64 - - ppc64le - - s390x - preferredDuringSchedulingIgnoredDuringExecution: - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - amd64 - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - ppc64le - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - s390x - ---- -# Source: istio/charts/tracing/templates/deployment.yaml -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: istio-tracing - namespace: istio-system - labels: - app: istio-tracing - chart: tracing-0.1.0 - release: RELEASE-NAME - heritage: Tiller -spec: - replicas: 1 - template: - metadata: - labels: - app: jaeger - annotations: - sidecar.istio.io/inject: "false" - scheduler.alpha.kubernetes.io/critical-pod: "" - spec: - containers: - - name: jaeger - image: "docker.io/jaegertracing/all-in-one:1.5" - imagePullPolicy: IfNotPresent - ports: - - containerPort: 9411 - - containerPort: 16686 - - containerPort: 5775 - protocol: UDP - - containerPort: 6831 - protocol: UDP - - containerPort: 6832 - protocol: UDP - env: - - name: POD_NAMESPACE - valueFrom: - fieldRef: - apiVersion: v1 - fieldPath: metadata.namespace - - name: COLLECTOR_ZIPKIN_HTTP_PORT - value: "9411" - - name: MEMORY_MAX_TRACES - value: "50000" - livenessProbe: - httpGet: - path: / - port: 16686 - readinessProbe: - httpGet: - path: / - port: 16686 - resources: - requests: - cpu: 10m - - affinity: - nodeAffinity: - requiredDuringSchedulingIgnoredDuringExecution: - nodeSelectorTerms: - - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - amd64 - - ppc64le - - s390x - preferredDuringSchedulingIgnoredDuringExecution: - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - amd64 - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - ppc64le - - weight: 2 - preference: - matchExpressions: - - key: beta.kubernetes.io/arch - operator: In - values: - - s390x - ---- -# Source: istio/charts/pilot/templates/gateway.yaml -apiVersion: networking.istio.io/v1alpha3 -kind: Gateway -metadata: - name: istio-autogenerated-k8s-ingress - namespace: istio-system -spec: - selector: - istio: ingress - servers: - - port: - number: 80 - protocol: HTTP2 - name: http - hosts: - - "*" - ---- - ---- -# Source: istio/charts/gateways/templates/autoscale.yaml - -apiVersion: autoscaling/v2beta1 -kind: HorizontalPodAutoscaler -metadata: - name: istio-egressgateway - namespace: istio-system -spec: - maxReplicas: 5 - minReplicas: 1 - scaleTargetRef: - apiVersion: apps/v1beta1 - kind: Deployment - name: istio-egressgateway - metrics: - - type: Resource - resource: - name: cpu - targetAverageUtilization: 60 ---- -apiVersion: autoscaling/v2beta1 -kind: HorizontalPodAutoscaler -metadata: - name: istio-ingressgateway - namespace: istio-system -spec: - maxReplicas: 5 - minReplicas: 1 - scaleTargetRef: - apiVersion: apps/v1beta1 - kind: Deployment - name: istio-ingressgateway - metrics: - - type: Resource - resource: - name: cpu - targetAverageUtilization: 60 ---- - ---- -# Source: istio/charts/mixer/templates/autoscale.yaml - -apiVersion: autoscaling/v2beta1 -kind: HorizontalPodAutoscaler -metadata: - name: istio-policy - namespace: istio-system -spec: - maxReplicas: 5 - minReplicas: 1 - scaleTargetRef: - apiVersion: apps/v1beta1 - kind: Deployment - name: istio-policy - metrics: - - type: Resource - resource: - name: cpu - targetAverageUtilization: 80 ---- -apiVersion: autoscaling/v2beta1 -kind: HorizontalPodAutoscaler -metadata: - name: istio-telemetry - namespace: istio-system -spec: - maxReplicas: 5 - minReplicas: 1 - scaleTargetRef: - apiVersion: apps/v1beta1 - kind: Deployment - name: istio-telemetry - metrics: - - type: Resource - resource: - name: cpu - targetAverageUtilization: 80 ---- - ---- -# Source: istio/charts/pilot/templates/autoscale.yaml - -apiVersion: autoscaling/v2beta1 -kind: HorizontalPodAutoscaler -metadata: - name: istio-pilot -spec: - maxReplicas: 1 - minReplicas: 1 - scaleTargetRef: - apiVersion: apps/v1beta1 - kind: Deployment - name: istio-pilot - metrics: - - type: Resource - resource: - name: cpu - targetAverageUtilization: 55 ---- - ---- -# Source: istio/charts/tracing/templates/service-jaeger.yaml - - -apiVersion: v1 -kind: List -items: -- apiVersion: v1 - kind: Service - metadata: - name: jaeger-query - namespace: istio-system - annotations: - labels: - app: jaeger - jaeger-infra: jaeger-service - chart: tracing-0.1.0 - release: RELEASE-NAME - heritage: Tiller - spec: - ports: - - name: query-http - port: 16686 - protocol: TCP - targetPort: 16686 - selector: - app: jaeger -- apiVersion: v1 - kind: Service - metadata: - name: jaeger-collector - namespace: istio-system - labels: - app: jaeger - jaeger-infra: collector-service - chart: tracing-0.1.0 - release: RELEASE-NAME - heritage: Tiller - spec: - ports: - - name: jaeger-collector-tchannel - port: 14267 - protocol: TCP - targetPort: 14267 - - name: jaeger-collector-http - port: 14268 - targetPort: 14268 - protocol: TCP - selector: - app: jaeger - type: ClusterIP -- apiVersion: v1 - kind: Service - metadata: - name: jaeger-agent - namespace: istio-system - labels: - app: jaeger - jaeger-infra: agent-service - chart: tracing-0.1.0 - release: RELEASE-NAME - heritage: Tiller - spec: - ports: - - name: agent-zipkin-thrift - port: 5775 - protocol: UDP - targetPort: 5775 - - name: agent-compact - port: 6831 - protocol: UDP - targetPort: 6831 - - name: agent-binary - port: 6832 - protocol: UDP - targetPort: 6832 - clusterIP: None - selector: - app: jaeger - - - ---- -# Source: istio/charts/tracing/templates/service.yaml -apiVersion: v1 -kind: List -items: -- apiVersion: v1 - kind: Service - metadata: - name: zipkin - namespace: istio-system - labels: - app: jaeger - chart: tracing-0.1.0 - release: RELEASE-NAME - heritage: Tiller - spec: - type: ClusterIP - ports: - - port: 9411 - targetPort: 9411 - protocol: TCP - name: http - selector: - app: jaeger -- apiVersion: v1 - kind: Service - metadata: - name: tracing - namespace: istio-system - annotations: - labels: - app: jaeger - chart: tracing-0.1.0 - release: RELEASE-NAME - heritage: Tiller - spec: - ports: - - name: http-query - port: 80 - protocol: TCP - targetPort: 16686 - selector: - app: jaeger - ---- -# Source: istio/charts/sidecarInjectorWebhook/templates/mutatingwebhook.yaml -apiVersion: admissionregistration.k8s.io/v1beta1 -kind: MutatingWebhookConfiguration -metadata: - name: istio-sidecar-injector - namespace: istio-system - labels: - app: istio-sidecar-injector - chart: sidecarInjectorWebhook-1.0.0 - release: RELEASE-NAME - heritage: Tiller -webhooks: - - name: sidecar-injector.istio.io - clientConfig: - service: - name: istio-sidecar-injector - namespace: istio-system - path: "/inject" - caBundle: "" - rules: - - operations: [ "CREATE" ] - apiGroups: [""] - apiVersions: ["v1"] - resources: ["pods"] - failurePolicy: Fail - namespaceSelector: - matchLabels: - istio-injection: enabled - - ---- -# Source: istio/charts/galley/templates/validatingwehookconfiguration.yaml.tpl - - ---- -# Source: istio/charts/grafana/templates/grafana-ports-mtls.yaml - - ---- -# Source: istio/charts/grafana/templates/secret.yaml - ---- -# Source: istio/charts/pilot/templates/meshexpansion.yaml - - ---- -# Source: istio/charts/security/templates/create-custom-resources-job.yaml - - ---- -# Source: istio/charts/security/templates/enable-mesh-mtls.yaml - - ---- -# Source: istio/charts/security/templates/meshexpansion.yaml - - ---- - ---- -# Source: istio/charts/servicegraph/templates/ingress.yaml - ---- -# Source: istio/charts/telemetry-gateway/templates/gateway.yaml - - ---- -# Source: istio/charts/tracing/templates/ingress-jaeger.yaml - ---- -# Source: istio/charts/tracing/templates/ingress.yaml - ---- -# Source: istio/templates/install-custom-resources.sh.tpl - - ---- -# Source: istio/charts/mixer/templates/config.yaml -apiVersion: "config.istio.io/v1alpha2" -kind: attributemanifest -metadata: - name: istioproxy - namespace: istio-system -spec: - attributes: - origin.ip: - valueType: IP_ADDRESS - origin.uid: - valueType: STRING - origin.user: - valueType: STRING - request.headers: - valueType: STRING_MAP - request.id: - valueType: STRING - request.host: - valueType: STRING - request.method: - valueType: STRING - request.path: - valueType: STRING - request.reason: - valueType: STRING - request.referer: - valueType: STRING - request.scheme: - valueType: STRING - request.total_size: - valueType: INT64 - request.size: - valueType: INT64 - request.time: - valueType: TIMESTAMP - request.useragent: - valueType: STRING - response.code: - valueType: INT64 - response.duration: - valueType: DURATION - response.headers: - valueType: STRING_MAP - response.total_size: - valueType: INT64 - response.size: - valueType: INT64 - response.time: - valueType: TIMESTAMP - source.uid: - valueType: STRING - source.user: # DEPRECATED - valueType: STRING - source.principal: - valueType: STRING - destination.uid: - valueType: STRING - destination.principal: - valueType: STRING - destination.port: - valueType: INT64 - connection.event: - valueType: STRING - connection.id: - valueType: STRING - connection.received.bytes: - valueType: INT64 - connection.received.bytes_total: - valueType: INT64 - connection.sent.bytes: - valueType: INT64 - connection.sent.bytes_total: - valueType: INT64 - connection.duration: - valueType: DURATION - connection.mtls: - valueType: BOOL - context.protocol: - valueType: STRING - context.timestamp: - valueType: TIMESTAMP - context.time: - valueType: TIMESTAMP - # Deprecated, kept for compatibility - context.reporter.local: - valueType: BOOL - context.reporter.kind: - valueType: STRING - context.reporter.uid: - valueType: STRING - api.service: - valueType: STRING - api.version: - valueType: STRING - api.operation: - valueType: STRING - api.protocol: - valueType: STRING - request.auth.principal: - valueType: STRING - request.auth.audiences: - valueType: STRING - request.auth.presenter: - valueType: STRING - request.auth.claims: - valueType: STRING_MAP - request.auth.raw_claims: - valueType: STRING - request.api_key: - valueType: STRING - ---- -apiVersion: "config.istio.io/v1alpha2" -kind: attributemanifest -metadata: - name: kubernetes - namespace: istio-system -spec: - attributes: - source.ip: - valueType: IP_ADDRESS - source.labels: - valueType: STRING_MAP - source.metadata: - valueType: STRING_MAP - source.name: - valueType: STRING - source.namespace: - valueType: STRING - source.owner: - valueType: STRING - source.service: # DEPRECATED - valueType: STRING - source.serviceAccount: - valueType: STRING - source.services: - valueType: STRING - source.workload.uid: - valueType: STRING - source.workload.name: - valueType: STRING - source.workload.namespace: - valueType: STRING - destination.ip: - valueType: IP_ADDRESS - destination.labels: - valueType: STRING_MAP - destination.metadata: - valueType: STRING_MAP - destination.owner: - valueType: STRING - destination.name: - valueType: STRING - destination.container.name: - valueType: STRING - destination.namespace: - valueType: STRING - destination.service: # DEPRECATED - valueType: STRING - destination.service.uid: - valueType: STRING - destination.service.name: - valueType: STRING - destination.service.namespace: - valueType: STRING - destination.service.host: - valueType: STRING - destination.serviceAccount: - valueType: STRING - destination.workload.uid: - valueType: STRING - destination.workload.name: - valueType: STRING - destination.workload.namespace: - valueType: STRING ---- -apiVersion: "config.istio.io/v1alpha2" -kind: stdio -metadata: - name: handler - namespace: istio-system -spec: - outputAsJson: true ---- -apiVersion: "config.istio.io/v1alpha2" -kind: logentry -metadata: - name: accesslog - namespace: istio-system -spec: - severity: '"Info"' - timestamp: request.time - variables: - sourceIp: source.ip | ip("0.0.0.0") - sourceApp: source.labels["app"] | "" - sourcePrincipal: source.principal | "" - sourceName: source.name | "" - sourceWorkload: source.workload.name | "" - sourceNamespace: source.namespace | "" - sourceOwner: source.owner | "" - destinationApp: destination.labels["app"] | "" - destinationIp: destination.ip | ip("0.0.0.0") - destinationServiceHost: destination.service.host | "" - destinationWorkload: destination.workload.name | "" - destinationName: destination.name | "" - destinationNamespace: destination.namespace | "" - destinationOwner: destination.owner | "" - destinationPrincipal: destination.principal | "" - apiClaims: request.auth.raw_claims | "" - apiKey: request.api_key | request.headers["x-api-key"] | "" - protocol: request.scheme | context.protocol | "http" - method: request.method | "" - url: request.path | "" - responseCode: response.code | 0 - responseSize: response.size | 0 - requestSize: request.size | 0 - requestId: request.headers["x-request-id"] | "" - clientTraceId: request.headers["x-client-trace-id"] | "" - latency: response.duration | "0ms" - connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) - userAgent: request.useragent | "" - responseTimestamp: response.time - receivedBytes: request.total_size | 0 - sentBytes: response.total_size | 0 - referer: request.referer | "" - httpAuthority: request.headers[":authority"] | request.host | "" - xForwardedFor: request.headers["x-forwarded-for"] | "0.0.0.0" - reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination") - monitored_resource_type: '"global"' ---- -apiVersion: "config.istio.io/v1alpha2" -kind: logentry -metadata: - name: tcpaccesslog - namespace: istio-system -spec: - severity: '"Info"' - timestamp: context.time | timestamp("2017-01-01T00:00:00Z") - variables: - connectionEvent: connection.event | "" - sourceIp: source.ip | ip("0.0.0.0") - sourceApp: source.labels["app"] | "" - sourcePrincipal: source.principal | "" - sourceName: source.name | "" - sourceWorkload: source.workload.name | "" - sourceNamespace: source.namespace | "" - sourceOwner: source.owner | "" - destinationApp: destination.labels["app"] | "" - destinationIp: destination.ip | ip("0.0.0.0") - destinationServiceHost: destination.service.host | "" - destinationWorkload: destination.workload.name | "" - destinationName: destination.name | "" - destinationNamespace: destination.namespace | "" - destinationOwner: destination.owner | "" - destinationPrincipal: destination.principal | "" - protocol: context.protocol | "tcp" - connectionDuration: connection.duration | "0ms" - connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) - receivedBytes: connection.received.bytes | 0 - sentBytes: connection.sent.bytes | 0 - totalReceivedBytes: connection.received.bytes_total | 0 - totalSentBytes: connection.sent.bytes_total | 0 - reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination") - monitored_resource_type: '"global"' ---- -apiVersion: "config.istio.io/v1alpha2" -kind: rule -metadata: - name: stdio - namespace: istio-system -spec: - match: context.protocol == "http" || context.protocol == "grpc" - actions: - - handler: handler.stdio - instances: - - accesslog.logentry ---- -apiVersion: "config.istio.io/v1alpha2" -kind: rule -metadata: - name: stdiotcp - namespace: istio-system -spec: - match: context.protocol == "tcp" - actions: - - handler: handler.stdio - instances: - - tcpaccesslog.logentry ---- -apiVersion: "config.istio.io/v1alpha2" -kind: metric -metadata: - name: requestcount - namespace: istio-system -spec: - value: "1" - dimensions: - reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination") - source_workload: source.workload.name | "unknown" - source_workload_namespace: source.workload.namespace | "unknown" - source_principal: source.principal | "unknown" - source_app: source.labels["app"] | "unknown" - source_version: source.labels["version"] | "unknown" - destination_workload: destination.workload.name | "unknown" - destination_workload_namespace: destination.workload.namespace | "unknown" - destination_principal: destination.principal | "unknown" - destination_app: destination.labels["app"] | "unknown" - destination_version: destination.labels["version"] | "unknown" - destination_service: destination.service.host | "unknown" - destination_service_name: destination.service.name | "unknown" - destination_service_namespace: destination.service.namespace | "unknown" - request_protocol: api.protocol | context.protocol | "unknown" - response_code: response.code | 200 - connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) - monitored_resource_type: '"UNSPECIFIED"' ---- -apiVersion: "config.istio.io/v1alpha2" -kind: metric -metadata: - name: requestduration - namespace: istio-system -spec: - value: response.duration | "0ms" - dimensions: - reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination") - source_workload: source.workload.name | "unknown" - source_workload_namespace: source.workload.namespace | "unknown" - source_principal: source.principal | "unknown" - source_app: source.labels["app"] | "unknown" - source_version: source.labels["version"] | "unknown" - destination_workload: destination.workload.name | "unknown" - destination_workload_namespace: destination.workload.namespace | "unknown" - destination_principal: destination.principal | "unknown" - destination_app: destination.labels["app"] | "unknown" - destination_version: destination.labels["version"] | "unknown" - destination_service: destination.service.host | "unknown" - destination_service_name: destination.service.name | "unknown" - destination_service_namespace: destination.service.namespace | "unknown" - request_protocol: api.protocol | context.protocol | "unknown" - response_code: response.code | 200 - connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) - monitored_resource_type: '"UNSPECIFIED"' ---- -apiVersion: "config.istio.io/v1alpha2" -kind: metric -metadata: - name: requestsize - namespace: istio-system -spec: - value: request.size | 0 - dimensions: - reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination") - source_workload: source.workload.name | "unknown" - source_workload_namespace: source.workload.namespace | "unknown" - source_principal: source.principal | "unknown" - source_app: source.labels["app"] | "unknown" - source_version: source.labels["version"] | "unknown" - destination_workload: destination.workload.name | "unknown" - destination_workload_namespace: destination.workload.namespace | "unknown" - destination_principal: destination.principal | "unknown" - destination_app: destination.labels["app"] | "unknown" - destination_version: destination.labels["version"] | "unknown" - destination_service: destination.service.host | "unknown" - destination_service_name: destination.service.name | "unknown" - destination_service_namespace: destination.service.namespace | "unknown" - request_protocol: api.protocol | context.protocol | "unknown" - response_code: response.code | 200 - connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) - monitored_resource_type: '"UNSPECIFIED"' ---- -apiVersion: "config.istio.io/v1alpha2" -kind: metric -metadata: - name: responsesize - namespace: istio-system -spec: - value: response.size | 0 - dimensions: - reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination") - source_workload: source.workload.name | "unknown" - source_workload_namespace: source.workload.namespace | "unknown" - source_principal: source.principal | "unknown" - source_app: source.labels["app"] | "unknown" - source_version: source.labels["version"] | "unknown" - destination_workload: destination.workload.name | "unknown" - destination_workload_namespace: destination.workload.namespace | "unknown" - destination_principal: destination.principal | "unknown" - destination_app: destination.labels["app"] | "unknown" - destination_version: destination.labels["version"] | "unknown" - destination_service: destination.service.host | "unknown" - destination_service_name: destination.service.name | "unknown" - destination_service_namespace: destination.service.namespace | "unknown" - request_protocol: api.protocol | context.protocol | "unknown" - response_code: response.code | 200 - connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) - monitored_resource_type: '"UNSPECIFIED"' ---- -apiVersion: "config.istio.io/v1alpha2" -kind: metric -metadata: - name: tcpbytesent - namespace: istio-system -spec: - value: connection.sent.bytes | 0 - dimensions: - reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination") - source_workload: source.workload.name | "unknown" - source_workload_namespace: source.workload.namespace | "unknown" - source_principal: source.principal | "unknown" - source_app: source.labels["app"] | "unknown" - source_version: source.labels["version"] | "unknown" - destination_workload: destination.workload.name | "unknown" - destination_workload_namespace: destination.workload.namespace | "unknown" - destination_principal: destination.principal | "unknown" - destination_app: destination.labels["app"] | "unknown" - destination_version: destination.labels["version"] | "unknown" - destination_service: destination.service.name | "unknown" - destination_service_name: destination.service.name | "unknown" - destination_service_namespace: destination.service.namespace | "unknown" - connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) - monitored_resource_type: '"UNSPECIFIED"' ---- -apiVersion: "config.istio.io/v1alpha2" -kind: metric -metadata: - name: tcpbytereceived - namespace: istio-system -spec: - value: connection.received.bytes | 0 - dimensions: - reporter: conditional((context.reporter.kind | "inbound") == "outbound", "source", "destination") - source_workload: source.workload.name | "unknown" - source_workload_namespace: source.workload.namespace | "unknown" - source_principal: source.principal | "unknown" - source_app: source.labels["app"] | "unknown" - source_version: source.labels["version"] | "unknown" - destination_workload: destination.workload.name | "unknown" - destination_workload_namespace: destination.workload.namespace | "unknown" - destination_principal: destination.principal | "unknown" - destination_app: destination.labels["app"] | "unknown" - destination_version: destination.labels["version"] | "unknown" - destination_service: destination.service.name | "unknown" - destination_service_name: destination.service.name | "unknown" - destination_service_namespace: destination.service.namespace | "unknown" - connection_security_policy: conditional((context.reporter.kind | "inbound") == "outbound", "unknown", conditional(connection.mtls | false, "mutual_tls", "none")) - monitored_resource_type: '"UNSPECIFIED"' ---- -apiVersion: "config.istio.io/v1alpha2" -kind: prometheus -metadata: - name: handler - namespace: istio-system -spec: - metrics: - - name: requests_total - instance_name: requestcount.metric.istio-system - kind: COUNTER - label_names: - - reporter - - source_app - - source_principal - - source_workload - - source_workload_namespace - - source_version - - destination_app - - destination_principal - - destination_workload - - destination_workload_namespace - - destination_version - - destination_service - - destination_service_name - - destination_service_namespace - - request_protocol - - response_code - - connection_security_policy - - name: request_duration_seconds - instance_name: requestduration.metric.istio-system - kind: DISTRIBUTION - label_names: - - reporter - - source_app - - source_principal - - source_workload - - source_workload_namespace - - source_version - - destination_app - - destination_principal - - destination_workload - - destination_workload_namespace - - destination_version - - destination_service - - destination_service_name - - destination_service_namespace - - request_protocol - - response_code - - connection_security_policy - buckets: - explicit_buckets: - bounds: [0.005, 0.01, 0.025, 0.05, 0.1, 0.25, 0.5, 1, 2.5, 5, 10] - - name: request_bytes - instance_name: requestsize.metric.istio-system - kind: DISTRIBUTION - label_names: - - reporter - - source_app - - source_principal - - source_workload - - source_workload_namespace - - source_version - - destination_app - - destination_principal - - destination_workload - - destination_workload_namespace - - destination_version - - destination_service - - destination_service_name - - destination_service_namespace - - request_protocol - - response_code - - connection_security_policy - buckets: - exponentialBuckets: - numFiniteBuckets: 8 - scale: 1 - growthFactor: 10 - - name: response_bytes - instance_name: responsesize.metric.istio-system - kind: DISTRIBUTION - label_names: - - reporter - - source_app - - source_principal - - source_workload - - source_workload_namespace - - source_version - - destination_app - - destination_principal - - destination_workload - - destination_workload_namespace - - destination_version - - destination_service - - destination_service_name - - destination_service_namespace - - request_protocol - - response_code - - connection_security_policy - buckets: - exponentialBuckets: - numFiniteBuckets: 8 - scale: 1 - growthFactor: 10 - - name: tcp_sent_bytes_total - instance_name: tcpbytesent.metric.istio-system - kind: COUNTER - label_names: - - reporter - - source_app - - source_principal - - source_workload - - source_workload_namespace - - source_version - - destination_app - - destination_principal - - destination_workload - - destination_workload_namespace - - destination_version - - destination_service - - destination_service_name - - destination_service_namespace - - connection_security_policy - - name: tcp_received_bytes_total - instance_name: tcpbytereceived.metric.istio-system - kind: COUNTER - label_names: - - reporter - - source_app - - source_principal - - source_workload - - source_workload_namespace - - source_version - - destination_app - - destination_principal - - destination_workload - - destination_workload_namespace - - destination_version - - destination_service - - destination_service_name - - destination_service_namespace - - connection_security_policy ---- -apiVersion: "config.istio.io/v1alpha2" -kind: rule -metadata: - name: promhttp - namespace: istio-system -spec: - match: context.protocol == "http" || context.protocol == "grpc" - actions: - - handler: handler.prometheus - instances: - - requestcount.metric - - requestduration.metric - - requestsize.metric - - responsesize.metric ---- -apiVersion: "config.istio.io/v1alpha2" -kind: rule -metadata: - name: promtcp - namespace: istio-system -spec: - match: context.protocol == "tcp" - actions: - - handler: handler.prometheus - instances: - - tcpbytesent.metric - - tcpbytereceived.metric ---- - -apiVersion: "config.istio.io/v1alpha2" -kind: kubernetesenv -metadata: - name: handler - namespace: istio-system -spec: - # when running from mixer root, use the following config after adding a - # symbolic link to a kubernetes config file via: - # - # $ ln -s ~/.kube/config mixer/adapter/kubernetes/kubeconfig - # - # kubeconfig_path: "mixer/adapter/kubernetes/kubeconfig" - ---- -apiVersion: "config.istio.io/v1alpha2" -kind: rule -metadata: - name: kubeattrgenrulerule - namespace: istio-system -spec: - actions: - - handler: handler.kubernetesenv - instances: - - attributes.kubernetes ---- -apiVersion: "config.istio.io/v1alpha2" -kind: rule -metadata: - name: tcpkubeattrgenrulerule - namespace: istio-system -spec: - match: context.protocol == "tcp" - actions: - - handler: handler.kubernetesenv - instances: - - attributes.kubernetes ---- -apiVersion: "config.istio.io/v1alpha2" -kind: kubernetes -metadata: - name: attributes - namespace: istio-system -spec: - # Pass the required attribute data to the adapter - source_uid: source.uid | "" - source_ip: source.ip | ip("0.0.0.0") # default to unspecified ip addr - destination_uid: destination.uid | "" - destination_port: destination.port | 0 - attribute_bindings: - # Fill the new attributes from the adapter produced output. - # $out refers to an instance of OutputTemplate message - source.ip: $out.source_pod_ip | ip("0.0.0.0") - source.uid: $out.source_pod_uid | "unknown" - source.labels: $out.source_labels | emptyStringMap() - source.name: $out.source_pod_name | "unknown" - source.namespace: $out.source_namespace | "default" - source.owner: $out.source_owner | "unknown" - source.serviceAccount: $out.source_service_account_name | "unknown" - source.workload.uid: $out.source_workload_uid | "unknown" - source.workload.name: $out.source_workload_name | "unknown" - source.workload.namespace: $out.source_workload_namespace | "unknown" - destination.ip: $out.destination_pod_ip | ip("0.0.0.0") - destination.uid: $out.destination_pod_uid | "unknown" - destination.labels: $out.destination_labels | emptyStringMap() - destination.name: $out.destination_pod_name | "unknown" - destination.container.name: $out.destination_container_name | "unknown" - destination.namespace: $out.destination_namespace | "default" - destination.owner: $out.destination_owner | "unknown" - destination.serviceAccount: $out.destination_service_account_name | "unknown" - destination.workload.uid: $out.destination_workload_uid | "unknown" - destination.workload.name: $out.destination_workload_name | "unknown" - destination.workload.namespace: $out.destination_workload_namespace | "unknown" - ---- -# Configuration needed by Mixer. -# Mixer cluster is delivered via CDS -# Specify mixer cluster settings -apiVersion: networking.istio.io/v1alpha3 -kind: DestinationRule -metadata: - name: istio-policy - namespace: istio-system -spec: - host: istio-policy.istio-system.svc.cluster.local - trafficPolicy: - connectionPool: - http: - http2MaxRequests: 10000 - maxRequestsPerConnection: 10000 ---- -apiVersion: networking.istio.io/v1alpha3 -kind: DestinationRule -metadata: - name: istio-telemetry - namespace: istio-system -spec: - host: istio-telemetry.istio-system.svc.cluster.local - trafficPolicy: - connectionPool: - http: - http2MaxRequests: 10000 - maxRequestsPerConnection: 10000 ---- - diff --git a/k8s-deployment-strategies.md b/k8s-deployment-strategies.md index 5242691..37a5a1d 100644 --- a/k8s-deployment-strategies.md +++ b/k8s-deployment-strategies.md @@ -40,7 +40,7 @@ 8. rollback: deploy virtualservice/my-app -> svc/my-app-v1 9. confirmed: remove deploy/my-app-v1 svc/my-app-v1 -# shadow deploy istio mode +# shadow deploy istio mode 1. create deploy/my-app-v1 2. create svc/my-app-v1 -> deploy/my-app-v1 diff --git a/keepalived/check_apiserver.sh b/keepalived/check_apiserver.sh deleted file mode 100755 index 3ceb7a8..0000000 --- a/keepalived/check_apiserver.sh +++ /dev/null @@ -1,24 +0,0 @@ -#!/bin/bash - -# if check error then repeat check for 12 times, else exit -err=0 -for k in $(seq 1 12) -do - check_code=$(ps -ef | grep kube-apiserver | grep -v color | grep -v grep | wc -l) - if [[ $check_code == "0" ]]; then - err=$(expr $err + 1) - sleep 5 - continue - else - err=0 - break - fi -done - -if [[ $err != "0" ]]; then - echo "systemctl stop keepalived" - /usr/bin/systemctl stop keepalived - exit 1 -else - exit 0 -fi diff --git a/keepalived/keepalived.conf.tpl b/keepalived/keepalived.conf.tpl deleted file mode 100644 index 5178302..0000000 --- a/keepalived/keepalived.conf.tpl +++ /dev/null @@ -1,29 +0,0 @@ -! Configuration File for keepalived -global_defs { - router_id LVS_DEVEL -} -vrrp_script chk_apiserver { - script "/etc/keepalived/check_apiserver.sh" - interval 2 - weight -5 - fall 3 - rise 2 -} -vrrp_instance VI_1 { - state K8SHA_KA_STATE - interface K8SHA_KA_INTF - mcast_src_ip K8SHA_IPLOCAL - virtual_router_id 51 - priority K8SHA_KA_PRIO - advert_int 2 - authentication { - auth_type PASS - auth_pass K8SHA_KA_AUTH - } - virtual_ipaddress { - K8SHA_VIP - } - track_script { - chk_apiserver - } -} diff --git a/metrics-server/auth-delegator.yaml b/metrics-server/auth-delegator.yaml deleted file mode 100644 index e3442c5..0000000 --- a/metrics-server/auth-delegator.yaml +++ /dev/null @@ -1,13 +0,0 @@ ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: metrics-server:system:auth-delegator -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: system:auth-delegator -subjects: -- kind: ServiceAccount - name: metrics-server - namespace: kube-system diff --git a/metrics-server/auth-reader.yaml b/metrics-server/auth-reader.yaml deleted file mode 100644 index f0616e1..0000000 --- a/metrics-server/auth-reader.yaml +++ /dev/null @@ -1,14 +0,0 @@ ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: RoleBinding -metadata: - name: metrics-server-auth-reader - namespace: kube-system -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: Role - name: extension-apiserver-authentication-reader -subjects: -- kind: ServiceAccount - name: metrics-server - namespace: kube-system diff --git a/metrics-server/metrics-apiservice.yaml b/metrics-server/metrics-apiservice.yaml deleted file mode 100644 index 08b0530..0000000 --- a/metrics-server/metrics-apiservice.yaml +++ /dev/null @@ -1,14 +0,0 @@ ---- -apiVersion: apiregistration.k8s.io/v1beta1 -kind: APIService -metadata: - name: v1beta1.metrics.k8s.io -spec: - service: - name: metrics-server - namespace: kube-system - group: metrics.k8s.io - version: v1beta1 - insecureSkipTLSVerify: true - groupPriorityMinimum: 100 - versionPriority: 100 diff --git a/metrics-server/metrics-server-deployment.yaml b/metrics-server/metrics-server-deployment.yaml deleted file mode 100644 index 52120ba..0000000 --- a/metrics-server/metrics-server-deployment.yaml +++ /dev/null @@ -1,49 +0,0 @@ ---- -apiVersion: v1 -kind: ServiceAccount -metadata: - name: metrics-server - namespace: kube-system ---- -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: metrics-server - namespace: kube-system - labels: - k8s-app: metrics-server -spec: - selector: - matchLabels: - k8s-app: metrics-server - template: - metadata: - name: metrics-server - labels: - k8s-app: metrics-server - spec: - volumes: - - name: timezone - hostPath: - path: /etc/timezone - type: File - - name: localtime - hostPath: - path: /usr/share/zoneinfo/Asia/Shanghai - type: File - serviceAccountName: metrics-server - containers: - - name: metrics-server - image: gcr.io/google_containers/metrics-server-amd64:v0.2.1 - imagePullPolicy: IfNotPresent - command: - - /metrics-server - # - --source=kubernetes.summary_api:'' - # 10255 readonly端口已经作废 - - --source=kubernetes.summary_api:https://kubernetes.default?kubeletHttps=true&kubeletPort=10250&insecure=true - - --metric-resolution=30s - volumeMounts: - - name: timezone - mountPath: "/etc/timezone" - - name: localtime - mountPath: "/etc/localtime" diff --git a/metrics-server/metrics-server-service.yaml b/metrics-server/metrics-server-service.yaml deleted file mode 100644 index 082b00c..0000000 --- a/metrics-server/metrics-server-service.yaml +++ /dev/null @@ -1,15 +0,0 @@ ---- -apiVersion: v1 -kind: Service -metadata: - name: metrics-server - namespace: kube-system - labels: - kubernetes.io/name: "Metrics-server" -spec: - selector: - k8s-app: metrics-server - ports: - - port: 443 - protocol: TCP - targetPort: 443 diff --git a/metrics-server/resource-reader.yaml b/metrics-server/resource-reader.yaml deleted file mode 100644 index 34294a3..0000000 --- a/metrics-server/resource-reader.yaml +++ /dev/null @@ -1,38 +0,0 @@ ---- -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRole -metadata: - name: system:metrics-server -rules: -- apiGroups: - - "" - resources: - - pods - - nodes - - nodes/stats - - namespaces - verbs: - - get - - list - - watch -- apiGroups: - - "extensions" - resources: - - deployments - verbs: - - get - - list - - watch ---- -apiVersion: rbac.authorization.k8s.io/v1 -kind: ClusterRoleBinding -metadata: - name: system:metrics-server -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: system:metrics-server -subjects: -- kind: ServiceAccount - name: metrics-server - namespace: kube-system diff --git a/nginx-lb/docker-compose.yaml b/nginx-lb/docker-compose.yaml deleted file mode 100644 index 72048d7..0000000 --- a/nginx-lb/docker-compose.yaml +++ /dev/null @@ -1,11 +0,0 @@ -version: '2' -services: - etcd: - image: nginx:latest - container_name: nginx-lb - hostname: nginx-lb - volumes: - - ./nginx-lb.conf:/etc/nginx/nginx.conf - ports: - - 16443:16443 - restart: always diff --git a/nginx-lb/nginx-lb.conf.tpl b/nginx-lb/nginx-lb.conf.tpl deleted file mode 100644 index 5367e91..0000000 --- a/nginx-lb/nginx-lb.conf.tpl +++ /dev/null @@ -1,46 +0,0 @@ -user nginx; -worker_processes 1; - -error_log /var/log/nginx/error.log warn; -pid /var/run/nginx.pid; - - -events { - worker_connections 1024; -} - - -http { - include /etc/nginx/mime.types; - default_type application/octet-stream; - - log_format main '$remote_addr - $remote_user [$time_local] "$request" ' - '$status $body_bytes_sent "$http_referer" ' - '"$http_user_agent" "$http_x_forwarded_for"'; - - access_log /var/log/nginx/access.log main; - - sendfile on; - #tcp_nopush on; - - keepalive_timeout 65; - - #gzip on; - - include /etc/nginx/conf.d/*.conf; -} - -stream { - upstream apiserver { - server K8SHA_IP1:6443 weight=5 max_fails=3 fail_timeout=30s; - server K8SHA_IP2:6443 weight=5 max_fails=3 fail_timeout=30s; - server K8SHA_IP3:6443 weight=5 max_fails=3 fail_timeout=30s; - } - - server { - listen 16443; - proxy_connect_timeout 1s; - proxy_timeout 3s; - proxy_pass apiserver; - } -} diff --git a/prometheus/README.md b/prometheus/README.md deleted file mode 100644 index 647523d..0000000 --- a/prometheus/README.md +++ /dev/null @@ -1,4 +0,0 @@ -# 先创建文件夹和设置权限 - -mkdir -p /mnt/mycephfs/k8s-deploy/kube-system/prometheus -chown -R 65534:65534 /mnt/mycephfs/k8s-deploy/kube-system/prometheus diff --git a/prometheus/cluster-role.yaml b/prometheus/cluster-role.yaml deleted file mode 100644 index 153ec51..0000000 --- a/prometheus/cluster-role.yaml +++ /dev/null @@ -1,33 +0,0 @@ -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRole -metadata: - name: prometheus -rules: -- apiGroups: [""] - resources: - - nodes - - nodes/proxy - - services - - endpoints - - pods - verbs: ["get", "list", "watch"] -- apiGroups: - - extensions - resources: - - ingresses - verbs: ["get", "list", "watch"] -- nonResourceURLs: ["/metrics"] - verbs: ["get"] ---- -apiVersion: rbac.authorization.k8s.io/v1beta1 -kind: ClusterRoleBinding -metadata: - name: prometheus -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: prometheus -subjects: -- kind: ServiceAccount - name: default - namespace: kube-system diff --git a/prometheus/config-map.yaml b/prometheus/config-map.yaml deleted file mode 100644 index 770910d..0000000 --- a/prometheus/config-map.yaml +++ /dev/null @@ -1,257 +0,0 @@ -apiVersion: v1 -kind: ConfigMap -metadata: - name: prometheus-server-conf - labels: - name: prometheus-server-conf - namespace: kube-system -data: - prometheus.yml: |- - # A scrape configuration for running Prometheus on a Kubernetes cluster. - # This uses separate scrape configs for cluster components (i.e. API server, node) - # and services to allow each to use different authentication configs. - # - # Kubernetes labels will be added as Prometheus labels on metrics via the - # `labelmap` relabeling action. - # - # If you are using Kubernetes 1.7.2 or earlier, please take note of the comments - # for the kubernetes-cadvisor job; you will need to edit or remove this job. - - # Scrape config for API servers. - # - # Kubernetes exposes API servers as endpoints to the default/kubernetes - # service so this uses `endpoints` role and uses relabelling to only keep - # the endpoints associated with the default/kubernetes service using the - # default named port `https`. This works for single API server deployments as - # well as HA API server deployments. - scrape_configs: - - job_name: 'kubernetes-apiservers' - - kubernetes_sd_configs: - - role: endpoints - - # Default to scraping over https. If required, just disable this or change to - # `http`. - scheme: https - - # This TLS & bearer token file config is used to connect to the actual scrape - # endpoints for cluster components. This is separate to discovery auth - # configuration because discovery & scraping are two separate concerns in - # Prometheus. The discovery auth config is automatic if Prometheus runs inside - # the cluster. Otherwise, more config options have to be provided within the - # . - tls_config: - ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt - # If your node certificates are self-signed or use a different CA to the - # master CA, then disable certificate verification below. Note that - # certificate verification is an integral part of a secure infrastructure - # so this should only be disabled in a controlled environment. You can - # disable certificate verification by uncommenting the line below. - # - # insecure_skip_verify: true - bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token - - # Keep only the default/kubernetes service endpoints for the https port. This - # will add targets for each API server which Kubernetes adds an endpoint to - # the default/kubernetes service. - relabel_configs: - - source_labels: [__meta_kubernetes_namespace, __meta_kubernetes_service_name, __meta_kubernetes_endpoint_port_name] - action: keep - regex: default;kubernetes;https - - # Scrape config for nodes (kubelet). - # - # Rather than connecting directly to the node, the scrape is proxied though the - # Kubernetes apiserver. This means it will work if Prometheus is running out of - # cluster, or can't connect to nodes for some other reason (e.g. because of - # firewalling). - - job_name: 'kubernetes-nodes' - - # Default to scraping over https. If required, just disable this or change to - # `http`. - scheme: https - - # This TLS & bearer token file config is used to connect to the actual scrape - # endpoints for cluster components. This is separate to discovery auth - # configuration because discovery & scraping are two separate concerns in - # Prometheus. The discovery auth config is automatic if Prometheus runs inside - # the cluster. Otherwise, more config options have to be provided within the - # . - tls_config: - ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt - bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token - - kubernetes_sd_configs: - - role: node - - relabel_configs: - - action: labelmap - regex: __meta_kubernetes_node_label_(.+) - - target_label: __address__ - replacement: kubernetes.default.svc:443 - - source_labels: [__meta_kubernetes_node_name] - regex: (.+) - target_label: __metrics_path__ - replacement: /api/v1/nodes/${1}/proxy/metrics - - # Scrape config for Kubelet cAdvisor. - # - # This is required for Kubernetes 1.7.3 and later, where cAdvisor metrics - # (those whose names begin with 'container_') have been removed from the - # Kubelet metrics endpoint. This job scrapes the cAdvisor endpoint to - # retrieve those metrics. - # - # In Kubernetes 1.7.0-1.7.2, these metrics are only exposed on the cAdvisor - # HTTP endpoint; use "replacement: /api/v1/nodes/${1}:4194/proxy/metrics" - # in that case (and ensure cAdvisor's HTTP server hasn't been disabled with - # the --cadvisor-port=0 Kubelet flag). - # - # This job is not necessary and should be removed in Kubernetes 1.6 and - # earlier versions, or it will cause the metrics to be scraped twice. - - job_name: 'kubernetes-cadvisor' - - # Default to scraping over https. If required, just disable this or change to - # `http`. - scheme: https - - # This TLS & bearer token file config is used to connect to the actual scrape - # endpoints for cluster components. This is separate to discovery auth - # configuration because discovery & scraping are two separate concerns in - # Prometheus. The discovery auth config is automatic if Prometheus runs inside - # the cluster. Otherwise, more config options have to be provided within the - # . - tls_config: - ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt - bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token - - kubernetes_sd_configs: - - role: node - - relabel_configs: - - action: labelmap - regex: __meta_kubernetes_node_label_(.+) - - target_label: __address__ - replacement: kubernetes.default.svc:443 - - source_labels: [__meta_kubernetes_node_name] - regex: (.+) - target_label: __metrics_path__ - replacement: /api/v1/nodes/${1}/proxy/metrics/cadvisor - - # Example scrape config for service endpoints. - # - # The relabeling allows the actual service scrape endpoint to be configured - # for all or only some endpoints. - - job_name: 'kubernetes-service-endpoints' - - kubernetes_sd_configs: - - role: endpoints - - relabel_configs: - # Example relabel to scrape only endpoints that have - # "example.io/should_be_scraped = true" annotation. - # - source_labels: [__meta_kubernetes_service_annotation_example_io_should_be_scraped] - # action: keep - # regex: true - # - # Example relabel to customize metric path based on endpoints - # "example.io/metric_path = " annotation. - # - source_labels: [__meta_kubernetes_service_annotation_example_io_metric_path] - # action: replace - # target_label: __metrics_path__ - # regex: (.+) - # - # Example relabel to scrape only single, desired port for the service based - # on endpoints "example.io/scrape_port = " annotation. - # - source_labels: [__address__, __meta_kubernetes_service_annotation_example_io_scrape_port] - # action: replace - # regex: ([^:]+)(?::\d+)?;(\d+) - # replacement: $1:$2 - # target_label: __address__ - # - # Example relabel to configure scrape scheme for all service scrape targets - # based on endpoints "example.io/scrape_scheme = " annotation. - # - source_labels: [__meta_kubernetes_service_annotation_example_io_scrape_scheme] - # action: replace - # target_label: __scheme__ - # regex: (https?) - - action: labelmap - regex: __meta_kubernetes_service_label_(.+) - - source_labels: [__meta_kubernetes_namespace] - action: replace - target_label: kubernetes_namespace - - source_labels: [__meta_kubernetes_service_name] - action: replace - target_label: kubernetes_name - - # Example scrape config for pods - # - # The relabeling allows the actual pod scrape to be configured - # for all the declared ports (or port-free target if none is declared) - # or only some ports. - - job_name: 'kubernetes-pods' - - kubernetes_sd_configs: - - role: pod - - relabel_configs: - # Example relabel to scrape only pods that have - # "example.io/should_be_scraped = true" annotation. - # - source_labels: [__meta_kubernetes_pod_annotation_example_io_should_be_scraped] - # action: keep - # regex: true - # - # Example relabel to customize metric path based on pod - # "example.io/metric_path = " annotation. - # - source_labels: [__meta_kubernetes_pod_annotation_example_io_metric_path] - # action: replace - # target_label: __metrics_path__ - # regex: (.+) - # - # Example relabel to scrape only single, desired port for the pod - # based on pod "example.io/scrape_port = " annotation. - # Note that __address__ is modified here, so if pod containers' ports - # are declared, they all will be ignored. - # - source_labels: [__address__, __meta_kubernetes_pod_annotation_example_io_scrape_port] - # action: replace - # regex: ([^:]+)(?::\d+)?;(\d+) - # replacement: $1:$2 - # target_label: __address__ - - action: labelmap - regex: __meta_kubernetes_pod_label_(.+) - - source_labels: [__meta_kubernetes_namespace] - action: replace - target_label: kubernetes_namespace - - source_labels: [__meta_kubernetes_pod_name] - action: replace - target_label: kubernetes_pod_name - - job_name: kubernetes-nodes-cadvisor - scrape_interval: 10s - scrape_timeout: 10s - scheme: https # remove if you want to scrape metrics on insecure port - tls_config: - ca_file: /var/run/secrets/kubernetes.io/serviceaccount/ca.crt - bearer_token_file: /var/run/secrets/kubernetes.io/serviceaccount/token - kubernetes_sd_configs: - - role: node - relabel_configs: - - action: labelmap - regex: __meta_kubernetes_node_label_(.+) - # Only for Kubernetes ^1.7.3. - # See: https://github.com/prometheus/prometheus/issues/2916 - - target_label: __address__ - replacement: kubernetes.default.svc:443 - - source_labels: [__meta_kubernetes_node_name] - regex: (.+) - target_label: __metrics_path__ - replacement: /api/v1/nodes/${1}/proxy/metrics/cadvisor - metric_relabel_configs: - - action: replace - source_labels: [id] - regex: '^/machine\.slice/machine-rkt\\x2d([^\\]+)\\.+/([^/]+)\.service$' - target_label: rkt_container_name - replacement: '${2}-${1}' - - action: replace - source_labels: [id] - regex: '^/system\.slice/(.+)\.service$' - target_label: systemd_service_name - replacement: '${1}' diff --git a/prometheus/prometheus-deployment.yaml b/prometheus/prometheus-deployment.yaml deleted file mode 100644 index 1443704..0000000 --- a/prometheus/prometheus-deployment.yaml +++ /dev/null @@ -1,34 +0,0 @@ -apiVersion: extensions/v1beta1 -kind: Deployment -metadata: - name: prometheus - namespace: kube-system -spec: - replicas: 1 - template: - metadata: - labels: - app: prometheus - spec: - nodeSelector: - node-role.kubernetes.io/master: "" - containers: - - name: prometheus - image: prom/prometheus:v2.3.1 - args: - - "--config.file=/etc/prometheus/prometheus.yml" - - "--storage.tsdb.path=/prometheus/" - ports: - - containerPort: 9090 - volumeMounts: - - name: prometheus-config-volume - mountPath: /etc/prometheus/ - - name: prometheus-storage - mountPath: /prometheus/ - volumes: - - name: prometheus-config-volume - configMap: - defaultMode: 420 - name: prometheus-server-conf - - name: prometheus-storage - emptyDir: {} diff --git a/prometheus/prometheus-service.yaml b/prometheus/prometheus-service.yaml deleted file mode 100644 index 911bc16..0000000 --- a/prometheus/prometheus-service.yaml +++ /dev/null @@ -1,13 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - name: prometheus - namespace: kube-system -spec: - selector: - app: prometheus - type: NodePort - ports: - - port: 8080 - targetPort: 9090 - nodePort: 30013 diff --git a/tls.crt b/tls.crt deleted file mode 100644 index cca68ed..0000000 --- a/tls.crt +++ /dev/null @@ -1,19 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIDAzCCAeugAwIBAgIJAIoRNa+HktZfMA0GCSqGSIb3DQEBCwUAMBgxFjAUBgNV -BAMMDWs4cy1tYXN0ZXItbGIwHhcNMTgxMTMwMDc1ODE3WhcNMjgxMTI3MDc1ODE3 -WjAYMRYwFAYDVQQDDA1rOHMtbWFzdGVyLWxiMIIBIjANBgkqhkiG9w0BAQEFAAOC -AQ8AMIIBCgKCAQEAwLim3+JONacZ5wTx6uv1lKysoAzYfnGQ3yfPljDygCbFhuzr -Vfbtw4E66otdsvJgn9vmPbdSDecrvFnKAUJpSX9D+AbAXDnskT+HEhhgfGrZtcY5 -5iMlSfXX3+pS71rEOSpenDXyDE5TzTBAF+8W6hGsBPHPDkGxIgd1VVbeFc0/HMkN -vETnuIoK077RHtrE+XZ2yAl0IChGYBsTE6vZ2QjigBhJMw810rgD/ZmA2zRnoiCw -ERxsmxOyRCnm1HFQW5CgiyX+dGuep1+3vsdve3TPJ7KUBtGKnhkEPDfXUWZ+AR+l -WjVJGFxIAZEpvHMH+j2sEMuGN3Q0mdJ5FlNabwIDAQABo1AwTjAdBgNVHQ4EFgQU -DTI8VutqShoJlqFUNstODILiGuowHwYDVR0jBBgwFoAUDTI8VutqShoJlqFUNstO -DILiGuowDAYDVR0TBAUwAwEB/zANBgkqhkiG9w0BAQsFAAOCAQEAB5oDA2O/MvqQ -h8kyhllZ7hFsgGkUOgcHnftL4HdYEOy7NUoqAoUaj41cNstYNin6hBp1AYA9vz7k -l/Kjj8m3GQeQFJKrw8W4hrsjeo5GPZSYPo5f/Aw+BTXL8TYdWQn86iiSqAT40pd/ -staBqzjAYih0/dgZg2xJ4o8h5rnkX/KR2vrDkLm6JwRnWHrP7vSjgnSnVXRcumSE -qkWn7eTNFwTLJTdC1ilaG7EfP+hYKj7y3MRn/xM+ugHU6rfOMXkf7t1tLt/bRz8E -FS6hV00Re/4cuIn5HnXPpSLgU7GJwUAjfIShh1DanTMRaNDBYCKse8M2g6FdQTfZ -bmzaffhI1g== ------END CERTIFICATE----- diff --git a/tls.key b/tls.key deleted file mode 100644 index 6d29c82..0000000 --- a/tls.key +++ /dev/null @@ -1,28 +0,0 @@ ------BEGIN PRIVATE KEY----- -MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDAuKbf4k41pxnn -BPHq6/WUrKygDNh+cZDfJ8+WMPKAJsWG7OtV9u3DgTrqi12y8mCf2+Y9t1IN5yu8 -WcoBQmlJf0P4BsBcOeyRP4cSGGB8atm1xjnmIyVJ9dff6lLvWsQ5Kl6cNfIMTlPN -MEAX7xbqEawE8c8OQbEiB3VVVt4VzT8cyQ28ROe4igrTvtEe2sT5dnbICXQgKEZg -GxMTq9nZCOKAGEkzDzXSuAP9mYDbNGeiILARHGybE7JEKebUcVBbkKCLJf50a56n -X7e+x297dM8nspQG0YqeGQQ8N9dRZn4BH6VaNUkYXEgBkSm8cwf6PawQy4Y3dDSZ -0nkWU1pvAgMBAAECggEBALrGelwCfJ+86fqeLULrGd/UFZ0rtemdcLUFZUb++xa9 -/LOOC2oN3VKbfRjwpoeWJZToTlTDxQ9aWmW5c3ATB+1GHP5UtLrtHFuMgQBFhcUu -3P4xNc3Xg/0Q+P22oFf+1Ks+Z+Dm20WX59m1iHhprAB/zgIgw/XiLqR3K/zgKm5f -BFkkMCjptYxaR6r456C7yRi2nIHcMCcrYNWWYergZGYU9T7DMu2ATzCsnvsfUUS6 -V/EpHT/1RyPd8uQCsqWXec6+fLYAKx5FXLKvTqqsuSi2A83A2kY3HpcbSwXHLCM6 -B6LLMJPPuMhTRg02imttGkFkFjQiUWnlvuCv7PJ10NECgYEA6Wsw4im9bBhhC6Ac -wuzpczbjM4gjUihW+ntgks0suUMcn4VvxCQ9mAiTKCMO6u7VtG+Pe4NCaXtjQtAd -wRWzyuZYrZUHBXfJIvPtJYKuhOpyQjzDXPYZgaht+8S5EPV1JS35ozqHPwfA4fHT -Yz98xr1iVyoNyiBJVhxyjy3WWdcCgYEA012OL3IA1jIbWXDGKaUBRNgckwpWmdbI -/U9iR0tmiCP3RIpCv/D5yC/eG6d5ILX8w1yskB6lkw3OKV7Q8rzE1cw+r7GWCt5d -BmRMuyclHg4NiBgWAkwSMvT9zs43Ml45LxTHTRV0AVGCuegs040fT61bHh4GqUNR -QLyN4i8f4SkCgYB+MTRJYTWGRhvZNCO4gmqnnknw5y3pUePMIX2RgBkow46q83H8 -QXeHRUOBlIqRGrQwi4uvw8PY0RtV2LvtUnVUQXo5xfL40szL98IC4IbHVxSUmNMp -4+bgQRXM4osHDxzZD+UBiTfrLJ7ryFh3NLCZpXOQGi1AVHoxcsnAfJCBGwKBgQCa -VDk5U1hhDX0CtWE7jwt6JQHYKzhIY5elvYzY2aknxnsJRJqwY1c+YBUgxAuhYsAI -NWaaZIYo9W+OrXiLhGGEaflrd5NCpFHwFNQh4tcrNr+Sm2OWkczIADJCCjgrQrkm -M1nCYuOtAsMc0vXIEcbG+qEJQItEk66EQiim+hmg4QKBgDIqy62XRty68/+kLvFp -t0RzTu9NuISzKafRYoOWp4ZugiDDHimmqZDoFqZubfB0aIioYFk1YTwSpDK4wwT1 -LewD42EnaQAXga2oIY5P+9kPo2ph5cKBpE+nHWzAnY6PayMPZzU9rOHutiUzpS/Q -N33P3eJY288DN+G/M9mFOgjQ ------END PRIVATE KEY----- diff --git a/traefik/README.md b/traefik/README.md deleted file mode 100644 index 25fb230..0000000 --- a/traefik/README.md +++ /dev/null @@ -1,1102 +0,0 @@ -# kubeadm-highavailiability - 基于kubeadm的kubernetes高可用集群部署,支持v1.11.x v1.9.x v1.7.x v1.6.x版本 - -![k8s logo](images/Kubernetes.png) - -- [中文文档(for v1.11.x版本)](README_CN.md) -- [English document(for v1.11.x version)](README.md) -- [中文文档(for v1.9.x版本)](v1.9/README_CN.md) -- [English document(for v1.9.x version)](v1.9/README.md) -- [中文文档(for v1.7.x版本)](v1.7/README_CN.md) -- [English document(for v1.7.x version)](v1.7/README.md) -- [中文文档(for v1.6.x版本)](v1.6/README_CN.md) -- [English document(for v1.6.x version)](v1.6/README.md) - ---- - -- [GitHub项目地址](https://github.com/cookeem/kubeadm-ha/) -- [OSChina项目地址](https://git.oschina.net/cookeem/kubeadm-ha/) - ---- - -- 该指引适用于v1.11.x版本的kubernetes集群 - -> v1.11.x版本支持在control plane上启动TLS的etcd高可用集群。 - -### 目录 - -1. [部署架构](#部署架构) - 1. [概要部署架构](#概要部署架构) - 1. [详细部署架构](#详细部署架构) - 1. [主机节点清单](#主机节点清单) -1. [安装前准备](#安装前准备) - 1. [版本信息](#版本信息) - 1. [所需docker镜像](#所需docker镜像) - 1. [系统设置](#系统设置) -1. [kubernetes安装](#kubernetes安装) - 1. [firewalld和iptables相关端口设置](#firewalld和iptables相关端口设置) - 1. [kubernetes相关服务安装](#kubernetes相关服务安装) - 1. [master节点互信设置](#master节点互信设置) -1. [master高可用安装](#master高可用安装) - 1. [配置文件初始化](#配置文件初始化) - 1. [kubeadm初始化](#kubeadm初始化) - 1. [高可用配置](#高可用配置) -1. [master负载均衡设置](#master负载均衡设置) - 1. [keepalived安装配置](#keepalived安装配置) - 1. [nginx负载均衡配置](#nginx负载均衡配置) - 1. [kube-proxy高可用设置](#kube-proxy高可用设置) - 1. [验证高可用状态](#验证高可用状态) - 1. [基础组件安装](#基础组件安装) -1. [worker节点设置](#worker节点设置) - 1. [worker加入高可用集群](#worker加入高可用集群) -1. [集群验证](#集群验证) - 1. [验证集群高可用设置](#验证集群高可用设置) - -### 部署架构 - -#### 概要部署架构 - -![ha logo](images/ha.png) - -- kubernetes高可用的核心架构是master的高可用,kubectl、客户端以及nodes访问load balancer实现高可用。 - ---- -[返回目录](#目录) - -#### 详细部署架构 - -![k8s ha](images/k8s-ha.png) - -- kubernetes组件说明 - -> kube-apiserver:集群核心,集群API接口、集群各个组件通信的中枢;集群安全控制; -> etcd:集群的数据中心,用于存放集群的配置以及状态信息,非常重要,如果数据丢失那么集群将无法恢复;因此高可用集群部署首先就是etcd是高可用集群; -> kube-scheduler:集群Pod的调度中心;默认kubeadm安装情况下--leader-elect参数已经设置为true,保证master集群中只有一个kube-scheduler处于活跃状态; -> kube-controller-manager:集群状态管理器,当集群状态与期望不同时,kcm会努力让集群恢复期望状态,比如:当一个pod死掉,kcm会努力新建一个pod来恢复对应replicas set期望的状态;默认kubeadm安装情况下--leader-elect参数已经设置为true,保证master集群中只有一个kube-controller-manager处于活跃状态; -> kubelet: kubernetes node agent,负责与node上的docker engine打交道; -> kube-proxy: 每个node上一个,负责service vip到endpoint pod的流量转发,当前主要通过设置iptables规则实现。 - -- 负载均衡 - -> keepalived集群设置一个虚拟ip地址,虚拟ip地址指向k8s-master01、k8s-master02、k8s-master03。 -> nginx用于k8s-master01、k8s-master02、k8s-master03的apiserver的负载均衡。外部kubectl以及nodes访问apiserver的时候就可以用过keepalived的虚拟ip(192.168.20.10)以及nginx端口(16443)访问master集群的apiserver。 - ---- - -[返回目录](#目录) - -#### 主机节点清单 - -主机名 | IP地址 | 说明 | 组件 -:--- | :--- | :--- | :--- -k8s-master01 ~ 03 | 192.168.20.20 ~ 22 | master节点 * 3 | keepalived、nginx、etcd、kubelet、kube-apiserver -k8s-master-lb | 192.168.20.10 | keepalived虚拟IP | 无 -k8s-node01 ~ 08 | 192.168.20.30 ~ 37 | worker节点 * 8 | kubelet - ---- - -[返回目录](#目录) - -### 安装前准备 - -#### 版本信息 - -- Linux版本:CentOS 7.4.1708 - -- 内核版本: 4.6.4-1.el7.elrepo.x86_64 - -```sh -$ cat /etc/redhat-release -CentOS Linux release 7.4.1708 (Core) - -$ uname -r -4.6.4-1.el7.elrepo.x86_64 -``` - -- docker版本:17.12.0-ce-rc2 - -```sh -$ docker version -Client: - Version: 17.12.0-ce-rc2 - API version: 1.35 - Go version: go1.9.2 - Git commit: f9cde63 - Built: Tue Dec 12 06:42:20 2017 - OS/Arch: linux/amd64 - -Server: - Engine: - Version: 17.12.0-ce-rc2 - API version: 1.35 (minimum version 1.12) - Go version: go1.9.2 - Git commit: f9cde63 - Built: Tue Dec 12 06:44:50 2017 - OS/Arch: linux/amd64 - Experimental: false -``` - -- kubeadm版本:v1.11.1 - -```sh -$ kubeadm version -kubeadm version: &version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.1", GitCommit:"b1b29978270dc22fecc592ac55d903350454310a", GitTreeState:"clean", BuildDate:"2018-07-17T18:50:16Z", GoVersion:"go1.10.3", Compiler:"gc", Platform:"linux/amd64"} -``` - -- kubelet版本:v1.11.1 - -```sh -$ kubelet --version -Kubernetes v1.11.1 -``` - -- 网络组件 - -> calico - ---- - -[返回目录](#目录) - -#### 所需docker镜像 - -- 相关docker镜像以及版本 - -```sh -# kuberentes basic components - -# 通过kubeadm 获取基础组件镜像清单 -$ kubeadm config images list --kubernetes-version=v1.11.1 -k8s.gcr.io/kube-apiserver-amd64:v1.11.1 -k8s.gcr.io/kube-controller-manager-amd64:v1.11.1 -k8s.gcr.io/kube-scheduler-amd64:v1.11.1 -k8s.gcr.io/kube-proxy-amd64:v1.11.1 -k8s.gcr.io/pause:3.1 -k8s.gcr.io/etcd-amd64:3.2.18 -k8s.gcr.io/coredns:1.1.3 - -# 通过kubeadm 拉取基础镜像 -$ kubeadm config images pull --kubernetes-version=v1.11.1 - -# kubernetes networks add ons -$ docker pull quay.io/calico/typha:v0.7.4 -$ docker pull quay.io/calico/node:v3.1.3 -$ docker pull quay.io/calico/cni:v3.1.3 - -# kubernetes metrics server -$ docker pull gcr.io/google_containers/metrics-server-amd64:v0.2.1 - -# kubernetes dashboard -$ docker pull gcr.io/google_containers/kubernetes-dashboard-amd64:v1.8.3 - -# kubernetes heapster -$ docker pull k8s.gcr.io/heapster-amd64:v1.5.4 -$ docker pull k8s.gcr.io/heapster-influxdb-amd64:v1.5.2 -$ docker pull k8s.gcr.io/heapster-grafana-amd64:v5.0.4 - -# kubernetes apiserver load balancer -$ docker pull nginx:latest - -# prometheus -$ docker pull prom/prometheus:v2.3.1 - -# traefik -$ docker pull traefik:v1.6.3 - -# istio -$ docker pull docker.io/jaegertracing/all-in-one:1.5 -$ docker pull docker.io/prom/prometheus:v2.3.1 -$ docker pull docker.io/prom/statsd-exporter:v0.6.0 -$ docker pull gcr.io/istio-release/citadel:1.0.0 -$ docker pull gcr.io/istio-release/galley:1.0.0 -$ docker pull gcr.io/istio-release/grafana:1.0.0 -$ docker pull gcr.io/istio-release/mixer:1.0.0 -$ docker pull gcr.io/istio-release/pilot:1.0.0 -$ docker pull gcr.io/istio-release/proxy_init:1.0.0 -$ docker pull gcr.io/istio-release/proxyv2:1.0.0 -$ docker pull gcr.io/istio-release/servicegraph:1.0.0 -$ docker pull gcr.io/istio-release/sidecar_injector:1.0.0 -$ docker pull quay.io/coreos/hyperkube:v1.7.6_coreos.0 -``` - ---- - -[返回目录](#目录) - -#### 系统设置 - -- 在所有kubernetes节点上增加kubernetes仓库 - -```sh -$ cat < /etc/yum.repos.d/kubernetes.repo -[kubernetes] -name=Kubernetes -baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64 -enabled=1 -gpgcheck=1 -repo_gpgcheck=1 -gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg -exclude=kube* -EOF -``` - -- 在所有kubernetes节点上进行系统更新 - -```sh -$ yum update -y -``` - -- 在所有kubernetes节点上设置SELINUX为permissive模式 - -```sh -$ vi /etc/selinux/config -SELINUX=permissive - -$ setenforce 0 -``` - -- 在所有kubernetes节点上设置iptables参数 - -```sh -$ cat < /etc/sysctl.d/k8s.conf -net.bridge.bridge-nf-call-ip6tables = 1 -net.bridge.bridge-nf-call-iptables = 1 -net.ipv4.ip_forward = 1 -EOF - -$ sysctl --system -``` - -- 在所有kubernetes节点上禁用swap - -```sh -$ swapoff -a - -# 禁用fstab中的swap项目 -$ vi /etc/fstab -#/dev/mapper/centos-swap swap swap defaults 0 0 - -# 确认swap已经被禁用 -$ cat /proc/swaps -Filename Type Size Used Priority -``` - -- 在所有kubernetes节点上重启主机 - -```sh -# 重启主机 -$ reboot -``` - ---- - -[返回目录](#目录) - -### kubernetes安装 - -#### firewalld和iptables相关端口设置 - -- 所有节点开启防火墙 - -```sh -# 重启防火墙 -$ systemctl enable firewalld -$ systemctl restart firewalld -$ systemctl status firewalld -``` - -- 相关端口(master) - -协议 | 方向 | 端口 | 说明 -:--- | :--- | :--- | :--- -TCP | Inbound | 16443* | Load balancer Kubernetes API server port -TCP | Inbound | 6443* | Kubernetes API server -TCP | Inbound | 4001 | etcd listen client port -TCP | Inbound | 2379-2380 | etcd server client API -TCP | Inbound | 10250 | Kubelet API -TCP | Inbound | 10251 | kube-scheduler -TCP | Inbound | 10252 | kube-controller-manager -TCP | Inbound | 10255 | Read-only Kubelet API (Deprecated) -TCP | Inbound | 30000-32767 | NodePort Services - -- 设置防火墙策略 - -```sh -$ firewall-cmd --zone=public --add-port=16443/tcp --permanent -$ firewall-cmd --zone=public --add-port=6443/tcp --permanent -$ firewall-cmd --zone=public --add-port=4001/tcp --permanent -$ firewall-cmd --zone=public --add-port=2379-2380/tcp --permanent -$ firewall-cmd --zone=public --add-port=10250/tcp --permanent -$ firewall-cmd --zone=public --add-port=10251/tcp --permanent -$ firewall-cmd --zone=public --add-port=10252/tcp --permanent -$ firewall-cmd --zone=public --add-port=30000-32767/tcp --permanent - -$ firewall-cmd --reload - -$ firewall-cmd --list-all --zone=public -public (active) - target: default - icmp-block-inversion: no - interfaces: ens2f1 ens1f0 nm-bond - sources: - services: ssh dhcpv6-client - ports: 4001/tcp 6443/tcp 2379-2380/tcp 10250/tcp 10251/tcp 10252/tcp 30000-32767/tcp - protocols: - masquerade: no - forward-ports: - source-ports: - icmp-blocks: - rich rules: -``` - -- 相关端口(worker) - -协议 | 方向 | 端口 | 说明 -:--- | :--- | :--- | :--- -TCP | Inbound | 10250 | Kubelet API -TCP | Inbound | 30000-32767 | NodePort Services - -- 设置防火墙策略 - -```sh -$ firewall-cmd --zone=public --add-port=10250/tcp --permanent -$ firewall-cmd --zone=public --add-port=30000-32767/tcp --permanent - -$ firewall-cmd --reload - -$ firewall-cmd --list-all --zone=public -public (active) - target: default - icmp-block-inversion: no - interfaces: ens2f1 ens1f0 nm-bond - sources: - services: ssh dhcpv6-client - ports: 10250/tcp 30000-32767/tcp - protocols: - masquerade: no - forward-ports: - source-ports: - icmp-blocks: - rich rules: -``` - -- 在所有kubernetes节点上允许kube-proxy的forward - -```sh -$ firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 1 -i docker0 -j ACCEPT -m comment --comment "kube-proxy redirects" -$ firewall-cmd --permanent --direct --add-rule ipv4 filter FORWARD 1 -o docker0 -j ACCEPT -m comment --comment "docker subnet" -$ firewall-cmd --reload - -$ firewall-cmd --direct --get-all-rules -ipv4 filter INPUT 1 -i docker0 -j ACCEPT -m comment --comment 'kube-proxy redirects' -ipv4 filter FORWARD 1 -o docker0 -j ACCEPT -m comment --comment 'docker subnet' - -# 重启防火墙 -$ systemctl restart firewalld -``` - -- 解决kube-proxy无法启用nodePort,重启firewalld必须执行以下命令,在所有节点设置定时任务 - -```sh -$ crontab -e -0,5,10,15,20,25,30,35,40,45,50,55 * * * * /usr/sbin/iptables -D INPUT -j REJECT --reject-with icmp-host-prohibited -``` - ---- - -[返回目录](#目录) - -#### kubernetes相关服务安装 - -- 在所有kubernetes节点上安装并启动kubernetes - -```sh -$ yum install -y docker-ce-17.12.0.ce-0.2.rc2.el7.centos.x86_64 -$ yum install -y docker-compose-1.9.0-5.el7.noarch -$ systemctl enable docker && systemctl start docker - -$ yum install -y kubelet-1.11.1-0.x86_64 kubeadm-1.11.1-0.x86_64 kubectl-1.11.1-0.x86_64 -$ systemctl enable kubelet && systemctl start kubelet -``` - -- 在所有master节点安装并启动keepalived - -```sh -$ yum install -y keepalived -$ systemctl enable keepalived && systemctl restart keepalived -``` - -#### master节点互信设置 - -- 在k8s-master01节点上设置节点互信 - -```sh -$ rm -rf /root/.ssh/* -$ ssh k8s-master01 pwd -$ ssh k8s-master02 rm -rf /root/.ssh/* -$ ssh k8s-master03 rm -rf /root/.ssh/* -$ ssh k8s-master02 mkdir -p /root/.ssh/ -$ ssh k8s-master03 mkdir -p /root/.ssh/ - -$ scp /root/.ssh/known_hosts root@k8s-master02:/root/.ssh/ -$ scp /root/.ssh/known_hosts root@k8s-master03:/root/.ssh/ - -$ ssh-keygen -t rsa -P '' -f /root/.ssh/id_rsa -$ cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys -$ scp /root/.ssh/authorized_keys root@k8s-master02:/root/.ssh/ -``` - -- 在k8s-master02节点上设置节点互信 - -```sh -$ ssh-keygen -t rsa -P '' -f /root/.ssh/id_rsa -$ cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys -$ scp /root/.ssh/authorized_keys root@k8s-master03:/root/.ssh/ -``` - -- 在k8s-master03节点上设置节点互信 - -```sh -$ ssh-keygen -t rsa -P '' -f /root/.ssh/id_rsa -$ cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys -$ scp /root/.ssh/authorized_keys root@k8s-master01:/root/.ssh/ -$ scp /root/.ssh/authorized_keys root@k8s-master02:/root/.ssh/ -``` - ---- - -[返回目录](#目录) - -### master高可用安装 - -#### 配置文件初始化 - -- 在k8s-master01上克隆kubeadm-ha项目源码 - -```sh -$ git clone https://github.com/cookeem/kubeadm-ha -``` - -- 在k8s-master01上通过`create-config.sh`脚本创建相关配置文件 - -```sh -$ cd kubeadm-ha - -# 根据create-config.sh的提示,修改以下配置信息 -$ vi create-config.sh -# master keepalived virtual ip address -export K8SHA_VIP=192.168.60.79 -# master01 ip address -export K8SHA_IP1=192.168.60.72 -# master02 ip address -export K8SHA_IP2=192.168.60.77 -# master03 ip address -export K8SHA_IP3=192.168.60.78 -# master keepalived virtual ip hostname -export K8SHA_VHOST=k8s-master-lb -# master01 hostname -export K8SHA_HOST1=k8s-master01 -# master02 hostname -export K8SHA_HOST2=k8s-master02 -# master03 hostname -export K8SHA_HOST3=k8s-master03 -# master01 network interface name -export K8SHA_NETINF1=nm-bond -# master02 network interface name -export K8SHA_NETINF2=nm-bond -# master03 network interface name -export K8SHA_NETINF3=nm-bond -# keepalived auth_pass config -export K8SHA_KEEPALIVED_AUTH=412f7dc3bfed32194d1600c483e10ad1d -# calico reachable ip address -export K8SHA_CALICO_REACHABLE_IP=192.168.60.1 -# kubernetes CIDR pod subnet, if CIDR pod subnet is "172.168.0.0/16" please set to "172.168.0.0" -export K8SHA_CIDR=172.168.0.0 - -# 以下脚本会创建3个master节点的kubeadm配置文件,keepalived配置文件,nginx负载均衡配置文件,以及calico配置文件 -$ ./create-config.sh -create kubeadm-config.yaml files success. config/k8s-master01/kubeadm-config.yaml -create kubeadm-config.yaml files success. config/k8s-master02/kubeadm-config.yaml -create kubeadm-config.yaml files success. config/k8s-master03/kubeadm-config.yaml -create keepalived files success. config/k8s-master01/keepalived/ -create keepalived files success. config/k8s-master02/keepalived/ -create keepalived files success. config/k8s-master03/keepalived/ -create nginx-lb files success. config/k8s-master01/nginx-lb/ -create nginx-lb files success. config/k8s-master02/nginx-lb/ -create nginx-lb files success. config/k8s-master03/nginx-lb/ -create calico.yaml file success. calico/calico.yaml - -# 设置相关hostname变量 -$ export HOST1=k8s-master01 -$ export HOST2=k8s-master02 -$ export HOST3=k8s-master03 - -# 把kubeadm配置文件放到各个master节点的/root/目录 -$ scp -r config/$HOST1/kubeadm-config.yaml $HOST1:/root/ -$ scp -r config/$HOST2/kubeadm-config.yaml $HOST2:/root/ -$ scp -r config/$HOST3/kubeadm-config.yaml $HOST3:/root/ - -# 把keepalived配置文件放到各个master节点的/etc/keepalived/目录 -$ scp -r config/$HOST1/keepalived/* $HOST1:/etc/keepalived/ -$ scp -r config/$HOST2/keepalived/* $HOST2:/etc/keepalived/ -$ scp -r config/$HOST3/keepalived/* $HOST3:/etc/keepalived/ - -# 把nginx负载均衡配置文件放到各个master节点的/root/目录 -$ scp -r config/$HOST1/nginx-lb $HOST1:/root/ -$ scp -r config/$HOST2/nginx-lb $HOST2:/root/ -$ scp -r config/$HOST3/nginx-lb $HOST3:/root/ -``` - ---- - -[返回目录](#目录) - -#### kubeadm初始化 - -- 在k8s-master01节点上使用kubeadm进行kubernetes集群初始化 - -```sh -# 执行kubeadm init之后务必记录执行结果输出的${YOUR_TOKEN}以及${YOUR_DISCOVERY_TOKEN_CA_CERT_HASH} -$ kubeadm init --config /root/kubeadm-config.yaml -kubeadm join 192.168.20.20:6443 --token ${YOUR_TOKEN} --discovery-token-ca-cert-hash sha256:${YOUR_DISCOVERY_TOKEN_CA_CERT_HASH} -``` - -- 在所有master节点上设置kubectl的配置文件变量 - -```sh -$ cat <> ~/.bashrc -export KUBECONFIG=/etc/kubernetes/admin.conf -EOF - -$ source ~/.bashrc - -# 验证是否可以使用kubectl客户端连接集群 -$ kubectl get nodes -``` - -- 在k8s-master01节点上等待 etcd / kube-apiserver / kube-controller-manager / kube-scheduler 启动 - -```sh -$ kubectl get pods -n kube-system -o wide -NAME READY STATUS RESTARTS AGE IP NODE -... -etcd-k8s-master01 1/1 Running 0 18m 192.168.20.20 k8s-master01 -kube-apiserver-k8s-master01 1/1 Running 0 18m 192.168.20.20 k8s-master01 -kube-controller-manager-k8s-master01 1/1 Running 0 18m 192.168.20.20 k8s-master01 -kube-scheduler-k8s-master01 1/1 Running 1 18m 192.168.20.20 k8s-master01 -... -``` - ---- - -[返回目录](#目录) - -#### 高可用配置 - -- 在k8s-master01上把证书复制到其他master - -```sh -# 根据实际情况修改以下HOSTNAMES变量 -$ export CONTROL_PLANE_IPS="k8s-master02 k8s-master03" - -# 把证书复制到其他master节点 -$ for host in ${CONTROL_PLANE_IPS}; do - scp /etc/kubernetes/pki/ca.crt $host:/etc/kubernetes/pki/ca.crt - scp /etc/kubernetes/pki/ca.key $host:/etc/kubernetes/pki/ca.key - scp /etc/kubernetes/pki/sa.key $host:/etc/kubernetes/pki/sa.key - scp /etc/kubernetes/pki/sa.pub $host:/etc/kubernetes/pki/sa.pub - scp /etc/kubernetes/pki/front-proxy-ca.crt $host:/etc/kubernetes/pki/front-proxy-ca.crt - scp /etc/kubernetes/pki/front-proxy-ca.key $host:/etc/kubernetes/pki/front-proxy-ca.key - scp /etc/kubernetes/pki/etcd/ca.crt $host:/etc/kubernetes/pki/etcd/ca.crt - scp /etc/kubernetes/pki/etcd/ca.key $host:/etc/kubernetes/pki/etcd/ca.key - scp /etc/kubernetes/admin.conf $host:/etc/kubernetes/admin.conf -done -``` - -- 在k8s-master02上把节点加入集群 - -```sh -# 创建相关的证书以及kubelet配置文件 -$ kubeadm alpha phase certs all --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubeconfig controller-manager --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubeconfig scheduler --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubelet config write-to-disk --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubelet write-env-file --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubeconfig kubelet --config /root/kubeadm-config.yaml -$ systemctl restart kubelet - -# 设置k8s-master01以及k8s-master02的HOSTNAME以及地址 -$ export CP0_IP=192.168.20.20 -$ export CP0_HOSTNAME=k8s-master01 -$ export CP1_IP=192.168.20.21 -$ export CP1_HOSTNAME=k8s-master02 - -# etcd集群添加节点 -$ kubectl exec -n kube-system etcd-${CP0_HOSTNAME} -- etcdctl --ca-file /etc/kubernetes/pki/etcd/ca.crt --cert-file /etc/kubernetes/pki/etcd/peer.crt --key-file /etc/kubernetes/pki/etcd/peer.key --endpoints=https://${CP0_IP}:2379 member add ${CP1_HOSTNAME} https://${CP1_IP}:2380 -$ kubeadm alpha phase etcd local --config /root/kubeadm-config.yaml - -# 启动master节点 -$ kubeadm alpha phase kubeconfig all --config /root/kubeadm-config.yaml -$ kubeadm alpha phase controlplane all --config /root/kubeadm-config.yaml -$ kubeadm alpha phase mark-master --config /root/kubeadm-config.yaml - -# 修改/etc/kubernetes/admin.conf的服务地址指向本机 -$ sed -i "s/192.168.20.20:6443/192.168.20.21:6443/g" /etc/kubernetes/admin.conf -``` - -- 在k8s-master03上把节点加入集群 - -```sh -# 创建相关的证书以及kubelet配置文件 -$ kubeadm alpha phase certs all --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubeconfig controller-manager --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubeconfig scheduler --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubelet config write-to-disk --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubelet write-env-file --config /root/kubeadm-config.yaml -$ kubeadm alpha phase kubeconfig kubelet --config /root/kubeadm-config.yaml -$ systemctl restart kubelet - -# 设置k8s-master01以及k8s-master03的HOSTNAME以及地址 -$ export CP0_IP=192.168.20.20 -$ export CP0_HOSTNAME=k8s-master01 -$ export CP2_IP=192.168.20.22 -$ export CP2_HOSTNAME=k8s-master03 - -# etcd集群添加节点 -$ kubectl exec -n kube-system etcd-${CP0_HOSTNAME} -- etcdctl --ca-file /etc/kubernetes/pki/etcd/ca.crt --cert-file /etc/kubernetes/pki/etcd/peer.crt --key-file /etc/kubernetes/pki/etcd/peer.key --endpoints=https://${CP0_IP}:2379 member add ${CP2_HOSTNAME} https://${CP2_IP}:2380 -$ kubeadm alpha phase etcd local --config /root/kubeadm-config.yaml - -# 启动master节点 -$ kubeadm alpha phase kubeconfig all --config /root/kubeadm-config.yaml -$ kubeadm alpha phase controlplane all --config /root/kubeadm-config.yaml -$ kubeadm alpha phase mark-master --config /root/kubeadm-config.yaml - -# 修改/etc/kubernetes/admin.conf的服务地址指向本机 -$ sed -i "s/192.168.20.20:6443/192.168.20.22:6443/g" /etc/kubernetes/admin.conf -``` - -- 在所有master节点上允许hpa通过接口采集数据,修改`/etc/kubernetes/manifests/kube-controller-manager.yaml` - -```sh -$ vi /etc/kubernetes/manifests/kube-controller-manager.yaml - - --horizontal-pod-autoscaler-use-rest-clients=false -``` - -- 在所有master上允许istio的自动注入,修改`/etc/kubernetes/manifests/kube-apiserver.yaml` - -```sh -$ vi /etc/kubernetes/manifests/kube-apiserver.yaml - - --enable-admission-plugins=NamespaceLifecycle,LimitRanger,ServiceAccount,DefaultStorageClass,DefaultTolerationSeconds,MutatingAdmissionWebhook,ValidatingAdmissionWebhook,ResourceQuota - -# 重启服务 -systemctl restart kubelet -``` - ---- - -[返回目录](#目录) - -### master负载均衡设置 - -#### keepalived安装配置 - -- 在所有master节点上重启keepalived - -```sh -$ systemctl restart keepalived -$ systemctl status keepalived - -# 检查keepalived的vip是否生效 -$ curl -k https://k8s-master-lb:6443 -``` - ---- - -[返回目录](#目录) - -#### nginx负载均衡配置 - -- 在所有master节点上启动nginx-lb - -```sh -# 使用docker-compose启动nginx负载均衡 -$ docker-compose --file=/root/nginx-lb/docker-compose.yaml up -d -$ docker-compose --file=/root/nginx-lb/docker-compose.yaml ps - -# 验证负载均衡的16443端口是否生效 -$ curl -k https://k8s-master-lb:16443 -``` - ---- - -[返回目录](#目录) - -#### kube-proxy高可用设置 - -- 在任意master节点上设置kube-proxy高可用 - -```sh -# 修改kube-proxy的configmap,把server指向load-balance地址和端口 -$ kubectl edit -n kube-system configmap/kube-proxy - server: https://192.168.20.10:16443 -``` - -- 在任意master节点上重启kube-proxy - -```sh -# 查找对应的kube-proxy pods -$ kubectl get pods --all-namespaces -o wide | grep proxy - -# 删除并重启对应的kube-proxy pods -$ kubectl delete pod -n kube-system kube-proxy-XXX -``` - ---- - -[返回目录](#目录) - -#### 验证高可用状态 - -- 在任意master节点上验证服务启动情况 - -```sh -# 检查节点情况 -$ kubectl get nodes -NAME STATUS ROLES AGE VERSION -k8s-master01 Ready master 1h v1.11.1 -k8s-master02 Ready master 58m v1.11.1 -k8s-master03 Ready master 55m v1.11.1 - -# 检查pods运行情况 -$ kubectl get pods -n kube-system -o wide -NAME READY STATUS RESTARTS AGE IP NODE -calico-node-nxskr 2/2 Running 0 46m 192.168.20.22 k8s-master03 -calico-node-xv5xt 2/2 Running 0 46m 192.168.20.20 k8s-master01 -calico-node-zsmgp 2/2 Running 0 46m 192.168.20.21 k8s-master02 -coredns-78fcdf6894-kfzc7 1/1 Running 0 1h 172.168.2.3 k8s-master03 -coredns-78fcdf6894-t957l 1/1 Running 0 46m 172.168.1.2 k8s-master02 -etcd-k8s-master01 1/1 Running 0 1h 192.168.20.20 k8s-master01 -etcd-k8s-master02 1/1 Running 0 58m 192.168.20.21 k8s-master02 -etcd-k8s-master03 1/1 Running 0 54m 192.168.20.22 k8s-master03 -kube-apiserver-k8s-master01 1/1 Running 0 52m 192.168.20.20 k8s-master01 -kube-apiserver-k8s-master02 1/1 Running 0 52m 192.168.20.21 k8s-master02 -kube-apiserver-k8s-master03 1/1 Running 0 51m 192.168.20.22 k8s-master03 -kube-controller-manager-k8s-master01 1/1 Running 0 34m 192.168.20.20 k8s-master01 -kube-controller-manager-k8s-master02 1/1 Running 0 33m 192.168.20.21 k8s-master02 -kube-controller-manager-k8s-master03 1/1 Running 0 33m 192.168.20.22 k8s-master03 -kube-proxy-g9749 1/1 Running 0 36m 192.168.20.22 k8s-master03 -kube-proxy-lhzhb 1/1 Running 0 35m 192.168.20.20 k8s-master01 -kube-proxy-x8jwt 1/1 Running 0 36m 192.168.20.21 k8s-master02 -kube-scheduler-k8s-master01 1/1 Running 1 1h 192.168.20.20 k8s-master01 -kube-scheduler-k8s-master02 1/1 Running 0 57m 192.168.20.21 k8s-master02 -kube-scheduler-k8s-master03 1/1 Running 1 54m 192.168.20.22 k8s-master03 -``` - ---- - -[返回目录](#目录) - -#### 基础组件安装 - -- 在任意master节点上允许master上部署pod - -```sh -$ kubectl taint nodes --all node-role.kubernetes.io/master- -``` - -- 在任意master节点上安装calico - -```sh -$ kubectl apply -f calico/ -``` - -- 在任意master节点上安装metrics-server,从v1.11.0开始,性能采集不再采用heapster采集pod性能数据,而是使用metrics-server - -```sh -$ kubectl apply -f metrics-server/ - -# 等待5分钟,查看性能数据是否正常收集 -$ kubectl top pods -n kube-system -NAME CPU(cores) MEMORY(bytes) -calico-node-wkstv 47m 113Mi -calico-node-x2sn5 36m 104Mi -calico-node-xnh6s 32m 106Mi -coredns-78fcdf6894-2xc6s 14m 30Mi -coredns-78fcdf6894-rk6ch 10m 22Mi -kube-apiserver-k8s-master01 163m 816Mi -kube-apiserver-k8s-master02 79m 617Mi -kube-apiserver-k8s-master03 73m 614Mi -kube-controller-manager-k8s-master01 52m 141Mi -kube-controller-manager-k8s-master02 0m 14Mi -kube-controller-manager-k8s-master03 0m 13Mi -kube-proxy-269t2 4m 21Mi -kube-proxy-6jc8n 9m 37Mi -kube-proxy-7n8xb 9m 39Mi -kube-scheduler-k8s-master01 20m 25Mi -kube-scheduler-k8s-master02 15m 19Mi -kube-scheduler-k8s-master03 15m 19Mi -metrics-server-77b77f5fc6-jm8t6 3m 43Mi -``` - -- 在任意master节点上安装heapster,从v1.11.0开始,性能采集不再采用heapster采集pod性能数据,而是使用metrics-server,但是dashboard依然使用heapster呈现性能数据 - -```sh -# 安装heapster,需要等待5分钟,等待性能数据采集 -$ kubectl apply -f heapster/ -``` - -- 在任意master节点上安装dashboard - -```sh -# 安装dashboard -$ kubectl apply -f dashboard/ -``` - -> 成功安装后访问以下网址打开dashboard的登录界面,该界面提示需要登录token: https://k8s-master-lb:30000/ - -![dashboard-login](images/dashboard-login.png) - -- 在任意master节点上获取dashboard的登录token - -```sh -# 获取dashboard的登录token -$ kubectl -n kube-system describe secret $(kubectl -n kube-system get secret | grep admin-user | awk '{print $1}') -``` - -> 使用token进行登录,进入后可以看到heapster采集的各个pod以及节点的性能数据 - -![dashboard](images/dashboard.png) - -- 在任意master节点上安装traefik - -```sh -# 创建k8s-master-lb域名的证书 -$ openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout tls.key -out tls.crt -subj "/CN=k8s-master-lb" - -# 把证书写入到secret -kubectl -n kube-system create secret generic traefik-cert --from-file=tls.key --from-file=tls.crt - -# 安装traefik -$ kubectl apply -f traefik/ -``` - -> 成功安装后访问以下网址打开traefik管理界面: http://k8s-master-lb:30011/ - -![traefik](images/traefik.png) - -- 在任意master节点上安装istio - -```sh -# 安装istio -$ kubectl apply -f istio/ - -# 检查istio服务相关pods -$ kubectl get pods -n istio-system -NAME READY STATUS RESTARTS AGE -grafana-69c856fc69-jbx49 1/1 Running 1 21m -istio-citadel-7c4fc8957b-vdbhp 1/1 Running 1 21m -istio-cleanup-secrets-5g95n 0/1 Completed 0 21m -istio-egressgateway-64674bd988-44fg8 1/1 Running 0 18m -istio-egressgateway-64674bd988-dgvfm 1/1 Running 1 16m -istio-egressgateway-64674bd988-fprtc 1/1 Running 0 18m -istio-egressgateway-64674bd988-kl6pw 1/1 Running 3 16m -istio-egressgateway-64674bd988-nphpk 1/1 Running 3 16m -istio-galley-595b94cddf-c5ctw 1/1 Running 70 21m -istio-grafana-post-install-nhs47 0/1 Completed 0 21m -istio-ingressgateway-4vtk5 1/1 Running 2 21m -istio-ingressgateway-5rscp 1/1 Running 3 21m -istio-ingressgateway-6z95f 1/1 Running 3 21m -istio-policy-589977bff5-jx5fd 2/2 Running 3 21m -istio-policy-589977bff5-n74q8 2/2 Running 3 21m -istio-sidecar-injector-86c4d57d56-mfnbp 1/1 Running 39 21m -istio-statsd-prom-bridge-5698d5798c-xdpp6 1/1 Running 1 21m -istio-telemetry-85d6475bfd-8lvsm 2/2 Running 2 21m -istio-telemetry-85d6475bfd-bfjsn 2/2 Running 2 21m -istio-telemetry-85d6475bfd-d9ld9 2/2 Running 2 21m -istio-tracing-bd5765b5b-cmszp 1/1 Running 1 21m -prometheus-77c5fc7cd-zf7zr 1/1 Running 1 21m -servicegraph-6b99c87849-l6zm6 1/1 Running 1 21m -``` - -- 在任意master节点上安装prometheus - -```sh -# 安装prometheus -$ kubectl apply -f prometheus/ -``` - -> 成功安装后访问以下网址打开prometheus管理界面,查看相关性能采集数据: http://k8s-master-lb:30013/ - -![prometheus](images/prometheus.png) - ---- - -[返回目录](#目录) - -### worker节点设置 - -#### worker加入高可用集群 - -- 在所有workers节点上,使用kubeadm join加入kubernetes集群 - -```sh -# 清理节点上的kubernetes配置信息 -$ kubeadm reset - -# 使用之前kubeadm init执行结果记录的${YOUR_TOKEN}以及${YOUR_DISCOVERY_TOKEN_CA_CERT_HASH},把worker节点加入到集群 -$ kubeadm join 192.168.20.20:6443 --token ${YOUR_TOKEN} --discovery-token-ca-cert-hash sha256:${YOUR_DISCOVERY_TOKEN_CA_CERT_HASH} - - -# 在workers上修改kubernetes集群设置,让server指向nginx负载均衡的ip和端口 -$ sed -i "s/192.168.20.20:6443/192.168.20.10:16443/g" /etc/kubernetes/bootstrap-kubelet.conf -$ sed -i "s/192.168.20.20:6443/192.168.20.10:16443/g" /etc/kubernetes/kubelet.conf - -# 重启本节点 -$ systemctl restart docker kubelet -``` - -- 在任意master节点上验证节点状态 - -```sh -$ kubectl get nodes -NAME STATUS ROLES AGE VERSION -k8s-master01 Ready master 1h v1.11.1 -k8s-master02 Ready master 58m v1.11.1 -k8s-master03 Ready master 55m v1.11.1 -k8s-node01 Ready 30m v1.11.1 -k8s-node02 Ready 24m v1.11.1 -k8s-node03 Ready 22m v1.11.1 -k8s-node04 Ready 22m v1.11.1 -k8s-node05 Ready 16m v1.11.1 -k8s-node06 Ready 13m v1.11.1 -k8s-node07 Ready 11m v1.11.1 -k8s-node08 Ready 10m v1.11.1 -``` - ---- - -[返回目录](#目录) - -### 集群验证 - -#### 验证集群高可用设置 - -- 验证集群高可用 - -```sh -# 创建一个replicas=3的nginx deployment -$ kubectl run nginx --image=nginx --replicas=3 --port=80 -deployment "nginx" created - -# 检查nginx pod的创建情况 -$ kubectl get pods -l=run=nginx -o wide -NAME READY STATUS RESTARTS AGE IP NODE -nginx-58b94844fd-jvlqh 1/1 Running 0 9s 172.168.7.2 k8s-node05 -nginx-58b94844fd-mkt72 1/1 Running 0 9s 172.168.9.2 k8s-node07 -nginx-58b94844fd-xhb8x 1/1 Running 0 9s 172.168.11.2 k8s-node09 - -# 创建nginx的NodePort service -$ kubectl expose deployment nginx --type=NodePort --port=80 -service "nginx" exposed - -# 检查nginx service的创建情况 -$ kubectl get svc -l=run=nginx -o wide -NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE SELECTOR -nginx NodePort 10.106.129.121 80:31443/TCP 7s run=nginx - -# 检查nginx NodePort service是否正常提供服务 -$ curl k8s-master-lb:31443 - - - -Welcome to nginx! - - - -

Welcome to nginx!

-

If you see this page, the nginx web server is successfully installed and -working. Further configuration is required.

- -

For online documentation and support please refer to -nginx.org.
-Commercial support is available at -nginx.com.

- -

Thank you for using nginx.

- - -``` - -- pod之间互访测试 - -```sh -# 启动一个client测试nginx是否可以访问 -kubectl run nginx-client -ti --rm --image=alpine -- ash -/ # wget -O - nginx -Connecting to nginx (10.102.101.78:80) -index.html 100% |*****************************************| 612 0:00:00 ETA - - - - -Welcome to nginx! - - - -

Welcome to nginx!

-

If you see this page, the nginx web server is successfully installed and -working. Further configuration is required.

- -

For online documentation and support please refer to -nginx.org.
-Commercial support is available at -nginx.com.

- -

Thank you for using nginx.

- - - -# 清除nginx的deployment以及service -kubectl delete deploy,svc nginx -``` - -- 测试HPA自动扩展 - -```sh -# 创建测试服务 -kubectl run nginx-server --requests=cpu=10m --image=nginx --port=80 -kubectl expose deployment nginx-server --port=80 - -# 创建hpa -kubectl autoscale deployment nginx-server --cpu-percent=10 --min=1 --max=10 -kubectl get hpa -kubectl describe hpa nginx-server - -# 给测试服务增加负载 -kubectl run -ti --rm load-generator --image=busybox -- ash -wget -q -O- http://nginx-server.default.svc.cluster.local > /dev/null -while true; do wget -q -O- http://nginx-server.default.svc.cluster.local > /dev/null; done - -# 检查hpa自动扩展情况,一般需要等待几分钟。结束增加负载后,pod自动缩容(自动缩容需要大概10-15分钟) -kubectl get hpa -w - -# 删除测试数据 -kubectl delete deploy,svc,hpa nginx-server -``` - ---- - -[返回目录](#目录) - -- 至此kubernetes高可用集群完成部署,并测试通过 😃 diff --git a/traefik/step1-traefik-rbac.yaml b/traefik/step1-traefik-rbac.yaml deleted file mode 100644 index 3206874..0000000 --- a/traefik/step1-traefik-rbac.yaml +++ /dev/null @@ -1,45 +0,0 @@ ---- -apiVersion: v1 -kind: ServiceAccount -metadata: - name: traefik-ingress-controller - namespace: kube-system - ---- -kind: ClusterRole -apiVersion: rbac.authorization.k8s.io/v1beta1 -metadata: - name: traefik-ingress-controller -rules: - - apiGroups: - - "" - resources: - - services - - endpoints - - secrets - verbs: - - get - - list - - watch - - apiGroups: - - extensions - resources: - - ingresses - verbs: - - get - - list - - watch - ---- -kind: ClusterRoleBinding -apiVersion: rbac.authorization.k8s.io/v1beta1 -metadata: - name: traefik-ingress-controller -roleRef: - apiGroup: rbac.authorization.k8s.io - kind: ClusterRole - name: traefik-ingress-controller -subjects: -- kind: ServiceAccount - name: traefik-ingress-controller - namespace: kube-system diff --git a/traefik/step2-traefik-ds.yaml b/traefik/step2-traefik-ds.yaml deleted file mode 100644 index 8fe9b3f..0000000 --- a/traefik/step2-traefik-ds.yaml +++ /dev/null @@ -1,75 +0,0 @@ ---- -kind: ConfigMap -apiVersion: v1 -metadata: - name: traefik-conf - namespace: kube-system -data: - traefik.toml: |+ - defaultEntryPoints = ["http", "https"] - [entryPoints] - [entryPoints.http] - address = ":80" - # [entryPoints.http.redirect] - # entryPoint = "https" - [entryPoints.https] - address = ":443" - [entryPoints.https.tls] - [[entryPoints.https.tls.certificates]] - certFile = "/ssl/tls.crt" - keyFile = "/ssl/tls.key" - ---- -kind: DaemonSet -apiVersion: extensions/v1beta1 -metadata: - name: traefik-ingress-controller - namespace: kube-system - labels: - k8s-app: traefik-ingress-lb -spec: - template: - metadata: - labels: - k8s-app: traefik-ingress-lb - name: traefik-ingress-lb - spec: - volumes: - - name: traefik-cert - secret: - secretName: traefik-cert - - name: traefik-conf - configMap: - name: traefik-conf - serviceAccountName: traefik-ingress-controller - terminationGracePeriodSeconds: 60 - containers: - - image: traefik:v1.6.3 - name: traefik-ingress-lb - ports: - - name: http - containerPort: 80 - hostPort: 80 - - name: https - containerPort: 443 - hostPort: 443 - - name: admin - containerPort: 8080 - hostPort: 8080 - volumeMounts: - - mountPath: "/ssl" - name: "traefik-cert" - - mountPath: "/config" - name: "traefik-conf" - securityContext: - capabilities: - drop: - - ALL - add: - - NET_BIND_SERVICE - args: - - --api - - --kubernetes - - --logLevel=INFO - - --configfile=/config/traefik.toml - diff --git a/traefik/step3-traefik-service.yaml b/traefik/step3-traefik-service.yaml deleted file mode 100644 index e1272b7..0000000 --- a/traefik/step3-traefik-service.yaml +++ /dev/null @@ -1,15 +0,0 @@ ---- -apiVersion: v1 -kind: Service -metadata: - name: traefik-web-ui - namespace: kube-system -spec: - selector: - k8s-app: traefik-ingress-lb - type: NodePort - ports: - - port: 8080 - targetPort: 8080 - nodePort: 30011 - diff --git a/traefik/step4-traefik-ingress.yaml b/traefik/step4-traefik-ingress.yaml deleted file mode 100644 index fa5c30a..0000000 --- a/traefik/step4-traefik-ingress.yaml +++ /dev/null @@ -1,23 +0,0 @@ ---- -apiVersion: extensions/v1beta1 -kind: Ingress -metadata: - name: traefik-jenkins - namespace: default - annotations: - kubernetes.io/ingress.class: traefik - # ingress.kubernetes.io/auth-type: "basic" - # ingress.kubernetes.io/auth-secret: "traefik" - # traefik.frontend.rule.type: AddPrefix - # traefik.ingress.kubernetes.io/rewrite-target: / -spec: - rules: - - host: k8s-master-lb - http: - paths: - - path: / - backend: - serviceName: jenkins - servicePort: 8080 - # tls: - # - secretName: traefik-jenkins-tls-cert From 57613b82850a96181f62599817e108d9a0bbd664 Mon Sep 17 00:00:00 2001 From: dotbalo Date: Fri, 7 Aug 2020 15:29:29 +0800 Subject: [PATCH 09/16] Update metrics-server-deployment.yaml delete front-ca-crt --- metrics-server-3.6.1/metrics-server-deployment.yaml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/metrics-server-3.6.1/metrics-server-deployment.yaml b/metrics-server-3.6.1/metrics-server-deployment.yaml index e3071ef..6d6d9b7 100644 --- a/metrics-server-3.6.1/metrics-server-deployment.yaml +++ b/metrics-server-3.6.1/metrics-server-deployment.yaml @@ -27,9 +27,9 @@ spec: # mount in tmp so we can safely use from-scratch images and/or read-only containers - name: tmp-dir emptyDir: {} - - name: ca-ssl - hostPath: - path: /etc/kubernetes/pki +# - name: ca-ssl +# hostPath: +# path: /etc/kubernetes/pki containers: - name: metrics-server image: registry.cn-hangzhou.aliyuncs.com/google_containers/metrics-server-amd64:v0.3.6 @@ -39,7 +39,7 @@ spec: - --metric-resolution=30s - --kubelet-insecure-tls - --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname - - --requestheader-client-ca-file=/etc/kubernetes/pki/front-proxy-ca.crt + # - --requestheader-client-ca-file=/etc/kubernetes/pki/front-proxy-ca.crt - --requestheader-username-headers=X-Remote-User - --requestheader-group-headers=X-Remote-Group - --requestheader-extra-headers-prefix=X-Remote-Extra- @@ -55,8 +55,8 @@ spec: volumeMounts: - name: tmp-dir mountPath: /tmp - - mountPath: /etc/kubernetes/pki - name: ca-ssl +# - mountPath: /etc/kubernetes/pki +# name: ca-ssl nodeSelector: beta.kubernetes.io/os: linux kubernetes.io/arch: "amd64" From d3bb9cb530f2c20c4e342d34bff0f16be6457b10 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=9C=E5=AE=BD?= Date: Fri, 11 Sep 2020 11:37:00 +0800 Subject: [PATCH 10/16] update metrics-server for kubeadm --- metrics-server-3.6.1/metrics-server-deployment.yaml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/metrics-server-3.6.1/metrics-server-deployment.yaml b/metrics-server-3.6.1/metrics-server-deployment.yaml index 6d6d9b7..cd39b3f 100644 --- a/metrics-server-3.6.1/metrics-server-deployment.yaml +++ b/metrics-server-3.6.1/metrics-server-deployment.yaml @@ -27,9 +27,9 @@ spec: # mount in tmp so we can safely use from-scratch images and/or read-only containers - name: tmp-dir emptyDir: {} -# - name: ca-ssl -# hostPath: -# path: /etc/kubernetes/pki + - name: ca-ssl + hostPath: + path: /etc/kubernetes/pki containers: - name: metrics-server image: registry.cn-hangzhou.aliyuncs.com/google_containers/metrics-server-amd64:v0.3.6 @@ -39,7 +39,7 @@ spec: - --metric-resolution=30s - --kubelet-insecure-tls - --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname - # - --requestheader-client-ca-file=/etc/kubernetes/pki/front-proxy-ca.crt + - --requestheader-client-ca-file=/etc/kubernetes/pki/front-proxy-ca.crt # change to front-proxy-ca.pem for manually-install - --requestheader-username-headers=X-Remote-User - --requestheader-group-headers=X-Remote-Group - --requestheader-extra-headers-prefix=X-Remote-Extra- @@ -55,8 +55,8 @@ spec: volumeMounts: - name: tmp-dir mountPath: /tmp -# - mountPath: /etc/kubernetes/pki -# name: ca-ssl + - mountPath: /etc/kubernetes/pki + name: ca-ssl nodeSelector: beta.kubernetes.io/os: linux kubernetes.io/arch: "amd64" From b5ef0debc21ae4265116177bb82ea0c810208343 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=9C=E5=AE=BD?= Date: Fri, 11 Sep 2020 11:39:11 +0800 Subject: [PATCH 11/16] update metrics-server for kubeadm --- metrics-server-3.6.1/metrics-server-deployment.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/metrics-server-3.6.1/metrics-server-deployment.yaml b/metrics-server-3.6.1/metrics-server-deployment.yaml index cd39b3f..fd1db9b 100644 --- a/metrics-server-3.6.1/metrics-server-deployment.yaml +++ b/metrics-server-3.6.1/metrics-server-deployment.yaml @@ -39,7 +39,7 @@ spec: - --metric-resolution=30s - --kubelet-insecure-tls - --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname - - --requestheader-client-ca-file=/etc/kubernetes/pki/front-proxy-ca.crt # change to front-proxy-ca.pem for manually-install + - --requestheader-client-ca-file=/etc/kubernetes/pki/front-proxy-ca.pem # change to front-proxy-ca.crt for kubeadm - --requestheader-username-headers=X-Remote-User - --requestheader-group-headers=X-Remote-Group - --requestheader-extra-headers-prefix=X-Remote-Extra- From f121728d3480f2ebd2bceb9d49b21def6a71c1a3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=9C=E5=AE=BD?= Date: Wed, 16 Sep 2020 16:52:41 +0800 Subject: [PATCH 12/16] add metrics 0.3.7 --- metrics-server-0.3.7/components.yaml | 163 +++++++++++++++++++++++++++ 1 file changed, 163 insertions(+) create mode 100644 metrics-server-0.3.7/components.yaml diff --git a/metrics-server-0.3.7/components.yaml b/metrics-server-0.3.7/components.yaml new file mode 100644 index 0000000..8ddc3cb --- /dev/null +++ b/metrics-server-0.3.7/components.yaml @@ -0,0 +1,163 @@ +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: system:aggregated-metrics-reader + labels: + rbac.authorization.k8s.io/aggregate-to-view: "true" + rbac.authorization.k8s.io/aggregate-to-edit: "true" + rbac.authorization.k8s.io/aggregate-to-admin: "true" +rules: +- apiGroups: ["metrics.k8s.io"] + resources: ["pods", "nodes"] + verbs: ["get", "list", "watch"] +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: metrics-server:system:auth-delegator +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: system:auth-delegator +subjects: +- kind: ServiceAccount + name: metrics-server + namespace: kube-system +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: RoleBinding +metadata: + name: metrics-server-auth-reader + namespace: kube-system +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: Role + name: extension-apiserver-authentication-reader +subjects: +- kind: ServiceAccount + name: metrics-server + namespace: kube-system +--- +#apiVersion: apiregistration.k8s.io/v1beta1 +apiVersion: apiregistration.k8s.io/v1 +kind: APIService +metadata: + name: v1beta1.metrics.k8s.io +spec: + service: + name: metrics-server + namespace: kube-system + group: metrics.k8s.io + version: v1beta1 + insecureSkipTLSVerify: true + groupPriorityMinimum: 100 + versionPriority: 100 +--- +apiVersion: v1 +kind: ServiceAccount +metadata: + name: metrics-server + namespace: kube-system +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: metrics-server + namespace: kube-system + labels: + k8s-app: metrics-server +spec: + selector: + matchLabels: + k8s-app: metrics-server + template: + metadata: + name: metrics-server + labels: + k8s-app: metrics-server + spec: + serviceAccountName: metrics-server + volumes: + # mount in tmp so we can safely use from-scratch images and/or read-only containers + - name: tmp-dir + emptyDir: {} + - name: ca-ssl + hostPath: + path: /etc/kubernetes/pki + containers: + - name: metrics-server + image: dotbalo/metrics-server:0.3.7 + imagePullPolicy: IfNotPresent + args: + - --cert-dir=/tmp + - --secure-port=4443 + - --metric-resolution=30s + - --kubelet-insecure-tls + - --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname + - --requestheader-client-ca-file=/etc/kubernetes/pki/front-proxy-ca.pem # change to front-proxy-ca.crt for kubeadm + - --requestheader-username-headers=X-Remote-User + - --requestheader-group-headers=X-Remote-Group + - --requestheader-extra-headers-prefix=X-Remote-Extra- + ports: + - name: main-port + containerPort: 4443 + protocol: TCP + securityContext: + readOnlyRootFilesystem: true + runAsNonRoot: true + runAsUser: 1000 + volumeMounts: + - name: tmp-dir + mountPath: /tmp + - name: ca-ssl + mountPath: /etc/kubernetes/pki + nodeSelector: + kubernetes.io/os: linux +--- +apiVersion: v1 +kind: Service +metadata: + name: metrics-server + namespace: kube-system + labels: + kubernetes.io/name: "Metrics-server" + kubernetes.io/cluster-service: "true" +spec: + selector: + k8s-app: metrics-server + ports: + - port: 443 + protocol: TCP + targetPort: main-port +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRole +metadata: + name: system:metrics-server +rules: +- apiGroups: + - "" + resources: + - pods + - nodes + - nodes/stats + - namespaces + - configmaps + verbs: + - get + - list + - watch +--- +apiVersion: rbac.authorization.k8s.io/v1 +kind: ClusterRoleBinding +metadata: + name: system:metrics-server +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: ClusterRole + name: system:metrics-server +subjects: +- kind: ServiceAccount + name: metrics-server + namespace: kube-system From d195652acf7a44331fc27a2365cedfde4d526933 Mon Sep 17 00:00:00 2001 From: dotbalo Date: Wed, 4 Nov 2020 10:14:37 +0800 Subject: [PATCH 13/16] Update components.yaml --- metrics-server-0.3.7/components.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/metrics-server-0.3.7/components.yaml b/metrics-server-0.3.7/components.yaml index 8ddc3cb..3a84719 100644 --- a/metrics-server-0.3.7/components.yaml +++ b/metrics-server-0.3.7/components.yaml @@ -39,8 +39,8 @@ subjects: name: metrics-server namespace: kube-system --- -#apiVersion: apiregistration.k8s.io/v1beta1 -apiVersion: apiregistration.k8s.io/v1 +apiVersion: apiregistration.k8s.io/v1beta1 +#apiVersion: apiregistration.k8s.io/v1 kind: APIService metadata: name: v1beta1.metrics.k8s.io From 6234103ef4c6978f6fdc38d1c46f615fb4cdd272 Mon Sep 17 00:00:00 2001 From: dotbalo Date: Thu, 12 Nov 2020 18:28:51 +0800 Subject: [PATCH 14/16] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index d78f933..86b3f47 100644 --- a/README.md +++ b/README.md @@ -5,4 +5,4 @@ ``` # 超全面、超详细的Kubernetes视频教程,基于最新的1.19 -https://ke.qq.com/course/2738602?tuin=2b5e11f2 +http://www.kubeasy.com/ From 19c05651659df0cef7267f7c3a1b1418bfd7bfa7 Mon Sep 17 00:00:00 2001 From: dotbalo Date: Thu, 12 Nov 2020 18:29:34 +0800 Subject: [PATCH 15/16] Update README.md --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 86b3f47..1897385 100644 --- a/README.md +++ b/README.md @@ -6,3 +6,5 @@ # 超全面、超详细的Kubernetes视频教程,基于最新的1.19 http://www.kubeasy.com/ + +咨询QQ727585266 From 53280c2c0932c6447c0fa9049a81e41033604fa2 Mon Sep 17 00:00:00 2001 From: dotbalo Date: Thu, 13 May 2021 11:26:35 +0800 Subject: [PATCH 16/16] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 1897385..700f8b3 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ ``` -# 超全面、超详细的Kubernetes视频教程,基于最新的1.19 +# 超全面、超详细的Kubernetes视频教程,基于最新K8s进行讲解 http://www.kubeasy.com/ 咨询QQ727585266

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%0D750w2znFr1Wk}sG|0=m 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