🔥딱 8일간! 인프런x토스x허먼밀러 역대급 혜택

블로그

David

[인프런 워밍업 클럽 4기 - DevOps] 미션 3. Configmap, Secret

▶ 응용1 : Configmap의 환경변수들을 Secret을 사용해서 작성하고, App에서는 같은 결과가 나오도록 확인해 보세요.☞ Secret을 이렇게 사용하는 경우는 별로 보지 못했습니다. 여러가지 방법으로 Secret을 만들어본다는데 의의를 두시면 됩니다. Secret 생성 (1) - Dashboard확인을 위해 Dashboard에서 Secret 선택CMD 확인Deployment에서 envFrom 수정▶ 응용2 : 반대로 Secret의 DB정보를 Configmap으로 만들어보고 App을 동작시켜 보세요☞ Configmap을 Volume에 연결해서 쓰는 케이스는 매우 많습니다. apiVersion: v1 kind: ConfigMap metadata: namespace: anotherclass-123 name: api-tester-1231-postgresql labels: part-of: k8s-anotherclass component: backend-server name: api-tester instance: api-tester-1231 version: 1.0.0 managed-by: dashboard data: postgresql-info.yaml: | driver-class-name: "org.postgresql.Driver" url: "jdbc:postgresql://postgresql:5431" username: "dev" password: "dev123"  volumes: - name: files persistentVolumeClaim: claimName: api-tester-1231-files - name: configmap-datasource configMap: name: api-tester-1231-postgresql defaultMode: 420 ... volumeMounts: - name: files mountPath: /usr/src/myapp/files/dev - name: configmap-datasource mountPath: /usr/src/myapp/datasource/dev

데브옵스 · 인프라k8s인프런devopssresecretconfigmap쿠버네티스

이효정

Application 기능으로 k8s 이해 - Configmap, Secret

Application 기능으로 k8s 이해 - Configmap, Secret에 대해 공부하기! configmap의 data가 pod의 환경변수로 들어간다. [data의 내용]application_role: App의 역할을 지정postgresql_filepath: secrete 데이터로 연결할 파일의 경로spring_profiles_active: 환경 변수로 들어가는 값, 앱이 기동되는 시점에 알려주기 위한 변수위의 데이터를 가지고 생성된 pod로 실습하며 공부했다. 입력값 확인 (Secret, Configmap)base64로 인코딩된 값 아니다. 실제로 인코딩이 되어 저장 되어 있으나 대시보드에서 복호화를 해서 보여준다.SecretConfigmapSecret 확인키는 그대로 있다. value부분은 base64로 인코딩으로 저장된 값Secret data에서 postgresql-info가 Key인 Value값을 Base64 디코딩해서 보기컨테이너 내부 확인Configmap 환경 변수 확인Secret 파일 확인명령어 cat /usr/src/myapp/datasource/postgresql-info.yaml 로 확인! --> 값이 디코딩 되서 들어온다java 실행 인자 확인Application 정보 확인 (version, profile, role, database)Application Properties 파일 구성 확인datasource에는 정보가 없고 외부에서 값을 받아야 한다. 앱 내부에서는 application.yaml 파일로 dev, qa path 관리Configmap 수정환경변수 수정 명령Secret 수정 (dev -> test)secret를 volume 마운팅으로 연결해 놓은 관계여서 그렇다.다시 API조회환경변수 그대로! Database의 username, password 변pod삭제 -> 새 파드 -> 환경변수 -> GET잘 들어감 -> Application 정보 확인 -> GET확인

데브옵스 · 인프라인프런쿠버네티스configmapSecret열심히했다

채널톡 아이콘