반응형

 


 

작성일: 2023년 11월 21일   
(새 Macbook을 구입한 날 ^^)
---
오늘 내가 테스트했던 macOS 버전은 Sonoma 14.1.1이다. 잘 동작한다.
그리고 구형 Macbook에서는 Monterey (v12.x) 버전에서 아래와 같은 방법으로 설정해서 잘 사용했었다.

 

 

동작 원리는 잘 모르겠고, 그냥 아래 명령을 따라서 수행하면 한영 변환키 설정이 잘 된다.

내가 원하는 한영 변환키 조합은 이렇다.

[ Shift + Space ]

 

##
## brew 명령을 이용하여 "xcodes"를 설치한다.
## "xcodes"를 설치해야 "plutil" 명령을 사용할 수 있기 때문이다.
##

$ brew install --cask xcodes


##
## plist 파일을 xml 형식으로 변경
##

$ cd ~/Library/Preferences/

$ plutil -convert xml1 com.apple.symbolichotkeys.plist

##
## xml 형식로 변경된 문서를 수정
##

$ vi  com.apple.symbolichotkeys.plist

... 중간 생략 ...
        <key>61</key>      ## <<-- 먼저 <key>61</key> 이 부분을 검색해서 찾고, 아래 부분을 수정할 것!
        <dict>
            <key>enabled</key>
            <true/>
            <key>value</key>
            <dict>
                <key>parameters</key>
                <array>
                    <integer>32</integer>
                    <integer>49</integer>
                    <integer>131072</integer>  ## <<-- 이 부분을 131072로 변경
                </array>
                <key>type</key>
                <string>standard</string>
... 중간 생략 ...

##
## xml 형태의 파일을 다시 원래의 plist binary 형태로 변환
##

$ plutil -convert binary1 com.apple.symbolichotkeys.plist

 

 


위 파일 편집에 관해 부연 설명을 하자면,
<integer>8519680</integer> 
라고 되어 있던 줄을 
<integer>131072</integer>
로 수정하는 것이다.

 

 

위와 같이 plist 파일을 변경하고 나면, 반드시 macOS를 Reboot해야 한다.

어떤 사람은 log-out, log-in만 해도 잘 된다고 하던데... 내가 직접 해보니, 꼭 Reboot을 해야 정상적으로 한영 변환 설정이 적용된다.

반응형

Web Browser에 아래의 주소를 입력하고, 접속해보면 내 Browser의 User-Agent 값을 볼 수 있다.

 

https://www.whatismybrowser.com/detect/what-is-my-user-agent

 

What is my user agent?

Every request your web browser makes includes your User Agent; find out what your browser is sending and what this identifies your system as.

www.whatismybrowser.com

 

반응형

Internet web page를 돌아다니다가 예쁘게 Image를 내 PPT 문서에 넣으려고 보면, SVG 파일이라서 PPT 문서에 인용할 수 없는 경우가 있다.

그럴 때, convert 명령이나 rsvg-convert 명령을 이용하면 SVG file을 JPG나 PNG 파일로 쉽게 바꿀 수 있다.

 

## image converting program 설치하기
$  brew install  imagemagick librsvg

## SVG file을 PNG 파일로 변환하기
##  (참고: -z 3.0은 3배 Zoom해서 PNG 파일로 변화하라는 뜻)
$  rsvg-convert -z 3.0 -f png origin_img.svg  -o output_img.png

 

반응형

업무 때문에 CI/CD, DevOps에 관한 자료를 찾다가 CI CD를 묘사한 그림이 예뻐서 메모를 남긴다. 

Image URL은 아래와 같다.

 

https://nanduribalajee.medium.com/what-is-ci-cd-pipeline-e2f25db99bbe

 

What is CI/CD Pipeline?

Do you need your developing team to convey sans bug-free at high speed? A quick and dependable CI/CD pipeline is pivotal for doing that…

nanduribalajee.medium.com

 

CI/CD Pipeline

반응형

나는 MacBook M1에서 Paralelles를 이용해서 Windows 11를 사용하고 있다.

지금껏 사용하면서 큰 불편을 못 느꼈지만, 가끔 Internet Explorer만 지원하는 웹 사이트에 접속할 때는 옛날의 Windows 11 + Internet Explorer 조합이 필요했다.

 

그러다가 오늘, Windows 11의 Edge Browser에서도 Internet Explorer처럼 사용할 수 있는 방법을 찾았다.

 

 

Windows 11에서 Internet Explorer 옵션 화면 실행 방법

 

귀찮더라도 아래와 같이 타이핑을 좀 해야 한다.

  • [Windows + R]을 타이핑하고, 아래와 같은 창을 띄운다.
  • 그리고 'inetcpl.cpl'이라고 입력하고, 확인 버튼을 누른다.

 

Windows 명령어 입력 창

 

 

  • 그러면 아래와 같은 Internet Explorer 속성 설정 화면이 열린다.

 

Internet Explorer 속성, Option 화면

 

이후 부터는 예전에 Internet Explorer 브라우저를 사용했던 것처럼 동일하게 설정하고, 

그런 후에 Edge 브라우저를 다시 시작하면, Edge 브라우저에서 Internet Explorer 브라우저처럼 웹 사이트에 접속할 수 있다.

아마 대부분 '보안'과 관련한 설정 때문에 웹 사이트 접속에 못 했을텐데, 아래 화면처럼 보안 수준을 '최소'로 낮추고 웹 사이트에 접속하면 된다.

 

Internet Explorer 보안 설정

 

접속하지 못 했던 웹 사이트에 접속할 수 있어서 편하긴 한데, 근본적으로 웹 사이트 개발하는 사람이 표준을 지켜서 잘 개발해주면 더 좋을 듯 :)

 

 

Edge 브라우저에서 한글 깨지는 현상 해결하기

 

참고로, 위와 같이 설정하고 웹 사이트에 접속했는데 웹 페이지의 한글이 깨져서 출력되는 경우가 발생할 수 있다. 그럴 때는 아래와 같이 언어 설정을 확인해보면 된다.

 

1)  [설정] 화면에서 [언어 설정] 항목을 선택한다.

 

Windows 11의 언어 설정

 

2)  [언어 및 지역] 화면에서 [기본 언어 설정]을 선택한다.

 

Windows 11의 기본 언어 설정

 

3)  [국가 또는 지역] 화면에서 [시스템 로캘 변경] 버튼을 클릭한다.

 

국가 또는 지역 설정 화면

 

4)  [지역 설정] 화면에서 '한국어(대한민국)'을 선택하고, 'Beta: 세계 언어 지원을 위해 Unicode UTF-8 사용' 항목을 해제한다.

 

시스템 로케일 설정 화면

 

 

 

Reference

 

https://www.softwareok.com/?seite=faq-Windows-11&faq=39 

 

 

Open Internet Options in Windows 11

Open Internet Options in Windows 11! Even if Internet Explorer is not included in Windows 11, the Internet options that were to be found in IE are available! The old IE settings are not only valid for Internet Explorer, even Chrome, Edge, and Firefox, ....

www.softwareok.com

 

반응형

 

vi 또는 vim editor를 사용하다보면, 한글이 아래와 같이 이상하게 나오는 경우가 있다.

 

vim editor 한글 깨짐 현상

 

 

이럴 때는 .vimrc 파일에 아래와 같이 2줄을 추가해준다.

 

set encoding=utf-8
set fileencodings=utf-8,euc-kr,cp949

 

 

.vimrc 파일을 저장하고 닫은 다음에 다시 vi 편집기로 한글을 작성해보면, 아래처럼 한글이 깨지지 않고 잘 보인다.

 

vim editor 한글 깨짐 해결

 

반응형

 


 

 

이 블로그 내용을 테스트한 날짜: 2023년 02월 17일

 

 

아래 예시처럼 따라하면, Kubernetes 자원에 대한 Metrics 정보를 볼 수 있다.

단, 아래 절차에서 "NOTE:" 라고 표시된 부분을 추가해야 한다.

 

##
## 아래 명령을 수행해서 metrics-server를 설치하기 위한 manifest file을 download한다.
##
$  curl -L https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml -o components.yaml


## 
## 다운로드한 components.yaml 파일에
## "--kubelet-insecure-tls=true" 옵션을 추가한다.
##  (아래 예제를 따라하면 된다)
$  vi components.yaml
... 중간 생략 ...
    spec:
      containers:
      - args:
        - --cert-dir=/tmp
        - --secure-port=4443
        - --kubelet-insecure-tls=true     ## <-- NOTE: 이 부분을 추가한다.
        - --kubelet-preferred-address-types=InternalIP,ExternalIP,Hostname
        - --kubelet-use-node-status-port
        - --metric-resolution=15s
        image: k8s.gcr.io/metrics-server/metrics-server:v0.6.2
... 중간 생략 ...        


$  kubectl apply -f components.yaml
serviceaccount/metrics-server created
clusterrole.rbac.authorization.k8s.io/system:aggregated-metrics-reader created
clusterrole.rbac.authorization.k8s.io/system:metrics-server created
rolebinding.rbac.authorization.k8s.io/metrics-server-auth-reader created
clusterrolebinding.rbac.authorization.k8s.io/metrics-server:system:auth-delegator created
clusterrolebinding.rbac.authorization.k8s.io/system:metrics-server created
service/metrics-server created
deployment.apps/metrics-server created
apiservice.apiregistration.k8s.io/v1beta1.metrics.k8s.io created
$

$  kubectl  get  -n kube-system  pod  -l k8s-app=metrics-server
NAME                             READY   STATUS    RESTARTS   AGE
metrics-server-ddfcd777b-lktxx   1/1     Running   0          67s

$ kubectl  top  node
NAME      CPU(cores)   CPU%   MEMORY(bytes)    MEMORY%
node-69   219m         5%     23607Mi          24%
node-73   202m         5%     48753Mi          50%
node-75   173m         4%     51048Mi          52%
... 중간 생략 ...

$ kubectl  top  -n istio-system  pod --containers
POD                                     NAME                                 CPU(cores)   MEMORY(bytes)
grafana-68cc7d6d78-7kjw8                grafana                              3m           51Mi
istio-egressgateway-6cb7bdc7fb-2wg57    istio-proxy                          3m           47Mi
istio-ingressgateway-694d8d7656-fk4tw   istio-proxy                          7m           62Mi
istiod-6c68579c55-xk6cm                 discovery                            2m           80Mi
jaeger-5d44bc5c5d-rb4v6                 jaeger                               10m          3612Mi
kiali-fd9f88575-z4wrm                   kiali                                1m           131Mi
prometheus-77b49cb997-zvjm8             prometheus-server                    9m           454Mi
prometheus-77b49cb997-zvjm8             prometheus-server-configmap-reload   1m           6Mi
... 중간 생략 ...
$

 

위에서 "--kubelet-insecure-tls=true" 라고 설정을 추가했는데, 자세한 설명은 아래 원문을 참고할 것~~~

Metrics Server Pod랑 Kubelet 이랑 API 연동할 때, CA(Certificate Authority)를 검사하지 말고 연동하라는 뜻이다.

 

kubelet-insecure-tls 옵션에 대한 설명

 

 

Reference

딱히 어려운 내용이 없어서, 아래 원문을 읽고 따라해도 잘 설치되고, 동작한다.

 

GitHub - kubernetes-sigs/metrics-server: Scalable and efficient source of container resource metrics for Kubernetes built-in aut

Scalable and efficient source of container resource metrics for Kubernetes built-in autoscaling pipelines. - GitHub - kubernetes-sigs/metrics-server: Scalable and efficient source of container reso...

github.com

 

반응형

 

Istio를 사용해서 Pod간 Traffic을 제어하다보면, 특정 Pod의 특정 TCP Port는 Proxy 처리에서 제외(Exclude)시키고 싶을 때가 있다.

(즉, Istio Enovy Proxy Container를 경유하지 않고, 바로 다른 연동할 Pod로 TCP Traffic을 보낸다는 뜻)

 

아마, 대부분 HTTP가 아닌 회사 내부에서 자체적으로 Protocol을 정해놓고 연동하는 Traffic 들이 대부분일 듯.

또는 NATS, Kafka 같은 Message Broker와 연동하는 경우에도 굳이 Service Mesh를 사용할 일이 없다.

왜냐하면 NATS, Kafka는 원래 메시지 분산 처리를 할 수 있도록 설계되어 있으니까 굳이 Istio의 제어를 받지 않아도 된다.

 

만약, TCP Port 50001를 사용하는 TCP Traffic을 Istio Envoy Proxy를 경유하지 않고, Main App Container (A)에서 바로 다른  Main App Container(B)에게 보내려면 아래와 같이 Pod에 Exclude Annotation을 설정한다.

 

apiVersion: apps/v1
kind: StatefulSet   ## or Deployment
metadata:
  name: myapp

... 중간 생략 ...

spec:
  template:
    metadata:
      annotations:
        sidecar.istio.io/inject: "true"
        traffic.sidecar.istio.io/excludeInboundPorts: "34432,50001,50002,50003,50100,50102,50103,50200,50201,50203,50300,50301,50302"
        traffic.sidecar.istio.io/excludeOutboundPorts: "34432,50001,50002,50003,50100,50102,50103,50200,50201,50203,50300,50301,50302"

+ Recent posts