Introduction to Terraform, an automated orchestration tool

What is Terraform? : Terraform is an open source resource orchestration tool launched by HashiCorp around 2014. Currently, almost all mainstream cloud service providers support Terraform, including Alibaba Cloud, Tencent Cloud, Huawei Cloud, AWS, Azure, Baidu Cloud, etc. Many companies currently build their own infrastructure based on terraform. Background: In the traditional operation and maintenance model, the launch of a business requires preparation stages such as equipment procurement, machine installation,

ArgoCD+Jenkins Pipeline Automated Application Deployment

Create helm repository First, create a basic Helm template repository: Copy 1 helm create template . For actual deployment, you need to customize your own helm template according to your business. I will directly use our internal custom universal template for quick deployment; you can also refer to the helm chart maintained by bitnami (https://github.com/bitnami/charts/tree/master/bitnami) Jenkins credential configuration argocd token information Configure Jenkins pipeline writing Here we take the gotest

Argocd deployment appears: no space left on device

Failure phenomenon In the morning, several business applications were deployed through argocd. After deploying 2, the third-party deployment failed. The same configuration, different knowledge clusters, how could such a problem occur? So I checked the log, as follows: Copy 1 2 3 Warning Failed 1m kubelet, 172.16.25.13 Error: Error response from daemon: error creating overlay mount to /var/lib/docker/overlay2/ba37165607862efb350093e5e287207e2547759fd81dc4e5e356a86ac5e28324-init/merged: no space left on device Warning Failed 1m kubelet, 172.16.25.13 Error: Error

ArgoCD adds multi-cluster

Generate argocd management user token Log in to the dashboard, settings–>Accounts–>admin–>Generate New After generating, please record the token information, similar to the following: Copy 1 fyJhbGciOiJ3UzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiI2OWI0M2M0Mi01MmZiLTRlZmItODIxOC0yOWU3NGM5MWI0NDIiLCJpYXQiOjE1OTUzMTEx3zQsImlzcyI6ImFyZ29jZCIsIm5iZiI6MTU5NTMxMTE3NCwic3ViIjoib3duZXIifQ.9u4XzArEeaz7G2Q2TWusnTkakEmq9BYDAUHr3dC6wG5 Configure argocd config For argocd with https authentication enabled, it is useless when adding a cluster. You need to log in to the server-side POD for configuration, as follows: Copy 1 2 3 4 5 6 7 8 9 10 11 12 13 #

ArgoCD installation and deployment

Installation and deployment ArgoCD is very easy to deploy. Install the official deployment method (HA mode: Copy 1 2 kubectl create namespace argocd kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/argo-cd/v1.5.2/manifests/ha/install.yaml You can adjust the deployment file as needed. After the pod is successfully started Copy 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 # kubectl -n

Hugo+Github builds a personal blog

Hugo Introduction My blog has been built with hexo before. As I use golang more and more, I have always wanted to migrate my blog to hugo. Hugo is a static website generator written in golang, which is simple, easy to use, efficient, easy to expand and quickly deployed. Install hugo Here is an example of mac environment: Copy 1 2 3 4 5 6 brew install hugo hugo new

Adding users to a kubernetes cluster

Previously, we built a kubernetes cluster environment through ansible. The main requirement here is to add a user for daily management and limit it to the specified namespace. The following operation is performed: Users in kubernetes There are two types of users (User) in K8S - service accounts (ServiceAccount) and users in the ordinary sense (User). ServiceAccount is managed by K8S, while User is usually managed externally. K8S does not

Deploy traefik2.1 in kubernetes cluster

Architecture & Concepts Traefik 2.x has a big change compared to 1.7.x architecture. As shown in the architecture diagram above, the main function is to support TCP protocol and add the concept of Router. Here we use Traefik 2.1 deployed in the kubernetes cluster. Business access is requested to traefik Ingress through haproxy. The following are some concepts involved in the construction process: EntryPoints: Traefik’s network entry, defining the port