'전체 글'에 해당하는 글 2039건

 

Fargate 에서 실행 중인 pods 를 모니터링 할 수는 있을까.

 

초창기에 EKS 를 fargate 로 세팅한 후에 모니터링을 위해 prometheus 까지 만들어 놓으려다가, 실패하고 이제야 설치를 해봤다. 기억으로는 아마도 fargate 때문이었다. 그때까지만 해도 대부분 문서들이 전부 EC2 기반이라 삽질 조금 하다가 깔끔하게 접었었다.

 

지금은 Fargate / EC2 상관없이 AWS 에서 제공하는 AMP(Amazon Managed Service for Prometheus) 를 이용하면 쉽게 연동이 가능할 것 같은데, 역시나 서울 리전은 아직 해당 서비스를 제공하지 않는다. 그리하여 짬 내서 다시 한번 시도해 보았다.

 

일단 나는 EC2 를 쓸 생각이 없었는데, Prometheus 는 Fargate 로 설치할 수 없다. Prometheus 의 시계열 데이터베이스가 컨테이너 재시작 중에 손실되지 않도록 영구 볼륨(Persistent Volumes) 을 사용하여 Prometheus 에 지속성을 제공해야 한다. 그러려면 우선 EKS 에서 EC2 노드 그룹 (Node Group) 을 생성해야 한다.

 

 

 

1. Add Node Group

 

노드 그룹을 생성할 때는, 노드 IAM 역할(role) 을 필요로 한다.

 

IAM 대시보드에서 아래 두가지 정책을 포함하는 역할(ex. EksEC2nodeGroupRole) 을 만든다.
- AmazonEKSWorkerNodePolicy
- AmazonEC2ContainerRegistryReadOnly

 

또한, 쿠버네티스의 서비스계정에서 IAM 역할을 사용할 수 있도록 Amazon VPC CNI plugin 을 구성한다.

 

# aws-node 서비스계정 생성/업데이트
$ eksctl create iamserviceaccount \
    --name aws-node \
    --namespace kube-system \
    --cluster my-cluster \
    --role-name "AmazonEKSVPCCNIRole" \
    --attach-policy-arn arn:aws:iam::aws:policy/AmazonEKS_CNI_Policy \
    --override-existing-serviceaccounts \
    --approve
    
2023-01-31 17:42:15 [ℹ]  eksctl version 0.75.0
2023-01-31 17:42:15 [ℹ]  using region ap-northeast-2
2023-01-31 17:42:16 [ℹ]  1 iamserviceaccount (kube-system/aws-node) was included (based on the include/exclude rules)
2023-01-31 17:42:16 [!]  metadata of serviceaccounts that exist in Kubernetes will be updated, as --override-existing-serviceaccounts was set
2023-01-31 17:42:16 [ℹ]  1 task: {
    2 sequential sub-tasks: {
        create IAM role for serviceaccount "kube-system/aws-node",
        create serviceaccount "kube-system/aws-node",
    } }2023-01-31 17:42:16 [ℹ]  building iamserviceaccount stack "eksctl-my-cluster-addon-iamserviceaccount-kube-system-aws-node"
2023-01-31 17:42:16 [ℹ]  deploying stack "eksctl-my-cluster-addon-iamserviceaccount-kube-system-aws-node"
2023-01-31 17:42:16 [ℹ]  waiting for CloudFormation stack "eksctl-my-cluster-addon-iamserviceaccount-kube-system-aws-node"
2023-01-31 17:42:33 [ℹ]  waiting for CloudFormation stack "eksctl-my-cluster-addon-iamserviceaccount-kube-system-aws-node"
2023-01-31 17:42:49 [ℹ]  waiting for CloudFormation stack "eksctl-my-cluster-addon-iamserviceaccount-kube-system-aws-node"
2023-01-31 17:43:09 [ℹ]  waiting for CloudFormation stack "eksctl-my-cluster-addon-iamserviceaccount-kube-system-aws-node"
2023-01-31 17:43:26 [ℹ]  waiting for CloudFormation stack "eksctl-my-cluster-addon-iamserviceaccount-kube-system-aws-node"
2023-01-31 17:43:26 [ℹ]  serviceaccount "kube-system/aws-node" already exists
2023-01-31 17:43:26 [ℹ]  updated serviceaccount "kube-system/aws-node"

 

role 과 serviceAccounts 설정을 마쳤으면 eks 대시보드에서 노드 그룹을 추가/확인 한다. (node 수는 1개만 설정했다. 100G)

 

$ kubectl get pods -w -n kube-system
NAME                                            READY   STATUS    RESTARTS   AGE
aws-node-q123f                                  1/1     Running   0          4h5m
kube-proxy-abcmh                                1/1     Running   0          4h5m
...

 

EKS 콘솔의 추가기능에서 Amazon EBS CSI 드라이버(v1.23 버전부터 EC2 노드그룹 사용시 필요) 를 설치해야 하는데 IAM 역할을 미리 생성 해준다. (해당 권한이 올바로 설치되지 않으면 아래 storage 가 생성되지 못한다.)

 

$ eksctl create iamserviceaccount \
  --name ebs-csi-controller-sa \
  --namespace kube-system \
  --cluster my-cluster \
  --attach-policy-arn arn:aws:iam::aws:policy/service-role/AmazonEBSCSIDriverPolicy \
  --approve \
  --role-only \
  --role-name AmazonEKS_EBS_CSI_DriverRole

 

 

2. Prometheus 설치

 

# prometheus install
$ helm repo add prometheus-community https://prometheus-community.github.io/helm-charts

$ helm install prometheus prometheus-community/prometheus \
     --namespace prometheus \
     --set alertmanager.persistentVolume.storageClass="gp2" \
     --set server.persistentVolume.storageClass="gp2"

NAME: prometheus
LAST DEPLOYED: Tue Jan 31 13:04:08 2023
NAMESPACE: prometheus
STATUS: deployed
REVISION: 1
NOTES:
The Prometheus server can be accessed via port 80 on the following DNS name from within your cluster:
prometheus-server.prometheus.svc.cluster.local


Get the Prometheus server URL by running these commands in the same shell:
  export POD_NAME=$(kubectl get pods --namespace prometheus -l "app=prometheus,component=server" -o jsonpath="{.items[0].metadata.name}")
  kubectl --namespace prometheus port-forward $POD_NAME 9090


The Prometheus alertmanager can be accessed via port  on the following DNS name from within your cluster:
prometheus-%!s(<nil>).prometheus.svc.cluster.local


Get the Alertmanager URL by running these commands in the same shell:
  export POD_NAME=$(kubectl get pods --namespace prometheus -l "app=prometheus,component=" -o jsonpath="{.items[0].metadata.name}")
  kubectl --namespace prometheus port-forward $POD_NAME 9093
#################################################################################
######   WARNING: Pod Security Policy has been disabled by default since    #####
######            it deprecated after k8s 1.25+. use                        #####
######            (index .Values "prometheus-node-exporter" "rbac"          #####
###### .          "pspEnabled") with (index .Values                         #####
######            "prometheus-node-exporter" "rbac" "pspAnnotations")       #####
######            in case you still need it.                                #####
#################################################################################


The Prometheus PushGateway can be accessed via port 9091 on the following DNS name from within your cluster:
prometheus-prometheus-pushgateway.prometheus.svc.cluster.local


Get the PushGateway URL by running these commands in the same shell:
  export POD_NAME=$(kubectl get pods --namespace prometheus -l "app=prometheus-pushgateway,component=pushgateway" -o jsonpath="{.items[0].metadata.name}")
  kubectl --namespace prometheus port-forward $POD_NAME 9091

For more information on running Prometheus, visit:
https://prometheus.io/

 

모니터링은 내부에서만 사용할 예정이라 기본사양인 gp2 EBS 볼륨을 사용했으며, alertmanager 용 2G / server 용 8G 볼륨이 생성된다.

 

# check prometheus pods
$ kubectl get all -n prometheus
NAME                                                    READY   STATUS    RESTARTS   AGE
pod/prometheus-alertmanager-0                           1/1     Running   0          85s
pod/prometheus-kube-state-metrics-7cdcf7cc98-m7n9q      1/1     Running   0          85s
pod/prometheus-prometheus-node-exporter-552n8           0/1     Pending   0          85s
pod/prometheus-prometheus-node-exporter-5hkjp           0/1     Pending   0          84s
pod/prometheus-prometheus-node-exporter-5k54s           0/1     Pending   0          85s
pod/prometheus-prometheus-node-exporter-77gsb           1/1     Running   0          84s
pod/prometheus-prometheus-node-exporter-9ckh5           1/1     Running   0          85s
pod/prometheus-prometheus-node-exporter-gtvht           0/1     Pending   0          85s
pod/prometheus-prometheus-node-exporter-hxkn6           0/1     Pending   0          84s
pod/prometheus-prometheus-node-exporter-rxl4b           0/1     Pending   0          85s
pod/prometheus-prometheus-node-exporter-xr468           0/1     Pending   0          85s
pod/prometheus-prometheus-node-exporter-zqxrm           0/1     Pending   0          85s
pod/prometheus-prometheus-pushgateway-9d598d466-844ct   1/1     Running   0          85s
pod/prometheus-server-6487b794-qtddq                    2/2     Running   0          85s

NAME                                          TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)    AGE
service/prometheus-alertmanager               ClusterIP   172.20.40.182    <none>        9093/TCP   85s
service/prometheus-alertmanager-headless      ClusterIP   None             <none>        9093/TCP   85s
service/prometheus-kube-state-metrics         ClusterIP   172.20.106.187   <none>        8080/TCP   85s
service/prometheus-prometheus-node-exporter   ClusterIP   172.20.144.95    <none>        9100/TCP   85s
service/prometheus-prometheus-pushgateway     ClusterIP   172.20.17.45     <none>        9091/TCP   85s
service/prometheus-server                     ClusterIP   172.20.39.89     <none>        80/TCP     85s

NAME                                                 DESIRED   CURRENT   READY   UP-TO-DATE   AVAILABLE   NODE SELECTOR   AGE
daemonset.apps/prometheus-prometheus-node-exporter   10        10        2       10           2           <none>          85s

NAME                                                READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/prometheus-kube-state-metrics       1/1     1            1           85s
deployment.apps/prometheus-prometheus-pushgateway   1/1     1            1           85s
deployment.apps/prometheus-server                   1/1     1            1           85s

NAME                                                          DESIRED   CURRENT   READY   AGE
replicaset.apps/prometheus-kube-state-metrics-7cdcf7cc98      1         1         1       86s
replicaset.apps/prometheus-prometheus-pushgateway-9d598d466   1         1         1       86s
replicaset.apps/prometheus-server-6487b794                    1         1         1       86s

NAME                                       READY   AGE
statefulset.apps/prometheus-alertmanager   1/1     86s

 

만약 alertmanager 가 Pending 상태라면 prometheus uninstall 후에, 해당 EBS 볼륨(아마도 2G)도 직접 삭제하고, pvc 도 조회하여 삭제한다. (kubectl delete pvc name -n namespace)... prometheus uninstall 때 기존 alertmanager 관련 볼륨정보가 삭제되지 않는듯... 여러번 설치테스트 하다가 이것 때문에 삽질 좀 했다.

 

0/9 nodes are available: 1 node(s) had volume node affinity conflict, 8 node(s) had taint {eks.amazonaws.com/compute-type: fargate}, that the pod didn't tolerate.

 

또한 node-exporter 는 ec2 노드에서 작동하는 daemonset 으로 실행되지만 이미 생성된 fargate 노드들이 daemonset 을 지원하지 않기 때문에 fargate 에서 schedule 을 수행할 수 없다. node-exporter 의 역할은 실행중인 node에 배치되어 해당 호스트의 low-level 매트릭(vCPU, Mem, Network, Disk) 수집을 담당하는데, kube-state-metrics 가 이 메트릭을 대신 수집해 주어 node-exporter 없이도 지표 수집이 가능한 것 같아, node-exporter 를 전부 삭제했다.

 

# node-exporter 삭제
$ kubectl delete daemonset prometheus-prometheus-node-exporter -n prometheus

 

 

3. prometheus URL 접속 확인 (선택)

 

# Prometheus server URL
$ export POD_NAME=$(kubectl get pods --namespace prometheus -l "app=prometheus,component=server" -o jsonpath="{.items[0].metadata.name}")
# 127.0.0.1:9090
$ kubectl --namespace prometheus port-forward $POD_NAME 9090

# Alertmanager URL
$ export POD_NAME=$(kubectl get pods --namespace prometheus -l "app.kubernetes.io/name=alertmanager" -o jsonpath="{.items[0].metadata.name}")
# 127.0.0.1:9093
$ kubectl --namespace prometheus port-forward $POD_NAME 9093

# PushGateway URL 
$ export POD_NAME=$(kubectl get pods --namespace prometheus -l "app.kubernetes.io/name=prometheus-pushgateway" -o jsonpath="{.items[0].metadata.name}")
# 127.0.0.1:9091
$ kubectl --namespace prometheus port-forward $POD_NAME 9091

 

 

 

4. Grafana 설치

 

$ vi grafana.yaml
datasources:
  datasources.yaml:
    apiVersion: 1
    datasources:
    - name: Prometheus
      type: prometheus
      url: http://prometheus-server.prometheus.svc.cluster.local
      access: proxy
      isDefault: true


# grafana install
$ helm repo add grafana https://grafana.github.io/helm-charts
$ helm install grafana grafana/grafana \
    --namespace prometheus \
    --set persistence.storageClassName="gp2" \
    --set persistence.enabled=true \
    --set adminPassword='admin_password' \
    --values ./grafana.yaml \
    --set service.type=LoadBalancer

W0131 18:50:26.890856   44556 warnings.go:70] policy/v1beta1 PodSecurityPolicy is deprecated in v1.21+, unavailable in v1.25+
W0131 18:50:27.492718   44556 warnings.go:70] policy/v1beta1 PodSecurityPolicy is deprecated in v1.21+, unavailable in v1.25+
NAME: grafana
LAST DEPLOYED: Tue Jan 31 18:50:26 2023
NAMESPACE: prometheus
STATUS: deployed
REVISION: 1
NOTES:
1. Get your 'admin' user password by running:

   kubectl get secret --namespace prometheus grafana -o jsonpath="{.data.admin-password}" | base64 --decode ; echo

2. The Grafana server can be accessed via port 80 on the following DNS name from within your cluster:

   grafana.prometheus.svc.cluster.local

   Get the Grafana URL to visit by running these commands in the same shell:
   NOTE: It may take a few minutes for the LoadBalancer IP to be available.
        You can watch the status of by running 'kubectl get svc --namespace prometheus -w grafana'
     export SERVICE_IP=$(kubectl get svc --namespace prometheus grafana -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
     http://$SERVICE_IP:80

3. Login with the password from step 1 and the username: admin

 

 

grafana 설치 확인

 

# Grafana URL 
$ kubectl get svc --namespace prometheus grafana -o jsonpath='{.status.loadBalancer.ingress[0].hostname}'
abc29d87564994207b5dfb965886a11e-1234385928.ap-northeast-2.elb.amazonaws.com

 

 

 

[ dashboard id: 12006 ]

 

 

 

# 만약 망했으면 uninstall 하고 처음부터 다시 try...
$ helm uninstall prometheus --namespace prometheus
$ helm uninstall grafana --namespace prometheus

 

삭제되지 않은 볼륨들도 모두 삭제한다.

 

대부분의 쿠버네티스 스펙이 helm 으로 한방에 설치되니까 편하긴 한듯...

 


WRITTEN BY
손가락귀신
정신 못차리면, 벌 받는다.

,

 

$ aws eks update-kubeconfig --region ap-northeast-2 --name my-cluster --profile my-profile

An error occurred (TooManyActiveKeysException) when calling the DescribeCluster operation: Too Many Active Keys

 

AWS EKS 배포 전에 클러스터 선택하는 첫번째 명령에서 생전 처음보는 에러가... 뭔 ActiveKey 를 얘기하는겨. 아무리 구글을 봐도 관련된 내용이 없네. aws 명령에서 나오는 에러같기는 한데... 내가 뭐 잘못 건드린게 있나. 어제 퇴근전까지만 해도 잘됐는데, 다시 출근하니까 안되네.

 

AWS 대시보드에 접속해 봤더니...

 

 

내 클러스터 다 어디갔슴? 후덜덜 하면서, 다른 계정도 봤더니 다행히 같은 에러. 아무래도 AWS 장애임을 예상하고, 파트너사에 문의해 봤더니, 공동체 중에 EKS 사용하는데가 우리밖에 없다는... 아무튼 서울리전 장애를 확인했고...

 

언제나 장애를 전달받는게 아니라. 알려주는 꼴...


WRITTEN BY
손가락귀신
정신 못차리면, 벌 받는다.

,

2022년 이슈

Daily/Diary 2023. 1. 1. 21:29

 

2022년도 이렇게 지나갔다. 역시 45세에 혼인한다던 말은 개소리였다. 구차하게 질척거려본다면 만 나이로 따졌을때 대에충 2023~24년이긴 한데...ㅋㅋ

 

 

1. 판교

 

8월에 회사가 판교로 이전하면서 다시 독립을 하게 됐다. 진접까지 거리상으로는 50km 지만 내가 출퇴근하는 시간에 출근 40분, 퇴근 30분 밖에 걸리지 않았는데 힘들다고 투정대며 집을 나왔다. 부모님의 잔소리가 어지간히 힘들었나보다? 라고 남일마냥 얘기하고 지나가련다. 아무튼 그렇게 5개월 정도 지났는데, 뭐 그럭저럭 괜찮다. 딱히 좋을 것도 없고, 나쁠 것도 없고... 평일에는 야근하고 집에 와서 잠만 자는데 요즘 금리에 이자 나가는거 생각하면 잔고는 항상 그대로고... 그래서 돈을 많이 벌어야 한다는건가ㅎ 당연한 소리지만... 게다가 판교 물가는 그냥 미쳤다. 삼성동에 비해 밥값은 두배, 헬스비는 세배를 더 주고 생활하고 있다. 거품도 이런 개거품이 없다. 비싸게 팔아도 다들 법카로 긁어대니 상점들이 버릇만 나빠진듯?

 

2. 허리

 

그 와중에 해피한 일도 있었다. 허약해 보이는 트레이너가 영업 들어오면서 기본적인 신체 체크를 해줬는데, 걸을 때 상체가 앞으로 기울어져서 무릎에 통증이 있을 수 있고 기울어진 상체를 피려다 보니 허리에 통증이 있을 수 있다는 기가막힌 진단이 나왔다. 쉽게 말해 무게 중심이 앞으로 쏠려서 걷는다는 내용. 반대로 무게 중심을 뒤로 하고 걸어보니 오히려 코어에 힘이 빡 들어가서 아랫배에만 힘이 들어가고 허리가 너무 편했다. 더 웃긴건 난 무게 중심을 뒤로 했다고 생각하고 거울을 봤는데 전혀 뒤로 젖혀지지 않은 정상적인 걸음으로 보였다. 그만큼 내가 앞으로 쏠리게 하고 걸었다는 얘기이다. 뭐 급한게 있다고 그렇게 상체 하체 따로 놀았을꼬... 그렇게 무게중심을 뒤로하고 요즘은 스쿼트까지 하고 있다. 2월인가 살짝 허리 아프고 나서는 현재까지 엄청 쌩쌩하다. 근데 헬스는 몇살까지 해야 할까...

 

3. 식물집사

 

이건 정말 태어나서 생각도 안해봤던건데 내가 이렇게 될 줄이야ㅋ 신축빌라에 들어온 첫날 베이크아웃을 하면서 새집증후군을 얻고, 그 해결책 중 하나로 공기정화식물이 효과적이라는 글을 보게 됐다. 어떤걸 사야할 지 막막했지만, 당근에서 가장 저렴한 것으로 선택했고 그것이 바로 스파티필름이었다. 그 후에 알파돔시티에 널려있는 식물들이 모두 공기정화식물이란 것도 알게 됐고, 나름 공부도 좀 해보다가 양재화훼단지에 가서 쇼핑을 하기 시작했다. 지금은 집안의 공기를 정화하는 식물들을 위해 열심히 밥주고 재워주고 그러고 있다. 실내 공기가 정말 좋아졌는지는 알 수 없지만, 책임질 생명이 늘어났고 또 잘 자라고 있는 그들을 보고 있으면 뿌듯하기도 하고... 풀멍도 가능하고ㅋ 나름 괜찮은 취미하나 추가요~

 

4. 회사생활

 

한 해동안 그 어떤 자기계발에 대한 계획도 없었던 것 같다. 회사에 전념해야 했었고, 실제로 1년동안 거의 매일 야근을 했고, 야근이 익숙해져서 딱히 힘들지는 않았다. 개인시간이 좀 부족했지만 마지막 2개월동안 휴가 오지게 썼어도 딱히 한게 없는걸 보면 개인시간이 많다 해도 지금은 딱히 뭘 해야할지 모르겠다. 그저 회사 생활이 조금씩 지쳐간다. 나이가 많아지면서 어린 분들 모시는게 참 거시기 하다. 최대한 노인네 대우는 받고 있지만 가끔씩 선을 넘을랑 말랑 하면서 거슬릴 때가 있는데 그럴 때가 참 거시기 하다. 회사가 직급체계로 가는건 맞는데... 아직도 적응이 안되네 덜 늙어서 그런지... 내가 바뀌어야지. 혼자 집에와서 시팔 저팔 해봤자 뭐가 풀리는 것도 아니고, 내 정신만 피폐해지지. 아직도 10년은 더 버텨야 되는데 거참ㅋ

 

5. 고혈압

 

7월에 건강검진한 이후로 혈압이 우상향을 그렸다. 135정도로 시작했다가 160을 찍고나서 처음으로 고혈압 약을 먹기 시작했다. 그리고 3일만에 정상수치까지 떨궜다. 술을 자주 마시기는 하지만 꾸준한 운동이 모든 것을 해결해 줄거라 생각했는데, 뇌졸증을 앓으셨던 할머니와 아버지의 피가 더 강한 듯 하다. 웬만해서는 약 같은거 안먹는 스타일인데 혹시라도 혼자 있다가 잘못될 수도 있다는 생각에ㅎ; 내 생활방식이 고혈압에 적합하다고 생각하지 않아서 인정하고 싶진 않지만 억울해도 소용없다. 앞으로 얻을 병이 더 많아질테니. 내 힘으로 안된다면 약에 의지하는 수 밖에.

 

6. 장례


크리스마스 직전에 집안의 가장 연장자이신 외할머니의 장례를 치르며 회복하는데 꽤 시간이 걸렸다. 내가 장가갈 때까지 절대 눈 못 감는다고 항상 말씀하셨는데 결국 지켜드리지 못했다. 할머니가 돌아가시고 거의 25년만에 상을 치뤄보니 3일 동안 육체적/정신적으로 너무 힘들었는데, 식구들이 많아서 서로에게 위로가 될 수 있었고 큰 힘이 되었다. 우리 식구들은 더욱 끈끈해졌고, 외할아버지의 장례가 외할머니를 성당으로 인도하셨듯, 이번 장례로 가족 일부를 천주교로 인도하셨다. 그 무엇보다 원하신건 내가 다시 성당을 다니는 것이었는데... 그러고 보니 외할머니께서는 특히 나에게 바란게 많으셨는데 아무것도 해드린게 없네.

 

 

※ 2023년 계획

 

올해도 그냥 열심히 살면 될 것 같고, 추가적으로... 하루종일 TV보면서 멍때리지 말고, 남 욕 좀 그만하고, 즐거운 취미 찾고, 내가 누구인지 꼭 찾기를...


WRITTEN BY
손가락귀신
정신 못차리면, 벌 받는다.

,

 

식물들과 함께한지 4개월째. 물주는게 조금은 귀찮기는 하지만 아직까지 식물이 주는 즐거움은 긍적적이다. 물만 좀 편하게 줄 수 있으면 좋으련만...ㅎ 추운 겨울을 이 식물들과 어찌 보낼 수 있을까 걱정했는데 하루 이틀 정도는 보일러를 틀지 않아도 잘 버티고 있다.

 

  • 집에 있을 때 (보일러 가동) : 25도 / 55%
  • 집에 없을 때 (보일러 미가동) : 19도 / 70% (제습기로 55%까지 낮춤)

 

집에 있을 때는 가장 따뜻한 2시 경에 30분 정도 환기하고, 청소하고... 거실이 추울지 몰라 콤팩타 빼고는 방 안에 모셨다. 책상도 치워버리고ㅋ 침실이 온실같아 꽤 습해서 제습기까지 장만했다. 10월 정도만 해도 가습기를 틀었던거 같은데 이제 제습기를 틀고 있다. 이제 정말 풀옵션; 더 이상은 살게 없기를... 콤팩타를 거실에 둔 이유는 일단 저 자리에 화분 한개는 놓아야 거실이 썰렁하지 않은데 빛 한줄기 없는 곳에 마땅히 놓을 만한 식물이 없었음. 마음으로 미안해 하고 있음.

 

  1. 전혀 자라는 티는 안나지만 건강해 보이는 식물
    - 여인초, 콤팩타, 아레카야자

  2. 처음 새순을 보인 식물
    - 클루시아 : 꽃가게 사장님이 서비스로 준 클루시아. 오자마자부터 건강한 잎 다 떨어지고 죽은 줄로만 알고 있었는데 건강하게 새 잎을 보여줘서 분갈이 감행.(이것때매 죽을지도...) 
    - 보석금전수 : 잎 하나 더 생기더라도 티 하나 안날 것 같았던 금전수에 처음으로 새 가지가 생김!

  3. 약간 불안한 식물
    - 스파티필름 : 가끔씩 노래진 잎들 다 자르고 있음.(가끔)
    - 뱅갈고무나무 : 노래진 잎들이 떨어지고 있음.(아주 가끔)

  4. 상처난 식물
    - 스투키 : 가만히 두어도 죽이기 힘들다는 스투키에 무름병이 생겨 줄기 하나를 뽑았다. 다행히 다른 줄기에 전염시키지는 않은 듯하다.

 

 

 

나머지 식물들은 새순도 많이 보이며 잘 자라고 있음.

 

요즘들어 습도 조절하는게 꽤나 힘들다. 방에 식물들이 모여 있어 약간 온실처럼 습하다. 스킨답서스, 보스톤고사리, 무늬벤자민은 약간 습한걸 좋아하는 것 같고, 나머지는 적당한 습도를 좋아하는 것 같고... 하지만 방을 나눠서 관리하기는 무리가 있고 그러다보니 항상 살짝 습하다. 그래서 집에 있을 때는 30분 정도씩 창문 열어서 습도를 떨구고, 장시간 집을 비울 때는 제습기를 틀어 놓는다.

 

그리고 식물등이 확실히 효과가 있는게 정말 해처럼 식물들이 빛을 향해 기울어 진다. 줄기가 빛을 향하고 잎이 눕는다. 그래서 수형을 유지하려면 수시로 화분을 돌려주어야 한다. 잘 자라라고 가장 가까운 곳에 둔 무늬벤자민은 잎이 약간 탔다; 

 

그 사이 분갈이에 도전해봤다. 클루시아가 새순이 나지 않았다면 수경으로 바꿔보려 했는데, 새순이 난 바람에 분갈이에 한번 도전했고 하는 김에 스투키 새순도 함께 삽목시켰다. 비율이 적당한지는 모르겠지만 그냥 감(?) 으로...ㅎ 다이소에서 저렴하게 용품들을 구할 수 있어서 가능했던 일...

 

지금까지 잘 자라주고 있는 식물들에게 고마울따름. 중품 이상은 잎도 좀 닦아주고 해야 하는데, 그새 많이 게을러졌다. 연말이니까 다시 계획 세우고 정신 차려야지!


WRITTEN BY
손가락귀신
정신 못차리면, 벌 받는다.

,

 

몬스테라가 우리집에 안맞는줄 알았다. 대형 몬스테라를 너무 많이 봐서 그런가 몬스테라는 폭풍 성장 종으로 들었는데 우리집은 자라는게 1도 보이지 않았다. 산건지 죽은건지 모르고 있던 찰나. 이 몬스테라가 9월 3일에 우리집에 오고나서 2달만에 나에게 기쁨을 줬다. 때는 바야흐로 11월 2일 물 줄 때가 되어 줄을 세우는 순간 눈을 의심케 하는 새순? 새순이 가지 정도로 긴데 이거 새순 맞는거냐! 너무 놀라 다각도에서 감상을 했는데 이게 하필 또 다른 잎의 구멍 속으로 자라려는게 보였다. 사실 잎이 기존에 다섯잎 밖에 없었는데  그 중에 한 잎의 구멍 사이로 줄기가 올라가서 그러려니 하고 있었는데 이것이 또 구멍 속으로 들어가려구... 새잎이 잘 자랄 수 있도록 기존 어른잎의 실 같은 연결선을 찢어 방향을 틀어줬다. 미안하지만 어른이니까 이해해주겠지. 어찌보면 이리 큰 새순이 하루 아침에 자랐을리는 없고 내가 그렇게 무관심 했던건가 라는 생각도 해보았지만 그저 가려져 있었던 걸로... 근데 발견한 날부터 정말 폭풍 잎펼침이 일어나는데 완전 감동~

 

 

11.02

 

11.04

 

11.05

 

 

11.06

 

 

11.07

 

 

11.10

 

 

이렇게 거의 10일 동안 모두 펼쳐졌다. 첫번째 감동은 새순이었고. 두번째 감동은 찢잎을 확인했을 때였고. 세번째는 무탈한 펼친잎을 확인했을 때였다. 이 아이도 보면 밑에 두 잎은 안찢. 위에 세 잎은 5~6찢, 새잎은 12찢 ㅋㅋㅋ. 인터넷에 찢잎이 잘 안나온다는 글을 많이 봤는데 이렇게 잘 나와줘서 너무 고맙다. 실내 20도 유지, 습도 50%, 기본적인 통풍만 제공했을 뿐인데... 2달 동안 아무변화 없던 것이 이렇게 큰 잎을 냈다는게 안믿어진다. 지금도 다른 잎에 비하면 두께가 얇고 색도 연한데 아이보듯 매시간 지켜보고 있다. 아주 살살 만져보면 왠지 연약해 보임. 어른 잎 될때까지 잘 케어해 줘야지. 

 

우리 몬스테라가 보르시지아나 종인지 델리시오사 종인지 궁금했었다. 델리시오사는 엉덩이가 보르시지아 보다 깊고, 프릴...(목아지?)에 주름이 있다고 한다. 프릴은 대품 정도 되야 나타난다고 하니 지금은 그걸로 알 수는 없는 것 같고... 보르시지아나는 보통 줄기의 키가 델리시오사보다 작다(짧다). 결국 확인할 수 있는건 길게 잘빠진 줄기와 새 잎의 깊은 궁뎅이. 확실치는 않지만 우리 아이는 대충 델리시오사 인걸로...ㅋ 다음 기쁨은 누가 주려나~

 

 


WRITTEN BY
손가락귀신
정신 못차리면, 벌 받는다.

,