공유할 서비스 선택

TECH


TECH

Middleware (weblogic 활용) Weblogic Docker ConfigMap활용으로 Pod별 설정 제어 방법 (weblogic-ku…

페이지 정보

작성자 미들웨어 아이디로 검색 전체게시물 댓글 0건 조회 362회 좋아요 0회 작성일 22-04-20 14:54

본문

안녕하세요.
"미들웨어" 입니다.
Weblogic 에서는 Docker 도 지원을 하고 있습니다.
최근에 K8S 및 OpenShift 사용이 증가하면서 Weblogic 또한 거기에 발맞춰 지원하는 것은 이미 흐름인 듯 하네요.
Weblogic 을 OpenShift 에서 사용하기 위해서는 우선 Image를 만들고 시작하는데, 관련 내용부터 다시 진행해보겠습니다.


## Weblogic Docker Image 생성
Weblogic 을 Docker Image로 만드는 것은 10장에서 다뤘으니, 그 부분 참고해서 이미지 생성은 진행해주세요.


1. Oracle Weblogic-k8s Github
이번 장에서는 OpenShift 에서 Weblogic 을 활용시 각 Pod별 Weblogic 설정을 다르게 설정하여 운영하고 싶을때 ConfigMap을 활용하는데..
ConfigMap을 활용하여 data source, port 정보, heap size, thread pool, class path등을 별도 설정 할 수 있습니다.

오라클에서는 Weblgic-k8s 관련해서 Oracle github를 운영하고 있습니다.  



2. ConfigMap으로 Pod별 별도 설정 방법

- ConfigMap에 대한 엑세스 제어 경로
90252c1581dacfbfa271365fa2ec7df4_1650433949_0079.png

ConfigMap 설정 설명

  • 구성 파일은 다음을 통해 Kubernetes Pod 및 작업에 제공할 수 있습니다.
  • 구성 맵, 키-값 쌍 세트로 구성되며, 각 항목은 하나 이상의 운영자 관리 노드에서 읽기 전용 텍스트 파일로 액세스할 수 있습니다.
  • 액세스는 도메인 전체, 단일 클러스터 내 또는 단일 서버에 제공될 수 있다.
  • 각각의 경우에 액세스는 serverPod원하는 범위의 요소 내에서 구성됩니다.

- ConfigMap 설정 샘플
예를 들어 샘플로 my-map key-1 and key-2 로 이름이 지정된 ConfigMap이 있는 경우 클러스터내의 동일한 디렉토리에 있는 별도의 파일로 두 값에 대한 액세스를 제공할 수 있습니다.

   clusters:

  - clusterName: cluster-1
    serverPod:
      volumes:
      - name: my-volume-1
        configMap:
          name: my-map
          items:
          - key: key-1
            path: first
          - key: key-2
            path: second
      volumeMounts:
      - name: my-volume-1
        mountPath: /weblogic-operator/my

 

 

- ConfigMap 설정 경로

경로를 아래와 같이하면 경로에 있는 두 개의 파일에 액세스할 수 있습니다.

  • /weblogic-operator/my/first
  • /weblogic-operator/my/second.
volume및 항목은 모두 volumeMount필수이며 이름이 같아야 합니다.
이름은 항목 아래의 필드에 ConfigMap 지정되며, 항목은 배열로, 각 항목은 a 아래 에 지정된 디렉토리 아래의 파일 이름에 키를 매핑 합니다.



3. OpenShift 에서 Weblogic 실행
OpenShift에서 WebLogic을 실행하기 위한 보안 요구 사항
내용이 방대하여 아래 링크를 참고해서 설정을 진행해주세요
OpenShift에서 WebLogic을 실행하기 위한 보안 요구 사항
버전 3.1부터 WebLogic Kubernetes Operator 이미지 및 2020년 8월 이후 Oracle Container Registry에서 얻은 WebLogic Server 이미지 oracle에는 기본 그룹이 로 설정된 UID 1000 사용자가 root있습니다.

다음은 표준 WebLogic에서 발췌한 것입니다.도커파일 파일 시스템 그룹 소유권이 표준 WebLogic Server 이미지에서 구성되는 방식을 보여줍니다.

# Setup filesystem and oracle user
# Adjust file permissions, go to /u01 as user 'oracle' to proceed with WLS installation
# ------------------------------------------------------------
RUN mkdir -p /u01 && \
    chmod 775 /u01 && \
    useradd -b /u01 -d /u01/oracle -m -s /bin/bash oracle && \
    chown oracle:root /u01

COPY --from=builder --chown=oracle:root /u01 /u01

기본적으로 OpenShift는 각 컨테이너에 대해 그룹에 restricted높은 임의의 UID를 할당하는 보안 컨텍스트 제약 조건을 적용합니다. root위에서 언급한 표준 이미지는 restricted보안 컨텍스트 제약 조건과 함께 작동하도록 설계되었습니다.

그러나 자신의 이미지를 빌드하거나 이전 버전의 이미지를 가지고 있거나 다른 소스에서 이미지를 가져오는 경우 필요한 권한이 없을 수 있습니다. 이미지가 OpenShift에서 작동할 수 있도록 유사한 파일 시스템 권한을 구성해야 할 수도 있습니다. root특히 다음 디렉터리가 그룹으로 포함되어 있고 그룹 읽기, 쓰기 및 실행 권한이 설정(활성화)되어 있는지 확인해야 합니다 .

  • 연산자의 경우 /operator및 /logs.
  • WebLogic Server 이미지의 경우 /u01(또는 다른 위치에 배치하는 경우 Oracle 홈 및 도메인의 궁극적인 상위 디렉토리).

OpenShift 환경에 다른 기본 보안 컨텍스트 제약 조건이 있는 경우 보안 컨텍스트 제약 조건을 생성하여 UID 1000 사용을 허용하도록 OpenShift를 구성해야 할 수 있습니다. Oracle은 필요한 권한만 있는 사용자 정의 보안 컨텍스트 제약 조건을 정의하고 이를 WebLogic 포드에 적용할 것을 권장합니다. Oracle은 필요한 것보다 더 많은 권한을 제공하므로 보안 수준이 낮기 때문에 내장 anyuid 보안 컨텍스트 제약 조건을 사용하지 않는 것이 좋습니다.

사용자 지정 보안 컨텍스트 제약 조건 생성

사용자 지정 보안 컨텍스트 제약 조건을 생성하려면 다음 콘텐츠로 YAML 파일을 생성합니다. 이 예에서는 OpenShift 프로젝트가 호출 weblogic되고 운영자 및 도메인을 실행하는 데 사용할 서비스 계정 이 호출된다고 가정합니다 weblogic-operatorgroups환경에 맞게 및 users섹션 에서 이를 변경해야 합니다.

kind: SecurityContextConstraints
apiVersion: v1
metadata:
  name: uid1000
allowHostDirVolumePlugin: false
allowHostIPC: false
allowHostNetwork: false
allowHostPID: false
allowHostPorts: false
allowPrivilegeEscalation: true
allowPrivilegedContainer: false
fsGroup:
  type: MustRunAs
groups:
- system:serviceaccounts:weblogic
readOnlyRootFilesystem: false
requiredDropCapabilities:
- KILL
- MKNOD
- SETUID
- SETGID
runAsUser:
  type: MustRunAs
  uid: 1000
seLinuxContext:
  type: MustRunAs
supplementalGroups:
  type: RunAsAny
users:
- system:serviceaccount:weblogic:weblogic-operator
volumes:
- configMap
- downwardAPI
- emptyDir
- persistentVolumeClaim
- projected
- secret

해당 파일을 호출했다고 가정하면 uid1000.yaml다음 명령을 사용하여 보안 컨텍스트 제약 조건을 생성할 수 있습니다.

$ oc create -f uid1000.yaml

보안 컨텍스트 제약 조건을 생성한 후 WebLogic Kubernetes Operator를 설치할 수 있습니다. 보안 컨텍스트 제약 조건에서 권한을 부여한 것과 동일한 서비스 계정을 사용하는지 확인하십시오( weblogic-operator앞의 예에서). 그런 다음 운영자는 UID 1000으로 실행되고, 운영자가 생성하는 모든 WebLogic 도메인도 UID 1000으로 실행됩니다.

OpenShift 요구 사항 및 연산자에 대한 추가 정보는 다음을 참조하십시오.오픈시프트.

전용 네임스페이스 사용

운영자의 개별 인스턴스를 설치하는 사용자에게 Kubernetes 클러스터 수준에서 리소스를 생성하는 데 필요한 권한이 없는 경우 운영자 인스턴스 및 관리하는 모든 WebLogic 도메인에 전용 네임스페이스를 사용할 수 있습니다. 설정 에 대한 자세한 내용은 dedicated다음을 참조하십시오.운영자 헬멧 구성 값.

Helm 차트 속성 kubernetesPlatorm을 다음으로 설정합니다.OpenShift

연산자 버전 3.3.2부터 연산자 kubernetesPlatformHelm 차트 속성을 로 설정합니다 OpenShift이 속성은 OpenShift 보안 요구 사항을 수용합니다. 자세한 내용은운영자 헬멧 구성 값.

WIT를 사용하여 target매개변수를 다음으로 설정합니다.OpenShift

사용할 때WebLogic 이미지 도구(WIT), createrebase또는 update명령을 사용하여이미지의 도메인--target도메인 홈 에서 대상 Kubernetes 환경에 대한 매개변수를 지정할 수 있습니다. 값은 Default또는 OpenShift입니다. 이 OpenShift옵션은 해당 파일에 대한 그룹 권한이 사용자 권한(대부분의 경우 그룹 쓰기 가능)과 동일하도록 도메인 디렉토리 파일을 변경합니다. 에 OS 그룹 및 사용자 설정을 제공하지 않으면 이 옵션 --chown의 설정이 에서 로 변경 되어 OpenShift 환경의 기대치에 부합합니다.Defaultoracle:oracleoracle:root

Weblogic 의 활용기술이 점점 많아지고 있어서.. 부지런히 따라가야 겠습니다.
Weblogic 구성시 도움이 되셨길 바랍니다.

그럼 열공하세요~

댓글목록

등록된 댓글이 없습니다.

TECH 목록
번호 제목 작성자 작성일 조회수
138 Middleware 미들웨어 아이디로 검색 전체게시물 11:36 2
(JBoss & Wildfly) Wildfly-27 Final 출시(2022-11-09) 소식 공유 & 추가된 신 기능소개

카테고리 : Middleware

2 0
작성자 : 미들웨어 22/12/08
137 Middleware 미들웨어 아이디로 검색 전체게시물 11-21 36
(Migration) Weblogic으로 마이그레이션 방법 -2 (5~8번)

카테고리 : Middleware

36 0
작성자 : 미들웨어 22/11/21
136 Middleware 미들웨어 아이디로 검색 전체게시물 11-07 61
(Migration) Weblogic으로 마이그레이션 방법 -1 (1~4번)

카테고리 : Middleware

61 0
작성자 : 미들웨어 22/11/07
135 Middleware 미들웨어 아이디로 검색 전체게시물 10-20 85
(Oracle Cloud OCI활용) Oracle Cloud 인스턴스 VM 볼륨 증가시키는 방법

카테고리 : Middleware

85 0
작성자 : 미들웨어 22/10/20
134 Middleware 미들웨어 아이디로 검색 전체게시물 10-12 98
(Oracle Cloud OCI활용) Oracle Cloud OCI 계정생성 및 vm서버 vnc 설치방법

카테고리 : Middleware

98 0
작성자 : 미들웨어 22/10/12
133 Middleware 미들웨어 아이디로 검색 전체게시물 09-21 180
(오픈소스 활용-14) Elasticsearch(엘라스틱서치) - start, stop, status

카테고리 : Middleware

180 0
작성자 : 미들웨어 22/09/21
132 Middleware 미들웨어 아이디로 검색 전체게시물 09-07 241
(오픈소스 활용-13) Elasticsearch(엘라스틱서치) - 다운로드 및 설치 방법

카테고리 : Middleware

241 0
작성자 : 미들웨어 22/09/07
131 Middleware 미들웨어 아이디로 검색 전체게시물 08-22 209
(오픈소스 활용-12) "ISTIO 이스티오" 2장 - 설치 및 대시보드

카테고리 : Middleware

209 0
작성자 : 미들웨어 22/08/22
130 Middleware 미들웨어 아이디로 검색 전체게시물 08-08 240
(오픈소스 활용-11) "ISTIO 이스티오" 1장 - 오픈소스 서비스 메시 플랫폼

카테고리 : Middleware

240 0
작성자 : 미들웨어 22/08/08
129 Middleware 미들웨어 아이디로 검색 전체게시물 07-25 257
(오픈소스 활용-10) GC 분석을 빠르고 간편하게 할 수 있는 GCeasy 소개 합니다

카테고리 : Middleware

257 0
작성자 : 미들웨어 22/07/25
Total 138건
게시물 검색

주식회사 클럭스| 대표 : 이찬호| 사업자등록번호 : 107-87-27655
주소 : 서울특별시 영등포구 국회대로 800, 여의도파라곤
E-mail : sales@chlux.co.kr
Copyright © 클럭스 www.chlux.co.kr All rights reserved.
상단으로Top