From 08072621ab095eb121b105e2025b00e5b0af3eaf Mon Sep 17 00:00:00 2001 From: caoyingjunz Date: Mon, 15 Jul 2024 22:54:37 +0800 Subject: [PATCH 1/6] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E8=87=AA=E5=AE=9A?= =?UTF-8?q?=E4=B9=89REPO?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ansible/group_vars/all.yml | 3 +++ ansible/roles/baremetal/tasks/install.yml | 10 +--------- etc/kubez/globals.yml | 3 +++ 3 files changed, 7 insertions(+), 9 deletions(-) diff --git a/ansible/group_vars/all.yml b/ansible/group_vars/all.yml index c9e6af5b..9ed703b4 100644 --- a/ansible/group_vars/all.yml +++ b/ansible/group_vars/all.yml @@ -100,6 +100,9 @@ cri_dockerd_image: "harbor.cloud.pixiuio.com/pixiuio/cri-dockerd:v0.3.10" node_config_directory: "/etc/kubez/" +# 自定义 REPO 仓库 +repo_dir: "/etc/kubez/repo/" + # kubernetes node-role control_labels: - node-role.kubernetes.io/master diff --git a/ansible/roles/baremetal/tasks/install.yml b/ansible/roles/baremetal/tasks/install.yml index 1df664a9..21cce03b 100644 --- a/ansible/roles/baremetal/tasks/install.yml +++ b/ansible/roles/baremetal/tasks/install.yml @@ -9,8 +9,6 @@ - {name: "nfs-kernel-server", group: "storage", os: "Ubuntu", use: "apt"} - {name: "rpcbind", group: "storage", os: "Debian", use: "apt"} - {name: "nfs-kernel-server", group: "storage", os: "Debian", use: "apt"} - - {name: "rpcbind", group: "storage", os: "CentOS", use: "yum"} - - {name: "nfs-utils", group: "storage", os: "CentOS", use: "yum"} - {name: "rpcbind", group: "storage", os: "Rocky", use: "dnf"} - {name: "nfs-utils", group: "storage", os: "Rocky", use: "dnf"} - {name: "rpcbind", group: "storage", os: "openEuler", use: "dnf"} @@ -37,8 +35,6 @@ src: "{{ item.src }}" dest: "{{ item.dest }}" loop: - - {"src": docker-ce.repo.j2, "dest": /etc/yum.repos.d/docker-ce.repo, os: "CentOS"} - - {"src": kubernetes.repo.j2, "dest": /etc/yum.repos.d/kubernetes.repo, os: "CentOS"} - {"src": sources.list.j2, "dest": /etc/apt/sources.list, os: "Ubuntu"} - {"src": sources.list.debian.j2, "dest": /etc/apt/sources.list, os: "Debian"} - {"src": docker-ce.repo.j2, "dest": /etc/yum.repos.d/docker-ce.repo, os: "Rocky"} @@ -48,13 +44,12 @@ when: - ansible_distribution == item.os - - name: Add docker, kubernetes and helm gpgs + - name: Add docker, and kubernetes gpgs apt_key: url: "{{ item }}" loop: - https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg - https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg - # - helm.gpg when: - ansible_distribution == 'Ubuntu' or ansible_distribution == 'Debian' @@ -78,9 +73,6 @@ - {name: "kubelet={{ kube_release_ubuntu }}", os: "Debian", use: "apt"} - {name: "kubectl={{ kube_release_ubuntu }}", os: "Debian", use: "apt"} - {name: "kubeadm={{ kube_release_ubuntu }}", os: "Debian", use: "apt"} - - {name: "kubelet-{{ kube_release }}", os: "CentOS", use: "yum"} - - {name: "kubectl-{{ kube_release }}", os: "CentOS", use: "yum"} - - {name: "kubeadm-{{ kube_release }}", os: "CentOS", use: "yum"} - {name: "kubelet-{{ kube_release }}", os: "Rocky", use: "dnf"} - {name: "kubectl-{{ kube_release }}", os: "Rocky", use: "dnf"} - {name: "kubeadm-{{ kube_release }}", os: "Rocky", use: "dnf"} diff --git a/etc/kubez/globals.yml b/etc/kubez/globals.yml index e0f426aa..e14efdfc 100644 --- a/etc/kubez/globals.yml +++ b/etc/kubez/globals.yml @@ -36,6 +36,9 @@ image_repository: "registry.cn-hangzhou.aliyuncs.com/google_containers" # 自定义镜像仓库 app_image_repository: "harbor.cloud.pixiuio.com/pixiuio" +# 自定义 REPO 仓库 +repo_dir: "/etc/kubez/repo/" + ############### # Host Options ############### From 791f20a59017f9207c5ffd117be9db0763119fc1 Mon Sep 17 00:00:00 2001 From: caoyingjunz Date: Mon, 15 Jul 2024 23:22:40 +0800 Subject: [PATCH 2/6] add --- ansible/roles/baremetal/tasks/install.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/roles/baremetal/tasks/install.yml b/ansible/roles/baremetal/tasks/install.yml index 21cce03b..4b4e5881 100644 --- a/ansible/roles/baremetal/tasks/install.yml +++ b/ansible/roles/baremetal/tasks/install.yml @@ -32,7 +32,7 @@ block: - name: Copy container runtime repos for kubernetes nodes template: - src: "{{ item.src }}" + src: "{{ item.src | find_custom_repo(dest=item.dest)}}" dest: "{{ item.dest }}" loop: - {"src": sources.list.j2, "dest": /etc/apt/sources.list, os: "Ubuntu"} From 89d55a5015a2b34e572694379cd3e38069875ca7 Mon Sep 17 00:00:00 2001 From: caoyingjunz Date: Mon, 15 Jul 2024 23:24:34 +0800 Subject: [PATCH 3/6] add --- ansible/group_vars/all.yml | 3 --- ansible/roles/baremetal/tasks/install.yml | 2 +- etc/kubez/globals.yml | 3 --- 3 files changed, 1 insertion(+), 7 deletions(-) diff --git a/ansible/group_vars/all.yml b/ansible/group_vars/all.yml index 9ed703b4..c9e6af5b 100644 --- a/ansible/group_vars/all.yml +++ b/ansible/group_vars/all.yml @@ -100,9 +100,6 @@ cri_dockerd_image: "harbor.cloud.pixiuio.com/pixiuio/cri-dockerd:v0.3.10" node_config_directory: "/etc/kubez/" -# 自定义 REPO 仓库 -repo_dir: "/etc/kubez/repo/" - # kubernetes node-role control_labels: - node-role.kubernetes.io/master diff --git a/ansible/roles/baremetal/tasks/install.yml b/ansible/roles/baremetal/tasks/install.yml index 4b4e5881..365449b0 100644 --- a/ansible/roles/baremetal/tasks/install.yml +++ b/ansible/roles/baremetal/tasks/install.yml @@ -32,7 +32,7 @@ block: - name: Copy container runtime repos for kubernetes nodes template: - src: "{{ item.src | find_custom_repo(dest=item.dest)}}" + src: "{{ item.src | find_custom_repo(dest=item.dest) }}" dest: "{{ item.dest }}" loop: - {"src": sources.list.j2, "dest": /etc/apt/sources.list, os: "Ubuntu"} diff --git a/etc/kubez/globals.yml b/etc/kubez/globals.yml index e14efdfc..e0f426aa 100644 --- a/etc/kubez/globals.yml +++ b/etc/kubez/globals.yml @@ -36,9 +36,6 @@ image_repository: "registry.cn-hangzhou.aliyuncs.com/google_containers" # 自定义镜像仓库 app_image_repository: "harbor.cloud.pixiuio.com/pixiuio" -# 自定义 REPO 仓库 -repo_dir: "/etc/kubez/repo/" - ############### # Host Options ############### From eca7955b632ddb653399604db77a7605f039af4b Mon Sep 17 00:00:00 2001 From: caoyingjunz Date: Thu, 18 Jul 2024 23:38:13 +0800 Subject: [PATCH 4/6] add --- ansible/filter_plugins/to_socket.py | 21 ++++++++++++++++++++- ansible/group_vars/all.yml | 3 +++ ansible/roles/baremetal/tasks/install.yml | 2 +- etc/kubez/globals.yml | 3 +++ 4 files changed, 27 insertions(+), 2 deletions(-) diff --git a/ansible/filter_plugins/to_socket.py b/ansible/filter_plugins/to_socket.py index a1de9220..1c639f9d 100644 --- a/ansible/filter_plugins/to_socket.py +++ b/ansible/filter_plugins/to_socket.py @@ -12,6 +12,8 @@ # See the License for the specific language governing permissions and # limitations under the License. +import os + from kubez_ansible.to_socket import to_socket from kubez_ansible.get_runtime_type import get_runtime_type @@ -20,11 +22,28 @@ ''' +def find_custom_repo(ctx, *args, **kwargs): + dest = kwargs.get('dest') + repo_dir = kwargs.get('repo_dir') + + parts = dest.split('/') + # 最后一个字符串是 repo 的名称 + repo_name = parts[len(parts)-1] + # 拼接自定义仓库全路径 + custom_repo = os.path.join(repo_dir, repo_name) + + if os.path.exists(custom_repo): + return custom_repo + else: + return ctx + + class FilterModule(object): '''Kubez-ansible custom jinja2 filters ''' def filters(self): return { 'to_socket': to_socket, - 'get_runtime_type': get_runtime_type + 'get_runtime_type': get_runtime_type, + 'find_custom_repo': find_custom_repo } diff --git a/ansible/group_vars/all.yml b/ansible/group_vars/all.yml index c9e6af5b..007f5551 100644 --- a/ansible/group_vars/all.yml +++ b/ansible/group_vars/all.yml @@ -12,6 +12,9 @@ image_repository: "registry.cn-hangzhou.aliyuncs.com/google_containers" # 自定义镜像仓库 app_image_repository: "harbor.cloud.pixiuio.com/pixiuio" +# 自定义 REPO 仓库 +repo_dir: "/etc/kubez/repo" + # pixiu helm chart 仓库地址 default_repo_name: "pixiuio" default_repo_url: "https://harbor.cloud.pixiuio.com/chartrepo/pixiuio" diff --git a/ansible/roles/baremetal/tasks/install.yml b/ansible/roles/baremetal/tasks/install.yml index 365449b0..73876ad6 100644 --- a/ansible/roles/baremetal/tasks/install.yml +++ b/ansible/roles/baremetal/tasks/install.yml @@ -32,7 +32,7 @@ block: - name: Copy container runtime repos for kubernetes nodes template: - src: "{{ item.src | find_custom_repo(dest=item.dest) }}" + src: "{{ item.src | find_custom_repo(dest=item.dest, repo_dir=repo_dir) }}" dest: "{{ item.dest }}" loop: - {"src": sources.list.j2, "dest": /etc/apt/sources.list, os: "Ubuntu"} diff --git a/etc/kubez/globals.yml b/etc/kubez/globals.yml index e0f426aa..0598e6f7 100644 --- a/etc/kubez/globals.yml +++ b/etc/kubez/globals.yml @@ -36,6 +36,9 @@ image_repository: "registry.cn-hangzhou.aliyuncs.com/google_containers" # 自定义镜像仓库 app_image_repository: "harbor.cloud.pixiuio.com/pixiuio" +# 自定义 REPO 仓库 +repo_dir: "/etc/kubez/repo" + ############### # Host Options ############### From aa3e0a79342b884be9f8b0ea37e8cc43ddb61ef2 Mon Sep 17 00:00:00 2001 From: caoyingjunz Date: Fri, 19 Jul 2024 19:55:02 +0800 Subject: [PATCH 5/6] add --- ansible/filter_plugins/to_socket.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ansible/filter_plugins/to_socket.py b/ansible/filter_plugins/to_socket.py index 1c639f9d..9b181a65 100644 --- a/ansible/filter_plugins/to_socket.py +++ b/ansible/filter_plugins/to_socket.py @@ -28,7 +28,7 @@ def find_custom_repo(ctx, *args, **kwargs): parts = dest.split('/') # 最后一个字符串是 repo 的名称 - repo_name = parts[len(parts)-1] + repo_name = parts[len(parts) - 1] # 拼接自定义仓库全路径 custom_repo = os.path.join(repo_dir, repo_name) From f7c3a06d75d6918b927760fae1d0be7cf43767b2 Mon Sep 17 00:00:00 2001 From: caoyingjunz Date: Fri, 19 Jul 2024 20:14:28 +0800 Subject: [PATCH 6/6] add --- ansible/filter_plugins/to_socket.py | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/ansible/filter_plugins/to_socket.py b/ansible/filter_plugins/to_socket.py index 9b181a65..6db91e45 100644 --- a/ansible/filter_plugins/to_socket.py +++ b/ansible/filter_plugins/to_socket.py @@ -27,11 +27,9 @@ def find_custom_repo(ctx, *args, **kwargs): repo_dir = kwargs.get('repo_dir') parts = dest.split('/') - # 最后一个字符串是 repo 的名称 repo_name = parts[len(parts) - 1] - # 拼接自定义仓库全路径 - custom_repo = os.path.join(repo_dir, repo_name) + custom_repo = os.path.join(repo_dir, repo_name) if os.path.exists(custom_repo): return custom_repo else: