

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Menjalankan daemon X-Ray di Amazon ECS
<a name="xray-daemon-ecs"></a>

**catatan**  
Pemberitahuan SDK/Daemon Pemeliharaan X-Ray - Pada 25 Februari 2026, AWS SDKs/Daemon X-Ray akan memasuki mode pemeliharaan, di mana AWS akan membatasi rilis X-Ray SDK dan Daemon untuk mengatasi masalah keamanan saja. Untuk informasi selengkapnya tentang garis waktu dukungan, lihat[Garis waktu Dukungan X-Ray SDK dan Daemon](xray-sdk-daemon-timeline.md). Kami merekomendasikan untuk bermigrasi ke OpenTelemetry. Untuk informasi lebih lanjut tentang migrasi ke OpenTelemetry, lihat [Migrasi dari instrumentasi X-Ray ke instrumentasi](https://docs.aws.amazon.com/xray/latest/devguide/xray-sdk-migration.html). OpenTelemetry 

Di Amazon ECS, buat citra Docker yang menjalankan daemon X-Ray, unggah ke repositori citra Docker, lalu deploy ke klaster Amazon ECS Anda. Anda dapat menggunakan pemetaan port dan pengaturan mode jaringan dalam file ketentuan tugas Anda untuk memungkinkan aplikasi Anda berkomunikasi dengan kontainer daemon.

## Menggunakan citra Docker resmi
<a name="xray-daemon-ecs-image"></a>

X-Ray menyediakan [image kontainer](https://gallery.ecr.aws/xray/aws-xray-daemon) Docker di Amazon ECR yang dapat Anda terapkan bersama aplikasi Anda. Lihat [mengunduh daemon untuk informasi](xray-daemon.md#xray-daemon-downloading) lebih lanjut.

**Example Ketentuan tugas**  

```
    {
      "name": "xray-daemon",
      "image": "amazon/aws-xray-daemon",
      "cpu": 32,
      "memoryReservation": 256,
      "portMappings" : [
          {
              "hostPort": 0,
              "containerPort": 2000,
              "protocol": "udp"
          }
       ]
    }
```

## Buat dan bangun citra Docker
<a name="xray-daemon-ecs-build"></a>

Untuk konfigurasi kustom, Anda mungkin perlu menentukan citra Docker milik Anda sendiri.

Tambahkan kebijakan terkelola ke peran tugas Anda untuk memberikan izin kepada daemon untuk mengunggah data pelacakan ke X-Ray. Untuk informasi selengkapnya, lihat [Memberikan izin kepada daemon untuk mengirim data ke X-Ray](xray-daemon.md#xray-daemon-permissions).

Gunakan salah satu file Docker berikut untuk membuat citra yang menjalankan daemon.

**Example Dockerfile – Amazon Linux**  

```
FROM amazonlinux
RUN yum install -y unzip
RUN curl -o daemon.zip https://s3.us-east-2.amazonaws.com/aws-xray-assets.us-east-2/xray-daemon/aws-xray-daemon-linux-3.x.zip
RUN unzip daemon.zip && cp xray /usr/bin/xray
ENTRYPOINT ["/usr/bin/xray", "-t", "0.0.0.0:2000", "-b", "0.0.0.0:2000"]
EXPOSE 2000/udp
EXPOSE 2000/tcp
```

**catatan**  
Flag `-t` dan `-b` diperlukan untuk menentukan alamat pengikatan untuk mendengarkan loopback dari lingkungan multi-kontainer.

**Example Dockerfile – Ubuntu**  
Untuk turunan Debian, Anda juga perlu menginstal sertifikat otoritas sertifikasi (CA) untuk menghindari masalah saat mengunduh penginstal.  

```
FROM ubuntu:16.04
RUN apt-get update && apt-get install -y --force-yes --no-install-recommends apt-transport-https curl ca-certificates wget && apt-get clean && apt-get autoremove && rm -rf /var/lib/apt/lists/*
RUN wget https://s3.us-east-2.amazonaws.com/aws-xray-assets.us-east-2/xray-daemon/aws-xray-daemon-3.x.deb
RUN dpkg -i aws-xray-daemon-3.x.deb
ENTRYPOINT ["/usr/bin/xray", "--bind=0.0.0.0:2000", "--bind-tcp=0.0.0.0:2000"]
EXPOSE 2000/udp
EXPOSE 2000/tcp
```

Dalam ketentuan tugas Anda, konfigurasi tergantung pada mode jaringan yang Anda gunakan. Jaringan jembatan adalah default dan dapat digunakan di VPC default Anda. Di jaringan jembatan, atur variabel lingkungan `AWS_XRAY_DAEMON_ADDRESS` untuk memberi tahu SDK X-Ray, port kontainer yang akan dirujuk dan mengatur port host. Misalnya, Anda dapat memublikasikan UDP port 2000, dan membuat tautan dari kontainer aplikasi Anda ke kontainer daemon. 

**Example Ketentuan tugas**  

```
    {
      "name": "xray-daemon",
      "image": "123456789012.dkr.ecr.us-east-2.amazonaws.com/xray-daemon",
      "cpu": 32,
      "memoryReservation": 256,
      "portMappings" : [
          {
              "hostPort": 0,
              "containerPort": 2000,
              "protocol": "udp"
          }
       ]
    },
    {
      "name": "scorekeep-api",
      "image": "123456789012.dkr.ecr.us-east-2.amazonaws.com/scorekeep-api",
      "cpu": 192,
      "memoryReservation": 512,
      "environment": [
          { "name" : "AWS_REGION", "value" : "us-east-2" },
          { "name" : "NOTIFICATION_TOPIC", "value" : "arn:aws:sns:us-east-2:123456789012:scorekeep-notifications" },
          { "name" : "AWS_XRAY_DAEMON_ADDRESS", "value" : "xray-daemon:2000" }
      ],
      "portMappings" : [
          {
              "hostPort": 5000,
              "containerPort": 5000
          }
      ],
      "links": [
        "xray-daemon"
      ]
    }
```

Jika Anda menjalankan klaster di subnet privat VPC, Anda dapat menggunakan [mode jaringan `awsvpc`](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-networking.html) untuk melampirkan antarmuka jaringan elastis (ENI) ke kontainer Anda. Hal ini memungkinkan Anda untuk menghindari penggunaan tautan. Abaikan port host di pemetaan port, tautan, dan variabel lingkungan `AWS_XRAY_DAEMON_ADDRESS`.

**Example Ketentuan tugas VPC**  

```
{
    "family": "scorekeep",
    "networkMode":"awsvpc",
    "containerDefinitions": [
        {
          "name": "xray-daemon",
          "image": "123456789012.dkr.ecr.us-east-2.amazonaws.com/xray-daemon",
          "cpu": 32,
          "memoryReservation": 256,
          "portMappings" : [
              {
                  "containerPort": 2000,
                  "protocol": "udp"
              }
          ]
        },
        {
            "name": "scorekeep-api",
            "image": "123456789012.dkr.ecr.us-east-2.amazonaws.com/scorekeep-api",
            "cpu": 192,
            "memoryReservation": 512,
            "environment": [
                { "name" : "AWS_REGION", "value" : "us-east-2" },
                { "name" : "NOTIFICATION_TOPIC", "value" : "arn:aws:sns:us-east-2:123456789012:scorekeep-notifications" }
            ],
            "portMappings" : [
                {
                    "containerPort": 5000
                }
            ]
        }
    ]
}
```

## Konfigurasikan opsi baris perintah di konsol Amazon ECS
<a name="xray-daemon-ecs-cmdline"></a>

Opsi baris perintah mengganti nilai-nilai yang bertentangan dalam file konfigurasi citra Anda. Opsi baris perintah biasanya digunakan untuk pengujian lokal, tetapi juga dapat digunakan untuk memudahkan saat mengatur variabel lingkungan, atau mengontrol proses startup. 

Dengan menambahkan opsi baris perintah, Anda memperbarui `CMD` Docker yang diteruskan ke kontainer. Untuk informasi selengkapnya, lihat [Referensi menjalankan Docker](https://docs.docker.com/engine/reference/run/#overriding-dockerfile-image-defaults).

**Untuk mengatur opsi baris perintah**

1. Buka konsol klasik Amazon ECS di [https://console.aws.amazon.com/ecs/](https://console.aws.amazon.com/ecs/).

1. Dari bilah navigasi, pilih wilayah yang berisi ketentuan tugas Anda.

1. Di panel navigasi, pilih **Ketentuan Tugas**.

1. Di halaman **Ketentuan Tugas**, pilih kotak di sebelah kiri ketentuan tugas yang akan direvisi dan pilih **Buat revisi baru**.

1. Di halaman **Buat revisi baru dari Ketentuan Tugas**, pilih kontainer.

1. Di bagian **LINGKUNGAN**, tambahkan daftar Anda yang dipisahkan koma dari opsi baris perintah ke bidang **Perintah**.

1. Pilih **Perbarui**.

1. Verifikasi informasi dan pilih **Buat**.

Contoh berikut menunjukkan cara menulis opsi baris perintah yang dipisahkan koma untuk opsi `RoleARN`. Opsi `RoleARN` mengasumsikan IAM role yang ditentukan untuk mengunggah segmen ke akun yang berbeda.

**Example**  

```
--role-arn, arn:aws:iam::123456789012:role/xray-cross-account
```

Untuk mempelajari lebih lanjut tentang opsi baris perintah yang tersedia di X-Ray, lihat [Mengonfigurasi AWS X-Ray Daemon](xray-daemon-configuration.md).