由于我们已经知道我们生活在快节奏的世界中,并且一切都是按需提供的,因此我们希望将资源保留在我们的应用程序中以匹配需求。为此,我们需要一些工具,ArgoCD 就是其中之一。

#ArgoCD

什么是Argo CD?

Argo CD 是用于 Kubernetes 的声明式 GitOps 持续交付工具。

为什么选择Argo CD?

应用程序定义、配置和环境应该是声明性的和版本控制的。应用程序部署和生命周期管理应该是自动化的、可审计的和易于理解的。

架构

image.png

安装 ArgoCD

Step1.

首先要安装,我们在集群中创建一个名为 argocd 的命名空间名称,以便为我们的应用程序创建一个单独的命名空间。

kubectl create namespace argocd

此命令创建一个名为 Argo CD 的新命名空间,我们将在其中安装 Argo CD。

第 2 步。

kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/stable/manifests/install.yaml

上面的命令将把 Argo CD 安装到我们在前面的命令中新创建的命名空间中。它将安装项目维护者提供的脚本。

第三步。

kubectl get pods -n argocd

为了在 Argo CD 命名空间中获取 Pod 的状态,我们使用上述命令来检查一切是否正常,以便我们可以继续下一步。

第四步。

获取登录密码

现在我们必须获取密码才能登录我们的 Argo CD 应用程序。每次创建新的 Argo CD 应用程序时,也会同时创建一个密码,因此只有授权的人才能访问它并创建应用程序。此密码保存在我们的集群中,可以通过以下命令检索。

kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath="{.data.password}"

上述命令将从我们的应用程序中获取密码,但它是 base-64 编码的,需要解码。我们只能使用工具和网站来做到这一点。我们使用base64decode.org来解码我们的代码。现在,输出可用于使用 WebUI 或 Argo CD CLI 登录到我们的 Argo CD 应用程序。

步骤 5。

端口转发

现在我们需要使用 AWS 连接我们的 Argo CD。由于我们的应用程序没有公开公开,因为它在私有子网中运行。我们可以使用方法连接到远程运行的应用程序。

kubectl port-forward svc/argocd-server -n argocd 8888:443

上述命令将所有传入 localhost:8888 的传入流量转发到远程主机到端口号 443,以服务在 AWS 上运行的 ArgoCD-server。我们使用了 8888 端口,因为它没有被任何应用程序使用以避免任何冲突。

image.png

第 6 步。

使用 CLI 登录 ArgoCD

使用 Argo CD CLI 我们必须先安装它。我们将在 windows 上使用巧克力包管理器到 Argo CD。

choco install argocd-cli

上述命令将自动下载 Argo CD CLI 并在环境变量中配置路径,以便可以从任何目录访问 Argo CD CLI。

argocd login localhost:8888

我们将使用上述命令使用 CLI 登录。这将导致打开一个提示,要求输入用户名和密码。在这种情况下,用户名是 admin,密码是 Step4 中的 base-64 解码密码。

image.png

使用 GUI 登录 ArgoCD

现在使用 WebUI,因为它很简单,对初学者也很友好。我们将在浏览器中打开 localhost:8888 并填写用户名和密码以登录我们的应用程序。

image.png

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐