跳至主要內容
kubernates中的DevOps平台

Harbor

## https://artifacthub.io/packages/helm/harbor/harbor
cat > values.harbor.yaml << EOF
expose:
  type: ingress
  ingress:
    hosts:
      core: docker.devops.kk
      notary: harbor.devops.kk
externalURL: https://docker.devops.kk
harborAdminPassword: Harbor12345
EOF
helm repo add harbor https://helm.goharbor.io
helm repo update
helm install my-release harbor/harbor
helm upgrade harbor harbor/harbor --install --namespace devops --create-namespace --values values.harbor.yaml --version 1.11.2

容器技术kubernetes建设kubernetes建设小于 1 分钟
kubernetes备份和恢复

安装MinIO

docker pull minio/minio:latest
docker run -p 9000:9000 -p 9090:9090 \
--net=host \
--name minio \
-d --restart=always \
-e "MINIO_ACCESS_KEY=admin" \
-e "MINIO_SECRET_KEY=minio123" \
-v /home/minio/data:/data \
-v /home/minio/config:/root/.minio \
minio/minio server \
/data --console-address ":9090" -address ":9000"

netstat -tnlp

容器技术kubernetes建设kubernetes建设小于 1 分钟
高效技巧-kubectl

k 命令

是否有过因为使用 kubectl 经常需要重复输入命名空间而苦恼?


function k() {
 cmdline=$(HISTTIMEFORMAT="" history | awk '$2 == "kubectl" && (/-n/ || /--namespace/) {for(i=2;i<=NF;i++)printf("%s ",$i);print ""}' | tail -n 1)
 regs=('\-n [\w\-\d]+' '\-n=[\w\-\d]+' '\-\-namespace [\w\-\d]+' '\-\-namespace=[\w\-\d]+')
 for i in "${!regs[@]}"; do
  reg=${regs[i]}
  nsarg=$(echo $cmdline | grep -o -P "$reg")
  if [[ "$nsarg" == "" ]]; then
   continue
  fi
  cmd="kubectl $nsarg $@"
  echo "$cmd"
  $cmd
  return
 done
 cmd="kubectl $@"
 echo "$cmd"
 $cmd
}
## 将上述脚本粘贴到当前shell(注册k命令到当前终端session):
## 将 k 当作 kubectl 来用,只是不需要输入命名空间,它会调用 kubectl 并自动加上上次使用的非默认的命名空间,
## 如果想切换命名空间,再常规的使用一次 kubectl 就行,

容器技术kubernetes建设kubernetes建设小于 1 分钟
kubernetes常用命令
[[toc]] Node NameSpace Deployment DaemonSet Pod 有时候由于节点的内存或者磁盘使用率较高导致集群中产生了大量的 evited 状态 pod,这些 pod 如果不手动删除,会一直存在集群中,这里提供了脚本 clean-evicted-pod.sh 来一键清理集群中的 evited 状态 pod。 PVC In...

容器技术kubernetes建设kubernetes大约 4 分钟
kubernetes中的DNS
[[toc]] CoreDns 官网地址: Kubernetes DNS 服务: 配置示例 CoreDNS配置详解; DNS 调试 打通Ingress的域名访问 目的 对于 HTTP 类型的服务,我们可以通过 Ingress 资源以“虚拟主机”的形式将服务暴露出来,但是在内网环境下,这些域名通常都无法直接访问。 如何在各个节点以及客户端同步域名解析配置...

容器技术kubernetes建设Kuberneteskubesphere大约 5 分钟
负载均衡器OpenELB
[[toc]] 1、OpenELB 介绍 官网地址: GitHub 地址: OpenELB 是由 KubeSphere 开发团队设计、经过 CNCF 认证的一款负载均衡插件。 它可以在裸金属服务器、边缘以及虚拟化的Kubernetes环境中使用 LoadBalancer 类型的 Service 对外暴露服务。 2、安装OpenELB 3、配置地址池 5...

容器技术kubernetes建设Kuberneteskubesphere大约 2 分钟
helm打包工具
[[toc]] Helm 介绍 Helm 是 Kubernetes 的包管理器,可以帮我们简化 kubernetes 的操作,一键部署应用。; 官网地址:; Helm广场:; 一、前言 在 k8s 中,我们很多时候需要部署很多个应用,特别是微服务的项目,如果每个服务部署都需要使用kubectl apply依次执行,这将是一件很痛苦的事。 这个时候,如果...

容器技术kubernetes建设kubernetes大约 7 分钟