Casnode  ›  yahoo17  ›  全部回复
回复总数  8
4年前
回复了 yahoo17 创建的主题 Summer2020 Summer2020-Casbin-Kubenetes

Week 7 (August 13 - August 19)

Weekly Summary

  1. 将集群配到云服器上

  2. 对 casbin 进行封装,使得可以动态更新 casbin 版本

  3. 写了 webhook 服务器,可以接受监听 8888 端口

4年前
回复了 yahoo17 创建的主题 Summer2020 Summer2020-Casbin-Kubenetes

Week 6 (August 5 - August 12)

Weekly Summary

  1. 学习 Kubernetes 的 Kubernetes Admission Controllers 的两个中的 Mutating Webhook

  2. 确定架构设计大概就是 建一个 mutating webhook 对象 通过这个来拦截 直接 kubectl 直接到 apiserver 的 请求, 并给予修改, 来决定是否改成 deny

  3. 使用 patch 方式来修改

4年前
回复了 yahoo17 创建的主题 Summer2020 Summer2020-Casbin-Kubenetes

Week 5 (July 28 - August 4)

Weekly Summary

  1. 开始设计以 Role 为核心的控制访问

  2. 学习 rego query langanuage

  3. 在本地调试通过 casbin

Next week

  1. Build up the necessary environment.

  2. Practice OPA and Casbin.

4年前
回复了 yahoo17 创建的主题 Summer2020 Summer2020-Casbin-Kubenetes

Week 4 (July 20 - July 27)

Weekly Summary

7/21

1.k8s 的网络模型

  1. 跑通了 github.com/client-go/ 的 example 利用 client-go 与 apiserver 进行通信

7/22

  1. 开始设计以 Role 为核心的控制访问

  2. 学习 rego query langanuage

7/23

  1. 学习 Kubernetes 的 Kubernetes Admission Controllers 的两个中的 Mutating Webhook

要想看懂 OPA 首先得把 OPA

玩熟练了

相关的文档读了

才看得到他代码的思路

现在 OPA 好像是 做了个 gatekeeper

然后 plain opa 就是像你说的黑盒,

gatekeeper 和我们要做的东西重叠度很高

然后 gatekeeper 的原理大概就是 建一个 mutating webhook 对象 通过这个来拦截 直接 kubectl 直接到 apiserver 的 请求,并给予修改,来决定是否改成 deny

  1. 使用 patch 方式来修改

Next week

  1. Build up the necessary environment.

  2. Practice OPA and Casbin.

@yahoo17 @yahoo17

4年前
回复了 yahoo17 创建的主题 Summer2020 Summer2020-Casbin-Kubenetes

Week 3 (July 13- July 12)

Weekly Summary

  1. Studied the fundamental knowledge about kubenetes
  2. build up a kubenetes cluster with single master node and worker node
  3. deploy nginx service on the cluster and aPublish, scale, expand, roll update applications.
  4. load balancing achieve by kubenetes services

Next week

  1. Look at the code of similar competitive products

  2. prepare to design casbin

4年前
回复了 yahoo17 创建的主题 Summer2020 Summer2020-Casbin-Kubenetes

Week 2 (June 6 - July 12)

Weekly Summary

  1. Studied the fundamental knowledge about Kubenetes, including Pods, Service ,Kubenetes APIServer ,Kubenetes Object , Node, ReplicaSet
  2. build up two centos 7.8 server

k8s 环境配置

  1. 改用户名 检查 centos /hostname
# 在 master 节点和 worker 节点都要执行
cat /etc/redhat-release

# 此处 hostname 的输出将会是该机器在 Kubernetes 集群中的节点名字
# 不能使用 localhost 作为节点的名字
hostname

修改 hostname

如果您需要修改 hostname,可执行如下指令:

# 修改 hostname
hostnamectl set-hostname your-new-host-name
# 查看修改结果
hostnamectl status
# 设置 hostname 解析
echo "127.0.0.1   $(hostname)">> /etc/hosts
# 请使用 lscpu 命令,核对 CPU 信息
# Architecture: x86_64    本安装文档不支持 arm 架构
# CPU (s):       2         CPU 内核数量不能低于 2
lscpu
  1. 配置网络
1. 首先 dhclient 通一下网络
2.vim/etc/sysconfig/network-scripts-ifcfg-ens33
3.systemctl restart network.service

宿主机 ip
10.2.32.100
掩码
255.255.248.0
网关
10.2.32.1

master 结点
ip
10.2.34.9

worker 节点
ip
10.2.34.73
  1. 安装 docker docker nfs-utils kubectl /kubeadm/kubelet
# 在 master 节点和 worker 节点都要执行
# 最后一个参数 1.18.5 用于指定 kubenetes 版本,支持所有 1.18.x 版本的安装
# 腾讯云 docker hub 镜像
# export REGISTRY_MIRROR="https://mirror.ccs.tencentyun.com"
# DaoCloud 镜像
# export REGISTRY_MIRROR="http://f1361db2.m.daocloud.io"
# 华为云镜像
# export REGISTRY_MIRROR="https://05f073ad3c0010ea0f4bc00b7105ec20.mirror.swr.myhuaweicloud.com"
# 阿里云 docker hub 镜像
export REGISTRY_MIRROR=https://registry.cn-hangzhou.aliyuncs.com
curl -sSL https://kuboard.cn/install-script/v1.18.x/install_kubelet.sh | sh -s 1.18.5
  1. 初始化 master
初始化 master 节点

关于初始化时用到的环境变量

    APISERVER_NAME 不能是 master 的 hostname
    APISERVER_NAME 必须全为小写字母、数字、小数点,不能包含减号
    POD_SUBNET 所使用的网段不能与 master 节点 /worker 节点 所在的网段重叠。该字段的取值为一个 CIDR 值,如果您对 CIDR 这个概念还不熟悉,请仍然执行 export POD_SUBNET=10.100.0.1/16 命令,不做修改



请将脚本最后的 1.18.5 替换成您需要的版本号, 脚本中间的 v1.18.x 不要替换
# 只在 master 节点执行
# 替换 x.x.x.x 为 master 节点实际 IP(请使用内网 IP)
# export 命令只在当前 shell 会话中有效,开启新的 shell 窗口后,如果要继续安装过程,请重新执行此处的 export 命令
export MASTER_IP=x.x.x.x
# 替换 apiserver.demo 为 您想要的 dnsName
export APISERVER_NAME=apiserver.demo
# Kubernetes 容器组所在的网段,该网段安装完成后,由 kubernetes 创建,事先并不存在于您的物理网络中
export POD_SUBNET=10.100.0.1/16
echo "${MASTER_IP}    ${APISERVER_NAME}">> /etc/hosts
curl -sSL https://kuboard.cn/install-script/v1.18.x/init_master.sh | sh -s 1.18.5

 
  1. 初始化 worker

  2. 将 worker join

Next week

  1. Build up the necessary cluster environment and deploy a nginx service on the cluster

4年前
回复了 yahoo17 创建的主题 Summer2020 Summer2020-Casbin-Kubenetes

Week 1 (June 27 - July 5)

Weekly Summary

  1. Studied the fundamental knowledge about Golang(Actually I am moving from C++ to Golang, so I am not very familiar with everything in Golang).
  2. Still setting up the environment (including the k8s and Ubuntu for service test).
  3. Conducted further investigation on other authorization library.
  4. Read the paper

Before Coding

Before get started, I think we should have further knowledge of distributed system, so I go to learn the MIT-6.824 . Only after I have a solid foundation can I go further.

Next week

  1. Build up the necessary environment.
  2. Practice k8s and docker.
  3. Read the document provided by k8s.
  4. Practice Golang.
4年前
回复了 yahoo17 创建的主题 Summer2020 Summer2020-Casbin-Kubenetes

Week 0

  1. Summer2020 Project: https://isrc.iscas.ac.cn/summer2020/#/organisations/casbin (ID: 2008417)

https://user-images.githubusercontent.com/55846951/86561910-4f04c880-bf94-11ea-8527-377daf496879.png

  1. Student: Yan hao(@[yahoo17](https://github.com/yahoo17)) ) Mentors: Zhang helong(@[BetaCat0](https://github.com/BetaCat0) )

    IM Channel:308533841(QQ) Weekly reports will be appended as replies by the student

关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   40 人在线   最高记录 40   ·     选择语言  ·     选择编辑器
创意工作者们的社区
World is powered by code
VERSION: 2c477f2 · 35ms · UTC 10:38 · PVG 18:38 · LAX 03:38 · JFK 06:38
♥ Do have faith in what you're doing.