资讯详情

OCP集群初始化配置

NSX ALB Harbor OpenShift 4.8 UPI安装配置实验笔记系列目录

1 用户管理

1.1 新建集群管理员账户

1.2 新建普通用户

1.3 删除用户

1.3.1 删除kubeadmin用户

1.3.2 删除普通用户user01

1.4 获取当前集群htpasswd文件

2 配置Openshift内置镜像库(可选)

2.1 配置NFS共享

2.2 配置内部Registry库的存储

2.2.1 配置静态StorageClass

2.2.2 为静态StorageClass创建PV

2.2.3 创建PVC

2.2.4 指定内部镜像库使用PVC

3 配置Sample Operator(可选)

3.1 获取Image Streams列表

3.2 将列表中的Image同步到本地Registry

3.3 更新配置并Push Image Stream


1 用户管理

1.1 新建集群管理员账户

1). 创建一个包含admin用户名,密码指定为Vmware1!的users.htpasswd文件

cd ~ htpasswd -bBc /root/users.htpasswd admin VMware1!

2). 基于user.htpasswd文件创建openshift的secret和htpasswd_provider:

oc create secret generic htpass-secret --from-file=htpasswd=/root/users.htpasswd -n openshift-config

3). 创建OAuth资源对像yaml:

cat << EOF > htpass.yaml apiVersion: config.openshift.io/v1 kind: OAuth metadata:   name: cluster spec:   identityProviders:   - name: htpasswd_provider      mappingMethod: claim      type: HTPasswd     htpasswd:       fileData:         name: htpass-secret EOF

4). 将OAuth资源对像yaml应用于集群:

oc apply -f htpass.yaml

5). 授予admin用户cluster-admin权限

oc adm policy add-cluster-role-to-user cluster-admin admin --rolebinding-name=cluster-admin

6). 使用htpasswd_provider登录console页面:

输入浏览器:https://console-openshift-console.apps.ocp.corp.tanzu ,选择页面htpasswd_provider:

输入用户名admin,密码VMware1!登录:

1.2 新建普通用户

1). 在users.htpasswd在文件中添加新条目,用户名称 user密码指定为01Vmware1!

cd ~ htpasswd -b /root/users.htpasswd user01 VMware1!

2). 更新Openshift中的secret认证库:

oc set data secret/htpass-secret --from-file htpasswd=/root/users.htpasswd -n openshift-config

3). 测试user01用户能否成功登录集群:

4). 将OAuth资源对像yaml应用于集群:

oc apply -f htpass.yaml

5). 授予admin用户cluster-admin权限

oc adm policy add-cluster-role-touser cluster-admin admin --rolebinding-name=cluster-admin

1.3 删除用户

1.3.1 删除kubeadmin用户

在创建了cluter-admin角色的用户后,建议删除默认的kubeadmin用户:

oc delete secrets kubeadmin -n kube-system

1.3.2 删除普通用户user01

1). 将user01从认证文件中删除

cd ~
htpasswd -D /root/users.htpasswd user01

2). 更新Openshift中的secret认证库:

oc set data secret/htpass-secret --from-file htpasswd=/root/users.htpasswd -n openshift-config

3). 删除用户相关资源

oc delete user user01
oc delete identity my_htpasswd_provider:user01

1.4 获取当前集群中的htpasswd文件

1). 确认secret的名称

oc get secret -n openshift-config

2). 将secret的内容提取至本地文件

oc extract secret/htpass-secret -n openshift-config –to /root/users.htpasswd-extract

 

2 配置Openshift内置镜像库(可选)

2.1 配置NFS共享

在LAB的trueNAS上新增一块50G的虚拟磁盘,然后进入配置NFS。

2.2 配置内部Registry库的存储

2.2.1 配置静态StorageClass

cat << EOF > storageclass.yaml
---
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: standard
provisioner: truenas.corp.tanzu/external-nfs
volumeBindingMode: WaitForFirstConsumer
EOF
oc apply -f storageclass.yaml

 

2.2.2 为静态StorageClass创建PV

cat << EOF > pv.yaml
---
apiVersion: v1
kind: PersistentVolume
metadata:
  name: registry-pv
spec:
  capacity:
    storage: 20Gi
  accessModes:
    - ReadWriteMany
  persistentVolumeReclaimPolicy: Retain
  storageClassName: standard
  nfs:
    path: /mnt/OCP
    server: 192.168.110.60
    readOnly: false
EOF
oc apply -f pv.yaml

 

2.2.3 创建PVC

oc project openshift-image-registry
cat << EOF > pvc.yaml
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: registry-pvc
spec:
  storageClassName: standard
  accessModes:
    - ReadWriteMany      
  resources:
     requests:
       storage: 20Gi
EOF
oc apply -f pvc.yaml

 

2.2.4 指定内部镜像库使用PVC

oc patch configs.imageregistry.operator.openshift.io cluster --type merge --patch '{"spec":{"storage":{"pvc":{"claim":"registry-pvc"}}}}'
oc patch configs.imageregistry.operator.openshift.io cluster --type merge --patch '{"spec":{"managementState": "Managed"}}'
oc get configs.imageregistry.operator.openshift.io -o json | jq -r '.items[].spec |.managementState,.storage'
oc get pod -n openshift-image-registry

oc patch configs.imageregistry.operator.openshift.io cluster --type merge -p '{"spec":{defaultRoute":true}}'

 

3 配置Sample Operator(可选)

检查Sample Operator状态:

oc get co openshift-samples -o yaml

3.1 获取Image Streams列表

获取Image Streams列表

for i in `oc get is -n openshift --no-headers | awk '{print $1}'`; do oc get is $i -n openshift -o json | jq .spec.tags[].from.name | grep registry.redhat.io | sed -e 's/"//g' | cut -d"/" -f2-; done | tee imagelist.txt

3.2 将列表中的Image同步到本地Registry

将Image Streams列表中的Image同步到本地Registry

for i in `cat imagelist.txt`; do oc image mirror -a ${LOCAL_SECRET_JSON} registry.redhat.io/$i map.corp.tanzu/openshift/$i;done

3.3 更新配置并Push Image Stream

指定本地Registry(会触发同步)

oc patch configs.samples.operator.openshift.io cluster --patch '{"spec":{"sampleRegistry": "map.corp.tanzu/openshift"}}' --type=merge
oc patch configs.samples.operator.openshift.io cluster --patch '{"spec":{"managementState": "Removed"}}' --type merge
oc patch configs.samples.operator.openshift.io cluster --patch '{"spec":{"managementState": "Managed"}}' --type merge

标签: utsuki液位传感器upi

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台