k3s+rancher+harbor 笔记

K3s 安装

https://k3s.io/
知识点参考 k8s

  1. 下载 k3s,保存到 /usr/local/bin

https://github.com/rancher/k3s/releases/latest

  1. 设置可执行权限
chmod a+x /usr/local/bin/k3s
  1. 启动 server
(k3s server --docker &)
# Kubeconfig is written to /etc/rancher/k3s/k3s.yaml
sudo k3s kubectl get node

运行上面命令,会生成:/etc/rancher , 以及 /var/lib/rancher。

如果要重新安装,删除 /etc/rancher 文件夹即可。

指定使用 docker 容器, 否则使用 containerd!

  1. 启动 agent
# On a different node run the below. NODE_TOKEN comes from /var/lib/rancher/k3s/server/node-token
# on your server
sudo k3s agent --server https://${外部访问IP}:6443 --token ${NODE_TOKEN} --docker

6443是固定的端口。

本机安装,这一步可以不启动。

rancher 安装

docker run -d --restart=unless-stopped -p 8480:80 -p 8443:443 rancher/rancher:latest

第一次访问会要求设置密码!

harbor 安装

https://github.com/goharbor/harbor/releases

  1. 安装 docker docker-compose .

  2. wget https://storage.googleapis.com/harbor-releases/release-1.9.0/harbor-online-installer-v1.9.1.tgz

  3. tar zxvf

  4. vim harbor.yml 修改
    hostname ,
    http.port 端口号 ,
    admin密码:Didadi123
    去除 https 节点。否则报错。
    docker 里不能有名称叫 redis 的docker容器。

  5. ./install.sh

  6. 登录 admin/Harbor12345

  • 修改客户端docker的配置文件,如Jenkins的: /etc/docker/daemon.json 添加: 设置 HTTP 登录,推送。

      "insecure-registries": [
          "39.105.121.154:8280"
       ]
    
  • 修改 harbor 配置文件的 hostname:

      docker-compose stop
      vi harbor.yml
      ./prepare
      ./install
    

https://rancher.com/docs/k3s/latest/en/installation/private-registry

客户端推送:

1. docker login -u admin -p Harbor12345 harborIP:harborPort
2. docker tag 本地镜像:版本   harborIP:harborPort/harbor项目/名称:版本    (格式是必须这样的。)
3. docker push harborIP:harborPort/harbor项目/名称:版本
4. docker pull harborIP:harborPort/harbor项目/名称:版本

racher 中添加 k3s 及基本设置

添加k3s

注意:

因为是k3s 所以要在 kubectl 前面添加 k3s 
  • 等一会, k3s 就会显示启动了。

创建命名空间

在rancher添加的 k3s Default 项目下创建命名空间。 如果命令行创建的命名空间,需要在k3s里把命名空间转移到 Default 项目 中。

创建 pv, pvc

可以用命令行和rancher两种方式创建 Pv,Pvc

由 Rancher 可知:

  Pv和存储类是独立于命令空间之外的。不能指定命名空间。

辅助工具自动生成,创建 Pv,Pvc

http://dev8.cn:8000/ops/app_docker

rancher 方式操作 Pv,Pvc

  1. 选择添加的 k3s 集群
  2. 存储 --> 持久卷 --> 添加PV
  3. 选择 k3s , default , 点 资源 --> 工作负载 --> pvc , 添加 pvc

本地应用手动部署到Harbor

FROM iamnewsea/jre:1.8

WORKDIR /app
ENV jar_name admin-api-1.0.1.jar
ADD target/${jar_name}  ${jar_name}
ADD libs-corp libs


ENV JAVA_OPTS "-Xmx500m"
ENV APP_ARG "--spring.profiles.active=server --server.dev=true"
CMD java ${JAVA_OPTS} -Dloader.path=libs -jar ${jar_name} ${APP_ARG}
  docker build -t udi-note:808/library/admin-api:2020.9.1 .
  docker push  udi-note:808/library/admin-api:2020.9.1

问题

  1. 如果 k3s 启动时不添加 --docker ,则默认使用 containerd 容器。如何配置 containerd 的镜像为 harbor ?
  2. 使用命令行配置 Nfs 的Pv,Pvc,启动Deployment失败?
posted @ 2020-05-12 11:09  NewSea  阅读(3158)  评论(0编辑  收藏  举报