'ICP'에 해당되는 글 3건

  1. 2020.04.08 ICP namespace에 PSP 추가
  2. 2020.04.07 jenkins install on ICP
  3. 2020.02.19 ICP(IBM Cloud Private) image registry 이용

ICP namespace에 PSP 추가

ICP 2020. 4. 8. 11:34

ICP namespace에 PSP(Pod Security Policy) 추가하기

-> UI에서는 기존에 생성한 namespace에 PSP를 추가할 수 없음 

 

# role binding을 생성해서 PSP 추가하면 됨

# appsales namespace에 ibm-anyuid-clusterrole 추가하는 예시

$ kubectl -n appsales create rolebinding ibm-anyuid-clusterrole-rolebinding --clusterrole=ibm-anyuid-clusterrole --group=system:serviceaccounts:appsales

 

# tekton-test namespace에 PSP 추가하기

# 기존 생성시 ibm-restircted-psp만 부여한 namespace

 

# tekton-test namespace에 ibm-anyuid-psp 추가

$ kubectl -n tekton-test create rolebinding ibm-anyuid-clusterrole-rolebinding --clusterrole=ibm-anyuid-clusterrole --group=system:serviceaccounts:tekton-test

 

# PSP 추가 후 UI 에서 확인

'ICP' 카테고리의 다른 글

jenkins install on ICP  (0) 2020.04.07
ICP(IBM Cloud Private) image registry 이용  (0) 2020.02.19
Posted by jerymy
,

jenkins install on ICP

ICP 2020. 4. 7. 11:49

# ICP namespace 생성

namespaces생성 -> devops -> ibm-anyuid-psp

 

 

# nfs서버에 폴더 생성

1. nfs에 폴더 생성 ( ex. mkdir -p /data/nfs/jenkins )

     /srv/nfs/jenkins

 

# pv yaml 생성

pv-jenkins-devops.yaml

kind: PersistentVolume
apiVersion: v1
metadata:
  name: pv-jenkins-**xx**
spec:
  capacity:
    storage: 10Gi
  accessModes:
    - ReadWriteOnce
  persistentVolumeReclaimPolicy: Delete
  nfs:
    server: 169.56.xx.xx
    path: **/data/nfs/devops/**xx**

 

2. pv 생성

kubectl apply -f pv-jenkins-devops.yaml

 

 

3. 설치

helm install --name devops-jenkins --namespace devops --set master.serviceType="NodePort" stable/jenkins --tls

 

4. 확인

kubectl get all

 

devops-jenkins의 외부포트 확인 kubectl get svc -n devops

 

id/pw 확인

kubectl get secret -n devops devops-jenkins -o yaml

 

data:

  jenkins-admin-password: eUd0NExsUEhOOQ==

  jenkins-admin-user: YWRtaW4=

kind: Secret

 

echo eUd0NExsUEhOOQ== | base64 --decode    --> yGt4LlPHN9root

echo YWRtaW4= | base64 --decode  --> adminroot@

 

 

----------------------

이렇게 하고 jenkins에서 pipeline 만들어서 build 하면 진행 안됨...

 

 

# sa 조회

root@mvp-master:~# kubectl get sa

NAME               SECRETS   AGE

default            1         5h42m

mycicd01-jenkins   1         5h31m

 

 

# cluster-admin role binding

- rb_default 는 이미 사용중이라 create 가 안됨.. --> rb_mycicd01 로 생성하면 됨 --> jenkins도 정상 동작함....

kubectl create clusterrolebinding rb_default --clusterrole cluster-admin --serviceaccount=devops:default

kubectl create clusterrolebinding rb_default --clusterrole cluster-admin --serviceaccount=mycicd01:default --> 이미 존재해서 적용 안됨

# 아래 명령으로 생성함..

kubectl create clusterrolebinding rb_mycicd01 --clusterrole cluster-admin --serviceaccount=mycicd01:default

 

# 2/10, 새로 생성 클러스터 devops 네임스페이스의 sa 2개(default, devops-jenkins)중 devops-jenkins 에 clusteradmin role binding함...

kubectl create clusterrolebinding rb_devops-jenkins-admin --clusterrole cluster-admin --serviceaccount=devops:devops-jenkins

'ICP' 카테고리의 다른 글

ICP namespace에 PSP 추가  (0) 2020.04.08
ICP(IBM Cloud Private) image registry 이용  (0) 2020.02.19
Posted by jerymy
,

ICP의 private image registry 이용

1. image registry login

# mycluster.icp는 ICP 설정 정보 참조 -> /etc/hosts 파일에 존재해야함.
$ docker login mycluster.icp:8500

2. ICP image registry에서 image 가져오기

$ docker pull mycluster.icp:8500/ocean/hello-appsody:1.0.0 

# ocean -> namespace

# 버전 명기 필요 -> ICP의 container images 에서 버전 확인 필요

 

3. image push

# docker image tag 변경

$ docker tag bitnami/rabbitmq:3.8.2-debian-9-r0 mycluster.icp:8500/ocean/rabbitmq:3.8.2

 

# image push

$ docker push mycluster.icp:8500/ocean/rabbitmq:3.8.2

4. push 이미지 확인

5. 이미지 save/load

# docker save <이미지명> -o <압축파일경로>

$ docker save happycloudpak/node1:v1 -o node.tar

 

# docker load -i <압축파일경로>

$ docker load -i node.tar

 

'ICP' 카테고리의 다른 글

ICP namespace에 PSP 추가  (0) 2020.04.08
jenkins install on ICP  (0) 2020.04.07
Posted by jerymy
,